/* Quiet universe artwork is decorative. All controls remain native HTML. */
:root { --cosmic-panel:rgba(8,17,28,.92); --cosmic-line:rgba(169,191,217,.23); }
body.workspace,body.cosmic-login,body.cosmic-public {
    background:#02060b;
    isolation:isolate;
}
body.workspace::before,body.cosmic-login::before,body.cosmic-public::before {
    content:""; position:fixed; inset:0 0 auto auto; z-index:-1; pointer-events:none;
    /* Cap both axes at the actual source dimensions instead of enlarging on wide screens. */
    width:min(100vw,1672px); height:min(100vh,941px); height:min(100svh,941px);
    background:linear-gradient(0deg,rgba(2,6,11,.12),rgba(2,6,11,.04)),url('/public/universe-v2.png') center top/cover no-repeat;
    /* Fade into the plain canvas without a visible image edge on larger displays. */
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 12%),linear-gradient(0deg,transparent,#000 15%);
    -webkit-mask-composite:source-in;
    mask-image:linear-gradient(90deg,transparent,#000 12%),linear-gradient(0deg,transparent,#000 15%);
    mask-composite:intersect;
}
.workspace { --sidebar-w:244px; --topbar-h:54px; }
.workspace main { padding:28px 38px 36px; max-width:1720px; }
.workspace .sidebar { background:linear-gradient(180deg,#040c17ed,#030b16c7); border-color:var(--cosmic-line); }
.workspace .sb-header { padding:27px 20px 34px; }
.workspace .sb-brand-sub { font-size:.72rem; }
.workspace .sb-icon,.workspace .sb-icon img { width:46px; height:46px; padding:0; background:transparent; border:0; box-shadow:none; }
.workspace .sb-nav { padding:0 12px; }
.workspace .nav-item { border:1px solid transparent; padding:15px 16px; }
.workspace .nav-item.active {
    color:#e5d5b9; background:linear-gradient(100deg,#c9b18c20,#a8bfd508);
    border-color:#bdad9252; box-shadow:inset 3px 0 #cfb48c;
}
.workspace .nav-item svg { width:20px; height:20px; stroke-width:1.5; }
.workspace .sb-section { padding:20px 16px 9px; }
.workspace .sb-note { padding:24px; }
.workspace .sb-note p { font-size:1.05rem; color:#c1c6ce; }
.workspace .sb-footer { background:#030a1399; border-color:var(--cosmic-line); }
.workspace .user-avatar { box-shadow:inset 0 0 12px #e4bb8620; }
.workspace .topbar { background:transparent; border-color:transparent; padding:0 38px; }
.workspace .topbar-crumb { text-shadow:0 2px 8px #000; }
.workspace .workspace-tag { color:#c6ccd5; font-size:.68rem; }
.workspace .topbar-avatar { background:#101824d9; }
.workspace .library-hero { background:none; border:0; border-radius:0; padding:0 0 18px; margin:0; min-height:200px; overflow:visible; }
.workspace .library-hero::after { display:none; }
.workspace .hero-copy { max-width:65%; text-shadow:0 2px 18px #02050d; }
.workspace .hero-copy h2 { font-size:clamp(3rem,4.7vw,5.5rem); line-height:.99; letter-spacing:-.045em; margin:5px 0 16px; color:#fff0d8; }
.workspace .hero-copy p { font-family:var(--display); font-size:clamp(.9rem,1.3vw,1.25rem); color:#ece6df; letter-spacing:.015em; max-width:none; }
.workspace .hero-index { right:12%; top:57px; bottom:auto; font-size:.61rem; line-height:2.2; letter-spacing:.24em; color:#ece5dd; text-shadow:0 2px 10px #000; }
.workspace .overview-hero { min-height:265px; }
.workspace .overview-hero .btn { text-shadow:none; margin-top:15px; }
.workspace .breadcrumbs { margin:0 0 18px; font-size:.84rem; text-shadow:0 1px 8px #000; }
.workspace .breadcrumbs>.icon { width:18px; height:18px; color:var(--accent); margin-right:6px; }
.workspace .breadcrumbs a { color:#c8ced8; }
.workspace .library-tools { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:14px 20px; margin-bottom:17px; }
.workspace .browse-toolbar { grid-column:1; grid-row:1; margin:0; flex-wrap:nowrap; }
.workspace .library-search { background:var(--cosmic-panel); border-color:var(--cosmic-line); border-radius:8px; box-shadow:inset 0 1px #ffffff05; }
.workspace .library-search input { min-height:47px; font-size:.87rem; }
.workspace .browse-toolbar .btn { min-height:47px; padding-inline:19px; }
.workspace .btn-primary,.cosmic-login .sign-btn,.cosmic-public .file-download {
    background:linear-gradient(115deg,#f8dbac,#d9ac73); border:1px solid #ffdfad;
    color:#211609; box-shadow:0 0 18px #e8b87724,inset 0 1px #fff3d6a0;
}
.workspace .btn-primary:hover,.cosmic-login .sign-btn:hover { background:linear-gradient(115deg,#ffe8c6,#eac18b); }
.workspace .btn-secondary { background:rgba(8,17,28,.9); border-color:var(--cosmic-line); }
.workspace .btn-secondary:hover { border-color:#b29a77; background:#172333; }
.workspace .library-controls { display:contents; margin:0; padding:0; }
.workspace .library-options { grid-column:2; grid-row:1; }
.workspace #libraryResults { grid-column:1/-1; grid-row:2; }
.workspace #libraryResults { color:#c1c7d0; font-size:.75rem; text-shadow:0 1px 5px #000; }
.workspace .library-options select,.workspace .view-switch { background:#091421eb; border:1px solid var(--cosmic-line); border-radius:7px; }
.workspace .library-options select { min-height:39px; }
.workspace .view-switch button { width:38px; min-height:36px; }
.workspace .view-switch button[aria-pressed=true] { color:#ffdfaa; background:linear-gradient(135deg,#be92563b,#be92560e); box-shadow:inset 0 0 12px #e8b87719; }
.workspace .section-label { color:#f0f0ed; font-size:1.18rem; font-weight:500; letter-spacing:-.01em; text-transform:none; margin:0 0 12px; text-shadow:0 2px 8px #000; }
.workspace .section-label span { color:#b0bac8; font-size:.7rem; border:1px solid var(--cosmic-line); background:#09131dd9; }
.workspace .files-label { margin-top:23px; }
.workspace .folder-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.workspace .folder-card {
    display:grid; grid-template-columns:48px minmax(0,1fr); grid-template-rows:auto auto auto;
    gap:5px 16px; align-content:center; min-height:114px; padding:17px 36px 16px 20px;
    text-align:left; overflow:hidden; isolation:isolate; border:1px solid var(--cosmic-line);
    border-radius:9px; background:#08131f; box-shadow:inset 0 1px #ffffff05;
}
/* Six atmospheric vignettes, not previews of the user's files. Stable per folder. */
.workspace .folder-card::before { content:""; position:absolute; z-index:-2; right:0; top:0; height:100%; width:60%; background-image:url('/public/music-vignettes-v1.png'); background-size:300% 200%; opacity:.38; filter:saturate(.5); }
.workspace .folder-card::after { content:""; position:absolute; z-index:-1; inset:0; pointer-events:none; background:linear-gradient(90deg,#08131f 22%,#08131ff0 48%,#08131f33); }
.workspace .vignette-1::before { background-position:0 0; }.workspace .vignette-2::before { background-position:50% 0; }.workspace .vignette-3::before { background-position:100% 0; }
.workspace .vignette-4::before { background-position:0 100%; }.workspace .vignette-5::before { background-position:50% 100%; }.workspace .vignette-6::before { background-position:100% 100%; }
.workspace .folder-card:hover,.workspace .folder-card:focus-within { border-color:#c19f6e; background:#101c29; box-shadow:0 5px 22px #0004; }
.workspace .folder-card-icon { grid-column:1; grid-row:1/4; align-self:center; width:42px; height:42px; margin:0; color:#d5bea0; filter:none; }
.workspace .folder-card-icon .icon { stroke-width:1.3; }
.workspace .folder-card-name { grid-column:2; grid-row:1; margin:0; font-size:.94rem; font-weight:500; white-space:normal; overflow-wrap:anywhere; line-height:1.4; }
.workspace .folder-card-date { grid-column:2; grid-row:2; color:#adb9ca; font-size:.68rem; line-height:1.5; }
.workspace .folder-card-open { grid-column:2; grid-row:3; justify-self:start; margin:3px 0 0; padding:0; border:0; border-radius:0; background:transparent; font-size:.68rem; color:#dabd92; }
.workspace .folder-card .item-menu { top:8px; right:5px; width:30px; height:34px; color:#d5dde7; background:#08131f66; }
.workspace .folder-list-view { display:block; border-color:var(--cosmic-line); background:var(--cosmic-panel); }
.workspace .folder-list-view .folder-card { display:grid; grid-template-columns:30px minmax(0,1fr) 130px 95px 32px; min-height:64px; padding:13px 17px; border:0; border-bottom:1px solid var(--cosmic-line); border-radius:0; gap:15px; background:transparent; }
.workspace .folder-list-view .folder-card:last-child { border-bottom:0; }
.workspace .folder-list-view .folder-card::before,.workspace .folder-list-view .folder-card::after { display:none; }
.workspace .folder-list-view .folder-card-icon { width:28px; height:28px; grid-row:1; }
.workspace .folder-list-view .folder-card-name { grid-column:2; grid-row:1; align-self:center; }
.workspace .folder-list-view .folder-card-date { grid-column:3; grid-row:1; align-self:center; }
.workspace .folder-list-view .folder-card-open { grid-column:4; grid-row:1; align-self:center; margin:0; }
.workspace .folder-list-view .item-menu { grid-column:5; grid-row:1; position:static; }
.workspace .card,.workspace .stat-card,.workspace .filter-bar { background:var(--cosmic-panel); border-color:var(--cosmic-line); box-shadow:0 8px 36px #0002; }
.workspace .file-list-heading,.workspace thead th { background:#13202d99; color:#b8c4d4; }
.workspace .file-row-item { padding-block:13px; border-color:var(--cosmic-line); }
.workspace .file-row-up { padding-block:8px; }
.workspace .file-row-item:hover,.workspace tbody tr:hover { background:#172333c9; }
.workspace .file-row-name { font-weight:450; font-size:.9rem; }
.workspace .file-row-size,.workspace .file-row-date { color:#abb9cb; }
.workspace .storage-strip { padding:15px 18px; border:1px solid var(--cosmic-line); border-radius:8px; background:#06101bd9; }
.workspace .page-heading { text-shadow:0 2px 10px #000; padding-top:25px; }
.workspace .modal,.workspace .ctx-menu { background:#0d1a29; border-color:#506078; }
.workspace .modal-overlay { background:#01060dbd; }
.cosmic-login .login-card { background:#07111eee; border-color:var(--cosmic-line); box-shadow:0 24px 90px #0007; }
.cosmic-public .public-brand img { width:48px; height:48px; padding:0; background:transparent; }
.cosmic-public .public-header { background:#050e19c9; border-color:var(--cosmic-line); }
.cosmic-public .download-card { background:#07121eef; border-color:var(--cosmic-line); box-shadow:0 24px 90px #0006; }
.cosmic-public main { padding-top:120px; }
.cosmic-public .download-card:not(.single-file) .file-download { background:#142131; color:#f5cd95; border-color:#677183; box-shadow:none; }
.cosmic-public .public-footer { color:#c2c9d2; text-shadow:0 2px 6px #000; }
@media(min-width:1800px) { .workspace .library-hero { min-height:235px; } }
@media(max-width:1250px) { .workspace .folder-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.workspace .folder-list-view { display:block; }.workspace .hero-index { display:none; }.workspace main { padding-inline:26px; }.workspace .topbar { padding-inline:26px; } }
@media(max-width:1150px) { .workspace .library-tools { display:block; }.workspace .browse-toolbar { margin-bottom:12px; flex-wrap:wrap; }.workspace .library-controls { display:flex; }.workspace .library-search { flex-basis:200px; } }
@media(max-width:820px) {
    body.workspace::before,body.cosmic-login::before,body.cosmic-public::before { background-position:72% top; }
    .workspace .sidebar { background:#06101af7; }
    .workspace .topbar { background:#06101ac7; min-height:58px; padding-inline:20px; }
    .workspace main { padding:20px; }
    .workspace .library-hero { min-height:215px; padding-top:8px; }
    .workspace .hero-copy { max-width:90%; }
    .workspace .hero-copy h2 { font-size:3.5rem; }
    .workspace .hero-copy p { max-width:290px; font-size:1rem; }
    .workspace .overview-hero { min-height:280px; }
    .workspace .page-heading { padding-top:0; }
    .cosmic-public main { padding:55px 16px 24px; }
}
@media(max-width:540px) {
    .workspace .library-search { flex-basis:100%; }
    .workspace main { padding:20px 16px; }
    .workspace .hero-copy h2 { font-size:3.3rem; }
    .workspace .library-hero { min-height:215px; }
    .workspace .overview-hero { min-height:280px; }
    .workspace .folder-grid { grid-template-columns:1fr; gap:10px; }
    .workspace .folder-card { min-height:108px; padding:18px 40px 18px 20px; grid-template-columns:38px minmax(0,1fr); gap:3px 17px; }
    .workspace .folder-card-icon { width:36px; height:36px; }
    .workspace .folder-card-name { font-size:.96rem; }
    .workspace .folder-card-date,.workspace .folder-card-open { font-size:.72rem; }
    .workspace .folder-card .item-menu { width:36px; height:40px; }
    .workspace .folder-list-view { display:block; }
    .workspace .folder-list-view .folder-card { grid-template-columns:28px minmax(0,1fr) 36px; gap:3px 12px; padding:13px; }
    .workspace .folder-list-view .folder-card-icon { grid-column:1; grid-row:1/3; }
    .workspace .folder-list-view .folder-card-date { grid-column:2; grid-row:2; }
    .workspace .folder-list-view .folder-card-open { display:none; }
    .workspace .folder-list-view .item-menu { grid-column:3; grid-row:1/3; }
    .workspace .file-row-name { font-size:.83rem; }
    .workspace .file-row-acts .btn { min-height:40px; width:32px; }
    .workspace .browse-toolbar .btn { padding-inline:12px; }
    .workspace .library-controls { margin-bottom:20px; }
    .workspace .library-options select { max-width:118px; }
    .workspace .view-switch button { width:35px; min-height:40px; }
}
