@font-face{font-family:DM Sans;src:url("./assets/DMSans-Regular.ttf") format("truetype");font-weight:400;font-display:swap}
@font-face{font-family:DM Sans;src:url("./assets/DMSans-Bold.ttf") format("truetype");font-weight:700;font-display:swap}
:root{color-scheme:dark;font:16px "DM Sans",sans-serif;color:#f7f9ff;background:#0b0e16;--muted:#b9c3d6;--line:#ffffff22;--ink:#111729;--accent:#1d68d6;--panel:#161d2e}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 76% 3%,#263c64 0%,transparent 55%),radial-gradient(ellipse at 3% 74%,#202840 0%,transparent 43%),#0b0e16}
button,input,textarea,select{font:inherit}
button,.button{color:inherit;border:1px solid var(--line);background:#202b42;border-radius:14px;min-height:44px;padding:8px 14px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-weight:700}
button:hover,.button:hover{background:#2a3a56}
button:active,.button:active{opacity:.83}
button:disabled{opacity:.55;cursor:default}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,body:has(#media-input:focus-visible) label[for=media-input]{outline:2px solid #8fc1ff;outline-offset:3px}
.top{display:flex;gap:14px;align-items:center;padding:12px max(20px,calc((100vw - 1216px)/2));border-bottom:1px solid var(--line);background:#111729ba}
.brand{color:inherit;text-decoration:none;font-weight:700;font-size:27px;line-height:44px;letter-spacing:-.07em}.brand span{color:#7bb6ff}
.location{color:var(--muted);border-left:1px solid var(--line);padding-left:14px}
.balance{margin-left:auto;background:#293952;border:1px solid #5b7195;border-radius:999px;padding:6px 12px;font-size:.88rem}
main{max-width:1260px;margin:auto;padding:28px 22px 64px}
.heading,.stage-top,.stage-bottom,.section-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.heading{margin-bottom:18px}
h1,h2,p{margin:0}h1{font-size:clamp(1.55rem,4vw,2.3rem);letter-spacing:-.04em}h2{font-size:1.08rem;letter-spacing:-.025em}
.workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(340px,1fr);gap:16px;align-items:start}
.stage,.glass{border:1px solid var(--line);border-radius:24px;overflow:hidden}
.stage{background:#0d111c;display:grid}
.stage-top,.stage-bottom{padding:10px 16px}.stage-top span{font-size:.85rem;color:var(--muted)}
#media-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.viewport{display:grid;place-items:center;min-height:340px;min-height:clamp(310px,58dvh,680px);background:radial-gradient(ellipse,#242f46,#0a0f19 78%)}
.viewport video,.viewport img{width:auto;max-width:100%;max-height:clamp(310px,58dvh,680px);display:block;object-fit:contain}
.glass{background:linear-gradient(145deg,#34415ba8,#151c2aeb 59%);backdrop-filter:blur(16px);box-shadow:inset 0 1px #ffffff20}
.tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px;gap:4px;border-bottom:1px solid var(--line)}
.tabs button{background:transparent;border-color:transparent;color:var(--muted);font-size:.87rem;padding:6px 2px}
.tabs button[aria-pressed=true]{background:#42619a45;border-color:#6e94cb63;color:#f7fbff}
.pane,.composer{padding:16px;display:grid;gap:10px}
.composer{border-top:1px solid var(--line)}
.hint,.section-head span{font-size:.87rem;line-height:1.45;color:var(--muted)}
.hint:empty{display:none}
.faces,.shots{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.face{display:grid;grid-template-columns:50px minmax(0,1fr) 48px;gap:10px;align-items:center;background:#10172484;border:1px solid var(--line);border-radius:16px;padding:8px}
.face.is-selected{border-color:#79acff}
.face:has(.quiet){grid-template-columns:50px minmax(0,1fr) 48px 44px}
.face img,.reference img{width:44px;height:44px;object-fit:cover;border-radius:50%;display:block}
.face button{padding:0;border-radius:50%;min-width:44px;min-height:44px}
.face button.select-face{background:transparent;border-color:transparent}
.face .reference{font-size:1.45rem;font-weight:400}
.face p{font-size:.8rem;color:var(--muted)}
.quiet{background:transparent;border-color:transparent;color:#d8e7ff}
.primary{background:var(--accent);border-color:#92bdff3b;color:white}
.primary:hover{background:#2673e4}
input:not([type=file]),textarea,select{width:100%;border:1px solid var(--line);border-radius:12px;background:#0d1423b8;color:inherit;padding:10px 12px;min-height:44px}
textarea{resize:vertical}label:not(.button){font-weight:700;font-size:.88rem}
.shots li{display:grid;grid-template-columns:52px minmax(0,1fr) 44px;gap:8px;align-items:center}
.shots button{padding:0}
audio{width:100%}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;clip:rect(0,0,0,0);overflow:hidden;white-space:nowrap}
.projects{margin-top:16px;padding:0 16px}
.projects summary{min-height:48px;padding:14px 0;cursor:pointer;font-weight:700}
.project-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;padding:0;list-style:none}
.project-list a{display:flex;gap:10px;align-items:center;padding:10px;min-height:56px;background:#1118279c;border:1px solid var(--line);border-radius:14px;color:inherit;text-decoration:none}
.project-list a:hover{background:#29344b}
.project-list img{width:32px;height:32px;border-radius:8px;object-fit:contain;background:#fff}
.project-list small{display:block;color:var(--muted);font-size:.8rem}
@media(max-width:800px){main{padding:18px 12px 36px}.workspace{grid-template-columns:1fr}.stage,.glass{border-radius:20px}.viewport{min-height:250px;min-height:44dvh}.viewport video,.viewport img{max-height:44dvh}.top{padding:8px 14px}}
@media(prefers-reduced-transparency:reduce){.glass,.top{background:#1b2438;backdrop-filter:none}}
