:root{--accent:#f97316;--body:#475569;--display:Inter, ui-sans-serif, system-ui, sans-serif;--ink:#0f172a;--line:#d9e2ea;--muted:#64748b;--panel:#ffffffeb;--rail-muted:#a8b4c4;--rail-text:#f8fafc;--shadow:0 20px 55px #0f172a14;--soft:#f6f8fb;--surface:#f8fafc;--teal:#14b8a6;--teal-deep:#0f766e;--teal-soft:#ccfbf1;--text:#172033;--utility:Inter, ui-sans-serif, system-ui, sans-serif;color:var(--body);background:var(--surface);font:16px/1.5 var(--display);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--surface);min-width:320px}body{min-width:320px;min-height:100svh;margin:0}button,input{font:inherit}button{letter-spacing:0}a{color:inherit}#root{min-height:100svh}.portal-shell{background:linear-gradient(90deg, #10b98114, transparent 18rem), var(--surface);grid-template-columns:292px minmax(0,1fr);min-height:100svh;display:grid}.side-rail{background:var(--ink);min-height:100svh;color:var(--rail-text);flex-direction:column;gap:28px;padding:24px;display:flex}.brand-lockup{grid-template-columns:52px 1fr;align-items:center;gap:14px;display:grid}.brand-mark{aspect-ratio:1;background:var(--accent);width:52px;color:var(--ink);font:800 18px/1 var(--utility);border-radius:8px;place-items:center;display:grid}.brand-lockup h1,.top-bar h2,.section-heading h3,.artist-hero h3{color:inherit;font-family:var(--display);letter-spacing:0;margin:0}.brand-lockup h1{font-size:25px;line-height:1}.eyebrow{color:var(--muted);font:700 11px/1 var(--utility);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px}.rail-nav{gap:8px;display:grid}.rail-nav button,.action-strip button,.file-row button,.book-link,.icon-button{min-height:42px;font:700 14px/1 var(--utility);cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;text-decoration:none;transition:background-color .14s,border-color .14s,transform .14s;display:inline-flex}.rail-nav button{color:var(--rail-text);background:0 0;justify-content:flex-start;padding:0 12px}.rail-nav button.active,.rail-nav button:hover{background:#ffffff1a}.rail-nav button:focus-visible,.action-strip button:focus-visible,.file-row button:focus-visible,.book-link:focus-visible,.icon-button:focus-visible,.artist-row:focus-visible,.search-field input:focus-visible{outline-offset:2px;outline:3px solid #14b8a659}.rail-note{color:var(--rail-muted);border:1px solid #ffffff1f;border-radius:8px;margin-top:auto;padding:16px;font-size:14px}.rail-note p{margin:0}.workspace{min-width:0;padding:24px}.top-bar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.top-bar h2{font-size:clamp(28px,4vw,46px);line-height:1.02}.book-link{background:var(--ink);color:#fff;flex:none;padding:0 16px}.book-link:hover{background:#111827;transform:translateY(-1px)}.admin-grid{grid-template-columns:minmax(330px,.85fr) minmax(0,1.15fr);grid-template-areas:"metrics metrics""artists detail";gap:16px;display:grid}.metrics-row{grid-area:metrics;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.metric,.artist-browser,.detail-panel,.download-panel,.roadmap-panel,.artist-hero{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px}.metric{align-items:center;gap:12px;min-height:82px;padding:16px;display:flex}.metric svg{color:var(--teal)}.metric strong{color:var(--text);font:800 24px/1 var(--utility);display:block}.metric small,.artist-row small,.table-row small,.file-row small,.roadmap-step small{color:var(--muted);margin-top:5px;font-size:13px;display:block}.artist-browser{grid-area:artists;overflow:hidden}.detail-panel{grid-area:detail;min-width:0;padding:18px}.section-heading{justify-content:space-between;align-items:center;gap:14px;padding:18px;display:flex}.detail-panel .section-heading,.download-panel .section-heading,.roadmap-panel .section-heading{padding:0 0 16px}.section-heading h3,.artist-hero h3{color:var(--text);font-size:25px;line-height:1.05}.search-field{border:1px solid var(--line);background:var(--soft);border-radius:8px;align-items:center;gap:8px;min-width:230px;height:42px;padding:0 11px;display:flex}.search-field input{width:100%;min-width:0;color:var(--text);font:600 14px/1 var(--utility);background:0 0;border:0;outline:0}.artist-list{border-top:1px solid var(--line)}.artist-row{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 18px;display:grid}.artist-row:hover,.artist-row.active{background:#ecfeff}.artist-row strong,.table-row strong,.file-row strong,.roadmap-step strong{overflow-wrap:anywhere}.avatar{aspect-ratio:1;background:var(--teal-soft);width:42px;color:var(--teal-deep);font:800 13px/1 var(--utility);border-radius:8px;place-items:center;display:grid}.status-pill,.needs-export{width:fit-content;min-height:26px;font:800 11px/1 var(--utility);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;justify-content:center;align-items:center;padding:0 9px;display:inline-flex}.status-pill.active,.status-pill.delivered,.status-pill.done{color:#166534;background:#dcfce7}.status-pill.setup,.status-pill.next,.needs-export{color:#9a3412;background:#fff7ed}.status-pill.archive{color:#475569;background:#f1f5f9}.action-strip{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.action-strip button,.file-row button{color:var(--ink);border-color:var(--line);background:#fff;padding:0 13px}.action-strip button:hover,.file-row button:hover{border-color:var(--teal);background:#f0fdfa}.icon-button{background:var(--soft);width:42px;color:var(--text);border-color:var(--line)}.project-table,.file-list,.roadmap-list{border:1px solid var(--line);border-radius:8px;display:grid;overflow:hidden}.table-head,.table-row{grid-template-columns:minmax(0,1fr) 110px 70px;align-items:center;gap:12px;padding:12px 14px;display:grid}.table-head{background:var(--soft);color:var(--muted);font:800 11px/1 var(--utility);letter-spacing:.08em;text-transform:uppercase}.table-row{border-top:1px solid var(--line)}.empty-state{color:var(--muted);margin:0;padding:18px}.artist-dashboard{grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:16px;display:grid}.artist-hero{min-height:190px;color:var(--text);background:linear-gradient(135deg,#14b8a633,#0000 55%),linear-gradient(90deg,#fff,#fff7ed);grid-column:1/-1;justify-content:space-between;gap:20px;padding:24px;display:flex}.artist-hero p:last-child{max-width:590px;color:var(--body);margin:12px 0 0}.hero-stat{border:1px solid var(--line);background:#fff;border-radius:8px;align-content:center;place-items:center;min-width:142px;height:142px;display:grid}.hero-stat strong{font:900 48px/1 var(--utility)}.hero-stat span{color:var(--muted);font:800 12px/1 var(--utility);letter-spacing:.1em;text-transform:uppercase}.download-panel,.roadmap-panel{padding:18px}.file-row,.roadmap-step{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px;display:grid}.file-row:first-child,.roadmap-step:first-child{border-top:0}.roadmap-step{grid-template-columns:22px minmax(0,1fr) 18px}.roadmap-step.done svg:first-child,.roadmap-step.active svg:first-child{color:var(--teal)}.roadmap-step.next svg:first-child{color:var(--muted)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=1060px){.portal-shell{grid-template-columns:1fr}.side-rail{min-height:auto}.admin-grid,.artist-dashboard{grid-template-columns:1fr;grid-template-areas:"metrics""artists""detail"}.metrics-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.workspace{padding:16px}.top-bar,.artist-hero,.section-heading{flex-direction:column;align-items:stretch}.metrics-row{grid-template-columns:1fr}.search-field{width:100%;min-width:0}.artist-row,.table-head,.table-row,.file-row{grid-template-columns:1fr}.artist-row{justify-items:start}.book-link,.action-strip button,.file-row button{width:100%}}
