:root{--bg: #0b0b0d;--panel: #141419;--line: #26262e;--text: #e8e8ec;--dim: #8b8b98;--accent: #d9455f;--wall-line: #26262c;--wall-line-hot: #3a3a44;--radius: 8px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:14px/1.45 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overflow:hidden;overscroll-behavior:none}button,input{font:inherit;color:inherit}.boot{display:grid;place-items:center;height:100%;color:var(--dim)}.gate{display:grid;place-items:center;height:100%;padding:24px}.gate__card{width:min(380px,100%);background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px}.gate__logo{margin:0 0 20px;font-size:22px;letter-spacing:.14em;text-transform:lowercase;color:var(--accent)}.gate__who{margin:0 0 14px;color:var(--dim)}.gate__notice{margin:0 0 14px;padding:8px 10px;background:#2a1f10;border:1px solid #6b5220;border-radius:var(--radius);color:#e8c98a;font-size:12px}.gate__error{margin:14px 0 0;color:var(--accent)}.gate__fineprint{margin:20px 0 0;color:var(--dim);font-size:12px}.field{display:block;margin-bottom:14px}.field span{display:block;margin-bottom:5px;color:var(--dim);font-size:12px}.field input{width:100%;padding:9px 11px;background:#0f0f13;border:1px solid var(--line);border-radius:var(--radius)}.field input:focus{outline:2px solid var(--accent);outline-offset:1px}.btn{width:100%;padding:10px;margin-top:6px;border:1px solid var(--line);border-radius:var(--radius);background:#1d1d24;cursor:pointer}.btn--primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}.btn--quiet{background:transparent;color:var(--dim)}.btn:disabled{opacity:.55;cursor:default}.progress{height:3px;margin-top:10px;background:var(--line);border-radius:2px;overflow:hidden}.progress__fill{height:100%;background:var(--accent);transition:width .12s linear}.app{display:flex;flex-direction:column;height:100vh;height:100dvh;overflow:hidden}.topbar{display:flex;align-items:center;gap:8px;padding:max(8px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));border-bottom:1px solid var(--line);background:var(--panel)}.topbar__logo{color:var(--accent);letter-spacing:.14em;font-weight:600}.topbar__layouts{display:flex;gap:4px;margin-left:12px}.topbar__spacer{flex:1}.topbar__user{color:var(--dim)}.chip{padding:4px 9px;border:1px solid var(--line);border-radius:999px;background:#1a1a20;color:var(--dim);cursor:pointer}.chip--done{background:#14301f;border-color:#2f6b46;color:#7fd6a2}.chip--on{background:var(--accent);border-color:var(--accent);color:#fff}.main{display:flex;flex:1;min-height:0}.banner{padding:8px 12px;background:#3a1220;border-bottom:1px solid var(--accent);color:#ffd7de;font-size:13px}.chrome-peek{position:fixed;z-index:30;top:max(4px,env(safe-area-inset-top));right:max(6px,env(safe-area-inset-right));display:flex;gap:4px;opacity:.25;transition:opacity .12s ease}.chrome-peek button{width:34px;height:26px;padding:0;border:1px solid var(--wall-line);border-radius:999px;background:#000000b0;color:var(--dim);font-size:11px;line-height:1;cursor:pointer}.chrome-peek:hover,.chrome-peek:focus-within{opacity:1}.chrome-peek:hover button,.chrome-peek:focus-within button{color:var(--text)}@media (hover: none){.chrome-peek{opacity:.75}}.library-shell{display:flex;flex:none;width:320px;overflow:hidden;visibility:visible;transition:width .18s ease,opacity .18s ease}.library-shell:not(.library-shell--open){width:0;opacity:0;visibility:hidden;transition:width .18s ease,opacity .18s ease,visibility 0s linear .18s}.library__scrim{display:none}.library{width:320px;flex:none;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:12px;border-right:1px solid var(--line);background:var(--panel)}.library__head{display:flex;justify-content:flex-end;gap:6px;margin-bottom:8px}.slotbar{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--line)}.slotbar__label{flex:none;color:var(--dim);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.slotmap{flex:1;min-width:0;display:grid;gap:3px;height:54px;padding:3px;background:#000;border:1px solid var(--line);border-radius:var(--radius)}.slotmap__cell{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1px;min-width:0;min-height:0;padding:2px;border:1px solid var(--wall-line);border-radius:4px;background:#14141a;color:var(--dim);cursor:pointer;overflow:hidden}.slotmap__cell--on{border-color:var(--accent);background:#2a1219;color:var(--text)}.slotmap__num{font-size:12px;font-variant-numeric:tabular-nums;line-height:1}.library__section h2{margin:16px 0 6px;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}.count{color:var(--line)}.library__empty,.library__warn{margin:4px 0;color:var(--dim);font-size:12px}.library__warn{color:var(--accent)}.library__compose{position:sticky;bottom:0;display:grid;gap:6px;margin-top:14px;padding:10px;background:#10101580;backdrop-filter:blur(6px);border:1px solid var(--line);border-radius:var(--radius)}.library__compose input{padding:7px 10px;background:#0f0f13;border:1px solid var(--line);border-radius:var(--radius)}.list{margin:0;padding:0;list-style:none}.row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:3px 0}.row__load,.row__order{display:flex;gap:2px}.row__picker{display:flex;flex-wrap:wrap;align-items:center;gap:4px;flex-basis:100%;padding:2px 0 4px}.row__picker-label{color:var(--dim);font-size:11px}.row__check{flex:none;accent-color:var(--accent)}.row__main{display:flex;flex:1;flex-wrap:wrap;min-width:0;align-items:center;gap:8px;padding:5px;background:transparent;border:1px solid transparent;border-radius:var(--radius);text-align:left;cursor:pointer}.row__main:hover{background:#1c1c23;border-color:var(--line)}.row__danger{opacity:.25;transition:opacity .12s ease}.row:hover .row__danger,.row:focus-within .row__danger,.row__danger--armed{opacity:1}.row__danger--armed{display:flex;gap:4px}.chip:disabled{opacity:.3;cursor:default}.chip--danger{background:var(--accent);border-color:var(--accent);color:#fff}.row__thumb{width:64px;height:36px;flex:none;object-fit:contain;border-radius:4px;background:#000}.row__thumb--blank{background:repeating-linear-gradient(45deg,#17171d,#17171d 6px,#1d1d24 6px 12px)}.row__text{min-width:0}.row__title{flex-basis:100%;min-width:0;text-align:left;overflow-wrap:anywhere}.row__rungs{display:flex;flex-wrap:wrap;gap:3px;margin-top:2px}.rung{padding:0 5px;border:1px solid #2f6b46;border-radius:3px;color:#7fd6a2;font-size:10px;line-height:15px}.rung--full{background:#14301f}.row__meta{display:block;color:var(--dim);font-size:11px}.folder{margin-bottom:10px}.folder__head{display:flex;align-items:center;gap:4px;padding:2px 0}.folder__toggle{display:flex;flex:1;min-width:0;align-items:baseline;gap:6px;padding:3px 4px;background:transparent;border:1px solid transparent;border-radius:var(--radius);cursor:pointer;text-align:left}.folder__toggle:hover{background:#1c1c23;border-color:var(--line)}.folder__caret{color:var(--dim);font-size:10px;display:inline-block;transition:transform .15s ease}.folder__caret--open{transform:rotate(90deg)}@keyframes list-open{0%{opacity:0;transform:translateY(-6px)}}@keyframes list-close{to{opacity:0;transform:translateY(-6px)}}.list--opening{animation:list-open .15s ease}.list--closing{animation:list-close .15s ease forwards;pointer-events:none}.folder__name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}.row__move{opacity:.25;transition:opacity .12s ease}.row:hover .row__move,.row:focus-within .row__move{opacity:1}.folder__head .row__danger{opacity:.25}.folder__head:hover .row__danger{opacity:1}.grid{position:relative;flex:1;min-width:0;min-height:0;display:grid;gap:6px;padding:6px;background:#000}.splitter{position:absolute;z-index:2;background:transparent;transition:background .12s ease}.splitter--v{top:0;bottom:0;width:11px;margin-left:-5px;cursor:col-resize}.splitter--h{left:0;right:0;height:11px;margin-top:-5px;cursor:row-resize}.splitter:hover,.splitter:focus-visible{background:var(--wall-line);outline:none}.splitter--active{background:var(--wall-line-hot);outline:none}.cell{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;background:#08080a;border-radius:var(--radius);overflow:hidden}.cell--empty{display:grid;place-items:center;border-style:dashed}.cell__hint{color:var(--dim);font-size:12px;padding:0 12px;text-align:center}.cell__video{width:100%;height:100%;display:block;transition:opacity .5s ease;object-fit:contain;background:#000}.cell__bar{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;gap:6px;padding:6px 8px;background:linear-gradient(#000c,#0000);opacity:0;transition:opacity .12s ease}.cell:hover .cell__bar,.cell:focus-within .cell__bar{opacity:1}.cell__pos{color:var(--dim);font-size:11px;font-variant-numeric:tabular-nums}.cell__title{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:12px}.cell__level{position:absolute;left:6px;top:34px;padding:3px 7px;border-radius:3px;background:#000;color:#fff;font-size:10px;font-variant-numeric:tabular-nums;opacity:0;transition:opacity .12s ease;pointer-events:none;white-space:nowrap}.cell:hover .cell__level,.cell:focus-within .cell__level{opacity:1}.cell__status{position:absolute;inset:auto 0 0;padding:6px 8px;font-size:11px;color:var(--dim);background:#000a}.cell__status--error{color:var(--accent)}@media (max-width: 720px){.library-shell,.library-shell:not(.library-shell--open){display:block;position:fixed;z-index:20;top:0;bottom:0;left:0;max-height:100dvh;width:min(340px,88vw);opacity:1;transform:translate(-100%);transition:transform .18s ease,visibility 0s linear .18s;box-shadow:0 0 40px #000c}.library-shell--open{transform:none;visibility:visible;transition:transform .18s ease}.library{width:100%;height:100%;max-height:none;border-right:1px solid var(--line);border-bottom:none;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}.library__scrim{display:block;position:fixed;inset:0;z-index:19;border:0;padding:0;background:#000000a8;opacity:0;pointer-events:none;transition:opacity .18s ease}.library__scrim--open{opacity:1;pointer-events:auto}.topbar{flex-wrap:wrap;gap:6px;row-gap:6px;max-height:40dvh;overflow-y:auto;overscroll-behavior:contain}.topbar__logo,.topbar__user{display:none}.topbar__layouts{margin-left:0}.chip{padding:7px 12px;font-size:13px}.grid{padding:4px max(4px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(4px,env(safe-area-inset-left));gap:4px}.row__danger,.row__move{opacity:1}}@media (prefers-reduced-motion: reduce){.library-shell,.library-shell:not(.library-shell--open),.library-shell--open,.library__scrim,.folder__caret{transition-duration:1ms}.list--opening,.list--closing{animation-duration:1ms}}.slides{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-width:0;min-height:0;background:#000;transition:opacity .22s ease}.slides__image{max-width:100%;max-height:100%;object-fit:contain;user-select:none}.slides__controls{position:absolute;bottom:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:999px;background:#000000b0;opacity:0;transition:opacity .15s ease}.slides:hover .slides__controls,.slides:focus-within .slides__controls{opacity:1}@media (hover: none){.slides__controls{opacity:1}}.slides__count{color:var(--dim);font-size:11px;padding:0 4px}@keyframes slide-in{0%{opacity:0}}.slides__image{animation:slide-in .18s ease}@media (prefers-reduced-motion: reduce){.slides__image{animation-duration:1ms}}.cell__volume{flex:none;width:76px;accent-color:var(--accent);cursor:pointer}@media (hover: none){.cell__bar{opacity:1}.cell__volume{width:96px;height:28px}}
