.page { min-height: 100vh; padding: 0 28px 50px; color: var(--foreground); background: var(--background); font-family: var(--font-family-base); } .topbar, .heading, .panel { width: min(1180px, 100%); margin-inline: auto; } .topbar { min-height: 82px; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; border-bottom: 1px solid var(--border); } .topbar img { width: 240px; max-height: 60px; object-fit: contain; } .topbar > span { justify-self: end; color: var(--muted-foreground); font: .68rem/1 var(--font-family-monospace); } .backLink { display: inline-flex; align-items: center; gap: 7px; width: fit-content; color: var(--muted-foreground); text-decoration: none; font-size: .78rem; } .heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; padding: 28px 0 20px; } .heading > div:first-child > span { color: #687582; font: 500 .62rem/1 var(--font-family-monospace); letter-spacing: .12em; } .heading h1 { margin: 7px 0 6px; font: 600 2.25rem/1 var(--font-family-display); } .heading p { max-width: 680px; margin: 0; color: var(--muted-foreground); font-size: .8rem; } .actions, .searchBox { display: flex; align-items: center; gap: 8px; } .searchBox { min-width: 230px; color: #687582; } .panel { border: 1px solid var(--border); background: var(--card); } .summary { display: grid; grid-template-columns: repeat(3, 1fr); border-bottom: 1px solid var(--border); } .summary > div { padding: 14px 16px; border-right: 1px solid var(--border); } .summary > div:last-child { border-right: 0; } .summary strong, .summary span { display: block; } .summary strong { font: 600 1rem/1 var(--font-family-display); } .summary span { margin-top: 4px; color: #687582; font-size: .63rem; } .tableHeader, .row { display: grid; grid-template-columns: minmax(260px, 1.5fr) minmax(180px, 1fr) 150px 190px; align-items: center; gap: 12px; } .tableHeader { min-height: 34px; padding: 0 14px; color: #697582; background: #0f1116; border-bottom: 1px solid #252932; font: 500 .62rem/1 var(--font-family-monospace); text-transform: uppercase; } .row { min-height: 62px; padding: 0 14px; border-bottom: 1px solid #242831; } .track { display: flex; align-items: center; gap: 10px; min-width: 0; } .art { width: 34px; height: 34px; display: grid; place-items: center; flex: 0 0 auto; overflow: hidden; color: #71808f; background: #1a1e26; border: 1px solid #303641; } .art img { width: 100%; height: 100%; object-fit: cover; } .track strong, .track span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } .track strong { font-size: .76rem; } .track span, .row > span { margin-top: 3px; color: #737e8a; font-size: .67rem; } .mono { font-family: var(--font-family-monospace); } .saved { display: flex; align-items: center; gap: 6px; color: #727d89; font-size: .65rem; } .empty { min-height: 220px; display: grid; place-items: center; align-content: center; gap: 7px; color: #687582; text-align: center; } .empty strong { color: #dce2e7; font-size: .82rem; } .empty span { max-width: 440px; font-size: .7rem; } @media (max-width: 820px) { .heading { align-items: stretch; flex-direction: column; } .actions { align-items: stretch; flex-direction: column; } .tableHeader { display: none; } .row { grid-template-columns: 1fr; gap: 6px; padding-block: 12px; } } @media (max-width: 900px) { .page { padding: 0 10px 84px; } .topbar { position: sticky; top: 0; z-index: 20; min-height: 58px; grid-template-columns: auto 1fr; background: rgba(11,12,16,.97); } .topbar img { width: 132px; justify-self: end; } .topbar > span { display: none; } .backLink { font-size: 0; } .backLink svg { width: 20px; height: 20px; } .heading { gap: 12px; padding: 18px 2px 14px; } .heading h1 { font-size: 1.75rem; } .heading p { font-size: .74rem; line-height: 1.5; } .actions { gap: 8px; } .actions button { width: 100%; } .searchBox { min-width: 0; width: 100%; } .summary { grid-template-columns: repeat(3, 1fr); } .summary > div { padding: 10px 8px; border-bottom: 0; text-align: center; } .summary strong { font-size: .9rem; } .summary span { font-size: .56rem; } .panel { border-left: 0; border-right: 0; } .row { padding: 11px 8px; gap: 4px; } .mono { font-size: .58rem !important; } }