@font-face{font-family:Archivo;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/archivo-400-700-0.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/fonts/jetbrains-mono-400-600-0.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-ui);font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-synthesis-weight:none}button,input,textarea,select{font:inherit;color:inherit}button{border:0;background:none;cursor:pointer;padding:0}h1,h2,h3,h4,p,dl,dd,dt{margin:0}svg{display:block}::selection{background:var(--selection);color:var(--selection-ink)}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}input,textarea{caret-color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border-radius:99px;border:3px solid transparent;background-clip:content-box}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover);background-clip:content-box}::-webkit-scrollbar-track{background:transparent}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.spacer{flex:1}.sep{width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.45;display:inline-block;margin:0 2px;vertical-align:middle}.eyebrow{font-size:10.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;color:var(--muted)}:root{--bg: #080a0c;--bg-deep: #050708;--surface: #0e1216;--surface-2: #141a20;--surface-3: #1b232b;--line: #202830;--line-strong: #2c3742;--line-edge: #66757f;--text: #edf2f6;--text-2: #b3bfcb;--muted: #7d8a98;--accent: #3be08a;--accent-ink: #04150c;--accent-soft: rgba(59, 224, 138, .1);--amber: #ffcb3d;--red: #ff6b5a;--blue: #7aa7ff;--selection: rgba(59, 224, 138, .26);--selection-ink: #ffffff;--focus: #3be08a;--scroll-thumb: #2b3742;--scroll-thumb-hover: #3d4b58;--font-ui: "Archivo", system-ui, sans-serif;--font-display: "Archivo", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--radius: 12px;--radius-sm: 8px;--radius-xs: 5px;--h1: 20px;--h1-weight: 600;--h1-track: -.02em;--card-border: 1px solid var(--line);--card-shadow: none;--turf-near: #113525;--turf-far: #081c12;--turf-stripe: rgba(255, 255, 255, .022);--stripe-opacity: 1;--chalk: rgba(235, 245, 240, .34);--chalk-strong: rgba(235, 245, 240, .6);--chalk-opacity: .5;--hash-opacity: .55;--los: rgba(255, 255, 255, .62);--first-down: #ffcb3d;--route: #ffe27a;--rush: #ff9d4d;--off-fill: #f4f8f6;--off-ink: #0a1712;--off-stroke: rgba(0, 0, 0, .35);--def-fill: rgba(255, 92, 76, .2);--def-stroke: #ff7a68;--def-ink: #ffb0a4;--player-label: rgba(255, 255, 255, .62);--turf-oob: #04100a;--oob-opacity: 1;--ink-a: #3be08a;--ink-b: #ffcb3d;--ink-c: #7aa7ff;--ink-d: #ff6b5a;--action-bg: #3be08a;--action-ink: #04150c}.shell{display:grid;grid-template-columns:68px minmax(0,1fr);grid-template-rows:58px minmax(0,1fr);grid-template-areas:"rail top" "rail main";height:100vh;background:var(--bg)}.main{grid-area:main;min-height:0;min-width:0;overflow:hidden}.rail{grid-area:rail;display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 0 12px;border-right:1px solid var(--line);background:var(--bg-deep);z-index:3}.brand{display:flex;align-items:center;gap:10px;margin-bottom:18px}.crest{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;border:1px solid var(--line-strong);color:var(--accent);background:var(--surface)}.crest svg{width:20px;height:20px}.brand-name{display:none;font-family:var(--font-display);font-weight:700;font-size:19px;letter-spacing:-.03em}.rail-items{display:flex;flex-direction:column;gap:2px}.rail-item{position:relative;width:46px;height:46px;display:grid;place-items:center;border-radius:10px;color:var(--muted);transition:color .18s,background .18s}.rail-item span{display:none}.rail-item:hover,.rail-item.on{color:var(--text);background:var(--surface-2)}.rail-item.on:before{content:"";position:absolute;left:-11px;top:12px;bottom:12px;width:2px;border-radius:2px;background:var(--accent)}.rail-foot{margin-top:auto;display:flex;flex-direction:column;align-items:center;gap:8px}.rail-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:10.5px;font-weight:700;color:var(--accent-ink);background:var(--accent);font-family:var(--font-ui);letter-spacing:.02em}.user-chip{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;margin-left:2px}.user-chip:hover{box-shadow:0 0 0 1.5px var(--line-strong)}.topbar{grid-area:top;height:58px;flex:none;display:flex;align-items:center;gap:16px;padding:0 20px 0 18px;border-bottom:1px solid var(--line);background:var(--bg)}.team-switch{display:flex;align-items:center;gap:10px;padding:5px 8px;margin-left:-8px;border-radius:8px;color:var(--muted)}.team-switch:hover{background:var(--surface-2)}.team-badge{width:27px;height:27px;border-radius:7px;display:grid;place-items:center;background:var(--text);color:var(--bg);font-weight:700;font-size:13px}.crumb-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.25;white-space:nowrap}.crumb-text b{font-size:13px;font-weight:600;color:var(--text);letter-spacing:-.01em}.crumb-text em{font-style:normal;font-size:10px;letter-spacing:.06em;color:var(--muted)}.search{display:flex;align-items:center;gap:8px;height:34px;padding:0 9px 0 11px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:min(400px,34vw);margin:0 auto;color:var(--muted);transition:border-color .16s}.search:focus-within{border-color:var(--line-strong)}.search input{flex:1;min-width:0;border:0;background:none;outline:none;font-size:13px;color:var(--text)}.search input::placeholder{color:var(--muted)}.search kbd{font-size:10px;border:1px solid var(--line);padding:1px 5px;border-radius:4px;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:6px}@media(max-width:620px){.topbar{gap:10px;padding:0 14px 0 12px}.crumb-text{display:none}.upload-btn{width:33px;padding:0;justify-content:center}.upload-btn span{display:none}}.upload-btn{display:inline-flex;white-space:nowrap;align-items:center;gap:8px;height:33px;padding:0 13px;border-radius:var(--radius-sm);background:var(--action-bg);color:var(--action-ink);font-weight:600;font-size:12.5px;letter-spacing:-.005em;transition:filter .16s,transform .12s}.upload-btn:hover{filter:brightness(1.07)}.upload-btn:active{transform:translateY(.5px)}.icon-btn{width:31px;height:31px;display:grid;place-items:center;border-radius:var(--radius-xs);color:var(--text-2);transition:background .16s,color .16s}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.icon-btn.primary{background:var(--surface-3);color:var(--text)}.icon-btn.subtle{color:var(--muted);width:26px;height:26px}.bell{position:relative}.bell-dot{position:absolute;top:6px;right:7px;width:5px;height:5px;border-radius:50%;background:var(--red);box-shadow:0 0 0 2px var(--bg)}.btn-solid,.btn-ghost{display:inline-flex;align-items:center;gap:7px;height:33px;padding:0 13px;border-radius:var(--radius-sm);font-size:12.5px;font-weight:600;letter-spacing:-.005em;white-space:nowrap;transition:background .16s,color .16s,border-color .16s,filter .16s}.btn-solid{background:var(--action-bg);color:var(--action-ink)}.btn-solid:hover{filter:brightness(1.07)}.btn-solid:disabled{opacity:.55;cursor:not-allowed;filter:none}.btn-ghost{color:var(--text-2);border:1px solid transparent}.btn-ghost:hover{color:var(--text);background:var(--surface-2);border-color:var(--line)}.btn-ghost.sm,.btn-solid.sm{height:27px;padding:0 10px;font-size:11.5px}.btn-solid.wide{width:100%;justify-content:center;height:38px}.btn-ghost.danger{color:var(--red)}.chip-btn{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 9px;border:1px solid var(--line);border-radius:99px;font-size:11.5px;font-weight:500;color:var(--text-2);background:transparent;transition:background .16s,color .16s}.chip-btn:hover{color:var(--text);background:var(--surface-2)}.avatar{border-radius:50%;display:grid;place-items:center;font-size:10px;font-weight:700;color:#06120c;letter-spacing:.03em;flex:none;font-family:var(--font-ui)}.placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:13px;padding:40px}.ph-icon{width:54px;height:54px;border-radius:14px;display:grid;place-items:center;border:1px solid var(--line);color:var(--muted);margin-bottom:4px}.placeholder h2{font-family:var(--font-display);font-size:22px;letter-spacing:-.02em;font-weight:600}.placeholder p{max-width:44ch;color:var(--text-2);font-size:13.5px;line-height:1.55}.team-badge.has-logo{padding:0;overflow:hidden;background:transparent}.team-badge img{width:100%;height:100%;object-fit:cover;display:block}.room{display:grid;grid-template-columns:minmax(0,1fr) 378px;height:100%;min-height:0}.room-main{display:flex;flex-direction:column;gap:13px;padding:15px 18px 15px 22px;min-width:0;min-height:0;overflow:hidden}.film-head{display:flex;align-items:flex-start;gap:10px;flex:none}.film-head .back{margin:2px 0 0 -8px}.film-title{min-width:0}.film-title h1{font-family:var(--font-display);font-size:calc(var(--h1) + 2px);font-weight:var(--h1-weight);letter-spacing:var(--h1-track);line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.film-meta{display:flex;align-items:center;gap:7px;font-size:11.5px;color:var(--muted);margin-top:4px;white-space:nowrap}.dot-live{width:5px;height:5px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.head-actions{margin-left:auto;display:flex;align-items:center;gap:5px;flex:none}.stage-wrap{display:flex;flex-direction:column;gap:12px;min-height:0;flex:1}.stage{border:var(--card-border);border-radius:var(--radius);overflow:hidden;background:var(--surface);box-shadow:var(--card-shadow);flex:1 1 auto;min-height:260px;display:flex;flex-direction:column}.stage-film{position:relative;flex:1;min-height:0;background:#05100a;overflow:hidden}.stage-film .diagram{width:100%;height:100%}.stage-grade{position:absolute;inset:0;pointer-events:none;background:radial-gradient(115% 85% at 50% 42%,transparent 42%,rgba(0,0,0,.5) 100%)}.stage-grain{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.045),transparent 26%,rgba(0,0,0,.18));mix-blend-mode:soft-light}.hud{position:absolute;display:flex;gap:7px;align-items:center;z-index:2}.hud-tl{top:13px;left:13px}.hud-tr{top:13px;right:13px}.hud-chip{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 9px;border-radius:4px;background:#050c0899;color:#e9f3ec;font-size:10.5px;letter-spacing:.06em;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.hud-chip b{opacity:.4;font-weight:400}.hud-dim{color:#e9f3ec9e}.hud-live{letter-spacing:.1em}.rec-dot{width:5px;height:5px;border-radius:50%;background:var(--red);box-shadow:0 0 0 3px #ff6b5a2e}.scorebug{position:absolute;left:13px;bottom:13px;display:flex;align-items:center;gap:7px;height:30px;padding:0 11px;border-radius:4px;background:#050c089e;color:#fff;font-size:12px;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:2}.sb-team{font-size:10.5px;letter-spacing:.1em;color:#ffffffad}.sb-score{font-size:13.5px;font-weight:500}.sb-div{opacity:.35}.sb-clock{margin-left:5px;padding-left:9px;border-left:1px solid rgba(255,255,255,.18);font-size:10.5px;color:var(--amber)}.dim{opacity:.55}.ink{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}.tool-dock{position:absolute;right:11px;bottom:11px;display:flex;align-items:center;gap:1px;padding:3px;border-radius:8px;background:#050b089e;border:1px solid rgba(255,255,255,.09);-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);z-index:3;opacity:.94;transition:opacity .2s}.tool-dock:hover{opacity:1}.tool{width:27px;height:24px;display:grid;place-items:center;border-radius:5px;color:#ffffffb8;transition:background .15s,color .15s}.tool:hover{color:#fff;background:#ffffff1a}.tool.on{color:var(--accent);background:#3be08a24}.tool.sel{background:#ffffff26;color:#fff}.tool-sep{width:1px;height:15px;background:#ffffff24;margin:0 3px}.swatches{display:flex;gap:4px;padding:0 5px 0 3px}.swatches button{width:11px;height:11px;border-radius:50%;display:block;padding:0;box-shadow:0 0 0 1px #00000059;transition:box-shadow .15s}.swatches button.sel{box-shadow:0 0 0 1.5px #ffffffeb}.stage-play{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;display:grid;place-items:center;background:#040c0880;color:#fff;border:1px solid rgba(255,255,255,.22);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;z-index:3;opacity:0;transform:scale(.92);transition:opacity .22s ease,transform .22s cubic-bezier(.16,.84,.44,1)}.stage-film:hover .stage-play,.stage-play:focus-visible{opacity:1;transform:scale(1)}.transport{flex:none;border-top:1px solid var(--line);padding:7px 12px 11px;background:var(--surface)}.transport-row{display:flex;align-items:center;gap:4px}.time-read{font-size:11px;color:var(--muted);margin-left:7px;letter-spacing:.01em}.time-read b{color:var(--text);font-weight:500}.speed{font-size:10px;color:var(--text-2);border:1px solid var(--line);padding:2px 5px;border-radius:4px;margin-left:9px}.transport-note{font-size:10.5px;letter-spacing:.09em;color:var(--muted);margin-right:3px}.scrub{position:relative;height:30px;margin-top:4px}.scrub-track{position:absolute;left:0;right:0;top:11px;height:3px;background:var(--surface-3);border-radius:99px;cursor:pointer}.scrub-fill{height:100%;background:var(--accent);border-radius:99px;transition:width .08s linear}.scrub-seg{position:absolute;top:18px;height:2px;background:var(--accent);opacity:.32;border-radius:2px}.scrub-note{position:absolute;top:4px;width:15px;height:15px;margin-left:-7.5px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--surface);color:#08140d;z-index:2;transition:transform .16s}.scrub-note:hover{transform:scale(1.18)}.scrub-note.turf{background:var(--accent)}.scrub-note.amber{background:var(--amber)}.scrub-note.blue{background:var(--blue)}.scrub-note.red{background:var(--red)}.scrub-note.active{transform:scale(1.24);box-shadow:0 0 0 2px var(--surface),0 0 0 3px currentColor}.scrub-head{position:absolute;top:6px;width:2px;height:13px;margin-left:-1px;background:var(--text);border-radius:1px;box-shadow:0 0 0 2px var(--surface);z-index:3;pointer-events:none}.strip{flex:none;border:var(--card-border);border-radius:var(--radius);background:var(--surface);padding:9px 12px 10px;box-shadow:var(--card-shadow)}.strip-head{display:flex;align-items:center;gap:9px;margin-bottom:7px}.strip-count{font-size:10.5px;letter-spacing:.08em;color:var(--muted)}.strip-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:1px;scrollbar-width:none}.strip-row::-webkit-scrollbar{display:none}.play-card{flex:none;width:156px;text-align:left;padding:7px 10px 8px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);transition:border-color .16s,background .16s}.play-card:hover{border-color:var(--line-strong)}.play-card.on{border-color:var(--accent);background:var(--accent-soft)}.pc-top{display:flex;justify-content:space-between;font-size:10.5px;letter-spacing:.07em;color:var(--muted)}.play-card.on .pc-top{color:var(--accent)}.pc-time{opacity:.65}.pc-concept{font-size:13px;font-weight:600;letter-spacing:-.01em;margin:3px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-foot{display:flex;justify-content:space-between;gap:6px;font-size:10.5px;color:var(--muted);letter-spacing:.02em}.pc-foot>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gain.pos{color:var(--accent)}.gain.zero{color:var(--muted)}.gain.big{color:var(--amber)}.panel{border-left:1px solid var(--line);background:var(--surface);display:flex;flex-direction:column;min-height:0;overflow:hidden}.panel-tabs{display:flex;height:47px;padding:0 12px;border-bottom:1px solid var(--line);gap:1px;flex:none}.panel-tabs button{position:relative;padding:0 10px;font-size:12.5px;font-weight:500;color:var(--muted);display:flex;align-items:center;gap:6px;transition:color .16s}.panel-tabs button:hover{color:var(--text-2)}.panel-tabs button.on{color:var(--text)}.panel-tabs button.on:after{content:"";position:absolute;left:9px;right:9px;bottom:-1px;height:2px;border-radius:2px;background:var(--accent)}.tab-count{font-size:10px;padding:1px 4px;border-radius:3px;background:var(--surface-3);color:var(--text-2);letter-spacing:0}.panel-tabs button.on .tab-count{background:var(--accent-soft);color:var(--accent)}.composer{padding:11px 14px 10px;border-bottom:1px solid var(--line);flex:none}.composer-meta{display:flex;align-items:center;gap:6px;font-size:10.5px;letter-spacing:.08em;color:var(--muted);margin-bottom:7px}.composer-ink{display:flex;gap:4px}.composer-ink button{width:9px;height:9px;border-radius:50%;display:block;padding:0;opacity:.45;transition:opacity .15s}.composer-ink button:hover{opacity:.85}.composer-ink button.sel{opacity:1;box-shadow:0 0 0 1.5px var(--surface),0 0 0 2.5px currentColor;color:var(--accent)}.composer textarea{width:100%;resize:none;background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;font-size:12.5px;line-height:1.5;color:var(--text);outline:none;transition:border-color .16s,box-shadow .16s}.composer textarea::placeholder{color:var(--muted)}.composer textarea:focus{border-color:var(--line-strong);box-shadow:0 0 0 3px var(--accent-soft)}.composer-actions{display:flex;align-items:center;gap:6px;margin-top:8px}.notes-list{overflow-y:auto;padding:0 14px 22px;flex:1;min-height:0}.note{display:flex;gap:10px;padding:13px 0 14px;border-bottom:1px solid var(--line)}.note:last-of-type{border-bottom:0}.note-gutter{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:1px}.time-chip{font-size:10.5px;font-weight:500;padding:2px 5px;border-radius:4px;background:var(--surface-3);color:var(--text-2);border:1px solid transparent;transition:background .16s,color .16s}.time-chip:hover{border-color:var(--line-strong)}.note.turf .time-chip{color:var(--accent)}.note.amber .time-chip{color:var(--amber)}.note.blue .time-chip{color:var(--blue)}.note.red .time-chip{color:var(--red)}.note.active .time-chip{background:var(--accent);color:var(--accent-ink)}.note.active .note-line{background:var(--accent);opacity:.4}.note-line{width:1px;flex:1;min-height:10px;background:var(--line)}.note-body{flex:1;min-width:0}.note-head{display:flex;align-items:center;gap:8px}.who{display:flex;flex-direction:column;line-height:1.25;flex:1;min-width:0}.who .name{font-size:12px;font-weight:600;letter-spacing:-.005em}.who .when{font-size:11px;color:var(--muted)}.note-text{font-size:13.2px;line-height:1.56;color:var(--text-2);margin:7px 0 0}.sketch-card{display:flex;align-items:center;gap:9px;margin-top:9px;padding:4px 9px 4px 4px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;text-align:left;transition:border-color .16s}.sketch-card:hover{border-color:var(--line-strong)}.sketch-card span{font-size:10px;letter-spacing:.08em;color:var(--muted)}.sketch-thumb{position:relative;width:84px;height:47px;border-radius:3px;overflow:hidden;background:#0a1a11;flex:none}.sketch-thumb svg{position:absolute;inset:0;width:100%;height:100%}.note-foot{display:flex;gap:2px;margin-top:8px;margin-left:-6px}.foot-btn{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);padding:3px 6px;border-radius:5px;transition:background .16s,color .16s}.foot-btn:hover{background:var(--surface-2);color:var(--text-2)}.foot-btn.done{color:var(--accent)}.list-end{text-align:center;font-size:9.5px;letter-spacing:.16em;color:var(--muted);padding:16px 0 0;opacity:.65}.tags-pane{padding:12px 14px 22px;overflow-y:auto;flex:1;min-height:0}.filter-row{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:11px}.tag-table{border-top:1px solid var(--line)}.tt-head,.tt-row{display:grid;grid-template-columns:42px 38px minmax(0,1fr) 58px;gap:8px;align-items:center}.tt-head{padding:7px 2px;font-size:9.5px;letter-spacing:.11em;color:var(--muted);border-bottom:1px solid var(--line)}.tt-row{position:relative;width:100%;text-align:left;padding:8px 26px 8px 2px;cursor:pointer;border-bottom:1px solid var(--line);font-size:12px;color:var(--text-2);transition:background .14s}.tt-row:hover{background:var(--surface-2)}.tt-row.on{background:var(--accent-soft)}.tt-row em{display:block;font-style:normal;font-size:10.5px;color:var(--muted);margin-top:1px}.res{text-align:right;font-size:10.5px;color:var(--muted);white-space:nowrap}.res.big{color:var(--accent)}.add-row{width:100%;margin-top:12px;height:34px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--muted);font-size:12px;display:flex;align-items:center;justify-content:center;gap:6px;transition:color .16s,border-color .16s}.add-row:hover{color:var(--text);border-color:var(--muted)}.info-pane{padding:14px 14px 24px;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:18px}.info-block{display:flex;flex-direction:column;gap:7px}.info-block dl{display:flex;flex-direction:column}.info-block dl>div{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-bottom:1px solid var(--line);font-size:12px}.info-block dt{color:var(--muted);flex:none}.info-block dd{color:var(--text-2);text-align:right;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pill{font-size:10px;padding:2px 6px;border-radius:3px;font-weight:500}.pill.ok{color:var(--accent);background:var(--accent-soft)}.share-row{display:flex;flex-wrap:wrap;gap:6px}.share-chip{display:flex;align-items:center;gap:6px;padding:3px 9px 3px 4px;border:1px solid var(--line);border-radius:99px;font-size:11.5px;color:var(--text-2)}.share-chip.add{padding:4px 9px;color:var(--muted)}.info-actions{display:flex;flex-direction:column;gap:1px;align-items:stretch}.info-actions .btn-ghost{justify-content:flex-start;width:100%;border:0;height:31px}@keyframes ink-in{0%{opacity:0;transform:translateY(3px)}}.player{animation:ink-in .42s cubic-bezier(.16,.84,.44,1) backwards}.route{animation:ink-in .6s cubic-bezier(.16,.84,.44,1) backwards}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media(max-width:1180px){.room{display:flex;flex-direction:column;overflow:auto}.panel{border-left:0;border-top:1px solid var(--line);min-height:440px}.notes-list{max-height:420px}}@media(max-width:900px){.search{display:none}.film-head h1{font-size:18px}.head-actions .btn-ghost,.transport-note{display:none}}.tt-del{position:absolute;right:0;top:50%;transform:translateY(-50%);width:22px;height:22px;display:grid;place-items:center;border-radius:4px;color:var(--muted);opacity:0;transition:opacity .14s,color .14s,background .14s}.tt-row:hover .tt-del,.tt-row:focus-within .tt-del,.tt-del:focus-visible{opacity:1}.tt-del:hover{color:var(--red);background:color-mix(in srgb,var(--red) 12%,transparent)}.snap-rail{flex:none;border:var(--card-border);border-radius:var(--radius);background:var(--surface);padding:9px 12px 10px;box-shadow:var(--card-shadow)}.snap-rail .strip-head{margin-bottom:7px}.rail-move{display:inline-flex;align-items:center;gap:4px;font-size:9.5px;letter-spacing:.09em;color:var(--muted)}.rail-move button{width:26px;height:26px;display:grid;place-items:center;border-radius:4px;color:var(--muted)}.rail-move button:hover:not(:disabled){color:var(--text);background:var(--surface-3)}.rail-move button:disabled{opacity:.3}.rail-move b{color:var(--text-2);font-weight:600;letter-spacing:.07em}.rail-body{display:flex;align-items:stretch;gap:10px;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.rail-body::-webkit-scrollbar{height:6px}.rail-body::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:99px}.drive-block{display:flex;align-items:stretch;gap:8px;flex:none;padding-right:10px;border-right:1px solid var(--line)}.drive-block:last-child{border-right:0;padding-right:0}.drive-tag{width:66px;flex:none;display:flex;flex-direction:column;justify-content:center;gap:1px;padding-left:8px;border-left:2px solid var(--accent)}.dt-kicker{font-size:9px;letter-spacing:.14em;color:var(--muted)}.dt-num{font-family:var(--font-display);font-size:20px;line-height:1;letter-spacing:-.02em}.dt-meta{font-size:9.5px;letter-spacing:.05em;color:var(--muted)}.drive-snaps{display:flex;gap:7px}.snap-card{position:relative;flex:none;width:132px;text-align:left;padding:4px 4px 5px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);cursor:pointer;transition:border-color .16s,background .16s}.snap-card:hover{border-color:var(--line-strong)}.snap-card.on{border-color:var(--accent);background:var(--accent-soft)}.snap-card:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.sc-fig{position:relative;height:64px;border-radius:3px;overflow:hidden;background:#05100a;margin-bottom:4px}.sc-fig img{width:100%;height:100%;object-fit:cover;display:block}.sc-fig .diagram{width:100%;height:100%}.sc-blank{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-size:12px}.sc-idx{position:absolute;left:4px;top:3px;padding:0 3px;border-radius:2px;font-size:9px;letter-spacing:.08em;color:#ffffffd1;background:#00000085}.sc-time{position:absolute;right:4px;bottom:3px;padding:0 3px;border-radius:2px;font-size:9px;color:#ffffffdb;background:#00000094}.sc-notes{position:absolute;left:4px;bottom:3px;display:inline-flex;align-items:center;gap:2px;padding:0 3px;border-radius:2px;font-size:9px;color:var(--ink-b);background:#0000009e}.sc-line{padding:0 2px;font-size:11.5px;font-weight:600;letter-spacing:-.005em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.snap-card.on .sc-line{color:var(--accent)}.sc-foot{display:flex;justify-content:space-between;gap:4px;padding:1px 2px 0;font-size:9.5px;letter-spacing:.05em;color:var(--muted)}.sc-res{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-untagged{opacity:.65;letter-spacing:.1em}.rail-empty{display:flex;align-items:center;gap:12px;padding:8px 4px 4px;font-size:12px;color:var(--muted)}.rail-empty .btn-solid{margin-left:auto}.scope-row{display:flex;gap:2px;padding:0 12px 8px;flex:none}.scope-row button{flex:1;height:27px;display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:11px;border:1px solid var(--line);border-radius:4px;color:var(--muted);background:var(--surface-2)}.scope-row button.on{color:var(--text);border-color:var(--line-strong);background:var(--surface-3)}.scope-row button .mono{font-size:9.5px;opacity:.7}.note-snap{display:inline-flex;align-items:center;gap:4px;margin:0 0 6px;padding:2px 5px;font-size:8.5px;letter-spacing:.07em;color:var(--muted);border:1px solid var(--line);border-radius:3px}.note-snap:hover{color:var(--text);border-color:var(--line-strong)}.note-snap.on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.tag-snap-head{display:flex;align-items:center;justify-content:space-between;padding:0 0 10px}.tag-snap-head .mono{font-size:10px;color:var(--muted)}.clip-tags{display:flex;flex-direction:column;gap:8px}.clip-tag{position:relative;padding:9px 10px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.ct-top{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.07em;color:var(--muted)}.ct-dnd{color:var(--text-2)}.ct-res{margin-left:auto;font-size:11px}.ct-res.big{color:var(--amber)}.ct-main{display:flex;justify-content:space-between;align-items:baseline;gap:8px;margin-top:4px}.ct-main b{font-size:14px;font-weight:600}.ct-sub{margin-top:2px;font-size:9.5px;letter-spacing:.06em;color:var(--muted)}.tt-del.show{position:static;transform:none;opacity:1;width:20px;height:20px}.inline-stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:99px;background:var(--surface-2)}.inline-stepper button{width:24px;height:24px;display:grid;place-items:center;color:var(--muted)}.inline-stepper button:disabled{opacity:.3}.inline-stepper b{padding:0 5px;font-size:11px}@media(max-width:1180px){.room{display:flex;flex-direction:column;height:100%;overflow-y:auto}.room-main{flex:none;overflow:visible}.stage-wrap,.stage{flex:none}.stage-film{flex:none;aspect-ratio:16 / 9;max-height:calc(100vh - 400px)}.panel{flex:none;min-height:460px}}.snap-card[draggable=true]{cursor:grab}.snap-card.dragging{opacity:.4}.snap-card.drop-before{box-shadow:-3px 0 0 var(--accent)}.snap-card.drop-after{box-shadow:3px 0 0 var(--accent)}.pos-dd{display:flex;align-items:center;gap:8px}.pos-move{border-color:#4e5c69}.rail-status{display:inline-flex;align-items:center;gap:6px;max-width:46%;padding:2px 4px 2px 10px;border:1px solid var(--line-strong);border-radius:999px;background:var(--surface-3);font-size:10px;letter-spacing:.05em;color:var(--text-2)}.rail-status .rs-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-status button{display:inline-flex;align-items:center;gap:3px;height:24px;padding:0 6px;border-radius:999px;font-size:9.5px;letter-spacing:.08em;color:var(--text-2)}.rail-status button:hover{color:var(--text);background:var(--surface-2)}.rail-status .rs-x{width:24px;padding:0;justify-content:center}.snap-card.picked{border-color:var(--text-2);background:color-mix(in srgb,var(--surface-3) 80%,transparent)}.snap-card.picked.on{border-color:var(--accent)}.rail-clear{height:26px;padding:0 4px;font-size:9.5px;letter-spacing:.08em;color:var(--text-2);border-bottom:1px solid var(--line-strong)}.sc-pick{position:absolute;right:4px;top:3px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;background:var(--text);color:var(--bg)}.film-head.editing{align-items:flex-start}.film-title-edit{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.title-input{width:100%;padding:4px 8px;border:1px solid var(--line-strong);border-radius:6px;background:var(--surface-2);color:var(--text);font-family:var(--font-display);font-size:20px;font-weight:600;letter-spacing:-.02em}.film-edit-row{display:flex;flex-wrap:wrap;gap:8px}.film-edit-row label{display:flex;flex-direction:column;gap:3px;font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.film-edit-row input,.film-edit-row select{height:28px;padding:0 7px;border:1px solid var(--line-strong);border-radius:5px;background:var(--surface-2);color:var(--text);font-size:12px}.film-edit-row input[type=date]{color-scheme:dark}.title-edit{width:24px;height:24px;margin-left:6px;vertical-align:2px;color:var(--muted)}.title-edit:hover{color:var(--text)}.book{height:100%;min-height:0}.book-main{height:100%;overflow-y:auto;padding:20px 24px 28px 22px;min-width:0}.page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.page-head h1{font-family:var(--font-display);font-size:23px;font-weight:600;letter-spacing:-.025em;line-height:1.15}.page-sub{margin-top:7px;color:var(--muted);font-size:12.5px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;max-width:72ch;line-height:1.5}.page-meta{display:flex;align-items:center;gap:9px;margin-top:9px;font-size:10.5px;letter-spacing:.04em;color:var(--muted);text-transform:uppercase}.book-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0;margin-top:4px;border-bottom:1px solid var(--line)}@media(max-width:620px){.book-toolbar .btn-ghost{display:none}.pd-meta{gap:2px 12px}.pd-meta .sep{display:none}.pd-meta>span{white-space:nowrap}}.seg{display:flex;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:2px}.seg button{padding:5px 11px;white-space:nowrap;font-size:12px;font-weight:500;border-radius:6px;color:var(--muted);transition:background .16s,color .16s}.seg button:hover{color:var(--text-2)}.seg button.on{background:var(--surface-3);color:var(--text)}.play-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}@media(min-width:1620px){.play-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.play-tile{border:var(--card-border);border-radius:var(--radius);background:var(--surface);overflow:hidden;text-align:left;box-shadow:var(--card-shadow);transition:border-color .18s,transform .18s}.play-tile:hover{border-color:var(--line-strong)}.play-tile.on{border-color:var(--accent)}.tile-fig{position:relative;aspect-ratio:16 / 9;overflow:hidden;background:var(--turf-near);border-bottom:1px solid var(--line)}.tile-fig .diagram{width:100%;height:100%}.tile-install{position:absolute;top:8px;left:8px;font-size:10.5px;letter-spacing:.12em;color:#fff9;background:#00000061;padding:2px 5px;border-radius:3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tile-body{padding:10px 12px 11px}.tile-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.tile-top h3{font-size:14px;font-weight:600;letter-spacing:-.01em}.fam{font-size:10.5px;letter-spacing:.09em;text-transform:uppercase;padding:2px 5px;border-radius:3px;background:var(--surface-3);color:var(--text-2);white-space:nowrap;flex:none}.fam-run{color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.fam-pass{color:var(--blue);background:color-mix(in srgb,var(--blue) 14%,transparent)}.fam-play-action{color:var(--amber);background:color-mix(in srgb,var(--amber) 15%,transparent)}.tile-sub{font-size:10px;color:var(--muted);margin-top:4px;letter-spacing:.02em}.tile-foot{display:flex;align-items:center;justify-content:space-between;margin-top:9px;padding-top:8px;border-top:1px solid var(--line);font-size:11px;color:var(--text-2)}.play-tile.new .tile-fig.blank{display:grid;place-items:center;color:var(--muted);background:var(--surface-2)}.play-tile.new:hover .tile-fig.blank{color:var(--text-2)}.play-tile.new .tile-body h3{font-size:13px;color:var(--text-2)}@media(max-width:1180px){.play-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:820px){.play-grid{grid-template-columns:minmax(0,1fr)!important}}.fam-front{color:var(--chalk-strong);background:color-mix(in srgb,var(--chalk-strong) 12%,transparent)}.fam-fit{color:var(--teal, #7fe0d4);background:color-mix(in srgb,var(--teal, #7fe0d4) 13%,transparent)}.fam-pressure{color:var(--def-stroke);background:color-mix(in srgb,var(--def-stroke) 14%,transparent)}.fam-coverage{color:var(--amber);background:color-mix(in srgb,var(--amber) 14%,transparent)}.fam-over{color:var(--chalk-strong);background:color-mix(in srgb,var(--chalk-strong) 12%,transparent)}.fam-tite{color:#7fe0d4;background:color-mix(in srgb,#7fe0d4 13%,transparent)}.pd{height:100%;overflow-y:auto;padding:18px 24px 40px}.pd-head{display:flex;align-items:flex-start;gap:18px;padding-bottom:14px;border-bottom:1px solid var(--line)}.pd-back{display:inline-flex;align-items:center;gap:5px;margin-top:3px;padding:6px 10px 6px 7px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font-size:12px;cursor:pointer}.pd-back:hover{color:var(--text);border-color:color-mix(in srgb,var(--line) 60%,var(--text) 20%)}.pd-title{flex:1;min-width:0}.pd-title h1{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.025em;line-height:1.15}.pd-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:6px;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.pd-actions{display:flex;align-items:center;gap:8px}.pd-body{display:grid;grid-template-columns:minmax(0,1fr) 392px;gap:22px;align-items:start;margin-top:18px}.pd-stage{min-width:0}.pd-field{position:relative;aspect-ratio:16 / 9;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--turf-far)}.pd-diagram{width:100%;height:100%;display:block}.pd-call-flag{position:absolute;top:10px;left:12px;display:inline-flex;align-items:baseline;gap:7px;padding:5px 9px;border-radius:6px;background:color-mix(in srgb,var(--bg) 72%,transparent);border:1px solid color-mix(in srgb,var(--rush) 45%,transparent);color:var(--rush);font-size:11px;letter-spacing:.08em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.pd-call-flag b{color:var(--text);letter-spacing:.1em}.pd-legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;margin-top:11px;min-height:18px;font-size:11.5px;color:var(--muted)}.pd-legend.dim{color:var(--text-2)}.pd-legend-item{display:inline-flex;align-items:center;gap:7px}.pd-legend-item i{width:7px;height:7px;border-radius:50%;background:var(--rush);display:inline-block}.pd-legend-item b{color:var(--text);font-weight:500}.pd-legend-warn{color:#ffb27a}.pd-side{display:flex;flex-direction:column;gap:12px;min-width:0}.pd-block{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px 15px 15px}.pd-eyebrow{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:500}.pd-block-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.pd-facts{margin:11px 0 0;display:grid;gap:8px}.pd-facts>div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent);padding-top:8px}.pd-facts>div:first-child{border-top:0;padding-top:0}.pd-facts dt{font-size:11.5px;color:var(--muted)}.pd-facts dd{margin:0;font-size:12.5px;text-align:right;color:var(--text)}.pd-notes{margin-top:9px;font-size:12.5px;line-height:1.6;color:color-mix(in srgb,var(--text) 88%,var(--muted))}.seg.sm button{padding:4px 10px;min-height:24px;font-size:11px}.call-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin-top:12px}.call-chip{display:flex;flex-direction:column;align-items:flex-start;gap:3px;padding:8px 9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);cursor:pointer;text-align:left}.call-chip:hover{border-color:color-mix(in srgb,var(--rush) 40%,var(--line))}.call-chip b{font-family:var(--font-mono);font-size:11px;font-weight:600;letter-spacing:.05em}.call-chip span{font-size:10.5px;color:var(--muted);letter-spacing:.1em}.call-chip.on{border-color:color-mix(in srgb,var(--rush) 70%,transparent);background:color-mix(in srgb,var(--rush) 12%,var(--surface-2))}.call-chip.on span{color:var(--rush)}.call-editor{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.call-editor-head{display:flex;align-items:center;justify-content:flex-start;gap:8px}.call-editor-head span{margin-left:auto}.call-editor-head b{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em}.call-editor-head span{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.digit-row{display:grid;grid-template-columns:repeat(3,56px);gap:8px;margin-top:11px}.digit{display:flex;flex-direction:column;gap:5px}.digit input{width:56px;height:46px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text);font-family:var(--font-mono);font-size:19px;text-align:center;caret-color:var(--rush)}.digit input:focus{outline:none;border-color:var(--rush)}.digit.filled input{border-color:color-mix(in srgb,var(--rush) 45%,var(--line));color:var(--rush)}.digit input:disabled{opacity:.45;cursor:not-allowed}.digit>span{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);text-align:center}.digit-keys{display:flex;flex-wrap:wrap;gap:4px 12px;margin-top:9px;font-size:10px;letter-spacing:.04em;color:color-mix(in srgb,var(--muted) 85%,transparent)}.call-read{margin-top:9px;font-size:12px;line-height:1.5;color:color-mix(in srgb,var(--text) 85%,var(--muted))}.sibling-list{display:flex;flex-direction:column;margin-top:8px}.sibling{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 4px;border:0;border-top:1px solid color-mix(in srgb,var(--line) 60%,transparent);background:none;color:var(--text);font-size:12px;text-align:left;cursor:pointer}.sibling:first-child{border-top:0}.sibling:hover{color:var(--accent)}.pd-missing{display:grid;place-items:center}@media(max-width:1180px){.pd-body{grid-template-columns:minmax(0,1fr)}.pd-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.pd{padding:14px 16px 32px}.pd-head{flex-wrap:wrap}.pd-side{grid-template-columns:minmax(0,1fr)}.call-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.call-saved{margin-left:8px;font-size:11px;color:var(--muted);letter-spacing:.04em}.call-clear{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--line);border-radius:5px;background:none;color:var(--muted);cursor:pointer}.call-clear:hover{color:var(--text);border-color:var(--muted)}.app{min-height:100vh;background:var(--bg);color:var(--text)}.splash{height:100vh;display:grid;place-items:center;align-content:center;gap:18px}.spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-strong);border-top-color:var(--accent);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.room-loading{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--muted)}.room-loading .mono{font-size:10.5px;letter-spacing:.16em}.login{display:grid;grid-template-columns:1.05fr .95fr;height:100vh}.login-art{position:relative;overflow:hidden;border-right:1px solid var(--line);background:var(--turf-far)}.login-field{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);aspect-ratio:16 / 9;opacity:.9}.login-field .diagram{width:100%;height:100%}.login-art-veil{position:absolute;inset:0;background:linear-gradient(180deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 40%,transparent) 16%,transparent 34%,transparent 66%,color-mix(in srgb,var(--bg) 55%,transparent) 86%,var(--bg) 100%),radial-gradient(90% 70% at 50% 50%,transparent 30%,color-mix(in srgb,var(--bg) 55%,transparent))}.login-brand{position:absolute;top:34px;left:36px;display:flex;align-items:center;gap:12px}.login-brand .brand-name{display:block;font-size:21px}.login-panel{display:grid;place-items:center;padding:48px 40px}.login-form{width:min(360px,100%);display:flex;flex-direction:column;gap:13px}.login-form h1{font-family:var(--font-display);font-size:31px;line-height:1.12;letter-spacing:-.032em;font-weight:600}.login-sub{color:var(--muted);font-size:13px;line-height:1.5;margin:2px 0 10px;max-width:34ch}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:600;color:var(--muted)}.field input,.field select{height:40px;padding:0 12px;background:var(--surface);border:1px solid var(--line-edge);border-radius:var(--radius-sm);color:var(--text);font-size:13.5px;outline:none;transition:border-color .16s,box-shadow .16s;width:100%}.field input::placeholder{color:var(--muted)}.field input:focus,.field select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.login-submit{height:42px;justify-content:center;margin-top:4px;font-size:13px}.demo-btn{justify-content:center;height:38px;border:1px dashed var(--line-strong)}.login-note{text-align:center;font-size:10px;letter-spacing:.08em;color:var(--muted);margin-top:2px}.form-error{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid color-mix(in srgb,var(--red) 38%,transparent);background:color-mix(in srgb,var(--red) 9%,transparent);color:var(--red);border-radius:var(--radius-sm);font-size:12px;line-height:1.4}.form-error.small{padding:6px 8px;font-size:11.5px;margin-top:7px}.library{height:100%;overflow-y:auto;padding:22px 26px 30px}.lib-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:16px}.lib-head h1{font-family:var(--font-display);font-size:25px;font-weight:600;letter-spacing:-.028em;line-height:1.15}.lib-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding-bottom:13px;border-bottom:1px solid var(--line)}.lib-search{display:flex;align-items:center;gap:8px;color:var(--muted);border-bottom:1px solid var(--line-strong);padding:3px 2px;width:210px}.lib-search input{border:0;background:none;outline:none;font-size:12.5px;color:var(--text);width:100%}.lib-search input::placeholder{color:var(--muted)}.lib-search:focus-within{border-color:var(--accent)}.lib-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}@media(max-width:1360px){.lib-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.lib-grid{grid-template-columns:minmax(0,1fr)}}.film-card{border:var(--card-border);border-radius:var(--radius);background:var(--surface);overflow:hidden;text-align:left;box-shadow:var(--card-shadow);transition:border-color .18s,background .18s}.film-card:hover{border-color:var(--line-strong)}.film-fig{position:relative;aspect-ratio:16 / 9;background:var(--turf-near);border-bottom:1px solid var(--line);overflow:hidden}.film-fig .diagram,.film-fig img{width:100%;height:100%;object-fit:cover;display:block}.film-kind{position:absolute;top:9px;left:9px;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:2px 6px;border-radius:3px;background:#00000080;color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.film-dur{position:absolute;bottom:9px;right:9px;font-size:10.5px;padding:2px 6px;border-radius:3px;background:#0000008c;color:#fff}.film-status{position:absolute;inset:0;display:grid;place-items:center;background:#04080a8c;color:#fff;font-size:10px;letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.film-body{padding:10px 12px 12px}.film-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.film-row h3{font-size:14px;font-weight:600;letter-spacing:-.012em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.film-notes{display:flex;align-items:center;gap:4px;font-size:10.5px;color:var(--muted);flex:none}.film-sub{margin-top:4px;font-size:11px;color:var(--muted);display:flex;align-items:center;gap:6px}.film-card.new .film-fig.blank{display:grid;place-items:center;color:var(--muted);background:var(--surface-2)}.film-card.new:hover .film-fig.blank,.film-card.new .film-row h3{color:var(--text-2)}.lib-empty{height:calc(100% - 150px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;text-align:center}.lib-empty h2{font-family:var(--font-display);font-size:21px;letter-spacing:-.02em}.lib-empty p{max-width:44ch;font-size:13px;line-height:1.55;color:var(--text-2)}.lib-blank{width:100%;height:100%;background:var(--turf-near)}.dlg-scrim{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:24px;background:#04070999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade .18s ease-out}@keyframes fade{0%{opacity:0}}.dlg{width:min(580px,100%);max-height:90vh;overflow-y:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 30px 80px #0000008c;padding:18px 20px 16px;display:flex;flex-direction:column;gap:14px;animation:rise .24s cubic-bezier(.16,.84,.44,1)}@keyframes rise{0%{opacity:0;transform:translateY(8px) scale(.99)}}.dlg-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dlg-head h2{font-family:var(--font-display);font-size:21px;font-weight:600;letter-spacing:-.025em}.dlg-sub{margin-top:5px;font-size:12.5px;line-height:1.5;color:var(--muted);max-width:48ch}.drop{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:16px;border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--muted);cursor:pointer;transition:border-color .16s,background .16s}.drop:hover,.drop.over{border-color:var(--accent);background:var(--accent-soft)}.drop b{display:block;color:var(--text);font-size:13px;font-weight:600}.drop.has-file b{max-width:330px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drop .mono{font-size:10px;letter-spacing:.05em}.drop-thumb{width:78px;height:45px;flex:none;border-radius:3px;overflow:hidden;background:#000;display:grid;place-items:center}.drop-thumb img{width:100%;height:100%;object-fit:cover}.drop-info{flex:1;min-width:0}.drop-swap{margin-left:auto;font-size:11px;color:var(--text-2);border-bottom:1px solid var(--line-strong)}.dlg-fields{display:grid;grid-template-columns:minmax(0,1fr) 132px;align-items:start;gap:12px}.dlg-fields .field:nth-child(3){grid-column:1 / -1}.seg.tight{display:flex;flex-wrap:wrap;gap:2px;padding:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm)}.seg.tight button{padding:5px 9px;font-size:11.5px;border-radius:3px;color:var(--muted)}.seg.tight button.on{background:var(--surface-3);color:var(--text)}.progress{position:relative;height:26px;border:1px solid var(--line);border-radius:99px;overflow:hidden;display:grid;place-items:center}.progress-bar{position:absolute;left:0;top:0;bottom:0;background:var(--accent-soft);border-right:1px solid var(--accent);transition:width .2s}.progress span{position:relative;font-size:10.5px;letter-spacing:.08em;color:var(--text-2)}.dlg-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px;padding-top:2px}.dlg-clips{width:min(740px,100%)}.dlg-fields-tight{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 12px}.dlg-fields-tight .grow-2{grid-column:1 / -1}.snap-drop{gap:10px;padding:10px 12px;border-color:var(--line-edge);cursor:default}.snap-drop.has-file{border-style:solid;border-color:var(--line-strong)}.snap-drop.over{border-color:var(--accent)}.drop-target{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:4px 2px;text-align:left;color:var(--muted);border-radius:var(--radius-sm)}.drop-target:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.drop-count{width:44px;height:34px;flex:none;display:grid;place-items:center;font-size:16px;font-weight:600;color:var(--accent);background:var(--accent-soft);border:1px solid color-mix(in srgb,var(--accent) 34%,transparent);border-radius:5px}.drop-folder{margin-left:auto}.q-summary{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:-2px 0 -4px}.q-stat{font-size:11px;letter-spacing:.06em;color:var(--muted)}.q-stat.bad{color:var(--red)}.q-list{max-height:min(42vh,360px);overflow-y:auto;border:1px solid var(--line-strong);border-top:0;border-radius:0 0 var(--radius-sm) var(--radius-sm);background:var(--surface-2)}.q-head,.q-row{display:grid;grid-template-columns:26px 24px 34px minmax(0,1fr) 54px 86px 56px;align-items:center;gap:8px;padding:0 10px}.q-head{height:30px;font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line-strong);border-bottom:1px solid var(--line);border-radius:var(--radius-sm) var(--radius-sm) 0 0;background:var(--surface)}.q-row{position:relative;min-height:46px;padding-top:5px;padding-bottom:5px;border-bottom:1px solid var(--line)}.q-row:hover{background:color-mix(in srgb,var(--surface-3) 60%,transparent)}.q-row.sel{background:var(--surface-3);box-shadow:inset 2px 0 var(--accent)}.q-row:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.q-row:last-child{border-bottom:0}.q-group{display:flex;align-items:baseline;gap:7px;padding:9px 10px 5px;background:var(--surface);border-bottom:1px solid var(--line)}.qg-kicker{font-size:10.5px;letter-spacing:.14em;color:var(--muted)}.qg-num{font-size:12px}.qg-meta{font-size:9.5px;letter-spacing:.05em;color:var(--muted)}.qg-src{margin-left:auto;max-width:45%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;color:var(--text-2)}.q-num{font-size:10px;color:var(--muted)}.q-series{display:grid;place-items:center;height:18px;border-radius:3px;font-size:10px;letter-spacing:.04em;color:var(--text-2);background:var(--surface-3)}.q-thumb{width:34px;height:20px;display:grid;place-items:center;overflow:hidden;border-radius:3px;background:#05100a;color:var(--muted)}.q-thumb img{width:100%;height:100%;object-fit:cover;display:block}.q-name{display:flex;flex-direction:column;min-width:0}.q-name b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;font-weight:600}.q-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10.5px;letter-spacing:.03em;color:var(--muted)}.q-size{font-size:10.5px;color:var(--muted);text-align:right}.q-state{display:flex;align-items:center;justify-content:flex-end;gap:6px}.q-bar{position:relative;width:34px;height:4px;border-radius:2px;overflow:hidden;background:var(--surface-3)}.q-bar span{position:absolute;inset:0 auto 0 0;background:var(--accent);transition:width .15s linear}.q-label{min-width:46px;text-align:right;font-size:10.5px;letter-spacing:.06em;color:var(--muted)}.q-row.done .q-label{color:var(--accent)}.q-row.error{background:color-mix(in srgb,var(--red) 6%,transparent)}.q-row.error .q-label{color:var(--red)}.q-act{display:flex;justify-content:flex-end;gap:2px}.q-act .icon-btn{width:26px;height:26px}.q-ok{display:grid;place-items:center;width:26px;height:26px;color:var(--accent)}.q-error{grid-column:1 / -1;padding:0 0 3px;font-size:11.5px;line-height:1.4;color:var(--red)}.drive-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.field-label{font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.stepper{display:flex;align-items:center;border:1px solid var(--line-edge);border-radius:99px;background:var(--surface-2)}.stepper button{width:32px;height:32px;display:grid;place-items:center;color:var(--text-2)}.stepper button:hover:not(:disabled){color:var(--text)}.stepper button:disabled{opacity:.35}.stepper span{padding:0 10px;font-size:11px;letter-spacing:.08em}.drive-hint{max-width:46ch;font-size:11.5px;line-height:1.45;color:var(--text-2)}.drive-hint b{color:var(--text);font-weight:600}.dlg-tally{font-size:10.5px;letter-spacing:.06em;color:var(--muted)}.stage-film video{width:100%;height:100%;object-fit:contain;background:#000;display:block;cursor:pointer}.stage-film.drawing{cursor:crosshair;touch-action:none}.stage-empty{height:100%;display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted);font-size:12px}.tag-form{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;padding:2px 0 4px}.field.inline{gap:4px}.field.inline>span{font-size:10.5px;letter-spacing:.09em}.field.inline input,.field.inline select{height:30px;font-size:12px;padding:0 8px;width:68px}.field.inline.grow{flex:1;min-width:130px}.field.inline.grow input{width:100%}.tag-form-stack{display:flex;flex-direction:column;align-items:stretch;gap:10px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2)}.tag-form-stack .tf-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tag-form-stack .field.inline input,.tag-form-stack .field.inline select{width:100%}.tag-form-stack .tf-actions{display:flex;justify-content:flex-end;gap:6px}.strip-empty{font-size:12px;color:var(--muted);padding:12px 2px}.notes-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:44px 18px;color:var(--muted)}.notes-empty b{color:var(--text-2);font-size:13px;font-weight:600}.notes-empty span{font-size:12px;line-height:1.5;max-width:30ch}.composer-marks{margin-left:6px;color:var(--accent);font-size:10.5px;letter-spacing:.08em}.chip-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.user-menu{position:relative}.menu{position:absolute;right:0;top:38px;width:196px;padding:5px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius-sm);box-shadow:0 18px 44px #0006;z-index:70;animation:rise .16s ease-out}.menu-head{display:flex;flex-direction:column;gap:2px;padding:8px 9px 9px;margin-bottom:4px;border-bottom:1px solid var(--line)}.menu-head b{font-size:12.5px}.menu-head span{font-size:11px;color:var(--muted)}.menu-item{display:flex;align-items:center;gap:8px;width:100%;padding:7px 9px;border-radius:4px;font-size:12.5px;color:var(--text-2);text-align:left}.menu-item:hover{background:var(--surface-2);color:var(--text)}.menu-item.danger{color:var(--red)}.editable-points{font-size:12.5px;line-height:1.6;color:var(--text-2);cursor:text;border-bottom:1px dashed transparent;transition:border-color .16s}.editable-points:hover{border-bottom-color:var(--line-strong)}.points-input{width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 9px;font-size:12.5px;line-height:1.6;color:var(--text);resize:vertical;outline:none}.points-input:focus{border-color:var(--line-strong)}.info-signed{font-size:10px;letter-spacing:.1em;color:var(--muted);margin-top:auto;padding-top:8px;opacity:.8}@media(max-width:980px){.login{grid-template-columns:1fr}.login-art{display:none}}.tag-form-stack .tf-row-practice{grid-template-columns:minmax(0,1fr)}.ingest-screen{position:fixed;inset:0;z-index:90;overflow-y:auto;background:var(--bg)}.ingest{width:100%;max-width:1360px;min-height:100%;margin:0 auto;padding:18px 28px 14px;display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);grid-template-rows:auto auto auto minmax(200px,1fr) auto auto auto;gap:12px 26px;align-content:start}.ingest .dlg-head{grid-column:1 / -1;grid-row:1;padding-bottom:12px;border-bottom:1px solid var(--line)}.ingest .dlg-head h2{font-size:22px}.ingest .dlg-fields{grid-column:1;grid-row:2}.ingest .snap-drop{grid-column:1;grid-row:3;align-self:start}.ingest .drive-row{grid-column:1;grid-row:4;align-self:start}.ingest .q-summary{grid-column:2;grid-row:2;margin:0;align-self:start}.ingest .q-head{grid-column:2;grid-row:3;align-self:end}.ingest .q-list{grid-column:2;grid-row:4;max-height:min(52vh,560px);height:auto;min-height:220px}.ingest .ingest-empty{grid-column:2;grid-row:4;align-self:start}.ingest .form-error{grid-column:1;grid-row:5}.ingest .ingest-banner{grid-column:2;grid-row:5}.ingest .ingest-preview{grid-column:2;grid-row:6}.ingest .dlg-foot{grid-column:1 / -1;grid-row:7;padding-top:12px;border-top:1px solid var(--line)}.ingest-empty{display:flex;flex-direction:column;gap:6px;padding:28px 18px;border:1px dashed #55636f;border-radius:var(--radius-sm);color:var(--muted);font-size:12.5px;line-height:1.5}.ingest-empty b{color:var(--text);font-size:13px}.ingest-empty b:last-child{color:inherit;font-size:inherit;font-weight:600}.ingest-preview{display:flex;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--surface-2)}.ip-fig{flex:none;width:168px;aspect-ratio:16 / 9;display:grid;place-items:center;overflow:hidden;border-radius:4px;background:#05100a;color:var(--muted)}.ip-fig img{width:100%;height:100%;object-fit:cover;display:block}.ip-meta{display:flex;flex-direction:column;gap:2px;min-width:0}.ip-meta b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.ip-meta .mono{font-size:10px;letter-spacing:.05em;color:var(--muted)}.q-progress{position:relative;width:120px;height:4px;border-radius:2px;overflow:hidden;background:var(--surface-3)}.q-progress span{position:absolute;inset:0 auto 0 0;background:var(--accent);transition:width .2s linear}.ingest .q-group{position:sticky;top:0;z-index:1}@media(max-width:980px){.ingest{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;padding:16px 18px 12px}.ingest .dlg-head,.ingest .dlg-fields,.ingest .snap-drop,.ingest .drive-row,.ingest .q-summary,.ingest .q-head,.ingest .q-list,.ingest .ingest-empty,.ingest .form-error,.ingest .ingest-banner,.ingest .ingest-preview,.ingest .dlg-foot{grid-column:1;grid-row:auto}.ingest .q-list{min-height:260px}}.ingest .snap-drop{flex-direction:column;align-items:stretch}.ingest .drop-target{flex:none}.ingest .drop-folder{margin-left:0;align-self:flex-start}.drop-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 10px;align-items:center}.drop-summary .drop-count{grid-row:1 / span 2}.drop-summary .drop-info b{display:block;font-size:13px;font-weight:600;color:var(--text)}.drop-summary .drop-info .mono{font-size:10px;letter-spacing:.04em;color:var(--muted)}.drop-actions{grid-column:1 / -1;display:flex;gap:6px;margin-top:2px}.ingest .drop-target{flex-direction:column;align-items:flex-start;gap:5px;min-height:132px;justify-content:center}.ingest .snap-drop{min-height:132px;justify-content:center}.ingest .dlg-foot{position:sticky;bottom:0;background:var(--bg);padding-bottom:6px}@media(max-width:1100px){.ingest{gap:10px 20px;padding:14px 20px 10px}.ip-fig{width:140px}}.ingest .snap-drop.is-empty{grid-column:1 / -1;grid-row:3;min-height:240px;align-items:center}.ingest .snap-drop.is-empty .drop-target{align-items:center;text-align:center}.ingest .ingest-preview{grid-column:1;grid-row:6}.ingest .ip-fig{width:100%;max-width:320px}.ingest{padding-bottom:64px}.ingest-confirm{position:fixed;inset:0;z-index:3;display:grid;place-items:center;padding:24px;background:#040709a8}.ic-panel{width:min(440px,100%);padding:18px;border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:0 24px 64px #00000080;display:flex;flex-direction:column;gap:12px}.ic-panel p{margin:0;font-size:13px;line-height:1.5;color:var(--text-2)}.ic-actions{display:flex;justify-content:flex-end;gap:8px}.ingest{padding-bottom:64px;animation:ingest-in .24s cubic-bezier(.16,1,.3,1)}@keyframes ingest-in{0%{opacity:0;transform:translateY(8px) scale(.996)}to{opacity:1;transform:none}}.ingest .q-summary{position:sticky;top:0;z-index:3;padding:6px 0;background:var(--bg)}.ingest .q-head{position:sticky;top:36px;z-index:2}@media(max-width:700px){.ingest .q-head{display:none}.ingest .q-list{max-height:min(46vh,420px)}.ingest .q-row{grid-template-columns:20px 40px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:8px;row-gap:2px;padding:8px 10px}.ingest .q-num{grid-area:1 / 1 / 3 / 2;align-self:start;padding-top:2px}.ingest .q-series,.ingest .q-size{display:none}.ingest .q-thumb{grid-area:1 / 2 / 3 / 3;width:40px;height:28px}.ingest .q-name{grid-area:1 / 3 / 3 / 4}.ingest .q-state{grid-area:1 / 4 / 2 / 5;justify-self:end}.ingest .q-act{grid-area:2 / 4 / 3 / 5;justify-self:end}.ingest .q-error{grid-column:1 / -1}.ingest .q-act .icon-btn{width:44px;height:44px}.ingest .dlg-tally{white-space:nowrap;font-size:10px}.ingest .dlg-foot{flex-wrap:wrap;row-gap:8px}}@media(max-width:380px){.ingest .seg{flex-wrap:wrap}}.ingest .snap-drop{align-items:center;justify-content:center}.ingest .drop-target{width:min(100%,430px);align-items:center;text-align:center;gap:6px}.ingest .drop-target span{max-width:100%;text-wrap:balance}.ingest .drop-actions{justify-content:center;margin-top:4px}.ic-panel .btn-solid{background:var(--red);color:#210704;border-color:transparent}.ic-panel .btn-solid:hover{filter:brightness(1.06)}@media(max-width:700px){.ingest .icon-btn,.ingest .stepper button,.ingest .btn-ghost.sm,.ingest .dlg-foot .btn-ghost,.ingest .dlg-foot .btn-solid{min-width:44px;min-height:44px}.ingest .seg button{min-height:44px}.ingest .field input,.ingest .field select{height:44px}}.dlg-more-toggle{display:none}.dlg-more{display:contents}@media(max-width:700px){.dlg-more-toggle{display:inline-flex;grid-column:1 / -1;justify-self:start}.dlg-fields .dlg-more{display:none}.dlg-fields .dlg-more.open{display:contents}.ingest .drive-row{order:8}.ingest .dlg-foot{order:20}.ingest .q-summary{order:5}.ingest .q-head{order:6}.ingest .q-list{order:7}.ingest .drive-hint{display:none}}.ingest{display:flex;flex-direction:column;gap:10px;height:100%;padding:14px 24px 10px}.ingest>*{grid-column:auto;grid-row:auto;align-self:stretch}.ingest .q-list{flex:1 1 0;min-height:220px;max-height:none}.ingest .q-summary,.ingest .q-head{position:static}.ingest .dlg-foot{margin-top:auto}.session-bar{display:flex;align-items:center;gap:10px}.session-chip{display:flex;align-items:baseline;gap:10px;min-width:0;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2)}.session-chip .sc-name{flex:none;font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-chip .sc-meta{font-size:10.5px;letter-spacing:.05em;color:var(--muted);text-transform:uppercase;white-space:nowrap}@media(max-width:700px){.ingest{height:auto;min-height:100%;padding:12px 16px 8px}.ingest .q-list{flex:0 1 auto;max-height:min(46vh,420px)}.session-chip{padding:5px 10px}}.ingest .q-head,.ingest .q-summary,.ingest .snap-drop,.ingest .drive-row,.ingest .dlg-fields{align-self:stretch}.ingest .snap-drop.has-file{min-height:0;padding:8px 14px;align-items:center}.ingest .snap-drop.has-file .drop-summary{display:flex;align-items:center;gap:14px;width:100%}.ingest .snap-drop.has-file .drop-actions{margin:0 0 0 auto}.ingest .dlg-fields{max-width:760px}.ingest .ingest-empty{align-self:stretch}@media(max-width:700px){.ingest .snap-drop.has-file .drop-summary{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 10px;align-items:center}.ingest .snap-drop.has-file .drop-count{grid-row:1 / span 2}.ingest .snap-drop.has-file .drop-info{min-width:0}.ingest .snap-drop.has-file .drop-info .mono{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ingest .snap-drop.has-file .drop-actions{grid-column:1 / -1;margin:0}}.ingest .q-list{display:flex;flex-direction:column;overflow:hidden}.ingest .q-list>div{flex:1 1 auto;min-height:0}@media(max-width:700px){.ingest .q-list{flex:0 0 auto;height:min(46vh,420px)}}.ingest .ingest-preview{max-width:720px;align-self:flex-start}.ingest .ingest-preview .ip-fig{width:168px;max-width:168px}.q-row.encoding .q-label{color:var(--accent)}.doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:15px}.doc-card{position:relative;border:var(--card-border);border-radius:var(--radius);background:var(--surface);overflow:hidden;text-align:left;box-shadow:var(--card-shadow);transition:border-color .18s,background .18s}.doc-card:hover,.doc-card:focus-within{border-color:var(--line-strong)}.doc-main{display:block;width:100%;text-align:left}.doc-fig{position:relative;aspect-ratio:4 / 3;display:grid;place-items:center;overflow:hidden;border-bottom:1px solid var(--line);background:radial-gradient(120% 100% at 50% 0%,#16222b,#0a1014 72%)}.doc-fig.img{background:#05080a}.doc-fig.img img{width:100%;height:100%;object-fit:cover;display:block}.doc-kind{position:absolute;left:9px;top:9px;padding:2px 5px;border:1px solid var(--line);border-radius:3px;background:#05080aa8;font-size:8.5px;letter-spacing:.11em;color:var(--muted)}.doc-fig.pdf .doc-kind{color:#ff9a8c;border-color:color-mix(in srgb,var(--red) 30%,transparent)}.doc-glyph{position:relative;width:78px;height:100px;border:1px solid var(--line-strong);border-radius:5px;background:linear-gradient(180deg,#151e24,#0c1216);box-shadow:0 12px 26px #00000061}.dg-fold{position:absolute;top:-1px;right:-1px;width:0;height:0;border-top:19px solid #22303a;border-left:19px solid transparent;border-top-right-radius:5px}.dg-lines{position:absolute;left:12px;right:14px;top:32px;display:flex;flex-direction:column;gap:7px}.dg-lines i{height:2px;border-radius:2px;background:var(--line-strong)}.dg-lines i:nth-child(2){width:82%}.dg-lines i:nth-child(3){width:62%}.doc-glyph b{position:absolute;left:12px;bottom:11px;font-family:var(--font-mono);font-size:10.5px;letter-spacing:.14em;color:var(--red)}.doc-body{padding:10px 12px 12px}.doc-body h3{font-size:14px;font-weight:600;letter-spacing:-.012em;line-height:1.32;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.doc-sub{display:flex;align-items:center;gap:2px;margin-top:5px;font-size:9.5px;letter-spacing:.05em;color:var(--muted);flex-wrap:wrap}.doc-acts{position:absolute;top:8px;right:8px;display:flex;gap:3px;opacity:0;transform:translateY(-2px);transition:opacity .15s,transform .15s;z-index:2}.doc-card:hover .doc-acts,.doc-card:focus-within .doc-acts{opacity:1;transform:none}.doc-acts .icon-btn{width:26px;height:26px;border:1px solid var(--line);border-radius:5px;background:#05080ac7;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.doc-acts .icon-btn:hover{color:var(--text);border-color:var(--line-strong)}.doc-acts .icon-btn.danger:hover{color:var(--red);border-color:color-mix(in srgb,var(--red) 34%,transparent)}.doc-new{display:flex;flex-direction:column;border-style:dashed;background:transparent;box-shadow:none}.doc-new .doc-fig{flex:1;border-bottom:0;background:transparent;color:var(--muted)}.doc-new .doc-fig.blank{transition:color .16s,background .16s}.doc-new:hover .doc-fig.blank{color:var(--accent);background:var(--accent-soft)}.docs-loading{display:flex;align-items:center;gap:10px;padding:42px 4px;font-size:10.5px;letter-spacing:.08em;color:var(--muted)}.docs-error{display:flex;align-items:center;gap:8px;margin-top:16px}.docs-error .btn-ghost{margin-left:auto}.doc-scrim{position:fixed;inset:0;z-index:95;display:grid;place-items:center;padding:26px;background:#030608cc;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade .16s ease-out}.doc-viewer{width:min(1080px,100%);height:min(88vh,900px);display:flex;flex-direction:column;overflow:hidden;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--radius);box-shadow:0 40px 100px #0009;animation:rise .22s cubic-bezier(.16,.84,.44,1)}.doc-view-head{display:flex;align-items:center;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);flex:none}.dv-title{display:flex;align-items:center;gap:10px;min-width:0}.dv-kind{flex:none;padding:3px 6px;border:1px solid var(--line-strong);border-radius:3px;font-size:8.5px;letter-spacing:.1em;color:var(--muted)}.dv-kind.pdf{color:#ff9a8c;border-color:color-mix(in srgb,var(--red) 32%,transparent)}.dv-title>div{min-width:0}.dv-title b{display:block;font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dv-title .mono{display:block;margin-top:2px;font-size:9.5px;letter-spacing:.05em;color:var(--muted)}.dv-acts{margin-left:auto;display:flex;align-items:center;gap:6px;flex:none}.doc-stage{flex:1;min-height:0;display:grid;place-items:center;background:#05080a;overflow:auto}.doc-stage.pdf{display:block}.doc-stage iframe{width:100%;height:100%;border:0;background:#fff;display:block}.doc-stage img{max-width:100%;max-height:100%;object-fit:contain;display:block}@media(max-width:900px){.doc-acts{opacity:1;transform:none}}@media(max-width:820px){.doc-grid{grid-template-columns:minmax(0,1fr)}.doc-scrim{padding:0}.doc-viewer{width:100%;height:100%;border-radius:0;border:0}.dv-acts .btn-ghost{display:none}}
