113 lines
2.3 KiB
CSS
113 lines
2.3 KiB
CSS
.archive-view-container {
|
|
padding-top: 16px;
|
|
}
|
|
|
|
/* Single flex row: search left | toggle center | chips right.
|
|
On narrow screens the medium toggle reflows to its own centered row below. */
|
|
.archive-controls-row {
|
|
display: flex;
|
|
flex-wrap: wrap;
|
|
align-items: center;
|
|
gap: 24px;
|
|
padding: 0 0 20px 0;
|
|
}
|
|
|
|
.archive-controls-search {
|
|
flex: 1 1 0;
|
|
min-width: 180px;
|
|
}
|
|
|
|
/* archive-search-field rides on MudTextField, whose root is a child Razor component element.
|
|
Blazor isolation does not stamp the scope attribute there, so ::deep is required. */
|
|
::deep .archive-search-field {
|
|
max-width: 420px;
|
|
width: 100%;
|
|
}
|
|
|
|
.archive-controls-medium {
|
|
flex: 0 0 auto;
|
|
display: flex;
|
|
justify-content: center;
|
|
}
|
|
|
|
.archive-controls-genre {
|
|
flex: 1 1 0;
|
|
display: flex;
|
|
justify-content: flex-end;
|
|
}
|
|
|
|
/* Narrow screens: push the medium toggle to a full-width centered second row.
|
|
Search and genre chips stay together on the first row. */
|
|
@media (max-width: 600px) {
|
|
.archive-controls-medium {
|
|
order: 1;
|
|
flex: 1 0 100%;
|
|
justify-content: center;
|
|
}
|
|
|
|
.archive-controls-genre {
|
|
order: 0;
|
|
flex: 0 1 auto;
|
|
}
|
|
}
|
|
|
|
.archive-card-center {
|
|
display: flex;
|
|
justify-content: center;
|
|
width: 100%;
|
|
}
|
|
|
|
.archive-card-link {
|
|
text-decoration: none;
|
|
color: inherit;
|
|
}
|
|
|
|
.archive-release-card {
|
|
display: flex;
|
|
flex-direction: column;
|
|
width: 200px;
|
|
cursor: pointer;
|
|
border-radius: 8px;
|
|
overflow: hidden;
|
|
transition: transform 120ms ease;
|
|
}
|
|
|
|
.archive-release-card:hover {
|
|
transform: translateY(-4px);
|
|
}
|
|
|
|
.archive-release-cover {
|
|
width: 200px;
|
|
height: 200px;
|
|
background-size: cover;
|
|
background-position: center;
|
|
background-repeat: no-repeat;
|
|
}
|
|
|
|
.archive-release-cover--fallback {
|
|
background-color: var(--mud-palette-dark, #1a2238);
|
|
}
|
|
|
|
.archive-release-body {
|
|
padding: 8px 4px 0 4px;
|
|
display: flex;
|
|
flex-direction: column;
|
|
gap: 2px;
|
|
}
|
|
|
|
/* archive-release-title / archive-release-artist ride on MudText (child Razor component); ::deep
|
|
pierces into its output since Blazor isolation does not scope-stamp child component roots. */
|
|
::deep .archive-release-title {
|
|
font-weight: 600;
|
|
}
|
|
|
|
::deep .archive-release-artist {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.archive-empty {
|
|
display: flex;
|
|
justify-content: center;
|
|
padding: 48px 0;
|
|
}
|