html,body{height:100%;overflow:hidden}body{font-family:var(--font);background:var(--bg0);color:var(--text0);font-size:var(--fs-sm);line-height:1.5;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--bg4);border-radius:6px;border:3px solid transparent;background-clip:content-box;transition:background-color var(--dur-fast)}::-webkit-scrollbar-thumb:hover{background:var(--bg5);background-clip:content-box}::-webkit-scrollbar-corner{background:transparent}*{scrollbar-width:thin;scrollbar-color:var(--bg4) transparent}::selection{background:var(--accent-dim);color:var(--text0)}.nav{position:fixed;top:0;left:0;right:0;z-index:var(--z-nav);height:var(--nav-h);display:flex;align-items:center;gap:0;padding:0 var(--space-8);background:#060a12eb;backdrop-filter:blur(20px);border-bottom:1px solid var(--border)}.nav-logo{display:flex;align-items:center;gap:9px;font-size:var(--fs-md);font-weight:800;letter-spacing:-.3px;color:var(--text0);text-decoration:none;margin-right:var(--space-9);flex-shrink:0}.nav-logo-mark{width:26px;height:26px;background:linear-gradient(135deg,var(--accent) 0%,var(--violet) 100%);border-radius:7px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);color:var(--text-on-accent);font-weight:700}.nav-home{border:0;padding:0;cursor:pointer;flex-shrink:0;margin-right:6px;font-family:var(--font);transition:box-shadow var(--dur-fast),transform var(--dur-fast)}.nav-home:hover{box-shadow:0 0 0 3px var(--accent-dim)}.nav-home:active{transform:scale(.94)}.nav-home:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav-logo span{opacity:.35;margin:0 var(--space-1)}.act-tabs{display:none!important}.act-tabs--legacy{display:flex;gap:var(--space-px);background:var(--bg2);border:1px solid var(--border);border-radius:9px;padding:3px;margin-right:auto;min-width:0;flex-shrink:1;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.act-tabs::-webkit-scrollbar{display:none}.act-tab{flex-shrink:0}.act-tab{padding:5px var(--space-7);border-radius:6px;font-size:var(--fs-sm);font-weight:600;letter-spacing:.1px;color:var(--text2);cursor:pointer;transition:all .15s;border:none;background:none;font-family:var(--font);white-space:nowrap}.act-tab:hover{color:var(--text1);background:var(--glass2)}.act-tab.active{background:var(--bg4);color:var(--text0)}.act-tab .act-dot{display:inline-block;width:5px;height:5px;border-radius:50%;margin-right:var(--space-3);vertical-align:middle;margin-top:-1px}@keyframes actTabFlash{0%{background:var(--accent);color:var(--text-on-accent);box-shadow:0 0 0 3px var(--accent-glow)}to{background:var(--bg4);color:var(--text0);box-shadow:none}}.act-tab.act-tab-flash{animation:actTabFlash .55s cubic-bezier(.22,1,.36,1) both}.act-popover{position:fixed;z-index:var(--z-popover);width:240px;background:var(--bg2);border:1px solid var(--border2);border-radius:12px;padding:var(--space-7);box-shadow:0 16px 48px #0009,0 0 0 1px #4f82ff1a;animation:popIn .18s cubic-bezier(.22,1,.36,1) both}@keyframes popIn{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.act-popover-hdr{font-size:var(--fs-xs);font-weight:700;letter-spacing:.8px;color:var(--text2);text-transform:uppercase;margin-bottom:var(--space-5)}.act-popover-input{width:100%;box-sizing:border-box;background:var(--bg0);border:1px solid var(--border2);border-radius:7px;padding:7px var(--space-5);font-size:var(--fs-sm);font-family:var(--font);color:var(--text0);outline:none;margin-bottom:var(--space-5);transition:border-color .15s}.act-popover-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #4f82ff2e}.act-popover-input.act-popover-input-err{border-color:var(--red-soft);animation:shake .25s ease both}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.act-popover-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-3)}.act-popover-colors{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-6)}.act-popover-swatch{width:20px;height:20px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .12s}.act-popover-swatch:hover{transform:scale(1.15)}.act-popover-swatch.selected{border-color:#fff;box-shadow:0 0 0 2px #fff6}.act-popover-footer{display:flex;gap:var(--space-3);justify-content:flex-end}.act-popover-btn{padding:5px var(--space-6);border-radius:6px;font-size:var(--fs-xs);font-weight:600;cursor:pointer;border:1px solid var(--border2);background:var(--glass);color:var(--text1);font-family:var(--font);transition:all .12s}.act-popover-btn:hover{background:var(--glass2);color:var(--text0)}.act-popover-btn.primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 12px var(--accent-glow)}.act-popover-btn.primary:hover{background:#6696ff}.act-ctx-menu{position:fixed;z-index:var(--z-popover);width:220px;background:var(--bg2);border:1px solid var(--border2);border-radius:12px;padding:var(--space-4);box-shadow:0 16px 48px #0009;animation:popIn .18s cubic-bezier(.22,1,.36,1) both}.act-ctx-title{font-size:var(--fs-xs);font-weight:700;letter-spacing:.6px;color:var(--text3);text-transform:uppercase;padding:var(--space-2) var(--space-4) var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.act-ctx-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.act-ctx-input{width:100%;box-sizing:border-box;background:var(--bg0);border:1px solid var(--border2);border-radius:6px;padding:var(--space-3) 9px;font-size:var(--fs-sm);font-family:var(--font);color:var(--text0);outline:none;margin-bottom:var(--space-4);transition:border-color .15s}.act-ctx-input:focus{border-color:var(--accent)}.act-ctx-colors{display:flex;flex-wrap:wrap;gap:5px;padding:0 var(--space-2);margin-bottom:var(--space-4)}.act-ctx-swatch{width:18px;height:18px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .12s}.act-ctx-swatch:hover{transform:scale(1.15)}.act-ctx-swatch.selected{border-color:#fff;box-shadow:0 0 0 2px #ffffff59}.act-ctx-divider{height:1px;background:var(--border);margin:var(--space-3) 0}.act-ctx-item{display:flex;align-items:center;gap:var(--space-4);padding:7px var(--space-5);border-radius:7px;cursor:pointer;font-size:var(--fs-sm);color:var(--text1);transition:all .12s}.act-ctx-item:hover{background:var(--glass2);color:var(--text0)}.act-ctx-item.danger{color:var(--red-soft)}.act-ctx-item.danger:hover{background:#ef44441f}.nav-actions{display:flex;gap:var(--space-3);align-items:center;flex-shrink:0}.kbd{font-family:var(--mono);font-size:var(--fs-xs);padding:var(--space-1) var(--space-3);border-radius:4px;background:var(--bg3);border:1px solid var(--border2);color:var(--text2);cursor:pointer;display:flex;align-items:center;gap:var(--space-2)}.kbd:hover{color:var(--text1)}.btn{padding:var(--space-3) 13px;border-radius:7px;font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .15s;border:1px solid var(--border2);background:var(--glass);color:var(--text1);font-family:var(--font)}.btn:hover{background:var(--glass2);color:var(--text0);border-color:var(--border3)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (pointer: coarse){.btn,.up-footer-btn,.up-nav-tab,.auth-tab,.s-node,.sidebar-char-btn{min-height:var(--tap-min)}.btn{padding:var(--space-5) var(--space-7);font-size:var(--fs-sm)}}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 20px var(--accent-glow)}.btn.primary:hover{background:#6696ff;box-shadow:0 4px 28px var(--accent-glow)}.btn.danger{background:#ef444426;border-color:#ef44444d;color:var(--red-soft)}.btn.danger:hover{background:#ef444440}.auth-screen{position:fixed;inset:0;z-index:calc(var(--z-popover) + 20);background:var(--bg0);display:flex;align-items:center;justify-content:center;font-family:var(--font);overflow-y:auto;padding:max(16px,env(safe-area-inset-top)) var(--space-8) max(16px,env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch}.auth-screen.hidden{display:none}.auth-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}.auth-bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(79,130,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(79,130,255,.04) 1px,transparent 1px);background-size:40px 40px}.auth-bg-glow{position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(79,130,255,.07) 0%,transparent 70%);top:-100px;left:50%;transform:translate(-50%)}.auth-bg-glow2{position:absolute;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(139,92,246,.06) 0%,transparent 70%);bottom:-80px;right:10%}.auth-card{position:relative;z-index:1;width:min(400px,100%);background:var(--bg1);border:1px solid var(--border2);border-radius:20px;padding:36px 36px var(--space-11);box-shadow:0 32px 80px #0009,0 0 0 1px #4f82ff14;animation:authCardIn var(--dur-slow) var(--ease-spring) both}@media (max-width: 440px){.auth-card{padding:28px var(--space-9) var(--space-10);border-radius:16px}}@keyframes authCardIn{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-card *{animation-play-state:running}.auth-logo{display:flex;align-items:center;gap:var(--space-5);margin-bottom:28px;justify-content:center}.auth-logo-mark{width:36px;height:36px;background:linear-gradient(135deg,var(--accent) 0%,var(--violet) 100%);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xl);font-weight:800;color:var(--text-on-accent);box-shadow:0 4px 20px var(--accent-glow)}.auth-logo-name{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.5px}.auth-logo-name span{opacity:.3;margin:0 var(--space-1)}.auth-logo-name .auth-logo-accent{opacity:1;margin:0;color:var(--accent)}.auth-title{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.5px;margin-bottom:var(--space-3);text-align:center}.auth-sub{font-size:var(--fs-sm);color:var(--text2);text-align:center;margin-bottom:28px;font-family:var(--mono)}.auth-tabs{display:flex;background:var(--bg0);border:1px solid var(--border);border-radius:10px;padding:3px;gap:var(--space-1);margin-bottom:var(--space-10)}.auth-tab{flex:1;padding:7px;border-radius:7px;font-size:var(--fs-sm);font-weight:700;text-align:center;cursor:pointer;color:var(--text2);transition:all .15s;border:none;background:none;font-family:var(--font);user-select:none;-webkit-user-select:none}.auth-tab:hover{color:var(--text1)}.auth-tab.active{background:var(--bg3);color:var(--text0)}.auth-field{margin-bottom:var(--space-7)}.auth-field label{display:block;font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;color:var(--text2);text-transform:uppercase;margin-bottom:var(--space-3)}.auth-field input{width:100%;background:var(--bg0);border:1px solid var(--border);border-radius:9px;padding:11px var(--space-6);font-size:var(--fs-lg);min-height:var(--tap-min);font-family:var(--mono);color:var(--text0);outline:none;transition:border-color var(--dur-fast),box-shadow var(--dur-fast);-webkit-appearance:none}@media (pointer: fine){.auth-field input{font-size:var(--fs-sm);min-height:0;padding:var(--space-5) var(--space-6)}}.auth-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.auth-field input.error{border-color:var(--red)}.auth-error{font-size:var(--fs-xs);color:var(--red-soft);font-family:var(--mono);margin-top:var(--space-2);display:none}.auth-error.show{display:block}.auth-field-aside{display:flex;justify-content:flex-end;margin-top:7px}.auth-link{background:none;border:none;padding:var(--space-2) var(--space-1);cursor:pointer;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text2);text-decoration:none;border-radius:4px;transition:color var(--dur-fast);position:relative}.auth-link:after{content:"";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);height:var(--tap-min);min-width:var(--tap-min)}.auth-link:hover{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.auth-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;color:var(--accent)}.auth-note{display:flex;align-items:flex-start;gap:9px;margin-top:var(--space-7);padding:var(--space-6) 13px;background:var(--glass);border:1px solid var(--border2);border-radius:10px;font-size:var(--fs-sm);line-height:1.5;color:var(--text1)}.auth-note-icon{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--accent-dim);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:700}.up-plan-badge.is-loading{background:var(--glass);border:1px solid var(--border);color:transparent;min-width:54px}.up-plan-status-free{font-size:var(--fs-xs);color:var(--text3);font-family:var(--mono);padding:var(--space-4) 0}.up-inline-link{background:none;border:none;padding:0;cursor:pointer;font-family:inherit;font-size:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.up-inline-link:hover{color:var(--text0)}.up-inline-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.auth-pass-strength{height:3px;border-radius:2px;background:var(--bg3);margin-top:var(--space-3);overflow:hidden}.auth-pass-bar{height:100%;width:0;border-radius:2px;transition:width .25s,background .25s}.auth-activate-icon{width:56px;height:56px;border-radius:16px;margin:0 auto var(--space-9);background:linear-gradient(135deg,var(--accent),var(--violet));display:flex;align-items:center;justify-content:center;font-size:var(--fs-3xl);box-shadow:0 4px 24px var(--accent-glow)}.auth-activate-title{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.5px;text-align:center;margin-bottom:var(--space-3)}.auth-activate-sub{font-size:var(--fs-sm);color:var(--text2);font-family:var(--mono);text-align:center;line-height:1.6;margin-bottom:28px}.auth-activate-sub strong{color:var(--text1)}.auth-code-row{display:flex;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-3)}.auth-code-digit{width:48px;height:58px;border-radius:10px;background:var(--bg0);border:1.5px solid var(--border);text-align:center;font-size:var(--fs-2xl);font-weight:800;font-family:var(--mono);color:var(--text0);outline:none;transition:border-color .15s,box-shadow .15s;caret-color:var(--accent)}.auth-code-digit:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.auth-code-digit.error{border-color:var(--red-soft);box-shadow:0 0 0 3px #f8717126}.auth-code-digit.success{border-color:var(--green);box-shadow:0 0 0 3px #22c55e26}.auth-activate-err{text-align:center;font-size:var(--fs-xs);font-family:var(--mono);color:var(--red-soft);min-height:18px;margin-bottom:var(--space-7)}.auth-activate-resend{text-align:center;font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);margin-top:var(--space-8)}.auth-activate-resend button{background:none;border:none;color:var(--accent);cursor:pointer;font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;padding:0;text-decoration:underline;text-underline-offset:2px}.auth-activate-resend button:disabled{color:var(--text3);cursor:default;text-decoration:none}.auth-activate-back{text-align:center;margin-top:var(--space-5)}.auth-activate-back button{background:none;border:none;color:var(--text3);cursor:pointer;font-family:var(--mono);font-size:var(--fs-xs);padding:var(--space-2) var(--space-4);transition:color .15s}.auth-activate-back button:hover{color:var(--text2)}.auth-avatar-row{display:flex;align-items:center;gap:var(--space-7);margin-bottom:18px}.auth-avatar-preview{width:52px;height:52px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:800;color:#fff;cursor:pointer;position:relative;overflow:hidden;transition:filter .15s;border:2px solid rgba(255,255,255,.1)}.auth-avatar-preview:hover{filter:brightness(1.2)}.auth-avatar-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-avatar-edit-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);opacity:0;transition:opacity .15s}.auth-avatar-preview:hover .auth-avatar-edit-overlay{opacity:1}.auth-avatar-colors{display:flex;flex-wrap:wrap;gap:var(--space-3)}.auth-avatar-color{width:22px;height:22px;border-radius:50%;cursor:pointer;transition:transform .12s,box-shadow .12s;border:2px solid transparent}.auth-avatar-color:hover{transform:scale(1.15)}.auth-avatar-color.selected{border-color:#fff;box-shadow:0 0 0 2px #ffffff4d}.auth-btn{width:100%;padding:var(--space-6);border-radius:10px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.3px;cursor:pointer;border:none;font-family:var(--font);transition:all .18s;background:var(--accent);color:var(--text-on-accent);box-shadow:0 4px 24px var(--accent-glow);margin-top:var(--space-3)}.auth-btn:hover{background:#6696ff;box-shadow:0 6px 32px var(--accent-glow);transform:translateY(-1px)}.auth-btn:active{transform:translateY(0)}.auth-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.auth-divider{display:flex;align-items:center;gap:var(--space-6);margin:18px 0;font-size:var(--fs-xs);color:var(--text3);font-family:var(--mono)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-google-btn{width:100%;padding:11px var(--space-8);border-radius:10px;background:var(--bg0);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;gap:var(--space-5);font-size:var(--fs-sm);font-weight:600;color:var(--text1);cursor:pointer;transition:all .18s;font-family:var(--font)}.auth-google-btn:hover{border-color:var(--border2);background:var(--bg2)}.auth-google-btn svg{flex-shrink:0}.auth-demo-users{display:flex;flex-direction:column;gap:var(--space-3)}.auth-demo-user{display:flex;align-items:center;gap:var(--space-5);padding:9px var(--space-6);background:var(--bg0);border:1px solid var(--border);border-radius:9px;cursor:pointer;transition:all .15s}.auth-demo-user:hover{border-color:var(--border2);background:var(--bg2)}.auth-demo-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);font-weight:800;color:#fff;position:relative;overflow:hidden}.auth-demo-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-demo-info{flex:1;min-width:0}.auth-demo-name{font-size:var(--fs-sm);font-weight:700;color:var(--text0)}.auth-demo-email{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2)}.auth-demo-badge{font-size:var(--fs-2xs);padding:var(--space-1) 7px;border-radius:10px;font-family:var(--mono);font-weight:600}.auth-demo-badge.pro{background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,130,255,.25)}.auth-demo-badge.free{background:var(--glass);color:var(--text2);border:1px solid var(--border)}.auth-demo-badge.admin{background:#d946ef26;color:var(--magenta);border:1px solid rgba(217,70,239,.25)}.user-avatar-btn{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:800;color:#fff;cursor:pointer;flex-shrink:0;border:2px solid rgba(255,255,255,.15);transition:all .15s;position:relative;overflow:hidden}.user-avatar-btn:hover{border-color:#ffffff59;transform:scale(1.06)}.user-avatar-btn img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.user-online-dot{position:absolute;bottom:0;right:0;width:8px;height:8px;background:var(--green);border-radius:50%;border:1.5px solid var(--bg0)}.user-panel-overlay{position:fixed;inset:0;z-index:var(--z-overlay);background:transparent;pointer-events:none;opacity:0;transition:opacity .15s}.user-panel-overlay.open{pointer-events:all;opacity:1}.user-panel{position:fixed;top:calc(var(--nav-h) + 8px);right:12px;z-index:var(--z-modal);width:360px;background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 24px 64px #000000b3,0 0 0 1px #4f82ff0f;overflow:hidden;opacity:0;pointer-events:none;transform:translateY(-8px) scale(.98);transition:opacity .2s,transform .2s}.user-panel.open{opacity:1;pointer-events:all;transform:translateY(0) scale(1)}.up-header{padding:var(--space-9) var(--space-9) var(--space-8);background:linear-gradient(135deg,#4f82ff14,#8b5cf60f);border-bottom:1px solid var(--border);position:relative}.up-header-top{display:flex;align-items:flex-start;gap:var(--space-7);margin-bottom:var(--space-7)}.up-avatar-wrap{position:relative;flex-shrink:0}.up-avatar{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:800;color:#fff;border:3px solid rgba(255,255,255,.12);position:relative;overflow:hidden;cursor:pointer;transition:border-color .15s}.up-avatar:hover{border-color:#ffffff4d}.up-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.up-avatar-badge{position:absolute;bottom:2px;right:2px;width:14px;height:14px;background:var(--green);border-radius:50%;border:2px solid var(--bg1);z-index:2}.up-avatar-upload{position:absolute;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);opacity:0;transition:opacity .15s;border-radius:50%;cursor:pointer}.up-avatar:hover .up-avatar-upload{opacity:1}.up-user-info{flex:1;min-width:0;padding-top:var(--space-2)}.up-name{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.3px;color:var(--text0);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-email{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);margin-bottom:var(--space-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.up-plan-badge{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-2xs);padding:3px var(--space-4);border-radius:10px;font-family:var(--mono);font-weight:700}.up-plan-badge.pro{background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,130,255,.25)}.up-plan-badge.free{background:var(--glass);color:var(--text2);border:1px solid var(--border)}.up-plan-badge.admin{background:#d946ef26;color:var(--magenta);border:1px solid rgba(217,70,239,.25)}.up-usage{background:var(--bg0);border:1px solid var(--border);border-radius:9px;padding:var(--space-5) var(--space-6)}.up-usage-row{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-xs);margin-bottom:var(--space-3)}.up-usage-label{color:var(--text2);font-family:var(--mono)}.up-usage-val{color:var(--text0);font-family:var(--mono);font-weight:700}.up-usage-bar{height:4px;background:var(--bg3);border-radius:2px;overflow:hidden}.up-usage-fill{height:100%;border-radius:2px;background:linear-gradient(90deg,var(--accent),var(--violet));transition:width .4s ease}.up-body{padding:0}.up-nav{display:flex;border-bottom:1px solid var(--border);padding:0 var(--space-4)}.up-nav-tab{flex:1;padding:9px var(--space-1);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.6px;text-align:center;cursor:pointer;color:var(--text2);transition:all .15s;border:none;background:none;font-family:var(--font);border-bottom:2px solid transparent;margin-bottom:-1px;text-transform:uppercase}.up-nav-tab:hover{color:var(--text1)}.up-nav-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.up-menu-item{display:flex;align-items:center;gap:var(--space-5);padding:9px var(--space-5);border-radius:8px;cursor:pointer;font-size:var(--fs-sm);color:var(--text1);transition:all .12s;border:1px solid transparent}.up-menu-item:hover{background:var(--glass2);color:var(--text0);border-color:var(--border)}.up-menu-item.danger:hover{background:#ef444414;color:var(--red-soft);border-color:#ef444433}.up-menu-icon{width:28px;height:28px;border-radius:7px;background:var(--bg3);border:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm)}.up-menu-item.danger .up-menu-icon{background:#ef444414;border-color:#ef444433}.up-menu-text{flex:1}.up-menu-label{font-weight:600}.up-menu-sub{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);margin-top:var(--space-px)}.up-menu-arrow{font-size:var(--fs-xs);color:var(--text3)}.up-section-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;padding:var(--space-3) var(--space-5) var(--space-2);margin:var(--space-1) 0}.up-divider{height:1px;background:var(--border);margin:var(--space-3) 0}.up-form-field{margin-bottom:var(--space-5)}.up-form-field label{display:block;font-size:var(--fs-2xs);font-weight:700;letter-spacing:1px;color:var(--text2);text-transform:uppercase;margin-bottom:5px}.up-form-field input,.up-form-field select,.up-form-field textarea{width:100%;background:var(--bg0);border:1px solid var(--border);border-radius:7px;padding:var(--space-4) var(--space-5);font-size:var(--fs-xs);font-family:var(--mono);color:var(--text0);outline:none;resize:none;transition:border-color .15s;-webkit-appearance:none}.up-form-field input:focus,.up-form-field select:focus,.up-form-field textarea:focus{border-color:var(--accent)}.up-form-field select option{background:var(--bg2)}.up-save-btn{width:100%;padding:9px;border-radius:8px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:none;font-family:var(--font);background:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 12px var(--accent-glow);transition:all .15s;margin-top:var(--space-2)}.up-save-btn:hover{background:#6696ff}.up-plan-card{background:var(--bg0);border:1px solid var(--border);border-radius:10px;padding:var(--space-6);margin-bottom:var(--space-4);cursor:pointer;transition:all .15s;position:relative}.up-plan-card:hover{border-color:var(--border2)}.up-plan-card.current{border-color:var(--accent);background:var(--accent-dim)}.up-plan-card.current:after{content:"CURRENT";position:absolute;top:10px;right:10px;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;color:var(--accent);letter-spacing:1px}.up-plan-name{font-size:var(--fs-sm);font-weight:800;margin-bottom:var(--space-1)}.up-plan-price{font-size:var(--fs-xl);font-weight:800;font-family:var(--mono);color:var(--text0)}.up-plan-price span{font-size:var(--fs-xs);color:var(--text2);font-weight:400}.up-plan-features{margin-top:var(--space-4);font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.9}.up-plan-feature{display:flex;align-items:center;gap:var(--space-3)}.up-plan-feature:before{content:"\2713";color:var(--green);font-weight:700}.up-bill-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:1px solid var(--border);font-size:var(--fs-xs)}.up-bill-row:last-child{border-bottom:none}.up-bill-date{font-family:var(--mono);color:var(--text2);font-size:var(--fs-xs)}.up-bill-desc{color:var(--text1);font-weight:600;flex:1;padding:0 var(--space-5)}.up-bill-amount{font-family:var(--mono);color:var(--text0);font-weight:700}.up-bill-badge{font-size:var(--fs-2xs);padding:var(--space-1) var(--space-3);border-radius:4px;margin-left:var(--space-3);background:#22c55e26;color:var(--green);border:1px solid rgba(34,197,94,.25);font-family:var(--mono)}.up-theme-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-2)}.up-tab-body{padding:var(--space-7);max-height:400px;overflow-y:auto}.up-theme-card{border-radius:10px;border:1px solid var(--border);background:var(--glass);cursor:pointer;overflow:hidden;transition:border-color .18s,box-shadow .18s,transform .15s}.up-theme-card:hover{border-color:var(--border2);transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.up-theme-card.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 16px var(--accent-glow)}.up-theme-preview{height:72px;position:relative;overflow:hidden;background:var(--th-bg);border-bottom:1px solid rgba(255,255,255,.06)}.up-theme-preview-nav{position:absolute;top:0;left:0;right:0;height:10px;background:color-mix(in srgb,var(--th-surface) 80%,var(--th-accent) 20%);border-bottom:1px solid rgba(255,255,255,.08)}.up-theme-preview-sidebar{position:absolute;top:10px;left:0;bottom:0;width:28px;background:var(--th-surface);border-right:1px solid rgba(255,255,255,.07)}.up-theme-preview-body{position:absolute;inset:14px 4px 4px 32px;display:flex;flex-direction:column;gap:3px}.up-theme-preview-card{flex:1;border-radius:3px;background:color-mix(in srgb,var(--th-surface) 90%,var(--th-accent) 10%);border:1px solid color-mix(in srgb,var(--th-accent) 30%,transparent 70%)}.up-theme-preview-card:first-child{background:color-mix(in srgb,var(--th-accent) 25%,var(--th-surface) 75%)}.up-theme-active-badge{position:absolute;top:5px;right:6px;width:16px;height:16px;border-radius:50%;background:var(--th-accent);color:var(--th-bg);font-size:var(--fs-2xs);font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 0 8px var(--th-accent)}.up-theme-label{font-size:var(--fs-xs);font-weight:700;color:var(--text0);padding:5px var(--space-4) var(--space-px);letter-spacing:.2px}.up-theme-desc{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);padding:0 var(--space-4) 7px;line-height:1.4}.up-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;border-bottom:1px solid var(--border);gap:var(--space-5)}.up-toggle-row:last-child{border-bottom:none}.up-toggle-label{font-size:var(--fs-xs);color:var(--text1);font-weight:600}.up-toggle-sub{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);margin-top:var(--space-px)}.up-toggle{width:36px;height:20px;border-radius:10px;background:var(--bg3);border:1px solid var(--border);cursor:pointer;flex-shrink:0;position:relative;transition:background .2s,border-color .2s}.up-toggle.on{background:var(--accent);border-color:var(--accent)}.up-toggle-knob{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--text2);transition:transform .2s,background .2s}.up-toggle.on .up-toggle-knob{transform:translate(16px);background:#fff}.up-footer{padding:var(--space-5) var(--space-7) var(--space-6);border-top:1px solid var(--border);display:flex;gap:var(--space-3);background:var(--bg0)}.up-footer-btn{flex:1;padding:var(--space-4);border-radius:8px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;font-family:var(--font);transition:all .15s;text-align:center;border:1px solid var(--border);background:var(--glass);color:var(--text1)}.up-footer-btn:hover{border-color:var(--border2);color:var(--text0);background:var(--glass2)}.up-footer-btn.signout{border-color:#ef444440;color:var(--red-soft);background:#ef44440f}.up-footer-btn.signout:hover{background:#ef444424}.workspace{display:grid;grid-template-columns:var(--sidebar-w) 1fr var(--panel-w);height:100vh;padding-top:var(--nav-h)}.workspace>.sidebar{grid-area:unset}.workspace>.canvas{grid-area:unset}.workspace>.panel{grid-area:unset}.workspace.panel-docked-bottom{grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:1fr var(--panel-bottom-h, 280px)}.workspace.panel-docked-bottom>.sidebar{grid-column:1;grid-row:1}.workspace.panel-docked-bottom>.canvas{grid-column:2;grid-row:1}.workspace.panel-docked-bottom>.panel{grid-column:1 / -1;grid-row:2;min-width:0;max-width:none}.sidebar{background:var(--bg1);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;position:relative}.sidebar-resize-handle{position:absolute;top:0;bottom:0;right:0;width:6px;cursor:ew-resize;z-index:30;background:transparent;transition:background .15s}.sidebar-resize-handle:hover,.sidebar-resize-handle.dragging{background:var(--accent);opacity:.45}.ffs-story{flex:1 1 auto;min-height:120px;display:flex;flex-direction:column;padding:var(--space-6) var(--space-4) 0}.ffs-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:0 var(--space-3) var(--space-3);flex-shrink:0}.ffs-head-label{margin:0;font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.4px;color:var(--text3);text-transform:uppercase;line-height:1.4}.ffs-tree{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--border2) transparent;padding:0 var(--space-1) var(--space-6);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent)}.ffs-tree::-webkit-scrollbar{width:6px}.ffs-tree::-webkit-scrollbar-thumb{background:var(--border2);border-radius:3px}.ffs-tree::-webkit-scrollbar-track{background:transparent}.ffs-dock{flex:0 0 auto;container-type:inline-size;border-top:1px solid var(--border);background:color-mix(in srgb,var(--bg0) 35%,var(--bg1));padding:var(--space-4) var(--space-3) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.ffs-dock-body{display:flex;flex-direction:column;gap:var(--space-4)}.ffs-dock-hd{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3)}.ffs-dock-tog{width:24px;height:22px;display:grid;place-items:center;border:0;border-radius:5px;padding:0;background:none;color:var(--text3);cursor:pointer;transition:color .12s,background .12s}.ffs-dock-tog:hover,.ffs-dock-tog:focus-visible{color:var(--text0);background:var(--glass2)}.ffs-dock-tog .ic{width:14px;height:14px}.ffs-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ffs-group{display:flex;flex-direction:column;gap:5px}.ffs-group-label{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-3);font-size:var(--fs-2xs);font-weight:600;letter-spacing:.9px;text-transform:uppercase;color:var(--text3)}.ffs-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}.ffs-wide{display:none}@container (min-width: 250px){.ffs-wide{display:inline}}@container (max-width: 200px){.ffs-grid{grid-template-columns:1fr}}.ffs-tool{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:7px;min-width:0;height:32px;padding:0 7px;border-radius:var(--r2);border:1px solid var(--border);background:var(--glass);color:var(--text1);font:inherit;font-size:var(--fs-xs);font-weight:500;letter-spacing:0;cursor:pointer;text-align:left;transition:background .12s,color .12s,border-color .12s}.ffs-tool:hover{background:var(--bg3);color:var(--text0);border-color:var(--border2)}.ffs-tool:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ffs-tool-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ffs-tool .cam-sb-icon,.ffs-tool .sidebar-char-btn-icon{width:15px;display:grid;place-items:center;flex-shrink:0}.ffs-tool-progress{margin-left:auto;font-size:var(--fs-2xs);opacity:.7;font-family:var(--mono)}.ffs-tool-progress:empty{display:none}.ffs-cam-notes{padding:2px var(--space-3) 0;font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);line-height:1.5}.ffs-vault{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.s-node.ffs-vault-tile{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-items:center;column-gap:5px;row-gap:1px;padding:6px 7px;border:1px solid var(--border);background:var(--glass);font:inherit;color:var(--text1);text-align:left;min-width:0}.s-node.ffs-vault-tile:hover{background:var(--bg3);border-color:var(--border2)}.s-node.ffs-vault-tile:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ffs-vault-tile .s-node-icon{grid-row:1;width:16px;height:16px;background:none}.ffs-vault-tile .s-node-badge{grid-row:1;margin:0;padding:0;background:none;justify-self:end;font-size:var(--fs-sm);font-weight:700;color:var(--text0)}.ffs-vault-tile .ffs-tool-label{grid-column:1 / -1;font-size:var(--fs-2xs);color:var(--text3);letter-spacing:.3px}.ffs-vault-loose .s-node-icon{color:var(--amber)}.ffs-vault-loose.has-loose{border-color:#f59e0b59;background:var(--amber-dim)}.ffs-vault-loose.has-loose .s-node-badge{color:var(--amber)}.ffs-vault-tile{position:relative}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-group-label,:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-cam-notes{display:none}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-dock{gap:6px}.sidebar.ffs-compact .ffs-dock-tog .ic{transform:rotate(180deg)}.sidebar.ffs-short .ffs-dock-tog{display:none}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-dock-body{flex-direction:row;flex-wrap:wrap;gap:5px}:is(.sidebar.ffs-compact,.sidebar.ffs-short) :is(.ffs-group,.ffs-grid,.ffs-vault){display:contents}:is(.sidebar.ffs-compact,.sidebar.ffs-short) :is(.ffs-tool,.s-node.ffs-vault-tile){display:flex;width:34px;height:32px;padding:0;justify-content:center;align-items:center;gap:0}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-tool-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-vault-tile .s-node-badge{position:absolute;top:-6px;right:-6px;min-width:17px;height:17px;padding:0 4px;border-radius:9px;font-size:var(--fs-2xs);line-height:15px;text-align:center;background:var(--bg3);border:1px solid var(--border)}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffs-vault-tile .s-node-badge[data-zero]{display:none}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffp-locked{padding-right:0}:is(.sidebar.ffs-compact,.sidebar.ffs-short) .ffp-locked:after{top:3px;right:3px;transform:none;width:8px;height:8px}.sidebar-heading-add{width:16px;height:16px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text3);font-size:var(--fs-md);line-height:1;font-weight:400;transition:all .15s}.sidebar-heading-add:hover,.sidebar-heading-add:focus-visible{color:var(--accent);background:var(--accent-dim)}button.sidebar-heading-add{border:0;padding:0;background:none;font:inherit}.s-node{display:flex;align-items:center;gap:var(--space-4);padding:7px var(--space-4);border-radius:var(--r2);cursor:pointer;transition:all .15s;color:var(--text1);font-size:var(--fs-sm);font-weight:500;border:1px solid transparent}.s-node:hover{background:var(--glass2);color:var(--text0)}.s-node.active{background:var(--accent-dim);color:var(--accent);border-color:#4f82ff33}.s-node-icon{width:18px;height:18px;border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);background:var(--bg3);color:var(--text2)}.s-node.active .s-node-icon{background:var(--accent-dim);color:var(--accent)}.s-node-badge{margin-left:auto;font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);background:var(--bg3);border-radius:4px;padding:var(--space-px) 5px;flex-shrink:0}.s-node.active .s-node-badge{color:var(--accent);background:var(--accent-dim)}.s-child{display:flex;align-items:center;gap:var(--space-3);padding:5px var(--space-4) 5px 28px;border-radius:var(--r2);cursor:pointer;font-size:var(--fs-xs);color:var(--text2);transition:all .12s}.s-child:hover{color:var(--text1);background:var(--glass)}.s-child.active{color:var(--text1)}.s-child-dot{width:4px;height:4px;border-radius:50%;background:currentColor;flex-shrink:0;opacity:.5}.s-child-del{width:16px;height:16px;border-radius:3px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:var(--text3);cursor:pointer;opacity:0;transition:opacity .12s,background .12s,color .12s;margin-left:auto}.s-child:hover .s-child-del{opacity:1}.s-child-del:hover{background:#ef444426;color:var(--red-soft)!important}.st-find{padding:0 var(--space-1) var(--space-3)}.st-find-in{width:100%;box-sizing:border-box;font:inherit;font-size:var(--fs-xs);color:var(--text0);background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);padding:6px 9px}.st-find-in:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.st-none{margin:6px var(--space-4);font-size:var(--fs-xs);color:var(--text2)}.st-act{margin-bottom:2px}.st-act-hd{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:2px;background:var(--bg1);padding:1px 0}.st-tog{width:22px;height:26px;flex-shrink:0;display:grid;place-items:center;border:0;background:none;color:var(--text2);border-radius:var(--r1, 4px);cursor:pointer;padding:0}.st-tog .ic{transition:transform .15s}.st-act.open .st-tog .ic{transform:rotate(90deg)}.st-tog:hover,.st-tog:focus-visible{color:var(--text0);background:var(--glass2)}.st-act-btn{flex:1;min-width:0;font:inherit;font-size:var(--fs-sm);text-align:left;background:none;padding:6px var(--space-3)}.st-act-btn.active .s-node-badge{color:var(--text0)}.st-act-btn .s-node-badge{color:var(--text1)}.st-act-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0;background:var(--st-c, var(--accent))}.st-act-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-scenes{list-style:none;padding:0 0 0 14px;border-left:1px solid var(--border);margin:2px 0 4px 11px}.st-sc{padding:0;gap:0;position:relative}.st-sc-btn{flex:1;min-width:0;display:flex;align-items:center;gap:7px;font:inherit;font-size:var(--fs-xs);color:var(--text2);background:none;border:0;border-radius:var(--r2);padding:5px 6px;cursor:pointer;text-align:left}.st-sc-btn:hover,.st-sc-btn:focus-visible{color:var(--text0);background:var(--glass)}.st-sc.active .st-sc-btn{color:var(--text0);background:var(--accent-dim);box-shadow:inset 2px 0 0 var(--accent)}.st-num{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--text2);min-width:18px;flex-shrink:0}.st-sc.active .st-num{color:var(--accent)}.st-sc .s-child-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.st-meta{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--text2);flex-shrink:0}.st-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--green, #22c55e)}.st-dot.st-warn{background:var(--amber, #f59e0b)}.st-dot.st-err{background:var(--red, #ef4444)}.st-del{border:0;background:none;padding:0;margin:0 2px 0 0}.st-sc:hover .st-del,.st-del:focus-visible{opacity:1}.st-rename{margin:2px 4px}.st-add{background:none;color:var(--text2);width:calc(100% - 25px);margin:2px 0 6px 25px;font:inherit;font-size:var(--fs-xs);display:flex;align-items:center;gap:6px;cursor:pointer}.sidebar-title-input{flex:1;background:var(--bg0);border:1px solid var(--accent);border-radius:4px;padding:var(--space-1) var(--space-3);font-size:var(--fs-xs);font-family:var(--font);color:var(--text0);outline:none;min-width:0;width:100%;box-shadow:0 0 0 2px var(--accent-dim)}.panel-header-actions{display:flex;gap:5px;margin-top:var(--space-4);align-items:center}.panel-header-edit-btn{font-size:var(--fs-xs);color:var(--text2);cursor:pointer;font-family:var(--mono);padding:var(--space-2) 9px;border-radius:5px;border:1px solid var(--border);background:var(--glass);transition:all .12s;font-weight:600;display:flex;align-items:center;gap:var(--space-2);letter-spacing:.2px}.panel-header-edit-btn:hover{color:var(--text0);border-color:var(--border2);background:var(--glass2)}.panel-header-edit-btn.danger-btn{color:var(--text3);border-color:var(--border)}.panel-header-edit-btn.danger-btn:hover{color:var(--red-soft);border-color:#ef444459;background:#ef444414}.panel-title-edit-wrap{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);animation:fadeInUp .15s ease both}.panel-title-edit-input{flex:1;background:var(--bg0);border:1px solid var(--accent);border-radius:7px;padding:7px var(--space-5);font-size:var(--fs-md);font-family:var(--font);color:var(--text0);outline:none;font-weight:800;letter-spacing:-.2px;box-shadow:0 0 0 3px var(--accent-dim);transition:box-shadow .15s}.panel-title-edit-input:focus{box-shadow:0 0 0 3px #4f82ff33}.panel-title-edit-save{padding:var(--space-3) var(--space-6);border-radius:6px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:none;font-family:var(--font);background:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 8px var(--accent-glow);transition:all .15s;flex-shrink:0}.panel-title-edit-save:hover{background:#6696ff}.panel-title-edit-cancel{padding:var(--space-3) var(--space-5);border-radius:6px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:1px solid var(--border);font-family:var(--font);background:var(--glass);color:var(--text2);transition:all .15s;flex-shrink:0}.panel-title-edit-cancel:hover{color:var(--text1);border-color:var(--border2)}.cam-sidebar-btn:active,.sidebar-char-btn:active{transform:translateY(1px)}.cam-sidebar-btn.active{background:var(--accent-dim);color:var(--accent);border-color:#4f82ff73}.ffs-tool{--ffs-hue: var(--text2);gap:6px}.ffs-tool .cam-sb-icon,.ffs-tool .sidebar-char-btn-icon{color:var(--ffs-hue)}.ffs-tool:hover{border-color:color-mix(in srgb,var(--ffs-hue) 45%,var(--border))}.sidebar-char-btn--chars{--ffs-hue: var(--violet, #8b5cf6)}.sidebar-char-btn--envs{--ffs-hue: var(--cyan, #06b6d4)}.sidebar-char-btn--vehs{--ffs-hue: #f43f5e}.sidebar-char-btn--props{--ffs-hue: var(--amber, #f59e0b)}.sidebar-char-btn.ffs-tool{box-shadow:inset 2px 0 color-mix(in srgb,var(--ffs-hue) 70%,transparent)}.cam-sidebar-btn--blocks{--ffs-hue: #a78bfa}.cam-sidebar-btn--storyed{--ffs-hue: var(--green, #22c55e)}.cam-sidebar-btn--shotpath{--ffs-hue: var(--accent, #4f82ff)}.cam-sidebar-btn--cel{--ffs-hue: #f472b6}.cam-sidebar-btn--animatic{--ffs-hue: var(--cyan, #06b6d4)}.ws-switch{display:flex;background:var(--bg2);border:1px solid var(--border2);border-radius:8px;padding:var(--space-1);gap:var(--space-1);flex-shrink:0}.ws-switch-btn{padding:var(--space-2) var(--space-5);border-radius:6px;border:none;background:transparent;color:var(--text2);font-size:var(--fs-xs);font-weight:700;font-family:var(--font);cursor:pointer;white-space:nowrap;transition:all .12s}.ws-switch-btn:hover{color:var(--text0)}.ws-switch-btn.active{background:var(--accent);color:var(--text-on-accent);cursor:default}.ws-switch-btn:disabled{background:var(--accent);color:var(--text-on-accent);cursor:default;opacity:1}.ws-tb [hidden]{display:none!important}.ws-tb{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.ws-tdiv{width:1px;height:20px;background:var(--border);flex-shrink:0}.ws-zlbl{font-size:var(--fs-xs);font-family:var(--mono, monospace);color:var(--text2);min-width:38px;text-align:center;flex-shrink:0}.ws-tbtn{display:inline-flex;align-items:center;gap:5px;height:26px;padding:0 9px;border-radius:7px;border:1px solid var(--border2);background:var(--bg2);color:var(--text1);font-size:var(--fs-xs);font-weight:700;font-family:var(--font);cursor:pointer;white-space:nowrap;transition:all .12s}.ws-tbtn:hover{background:var(--glass2, var(--bg3));color:var(--text0);border-color:var(--border3, var(--accent))}.ws-tbtn.primary{background:var(--accent-dim, rgba(79,130,255,.12));border-color:#4f82ff66;color:var(--accent)}.ws-tbtn.primary:hover{background:var(--accent-glow, rgba(79,130,255,.22));color:var(--text0)}.ws-tbtn.green{background:#22c55e1a;border-color:#22c55e59;color:#22c55e}.ws-tbtn.green:hover{background:#22c55e33;border-color:#22c55e99}.ws-tbtn.danger{color:#f87171cc;border-color:#f8717138}.ws-tbtn.danger:hover{background:#f871711a;color:var(--red);border-color:#f8717166}.ws-tbtn.on{background:#7c3aed29;border-color:#7c3aed80;color:#a78bfa}.ws-trange{display:inline-flex;align-items:center;gap:var(--space-3);height:26px;padding:0 9px;border-radius:7px;border:1px solid var(--border2);background:var(--bg2);flex-shrink:0;cursor:pointer}.ws-trlbl{font-size:var(--fs-xs);line-height:1;flex-shrink:0}.ws-trng{-webkit-appearance:none;appearance:none;width:72px;height:4px;border-radius:3px;cursor:pointer;background:linear-gradient(90deg,#a78bfa 0%,var(--border3, var(--border2)) 0%);outline:none}.ws-trng::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:13px;height:13px;border-radius:50%;background:#a78bfa;border:2px solid var(--bg1, #16181d);cursor:pointer;box-shadow:0 0 0 1px #7c3aed80}.ws-trng::-moz-range-thumb{width:13px;height:13px;border:2px solid var(--bg1, #16181d);border-radius:50%;background:#a78bfa;cursor:pointer}.ws-trng::-moz-range-track{height:4px;border-radius:3px;background:var(--border2)}.ws-tlbl{display:inline-flex;align-items:center;height:26px;padding:0 var(--space-4);border-radius:7px;font-size:var(--fs-xs);font-weight:700;font-family:var(--mono, monospace);letter-spacing:.02em;white-space:nowrap;flex-shrink:0;color:var(--text2);background:var(--bg2);border:1px solid var(--border2)}.ws-tlbl.ws-tlbl-warn{color:var(--amber-soft);border-color:#fbbf2466;background:#fbbf2414}.fv-motion-map-wrap{border-top:1px solid var(--border)}.fv-motion-map-box{aspect-ratio:16/9}.fv-motion-map-box img{width:100%;height:100%;object-fit:contain}.shot-thumb{position:relative}.shot-thumb-open-btn{position:absolute;bottom:3px;right:3px;z-index:12;width:20px;height:20px;border-radius:50%;background:#000000a6;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#ffffffd9;cursor:pointer;opacity:0;transition:opacity .12s,background .1s}.shot-thumb:hover .shot-thumb-open-btn{opacity:1}.shot-thumb-open-btn:hover{background:#4f82ffcc}.asset-grid-sortable .asset-thumb{cursor:default}.asset-thumb.asset-dragging{opacity:.3;transform:scale(.96);cursor:grabbing}.asset-thumb.asset-drag-over{border:2px dashed var(--accent)!important;background:var(--accent-dim)!important}.asset-thumb-open{position:absolute;bottom:4px;right:4px;z-index:12;width:20px;height:20px;border-radius:50%;background:#000000a6;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#ffffffd9;cursor:pointer;opacity:0;transition:opacity .12s,background .1s}.asset-thumb:hover .asset-thumb-open{opacity:1}.asset-thumb-open:hover{background:#4f82ffd9}.asset-thumb-edit{position:absolute;bottom:4px;left:4px;z-index:12;width:20px;height:20px;border-radius:50%;background:#000000a6;border:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#ffffffd9;cursor:pointer;opacity:0;transition:opacity .12s,background .1s}.asset-thumb:hover .asset-thumb-edit{opacity:1}.asset-thumb-edit:hover{background:#f59e0be6}.asset-edit-badge{position:absolute;top:4px;left:4px;z-index:11;font-size:var(--fs-2xs);font-family:var(--mono);background:#f59e0be6;color:#1a1205;padding:var(--space-px) var(--space-2);border-radius:3px;font-weight:700}.panel-mm-section{border-bottom:1px solid var(--border)}.panel-mm-section .panel-section-header{margin-bottom:var(--space-4)}.panel-mm-img-wrap{width:100%;position:relative;border-radius:7px;overflow:hidden;border:1px solid var(--border);background:var(--bg2);cursor:zoom-in;margin-bottom:var(--space-3)}.panel-mm-img-wrap img{width:100%;display:block}.panel-mm-zoom-hint{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#0000008c);color:#ffffffa6;font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-5) var(--space-4) 5px;text-align:center;opacity:0;transition:opacity .15s}.panel-mm-img-wrap:hover .panel-mm-zoom-hint{opacity:1}.panel-mm-notes{font-size:var(--fs-2xs);color:var(--text2);font-family:var(--mono);line-height:1.5;padding:5px var(--space-4);background:var(--bg2);border-radius:5px;border:1px solid var(--border);margin-bottom:var(--space-3)}.panel-mm-del-btn{width:100%;padding:var(--space-2) 0;background:none;border:1px solid rgba(248,113,113,.2);border-radius:5px;color:#f871718c;font-size:var(--fs-2xs);cursor:pointer;font-family:var(--font);transition:all .12s}.panel-mm-del-btn:hover{color:var(--red-soft);border-color:#f8717180}.panel-mm-empty{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--space-7) var(--space-4);color:var(--text3);font-size:var(--fs-xs);text-align:center;border:1px dashed var(--border);border-radius:7px;margin-bottom:var(--space-2)}.hero-action-btn.cam-motion-map-btn-empty{background:#16a34a0a;border-color:#16a34a26;color:#4ade8059}.hero-action-btn.cam-motion-map-btn-empty:hover{background:#16a34a1f;border-color:#16a34a59;color:var(--green-soft)}.hero-action-btn.cam-motion-map-btn{background:#16a34a1f;border-color:#16a34a4d;color:var(--green-soft)}.hero-action-btn.cam-motion-map-btn:hover{background:#16a34a38;border-color:var(--green-soft);color:var(--green-soft)}.s-add{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--r2);cursor:pointer;font-size:var(--fs-xs);color:var(--text3);border:1px dashed var(--border);margin-top:var(--space-2);transition:all .15s}.s-add:hover{color:var(--accent);border-color:#4f82ff66;background:var(--accent-dim)}.char-avatar{width:22px;height:22px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);font-weight:700}.sidebar-stats{flex-shrink:0;display:flex;flex-direction:column;gap:6px;width:100%;padding:var(--space-4) var(--space-6) var(--space-5);border:0;border-top:1px solid var(--border);background:var(--bg0);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .12s}.sidebar-stats:hover{background:var(--bg2)}.sidebar-stats:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ffs-stats-hd{display:flex;align-items:center;gap:6px;font-size:var(--fs-2xs);color:var(--text3)}.ffs-stats-icon{display:grid;place-items:center;color:var(--text2)}.ffs-stats-icon .ic{width:13px;height:13px}.ffs-stats-title{font-weight:700;letter-spacing:1px;text-transform:uppercase}.ffs-stats-scope{margin-left:auto;font-family:var(--mono);max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-stats:hover .ffs-stats-title,.sidebar-stats:hover .ffs-stats-icon{color:var(--accent)}.ffs-stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:4px}.sidebar-stat{display:flex;flex-direction:column;align-items:center;min-width:0}.sidebar-stat-val{font-size:var(--fs-md);font-weight:700;font-family:var(--mono);color:var(--text0);font-variant-numeric:tabular-nums}.sidebar-stat-val.is-good{color:var(--green)}.sidebar-stat-key{font-size:var(--fs-2xs);color:var(--text3);letter-spacing:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas{display:flex;flex-direction:column;overflow:hidden;background:var(--bg0)}.canvas-bar{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) 18px;border-bottom:1px solid var(--border);background:var(--bg1);flex-shrink:0;container-type:inline-size}.canvas-bar>div:first-child{flex:1 1 0;min-width:0}.canvas-title{font-size:var(--fs-md);font-weight:700}.canvas-sub{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono)}.canvas-title,.canvas-sub{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.base-view{padding:22px 26px 60px;overflow-y:auto;flex:1;min-height:0}.base-grid{display:grid;gap:var(--space-5);grid-template-columns:minmax(0,1fr);max-width:920px;margin:0 auto}.base-card{display:flex;flex-direction:column;background:var(--bg1);border:1px solid var(--border);border-left:3px solid color-mix(in srgb,var(--base-accent, var(--accent)) 55%,transparent);border-radius:12px;overflow:hidden;transition:border-color .15s,transform .18s cubic-bezier(.34,1.56,.64,1),box-shadow .18s}.base-card:hover{border-color:var(--border2);transform:translateY(-2px)}.base-card.active{border-color:var(--accent);border-left-color:var(--base-accent, var(--accent));box-shadow:0 0 0 1px var(--accent-dim),0 8px 24px #00000047}.base-card-hd{display:flex;align-items:center;gap:9px;padding:var(--space-5) var(--space-7) var(--space-4);cursor:pointer;user-select:none}.base-card-num{font-family:var(--mono);font-size:var(--fs-xs);font-weight:800;color:var(--base-accent, var(--accent));background:color-mix(in srgb,var(--base-accent, var(--accent)) 14%,transparent);padding:var(--space-1) 7px;border-radius:5px;flex-shrink:0}.base-card-title{flex:1;min-width:0;font-size:var(--fs-sm);font-weight:700;color:var(--text1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color .15s}.base-card.active .base-card-title{color:var(--text0)}.base-card-shots{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--text3);flex-shrink:0}.base-card-desc{width:100%;border:none;outline:none;resize:none;overflow:hidden;background:transparent;box-sizing:border-box;padding:var(--space-1) var(--space-7) var(--space-7);min-height:58px;font-size:var(--fs-sm);line-height:1.6;font-family:var(--font);color:var(--text1);transition:background .15s}.base-card-desc:focus{background:color-mix(in srgb,var(--base-accent, var(--accent)) 5%,transparent);color:var(--text0)}.base-card-desc::placeholder{color:var(--text3);font-style:italic;opacity:.8}.base-card-add{display:flex;align-items:center;justify-content:center;gap:var(--space-3);min-height:64px;cursor:pointer;flex-direction:row;background:transparent;border:1.5px dashed var(--border2);border-radius:12px;color:var(--text3);font-size:var(--fs-xs);font-weight:600;font-family:var(--font);transition:all .15s}.base-card-add-icon{font-size:var(--fs-lg);line-height:1}.base-card-add:hover,.base-card-add:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);outline:none;transform:translateY(-2px)}.lbl-copy{cursor:copy}.lbl-copy:after{content:"\29c9";margin-left:5px;font-size:.85em;opacity:0;transition:opacity .12s;font-style:normal}.lbl-copy:hover:after{opacity:.5}.lbl-copy.copied:after{content:"\2713";opacity:1;color:var(--green, #22c55e)}.act-desc{flex-shrink:0;background:var(--bg1);border-bottom:1px solid var(--border)}.act-desc-hd{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-9) var(--space-3) var(--space-8);cursor:pointer;user-select:none}.act-desc-hd:hover .act-desc-chevron{color:var(--text0)}.act-desc-chevron{font-size:var(--fs-2xs);color:var(--text3);width:12px;text-align:center;transition:transform .15s ease,color .12s;flex-shrink:0}.act-desc.collapsed .act-desc-chevron{transform:rotate(-90deg)}.act-desc-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--text3);font-family:var(--mono);flex-shrink:0}.act-desc-preview{flex:1;min-width:0;font-size:var(--fs-xs);color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .15s}.act-desc.collapsed .act-desc-preview{opacity:1}.act-desc-actions{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0;opacity:0;transition:opacity .12s}.act-desc-hd:hover .act-desc-actions{opacity:1}.act-desc-action-btn{font-size:var(--fs-2xs);color:var(--text3);cursor:pointer;font-family:var(--mono);padding:var(--space-1) 7px;border-radius:4px;border:1px solid var(--border);background:var(--glass);transition:all .12s}.act-desc-action-btn:hover{color:var(--text0);border-color:var(--border2)}.act-desc-action-btn.danger:hover{color:var(--red-soft);border-color:#f8717166}.act-desc-body{padding:0 var(--space-9) var(--space-5) 36px}.act-desc.collapsed .act-desc-body{display:none}.act-desc-text{font-size:var(--fs-sm);line-height:1.6;color:var(--text1);white-space:pre-wrap;overflow-wrap:break-word;cursor:text;border-radius:6px;padding:var(--space-1) var(--space-4);margin-left:-8px;transition:background .12s}.act-desc-text:hover{background:var(--glass2)}.act-desc-text.empty{color:var(--text3);font-style:italic}.act-desc-input{width:100%;min-height:40px;resize:none;overflow:hidden;box-sizing:border-box;background:var(--bg0);border:1px solid var(--accent);border-radius:6px;padding:7px var(--space-5);font-size:var(--fs-sm);line-height:1.6;font-family:var(--font);color:var(--text0);outline:none}.act-desc-edit-hint{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);margin-top:var(--space-2);text-align:right}.view-toggle{display:flex;gap:var(--space-px);background:var(--bg0);border:1px solid var(--border);border-radius:8px;padding:var(--space-1);margin-left:auto}.canvas-print-btn{margin-left:auto;display:inline-flex;align-items:center;gap:6px;align-self:center;height:32px;padding:0 12px;border-radius:8px;border:1px solid var(--border);background:var(--bg0);color:var(--text1);font:inherit;font-size:var(--fs-xs);font-weight:700;letter-spacing:.5px;cursor:pointer;transition:color .12s,border-color .12s,background .12s;flex-shrink:0}.canvas-print-btn[hidden]{display:none}.canvas-print-btn:hover{color:var(--text0);border-color:var(--border2);background:var(--bg2)}.canvas-print-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.canvas-print-btn .ic{width:15px;height:15px}.canvas-print-btn:not([hidden])+.view-toggle{margin-left:var(--space-4)}@container (max-width: 760px){.canvas-print-btn{padding:0 9px}.canvas-print-btn>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}.view-btn{padding:var(--space-2) 11px;border-radius:5px;font-size:var(--fs-xs);font-weight:700;color:var(--text2);cursor:pointer;border:none;background:none;font-family:var(--font);letter-spacing:.5px;transition:all .12s}.view-btn:hover{color:var(--text1)}.view-btn.active{background:var(--bg3);color:var(--text0)}.canvas-body{flex:1;overflow:hidden;display:flex;flex-direction:column;min-height:0;position:relative}.view-level-bar{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap;padding:var(--space-3) 18px;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg1)}.view-level-bar[hidden]{display:none}.vlb-seg{display:inline-flex;gap:2px;padding:3px;background:var(--bg0);border:1px solid var(--border);border-radius:9px}.vlb-btn{font-family:var(--font);font-size:var(--fs-xs);font-weight:700;color:var(--text2);padding:5px 12px;border:0;background:none;border-radius:6px;cursor:pointer;white-space:nowrap;transition:color .12s ease,background .12s ease}.vlb-btn:hover{color:var(--text0)}.vlb-btn.active{color:var(--text0);background:var(--accent-dim);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 45%,transparent)}.vlb-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.vlb-hint{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}@media (max-width: 640px){.view-level-bar{padding:var(--space-3) var(--space-5)}.vlb-seg{max-width:100%;overflow-x:auto;scrollbar-width:none}.vlb-hint{display:none}}.grid-view,.outline-view{flex:1;overflow-y:auto}.card-view{padding:var(--space-9) var(--space-9) var(--space-13);display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:18px;align-content:start;overflow-y:auto;flex:1}.card-focus-backdrop{position:absolute;inset:0;z-index:50;background:#03050ad1;backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity .22s cubic-bezier(.22,1,.36,1)}.card-focus-backdrop.active{opacity:1;pointer-events:all}.scene-card.card-focused{position:relative;z-index:60;transform:none!important;box-shadow:0 0 0 2px var(--accent),0 32px 80px #000c,0 0 0 1px #4f82ff4d!important;border-color:var(--accent)!important}.grid-view{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.grid-view.gv-layout{display:flex;flex-direction:column;padding:0;gap:0}.gv-strip{display:flex;align-items:center;gap:0;height:96px;flex-shrink:0;background:var(--bg1);border-bottom:2px solid var(--border)}.gv-strip-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--text3);writing-mode:vertical-rl;text-orientation:mixed;padding:0 var(--space-5);flex-shrink:0;border-right:1px solid var(--border);height:100%;display:flex;align-items:center;justify-content:center;background:var(--bg1)}.gv-strip-scroll{display:flex;flex-direction:row;gap:var(--space-3);align-items:center;overflow-x:auto;overflow-y:hidden;flex:1;height:100%;padding:var(--space-4) var(--space-6);scrollbar-width:thin;scrollbar-color:var(--border) transparent}.gv-strip-scroll::-webkit-scrollbar{height:8px;width:8px}.gv-strip-scroll::-webkit-scrollbar-thumb{background:var(--border2);border-radius:4px}.gv-strip-scroll::-webkit-scrollbar-thumb:hover{background:var(--text3)}.gv-strip-label{gap:6px}.gv-strip-nav{flex-shrink:0;align-self:stretch;width:30px;display:grid;place-items:center;border:0;padding:0;background:var(--bg1);color:var(--text1);cursor:pointer;border-right:1px solid var(--border)}.gv-strip-next{border-right:0;border-left:1px solid var(--border)}.gv-strip-nav:hover:not(:disabled),.gv-strip-nav:focus-visible{color:var(--text0);background:var(--bg2)}.gv-strip-nav:disabled{color:var(--text3);cursor:default}.gv-strip:not(.overflows) .gv-strip-nav{display:none}.gv-strip-side{flex-shrink:0;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:0 var(--space-4);max-width:180px}.gv-strip.rows .gv-strip-side{justify-content:flex-start;padding-top:var(--space-4)}.gv-strip-act{font:inherit;font-size:var(--fs-xs);color:var(--text0);background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);padding:4px 6px;max-width:180px;text-overflow:ellipsis}.gv-strip-act:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.gv-strip-all{flex-shrink:0;align-self:stretch;margin:0;font:inherit;font-size:var(--fs-xs);font-weight:600;white-space:nowrap;padding:5px 10px;border-radius:var(--r2);border:1px solid var(--border);background:var(--bg2);color:var(--text1);cursor:pointer}.gv-strip-all:hover,.gv-strip-all:focus-visible{border-color:var(--accent);color:var(--text0)}.gv-strip-all[aria-pressed=true]{border-color:var(--accent);background:var(--accent-dim);color:var(--text0)}.gv-strip,.gv-strip-scroll{min-width:0}.gv-strip.rows{height:auto;max-height:220px;align-items:stretch}.gv-strip.rows .gv-strip-label{height:auto}.gv-strip.rows .gv-strip-scroll{flex-wrap:wrap;align-content:flex-start;overflow-x:hidden;overflow-y:auto;height:auto;max-height:188px}.gv-strip-empty{padding:0 16px;color:var(--text3);font-size:var(--fs-sm);display:flex;align-items:center;height:100%}.gv-strip-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gv-strip-tab{padding:0;font:inherit;text-align:left}.gv-strip-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.gv-strip-tab{position:relative;width:120px;height:76px;border-radius:8px;flex-shrink:0;border:2px solid var(--border);overflow:hidden;cursor:pointer;background:var(--bg2);transition:border-color .15s,transform .12s,box-shadow .15s}.gv-strip-tab:hover{border-color:var(--border2);transform:scale(1.04)}.gv-strip-tab.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 4px 16px var(--accent-glow)}.gv-strip-thumb{position:absolute;inset:0;width:100%;height:100%}.gv-strip-tab-ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:5px 7px;background:linear-gradient(transparent 20%,#000000d1)}.gv-strip-tab-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;color:var(--accent);line-height:1;margin-bottom:var(--space-1)}.gv-strip-tab-name{font-size:var(--fs-xs);font-weight:800;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.gv-strip-tab-meta{display:flex;align-items:center;gap:var(--space-2);font-size:var(--fs-2xs);font-family:var(--mono);color:#ffffff8c;margin-top:var(--space-1)}.gv-cont-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;display:inline-block}.gv-cont-dot.ok{background:var(--green)}.gv-cont-dot.warn{background:var(--amber)}.gv-cont-dot.err{background:var(--red)}.gv-detail{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;background:var(--bg0)}.gv-detail-hdr{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap;padding:var(--space-7) 22px;background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0}.gv-detail-num{font-size:var(--fs-xs);font-family:var(--mono);font-weight:800;background:var(--accent);color:var(--text-on-accent);border-radius:5px;padding:var(--space-2) var(--space-5);letter-spacing:.5px;flex-shrink:0}.gv-detail-title{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.3px;background:none;border:none;color:var(--text0);font-family:var(--font);flex:1;min-width:120px;outline:none;border-bottom:2px solid transparent;transition:border-color .15s;padding:var(--space-px) 0}.gv-detail-title:focus{border-bottom-color:var(--accent)}.gv-detail-desc{font-size:var(--fs-sm);font-family:var(--mono);color:var(--text2);background:none;border:none;outline:none;min-width:100px;flex-shrink:0;border-bottom:1px solid transparent;transition:border-color .15s;padding:var(--space-px) 0}.gv-detail-desc:focus{border-bottom-color:var(--border2)}.gv-hdr-badge{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);background:var(--bg2);border:1px solid var(--border);border-radius:5px;padding:var(--space-2) var(--space-5);flex-shrink:0}.gv-status-pill{font-size:var(--fs-xs);font-family:var(--mono);font-weight:800;padding:var(--space-2) var(--space-5);border-radius:5px;flex-shrink:0}.gv-status-ok{background:#22c55e26;color:var(--green)}.gv-status-warn{background:#f59e0b26;color:var(--amber)}.gv-status-err{background:#ef444426;color:var(--red-soft)}.gv-detail-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.gv-section-hd{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.4px;text-transform:uppercase;color:var(--text3);padding:var(--space-6) 22px var(--space-5);background:var(--bg1);border-bottom:1px solid var(--border);border-top:1px solid var(--border);flex-shrink:0;position:sticky;top:0;z-index:2}.gv-section-hd-flex{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6)}.gv-add-shot-btn{display:inline-flex;align-items:center;gap:5px;padding:5px var(--space-6);border-radius:7px;border:1px dashed var(--border2);background:none;color:var(--text2);font-family:var(--font);font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .15s;text-transform:none}.gv-add-shot-btn span{font-size:var(--fs-md);line-height:1}.gv-add-shot-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.gv-shot-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-7);padding:18px 22px}.gv-shot-empty{grid-column:1/-1;padding:var(--space-13) var(--space-9);text-align:center;color:var(--text3);font-size:var(--fs-sm);line-height:1.6}.gv-shot-card{border-radius:10px;border:1px solid var(--border);overflow:hidden;background:var(--bg2);display:flex;flex-direction:column;transition:border-color .15s,box-shadow .15s,opacity .15s}.gv-shot-card:hover{border-color:var(--border2);box-shadow:0 4px 20px #0000004d}.gv-shot-card.shot-dragging{opacity:.4}.gv-shot-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--bg3);cursor:grab}.gv-shot-frame:active{cursor:grabbing}.gv-shot-frame.shot-drag-over{outline:2px dashed var(--accent);outline-offset:-2px}.gv-shot-frame-blank{background:var(--bg1);border-bottom:1px dashed var(--border2)}.gv-shot-blank-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);cursor:pointer;color:var(--text3);transition:background .15s,color .15s;text-align:center;padding:var(--space-4)}.gv-shot-blank-inner:hover{background:var(--accent-dim);color:var(--accent)}.gv-shot-blank-icon{font-size:var(--fs-2xl);font-weight:300;line-height:1}.gv-shot-blank-label{font-size:var(--fs-2xs);font-family:var(--mono);line-height:1.4;opacity:.85}.gv-shot-ann{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:5px}.gv-ann-row{display:flex;gap:var(--space-4);align-items:baseline}.gv-ann-k{font-family:var(--mono);font-weight:800;font-size:var(--fs-2xs);color:var(--text3);text-transform:uppercase;flex-shrink:0;min-width:58px;letter-spacing:.5px}.gv-ann-v{font-family:var(--mono);color:var(--text1);font-size:var(--fs-xs);flex:1;outline:none;word-break:break-word;line-height:1.4;border-bottom:1px solid transparent;transition:border-color .12s}.gv-ann-v:focus{border-bottom-color:var(--accent)}.gv-ann-dlg{align-items:flex-start}.gv-ann-row .gv-ann-ta,.fv-ann .fv-ann-ta{flex:1;min-width:0;width:100%;resize:vertical;background:transparent;color:var(--text1);font-family:var(--mono);font-size:var(--fs-xs);line-height:1.4;padding:2px 4px;margin:0 -4px;border:1px solid transparent;border-bottom-color:var(--border);border-radius:4px;outline:none}.gv-ann-ta:focus,.fv-ann-ta:focus{color:var(--text0);background:var(--bg1);border-color:var(--accent)}.gv-ann-ta::placeholder,.fv-ann-ta::placeholder{color:var(--text3);font-style:italic}.gv-ann-ready,.fv-ann-ready{display:flex;padding-top:2px}.fv-ann.fv-ann-dlg{flex-direction:column;align-items:stretch;gap:var(--space-2)}.fv-ann .fv-ann-ta{font-family:inherit;margin:0}.gv-ann-v:empty:before{content:attr(data-ph);color:var(--text3);font-style:italic;pointer-events:none}.gv-notes-wrap{padding:var(--space-8) 22px;display:flex;flex-direction:column;gap:var(--space-7)}.gv-notes-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7)}.gv-note-card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:var(--space-6) var(--space-7);display:flex;flex-direction:column;gap:var(--space-4)}.gv-note-wide{grid-column:1/-1}.gv-note-hd{font-size:var(--fs-2xs);font-weight:800;letter-spacing:.9px;text-transform:uppercase;color:var(--text3)}.gv-note-ta{width:100%;border:none;background:transparent;color:var(--text0);font-family:var(--mono);font-size:var(--fs-sm);line-height:1.6;resize:none;outline:none}.gv-note-input{flex:1;border:none;background:transparent;color:var(--text0);font-family:var(--mono);font-size:var(--fs-sm);outline:none;border-bottom:1px solid transparent;transition:border-color .12s;padding:var(--space-px) 0}.gv-note-input:focus{border-bottom-color:var(--accent)}.gv-tags-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.gv-tag-chip{padding:var(--space-2) 11px;border-radius:20px;font-size:var(--fs-xs);font-weight:700;background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,130,255,.25)}.gv-tag-rm{margin-left:5px;cursor:pointer;opacity:.5;font-size:var(--fs-xs);vertical-align:middle}.gv-tag-rm:hover{opacity:1}.gv-tag-add{padding:var(--space-2) 11px;border-radius:20px;font-size:var(--fs-xs);font-weight:700;border:1px dashed var(--border);background:none;color:var(--text3);cursor:pointer;font-family:var(--font);transition:all .12s}.gv-tag-add:hover{border-color:var(--accent);color:var(--accent)}.grid-thumb-card{background:var(--bg1);border:1px solid var(--border);border-radius:12px;overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .15s;animation:cardReveal .35s cubic-bezier(.22,1,.36,1) both;position:relative;align-self:start}.grid-thumb-vidsec{padding:7px 9px 9px;border-top:1px solid var(--border);background:linear-gradient(180deg,rgba(6,182,212,.05),transparent)}.gtv-label{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);font-size:var(--fs-2xs);font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--cyan)}.gtv-label .gtv-count{margin-left:auto;font-family:var(--mono);font-weight:700;color:var(--text3);background:var(--bg3);border-radius:4px;padding:0 5px}.gtv-strip{display:flex;gap:var(--space-3);flex-wrap:wrap}.gtv-thumb{position:relative;width:64px;height:40px;border-radius:6px;overflow:hidden;border:1px solid var(--border);background:var(--bg3);flex-shrink:0;transition:border-color .12s,transform .12s}.gtv-thumb:hover{border-color:var(--cyan);transform:translateY(-1px)}.gtv-thumb img,.gtv-thumb video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gtv-badge{position:absolute;bottom:2px;right:2px;z-index:2;font-size:var(--fs-2xs);color:#fff;background:#06b6d4d9;border-radius:3px;padding:0 3px;line-height:1.5;pointer-events:none}.ff-reorderable{cursor:grab}.ff-reorderable:active{cursor:grabbing}.ff-dragging{opacity:.38}.ff-drop-target{outline:2px dashed var(--accent);outline-offset:-2px}.grid-thumb-card:hover{border-color:var(--border3);box-shadow:0 12px 40px #00000080;transform:translateY(-2px)}.grid-thumb-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 12px 40px var(--accent-glow)}.grid-thumb-hero{width:100%;aspect-ratio:2.35 / 1;position:relative;overflow:hidden;background:var(--bg0)}.grid-thumb-hero img,.grid-thumb-hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .35s cubic-bezier(.22,1,.36,1)}.grid-thumb-card:hover .grid-thumb-hero img,.grid-thumb-card:hover .grid-thumb-hero video{transform:scale(1.05)}.grid-thumb-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,10,18,.75) 0%,transparent 55%);z-index:2}.grid-thumb-num{position:absolute;top:8px;left:8px;z-index:3;background:var(--accent);color:var(--text-on-accent);font-size:var(--fs-2xs);font-weight:800;font-family:var(--mono);padding:var(--space-1) 7px;border-radius:4px;letter-spacing:.5px}.grid-thumb-cont{position:absolute;top:8px;right:8px;z-index:3;width:8px;height:8px;border-radius:50%}.grid-thumb-cont.ok{background:var(--green);box-shadow:0 0 6px var(--green)}.grid-thumb-cont.warn{background:var(--amber);box-shadow:0 0 6px var(--amber)}.grid-thumb-cont.err{background:var(--red);box-shadow:0 0 6px var(--red)}.grid-thumb-tags{position:absolute;bottom:6px;left:8px;right:8px;z-index:3;display:flex;gap:var(--space-2);flex-wrap:nowrap;overflow:hidden}.grid-thumb-tags .tag{font-size:var(--fs-2xs);padding:var(--space-1) var(--space-3)}.grid-thumb-footer{padding:9px 11px var(--space-5);background:var(--bg2);border-top:1px solid var(--border)}.grid-thumb-title{font-size:var(--fs-sm);font-weight:700;color:var(--text0);letter-spacing:-.1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.grid-thumb-meta{display:flex;align-items:center;gap:var(--space-4);font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2)}.grid-thumb-meta-dot{width:3px;height:3px;border-radius:50%;background:var(--text3);flex-shrink:0}.grid-thumb-actions{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;gap:var(--space-4);opacity:0;transition:opacity .18s;background:#060a1273}.grid-thumb-card:hover .grid-thumb-actions{opacity:1}.grid-thumb-action-btn{padding:var(--space-3) var(--space-6);border-radius:8px;font-size:var(--fs-xs);font-weight:700;border:1px solid rgba(255,255,255,.2);background:#060a12bf;color:#fff;font-family:var(--font);cursor:pointer;transition:all .12s;backdrop-filter:blur(8px)}.grid-thumb-action-btn:hover{background:#4f82ff66;border-color:#4f82ff99}.grid-density-btns{display:flex;gap:var(--space-1);margin-left:var(--space-3)}.grid-density-btn{width:26px;height:26px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-1);background:none;border:1px solid transparent;transition:all .12s;padding:0}.grid-density-btn:hover{background:var(--glass2);border-color:var(--border)}.grid-density-btn.active{background:var(--bg3);border-color:var(--border2)}.grid-density-pip{width:4px;height:4px;border-radius:1px;background:var(--text2)}.grid-density-btn.active .grid-density-pip{background:var(--text0)}.grid-mode-bar{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-7) var(--space-3);border-bottom:1px solid var(--border);background:var(--bg1);margin:-20px -20px var(--space-8);position:sticky;top:-20px;z-index:20}.grid-mode-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;margin-right:var(--space-2)}.grid-mode-btn{display:flex;align-items:center;gap:5px;padding:5px 11px;border-radius:7px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:1px solid var(--border);background:var(--glass);color:var(--text2);font-family:var(--font);transition:all .15s;letter-spacing:.2px}.grid-mode-btn:hover{color:var(--text0);border-color:var(--border2);background:var(--glass2)}.grid-mode-btn.active{background:var(--accent-dim);color:var(--accent);border-color:#4f82ff59}.grid-mode-btn-icon{font-size:var(--fs-sm);line-height:1}.grid-mode-sep{width:1px;height:18px;background:var(--border);margin:0 var(--space-2)}.grid-view.mode-strip{display:flex;flex-direction:column;gap:0;padding:0}.grid-view.mode-strip .grid-mode-bar{margin:0;position:sticky;top:0}.sb-strip-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border);min-height:110px;cursor:pointer;transition:background .12s;animation:cardReveal .3s ease both}.sb-strip-row:hover{background:#ffffff05}.sb-strip-row.selected{background:#4f82ff0a;border-left:3px solid var(--accent)}.sb-strip-label{width:160px;flex-shrink:0;padding:var(--space-6) var(--space-7);border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;gap:var(--space-2);background:var(--bg1)}.sb-strip-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;background:var(--accent);color:var(--text-on-accent);border-radius:3px;padding:var(--space-px) 5px;display:inline-block;width:fit-content}.sb-strip-title{font-size:var(--fs-sm);font-weight:700;color:var(--text0);letter-spacing:-.2px;line-height:1.2}.sb-strip-meta{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2)}.sb-strip-frames{flex:1;display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-7);overflow-x:auto;scrollbar-width:none}.sb-strip-frames::-webkit-scrollbar{display:none}.sb-frame{width:156px;height:88px;border-radius:7px;flex-shrink:0;border:1px solid var(--border);overflow:hidden;position:relative;background:var(--bg2);transition:border-color .15s,transform .15s;cursor:pointer}.sb-frame:hover{border-color:var(--accent);transform:scale(1.04)}.sb-frame img,.sb-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sb-frame-empty{display:flex;align-items:center;justify-content:center;height:100%;font-size:var(--fs-2xl);opacity:.2}.sb-frame-num{position:absolute;bottom:3px;left:5px;font-size:var(--fs-2xs);font-family:var(--mono);color:#fff6}.sb-add-frame{width:60px;height:88px;border-radius:7px;flex-shrink:0;border:1px dashed var(--border);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xl);color:var(--text3);transition:all .15s;background:none}.sb-add-frame:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.grid-view.mode-focus{display:flex;flex-direction:column;padding:0;overflow:hidden;gap:0}.fv-topbar{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-7);background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0}.fv-topbar-modes{display:flex;gap:3px;flex-shrink:0}.fv-scene-strip{display:flex;gap:var(--space-3);overflow-x:auto;scrollbar-width:none;flex:1;padding:var(--space-1) 0}.fv-scene-strip::-webkit-scrollbar{display:none}.fv-scene-tab{position:relative;width:80px;height:48px;border-radius:7px;border:1.5px solid var(--border);overflow:hidden;flex-shrink:0;cursor:pointer;background:var(--bg2);transition:border-color .15s,transform .1s}.fv-scene-tab:hover{border-color:var(--border2);transform:scale(1.04)}.fv-scene-tab.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fv-scene-tab-thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fv-scene-tab-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-2) 5px;background:linear-gradient(transparent 20%,#000000bf)}.fv-scene-tab-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;color:var(--accent);line-height:1}.fv-scene-tab-name{font-size:var(--fs-2xs);font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.fv-root{display:flex;flex-direction:row;width:100%;height:100%;overflow:hidden;background:var(--bg0);font-family:var(--font)}.fv-workspace{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.fv-id-nav-pos{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;color:var(--text3);letter-spacing:.5px;padding:0 3px;white-space:nowrap;flex-shrink:0;cursor:default}.fv-identity{display:flex;align-items:center;gap:var(--space-7);padding:var(--space-5) 18px 9px;background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0;min-height:0}.fv-id-num{font-size:var(--fs-xs);font-family:var(--mono);font-weight:800;color:var(--bg1);background:var(--accent);padding:3px 9px;border-radius:5px;letter-spacing:.5px;flex-shrink:0}.fv-id-titles{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--space-1)}.fv-id-title{font-size:var(--fs-lg);font-weight:800;color:var(--text0);background:none;border:none;border-bottom:1px solid transparent;outline:none;font-family:var(--font);padding:0;width:100%;letter-spacing:-.2px;transition:border-color .15s}.fv-id-title:focus{border-bottom-color:var(--accent)}.fv-id-title::placeholder{color:var(--text3);font-weight:400}.fv-id-desc{font-size:var(--fs-xs);color:var(--text2);background:none;border:none;border-bottom:1px solid transparent;outline:none;font-family:var(--font);padding:0;width:100%;transition:border-color .15s}.fv-id-desc:focus{border-bottom-color:var(--border2)}.fv-id-desc::placeholder{color:var(--text3)}.fv-id-pills{display:flex;align-items:center;gap:5px;flex-shrink:0}.fv-pill{font-size:var(--fs-2xs);font-weight:800;font-family:var(--mono);letter-spacing:.6px;padding:3px 9px;border-radius:20px;text-transform:uppercase}.fv-pill-neutral{background:var(--bg3);color:var(--text2)}.fv-pill-ok{background:#22c55e1f;color:var(--green)}.fv-pill-warn{background:#f59e0b1f;color:var(--amber)}.fv-pill-err{background:#ef44441f;color:var(--red-soft)}.fv-body{flex:1;min-height:0;display:flex;flex-direction:row;overflow:hidden}.fv-panel{display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border)}.fv-panel:last-child{border-right:none}.fv-panel-left{width:240px;flex-shrink:0;background:var(--bg1)}.fv-panel-center{flex:1;min-width:0;background:var(--bg0)}.fv-panel-right{width:280px;flex-shrink:0;background:var(--bg1)}.fv-panel-hd{display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-7);height:36px;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg1)}.fv-panel-hd-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:2px;text-transform:uppercase;color:var(--text3);font-family:var(--mono)}.fv-panel-tabs{display:flex;flex-direction:row;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg1)}.fv-tab{flex:1;padding:0 var(--space-5);height:36px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text2);font-size:var(--fs-xs);font-weight:700;font-family:var(--font);cursor:pointer;letter-spacing:.3px;transition:color .12s,border-color .12s}.fv-tab:hover{color:var(--text0)}.fv-tab.active{color:var(--text0);border-bottom-color:var(--accent)}.fv-panel-content{flex:1;overflow-y:auto;padding:var(--space-6) var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-5);scrollbar-width:thin;scrollbar-color:var(--bg4) transparent}.fv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);color:var(--text3);font-size:var(--fs-xs);text-align:center;flex:1}.fv-empty-icon{font-size:var(--fs-3xl);opacity:.5}.fv-empty-sub{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);margin-top:var(--space-1);opacity:.7}.fv-sb-empty{min-height:200px}.fv-char-card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s}.fv-char-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0000004d}.fv-char-photos{display:flex;height:170px;overflow:hidden;gap:var(--space-px);background:var(--bg3)}.fv-char-photo{flex:1;overflow:hidden;position:relative}.fv-char-photo.primary{flex:2}.fv-char-photo img{width:100%;height:100%;object-fit:contain;transition:transform .3s;display:block}.fv-char-card:hover .fv-char-photo img{transform:scale(1.04)}.fv-char-initials{width:100%;height:170px;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:800;border-radius:0}.fv-char-info{padding:var(--space-4) var(--space-5) var(--space-5)}.fv-char-name{font-size:var(--fs-sm);font-weight:800;margin-bottom:5px;letter-spacing:-.1px}.fv-char-attrs{display:flex;flex-direction:column;gap:var(--space-1)}.fv-char-outfit{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--fs-2xs);color:var(--text2);font-family:var(--mono)}.fv-char-outfit select{flex:1;min-width:0;padding:2px 6px;border-radius:6px;border:1px solid var(--border2);background:var(--bg0);color:var(--text0);font:inherit}.fv-char-attr{display:flex;gap:var(--space-3);font-size:var(--fs-2xs);padding:var(--space-1) 0;border-bottom:1px solid var(--border)}.fv-char-attr:last-child{border-bottom:none}.fv-char-attr-k{font-family:var(--mono);font-weight:700;color:var(--text3);text-transform:uppercase;font-size:var(--fs-2xs);letter-spacing:.4px;min-width:58px;flex-shrink:0}.fv-char-attr-v{color:var(--text1)}.fv-char-attr.is-scene .fv-char-attr-v{color:var(--accent)}.fv-char-attr .fv-char-var-badge{margin-left:auto;flex-shrink:0;align-self:flex-start;cursor:help}.fv-char-variation{margin-top:var(--space-3);display:flex;align-items:center;gap:5px;font-size:var(--fs-2xs);color:var(--accent)}.fv-char-var-badge{font-size:var(--fs-2xs);font-weight:800;font-family:var(--mono);background:var(--accent-dim);color:var(--accent);padding:var(--space-px) 5px;border-radius:3px;letter-spacing:.5px}.fv-env-picker{display:flex;gap:var(--space-3);align-items:center;flex-shrink:0}.fv-env-sel{flex:1;background:var(--bg3);border:1px solid var(--border);color:var(--text0);border-radius:7px;padding:var(--space-3) 9px;font-size:var(--fs-xs);font-family:var(--font);cursor:pointer;outline:none;transition:border-color .15s}.fv-env-sel:focus{border-color:var(--accent)}.fv-env-manage-btn{width:30px;height:30px;border-radius:7px;background:var(--bg3);border:1px solid var(--border);color:var(--text2);font-size:var(--fs-sm);cursor:pointer;flex-shrink:0;transition:all .12s;display:flex;align-items:center;justify-content:center}.fv-env-manage-btn:hover{border-color:var(--accent);color:var(--accent)}.fv-env-hero{width:100%;border-radius:8px;overflow:hidden;position:relative;border:1px solid var(--border)}.fv-env-hero img{width:100%;display:block;aspect-ratio:16/10;object-fit:contain;background:var(--bg3)}.fv-env-hero-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000b8);padding:var(--space-7) var(--space-5) var(--space-4);font-size:var(--fs-xs);color:#fff}.fv-env-section-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--text3);font-family:var(--mono);margin-bottom:var(--space-3)}.fv-env-map-section{display:flex;flex-direction:column}.fv-env-map-wrap{width:100%;border-radius:7px;overflow:hidden;border:1px solid var(--border);background:var(--bg2);margin-bottom:var(--space-3)}.fv-env-map-wrap img{width:100%;display:block}.fv-env-map-btns{display:flex;gap:5px}.fv-env-map-btn{flex:1;padding:var(--space-2) 0;border-radius:5px;font-size:var(--fs-2xs);font-weight:700;font-family:var(--font);cursor:pointer;background:var(--bg3);border:1px solid var(--border);color:var(--text2);transition:all .12s}.fv-env-map-btn:hover{border-color:var(--border2);color:var(--text0)}.fv-env-map-btn.danger:hover{border-color:#ef444466;color:var(--red-soft)}.fv-env-map-upload{width:100%;padding:var(--space-8) 0;border-radius:7px;background:var(--bg2);border:1px dashed var(--border);color:var(--text3);font-size:var(--fs-xs);font-family:var(--font);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:5px;transition:all .15s}.fv-env-map-upload:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.fv-env-kvs{display:flex;flex-direction:column;gap:0}.fv-env-kv{display:flex;gap:var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--border);font-size:var(--fs-xs)}.fv-env-kv-k{font-family:var(--mono);font-weight:700;color:var(--text3);text-transform:uppercase;font-size:var(--fs-2xs);letter-spacing:.4px;min-width:80px;flex-shrink:0}.fv-env-kv-v{color:var(--text1);font-size:var(--fs-xs)}.fv-sb-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));gap:var(--space-6);padding:var(--space-6);overflow-y:auto;flex:1;align-content:start;align-items:start;grid-auto-rows:max-content;scrollbar-width:thin;scrollbar-color:var(--bg4) transparent}.fv-sb-card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;overflow:hidden;transition:border-color .15s,box-shadow .15s,transform .15s}.fv-sb-card:hover{border-color:var(--border2);box-shadow:0 6px 20px #0006;transform:translateY(-1px)}.fv-sb-card.shot-dragging{opacity:.4}.fv-sb-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--bg3);cursor:grab;max-height:340px}.fv-sb-frame:active{cursor:grabbing}.fv-sb-frame.shot-drag-over{outline:2px dashed var(--accent);outline-offset:-2px}.fv-sb-frame-blank{background:var(--bg1);border-bottom:1px dashed var(--border2)}.fv-sb-blank-inner{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;color:var(--text3);transition:background .15s,color .15s;text-align:center;padding:var(--space-3)}.fv-sb-blank-inner:hover{background:var(--accent-dim);color:var(--accent)}.fv-sb-blank-icon{font-size:var(--fs-2xl);font-weight:300;line-height:1}.fv-sb-blank-label{font-size:var(--fs-2xs);font-family:var(--mono);line-height:1.35;opacity:.85}.ffsc-num,.ffsc-vid{position:absolute;z-index:2;pointer-events:none;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;letter-spacing:.4px;border-radius:4px;padding:var(--space-px) 6px;line-height:1.5}.ffsc-num{top:6px;left:6px;background:#000000a8;color:#fff}.ffsc-vid{bottom:6px;left:6px;background:#06b6d4e0;color:#fff}.ffsc-acts{position:absolute;top:6px;right:6px;z-index:3;display:flex;align-items:center;gap:2px;padding:2px;border-radius:8px;background:#080a109e;border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);opacity:0;transition:opacity .14s}.ffsc-host:hover .ffsc-acts,.ffsc-host:focus-within .ffsc-acts{opacity:1}.ffsc-btn{width:26px;height:26px;border-radius:6px;padding:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#ffffffe6;background:transparent;border:1px solid transparent;font-family:var(--font);transition:background .1s,color .1s,border-color .1s}.ffsc-btn:hover{background:var(--accent);color:#fff}.ffsc-btn:focus-visible{outline:2px solid var(--accent);outline-offset:0;background:#4f82ff59}.ffsc-btn.danger:hover,.ffsc-btn.danger:focus-visible{background:var(--red);outline-color:var(--red)}.ffsc-sep{width:1px;height:16px;margin:0 2px;background:#ffffff38}.ffsc-grip{position:absolute;bottom:6px;right:6px;z-index:2;font-size:var(--fs-xs);color:#fff9;cursor:grab;opacity:0;transition:opacity .14s;text-shadow:0 1px 2px rgba(0,0,0,.6)}.ffsc-host:hover .ffsc-grip{opacity:1}.gv-shot-frame-blank .ffsc-grip,.fv-sb-frame-blank .ffsc-grip{color:var(--text3);text-shadow:none}.gv-shot-frame-blank .ffsc-num,.fv-sb-frame-blank .ffsc-num{background:var(--bg3);color:var(--text1)}@media (hover: none){.ffsc-acts,.ffsc-grip{opacity:1}.ffsc-btn{width:32px;height:32px}}.fv-add-shot-btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-5);border-radius:6px;border:1px dashed var(--border2);background:none;color:var(--text2);font-family:var(--font);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .15s}.fv-add-shot-btn span{font-size:var(--fs-sm);line-height:1}.fv-add-shot-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.fv-sb-ann{padding:var(--space-4) var(--space-5) var(--space-5);display:flex;flex-direction:column;gap:var(--space-1)}.fv-ann{display:flex;align-items:baseline;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border);font-size:var(--fs-2xs)}.fv-ann:last-child{border-bottom:none}.fv-ann-k{font-family:var(--mono);font-weight:800;color:var(--text3);text-transform:uppercase;font-size:var(--fs-2xs);letter-spacing:.6px;min-width:44px;flex-shrink:0}.fv-ann-v{flex:1;min-width:0;color:var(--text1);outline:none;font-size:var(--fs-xs);line-height:1.45;word-break:break-word;min-height:calc(var(--fs-xs) * 1.45);padding:var(--space-1) var(--space-3);margin:calc(var(--space-1) * -1) calc(var(--space-3) * -1);border-radius:4px;border:1px solid transparent;transition:background .12s,border-color .12s;cursor:text}.fv-ann-v:hover{background:var(--glass)}.fv-ann-v:focus{color:var(--text0);background:var(--bg1);border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-dim)}.fv-ann-v.empty:before{content:attr(data-ph);color:var(--text3);font-style:italic}.fv-mm-bar{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.fv-mm-label{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);text-transform:uppercase;letter-spacing:.8px;font-weight:700}.fv-mm-edit-btn{font-size:var(--fs-2xs);font-weight:700;padding:3px var(--space-5);border-radius:5px;background:var(--bg3);border:1px solid var(--border);color:var(--text2);cursor:pointer;font-family:var(--font);transition:all .12s}.fv-mm-edit-btn:hover{border-color:var(--accent);color:var(--accent)}.fv-mm-img-wrap{position:relative;width:100%;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--bg2);cursor:zoom-in;flex-shrink:0}.fv-mm-img-wrap img{width:100%;display:block}.fv-mm-del{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:50%;background:#ef4444cc;border:none;color:#fff;font-size:var(--fs-xs);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.fv-mm-img-wrap:hover .fv-mm-del{opacity:1}.fv-mm-empty{width:100%;aspect-ratio:16/9;border-radius:8px;background:var(--bg2);border:1px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);cursor:pointer;color:var(--text3);font-size:var(--fs-xs);font-family:var(--font);transition:all .15s}.fv-mm-empty:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.fv-mm-empty-sub{font-size:var(--fs-2xs);opacity:.6;font-family:var(--mono)}.fv-mm-notes-wrap{display:flex;flex-direction:column;gap:var(--space-3)}.fv-mm-notes-label{font-size:var(--fs-2xs);font-weight:800;font-family:var(--mono);letter-spacing:1.5px;text-transform:uppercase;color:var(--text3)}.fv-mm-notes-ta{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:7px;color:var(--text1);font-size:var(--fs-xs);font-family:var(--mono);resize:vertical;padding:var(--space-4) var(--space-5);outline:none;line-height:1.5;min-height:72px;box-sizing:border-box;transition:border-color .15s}.fv-mm-notes-ta:focus{border-color:var(--accent);color:var(--text0)}.fv-mm-notes-ta::placeholder{color:var(--text3)}.fv-detail-section{display:flex;flex-direction:column;gap:var(--space-3)}.fv-detail-hd{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--text3);font-family:var(--mono)}.fv-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.fv-detail-card{background:var(--bg2);border:1px solid var(--border);border-radius:7px;padding:7px var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);transition:border-color .12s}.fv-detail-card:focus-within{border-color:var(--border2)}.fv-detail-card-hd{font-size:var(--fs-2xs);font-weight:800;font-family:var(--mono);letter-spacing:.6px;text-transform:uppercase;color:var(--text3)}.fv-detail-ta{width:100%;background:none;border:none;outline:none;color:var(--text1);font-size:var(--fs-2xs);font-family:var(--mono);resize:none;line-height:1.4;padding:0;box-sizing:border-box;transition:color .12s}.fv-detail-ta:focus{color:var(--text0)}.fv-detail-ta::placeholder{color:var(--text3);font-style:italic}.fv-detail-ta-wide{background:var(--bg2);border:1px solid var(--border);border-radius:7px;padding:7px 9px;min-height:64px;font-size:var(--fs-xs);transition:border-color .15s}.fv-detail-ta-wide:focus{border-color:var(--accent)}.fv-detail-input{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:7px;color:var(--text1);font-size:var(--fs-xs);font-family:var(--font);padding:7px var(--space-5);outline:none;transition:border-color .15s;box-sizing:border-box}.fv-detail-input:focus{border-color:var(--accent);color:var(--text0)}.fv-detail-input::placeholder{color:var(--text3)}.fv-tags-wrap{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.fv-tag{display:inline-flex;align-items:center;gap:3px;padding:3px var(--space-4);border-radius:20px;background:var(--accent-dim);color:var(--accent);font-size:var(--fs-2xs);font-weight:600;cursor:default;border:1px solid rgba(79,130,255,.2)}.fv-tag-rm{font-size:var(--fs-xs);cursor:pointer;color:var(--accent);opacity:.6;line-height:1;margin-left:var(--space-px);transition:opacity .12s}.fv-tag-rm:hover{opacity:1}.fv-tag-add{width:24px;height:24px;border-radius:50%;background:var(--bg3);border:1px solid var(--border);color:var(--text2);font-size:var(--fs-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s}.fv-tag-add:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.grid-focus-list,.grid-focus-detail{display:none}.scene-card:nth-child(1){animation-delay:.03s}.scene-card:nth-child(2){animation-delay:.07s}.scene-card:nth-child(3){animation-delay:.11s}.scene-card:nth-child(4){animation-delay:.15s}.scene-card:nth-child(5){animation-delay:.19s}.scene-card:nth-child(6){animation-delay:.23s}.scene-card:hover{border-color:var(--border3);box-shadow:0 16px 56px #0000008c,0 2px 8px #0000004d;transform:translateY(-2px)}.scene-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 16px 56px var(--accent-glow),0 4px 16px #0006}.scene-card.card-focused:hover{transform:none}.scene-title-bar{display:flex;align-items:center;gap:var(--space-5);padding:9px var(--space-7) 9px var(--space-8);background:var(--bg2);border-bottom:1px solid var(--border);flex-shrink:0}.scene-title-bar-num{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.5px;font-family:var(--mono);color:var(--accent);background:var(--accent-dim);border:1px solid rgba(79,130,255,.25);border-radius:4px;padding:var(--space-1) 7px;flex-shrink:0}.scene-title-bar-text{font-size:var(--fs-sm);font-weight:700;color:var(--text0);letter-spacing:-.2px;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-title-bar-desc{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);white-space:nowrap;flex-shrink:0;overflow:hidden;text-overflow:ellipsis}.scene-hero{width:100%;aspect-ratio:2.35 / 1;position:relative;overflow:hidden;background:var(--bg0)}.scene-hero-mosaic{position:absolute;inset:0;display:grid;gap:var(--space-1);background:#000}@keyframes ffHeroFade{0%{opacity:0}to{opacity:1}}.hero-preview{position:absolute;inset:0;z-index:15;background:#000;display:flex;align-items:center;justify-content:center;animation:ffHeroFade .15s ease both}.hero-preview-media{width:100%;height:100%;object-fit:contain;background:#000;display:block}.hero-preview-close{position:absolute;top:6px;right:6px;z-index:16;width:24px;height:24px;border-radius:50%;background:#0009;border:1px solid rgba(255,255,255,.25);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);cursor:pointer;transition:background .12s}.hero-preview-close:hover{background:#ef4444d9}.shot-thumb.is-previewing{outline:2px solid var(--accent);outline-offset:1px}.mosaic-1{grid-template-columns:1fr;grid-template-rows:1fr}.mosaic-2{grid-template-columns:1fr 1fr}.mosaic-3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.mosaic-3 .mosaic-cell:first-child{grid-row:1 / 3}.mosaic-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.mosaic-5{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}.mosaic-5 .mosaic-cell:first-child{grid-row:1 / 3}.mosaic-6{grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr}.mosaic-cell{position:relative;overflow:hidden;background:var(--bg2);transition:filter .2s}.mosaic-cell img,.mosaic-cell video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.22,1,.36,1)}.scene-card:hover .mosaic-cell img,.scene-card:hover .mosaic-cell video{transform:scale(1.04)}.mosaic-more-badge{position:absolute;inset:0;background:#060a12b8;display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);font-weight:800;color:#ffffffd9;font-family:var(--mono);letter-spacing:.5px;backdrop-filter:blur(2px)}.mosaic-vid-badge{position:absolute;bottom:6px;left:6px;z-index:5;background:#06b6d4e6;border-radius:3px;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;color:#fff;padding:var(--space-1) 5px;letter-spacing:.5px;backdrop-filter:blur(4px)}.mosaic-vid-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s;background:#00000040}.mosaic-cell:hover .mosaic-vid-play{opacity:1}.mosaic-vid-play-icon{width:28px;height:28px;border-radius:50%;background:#fff3;backdrop-filter:blur(4px);border:1.5px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);color:#fff;padding-left:var(--space-1)}.mosaic-art{width:100%;height:100%;position:absolute;inset:0}.scene-hero-overlay{position:absolute;inset:0;z-index:10;background:linear-gradient(to bottom,transparent 45%,rgba(6,10,18,.5) 100%);display:flex;align-items:flex-end;padding:var(--space-5) var(--space-7);pointer-events:none}.scene-info{pointer-events:none;max-width:55%}.scene-num{font-size:var(--fs-2xs);font-weight:700;letter-spacing:2.5px;font-family:var(--mono);margin-bottom:var(--space-3);display:flex;align-items:center;gap:var(--space-4);opacity:.9}.scene-num-badge{background:var(--accent);color:var(--text-on-accent);padding:var(--space-1) 7px;border-radius:4px;font-size:var(--fs-2xs);font-family:var(--mono);letter-spacing:.5px;font-weight:800}.scene-num-act{color:#fff6;text-transform:uppercase}.scene-title-text{font-size:var(--fs-2xl);font-weight:800;line-height:1.1;letter-spacing:-.5px;color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.7)}.scene-desc{font-size:var(--fs-xs);color:#ffffff73;margin-top:5px;font-family:var(--mono);line-height:1.5}.hero-tags{position:absolute;top:12px;right:14px;z-index:11;display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;max-width:50%}.tag{font-size:var(--fs-2xs);padding:3px var(--space-4);border-radius:20px;font-family:var(--mono);font-weight:600;letter-spacing:.2px;border:1px solid;white-space:nowrap;backdrop-filter:blur(4px)}.tag-blue{color:#7fa8ff;border-color:#4f82ff73;background:#4f82ff1f}.tag-violet{color:#b08cff;border-color:#8b5cf673;background:#8b5cf61f}.tag-cyan{color:#22d3ee;border-color:#06b6d473;background:#06b6d41f}.tag-magenta{color:#e879f9;border-color:#d946ef73;background:#d946ef1f}.tag-amber{color:var(--amber-soft);border-color:#f59e0b73;background:#f59e0b1f}.tag-gray{color:#ffffff8c;border-color:#ffffff1f;background:#ffffff0f}.hero-actions{position:absolute;top:12px;left:12px;z-index:12;display:flex;gap:5px;opacity:0;transition:opacity .2s;pointer-events:none}.scene-card:hover .hero-actions{opacity:1;pointer-events:all}.hero-action-btn{padding:5px var(--space-5);border-radius:7px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:1px solid rgba(255,255,255,.15);background:#060a12b8;color:#ffffffd9;font-family:var(--font);transition:all .15s;display:flex;align-items:center;gap:5px;backdrop-filter:blur(8px)}.hero-action-btn:hover{background:#4f82ff59;border-color:#4f82ff80;color:#fff}.hero-action-btn.danger:hover{background:#ef44444d;border-color:#ef444480}.scene-cont-stripe{position:absolute;left:0;top:0;bottom:0;width:3px;z-index:15}.scene-cont-stripe.ok{background:linear-gradient(180deg,var(--green) 0%,transparent 100%)}.scene-cont-stripe.warn{background:linear-gradient(180deg,var(--amber) 0%,transparent 100%)}.scene-cont-stripe.err{background:linear-gradient(180deg,var(--red) 0%,transparent 100%)}.scene-hero.drop-active:after{content:"Drop media here";position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);font-weight:700;font-family:var(--font);color:var(--accent);background:#060a12d1;letter-spacing:.3px;border:2px dashed var(--accent)}.shot-strip-wrap{border-top:1px solid var(--border);background:var(--bg0);padding:0}.shot-strip-header{display:flex;align-items:center;gap:var(--space-4);flex-wrap:nowrap;padding:var(--space-5) var(--space-7) var(--space-2)}.shot-strip-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shot-strip-count{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);flex-shrink:0;white-space:nowrap;margin-left:auto}.shot-strip-add-link{font-size:var(--fs-2xs);color:var(--accent);cursor:pointer;font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;background:var(--accent-dim);border:1px solid rgba(79,130,255,.25);transition:all .12s;flex-shrink:0;white-space:nowrap}.shot-strip-add-link:hover{background:#4f82ff33}.shot-strip{display:flex;gap:var(--space-3);padding:0 var(--space-7) var(--space-5);overflow-x:auto;scrollbar-width:none}.shot-strip::-webkit-scrollbar{display:none}.shot-strip-row{display:flex;align-items:center;gap:var(--space-2);padding:0 var(--space-5) var(--space-5)}.shot-strip-row>.shot-strip{flex:1;min-width:0;padding:0 var(--space-2)}.strip-nav{flex-shrink:0;width:26px;height:48px;border:1px solid var(--border);background:var(--bg2);color:var(--text2);border-radius:7px;cursor:pointer;font-size:var(--fs-lg);line-height:1;display:flex;align-items:center;justify-content:center;transition:all .12s}.strip-nav:hover{background:var(--accent-dim);border-color:var(--accent);color:var(--accent)}.strip-nav:active{transform:scale(.94)}.strip-nav.is-hidden{visibility:hidden}.shot-strip-page{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);background:var(--bg3);border-radius:4px;padding:var(--space-px) var(--space-3);margin-left:var(--space-3)}.shot-strip-page.is-hidden{display:none}.shot-strip-group-label{flex-shrink:0;align-self:stretch;display:flex;align-items:center;justify-content:center;min-width:22px;font-size:var(--fs-xs);color:var(--text3);border-left:1px solid var(--border);border-right:1px solid var(--border);background:var(--bg2);border-radius:5px;margin:0 var(--space-px)}.shot-strip-group-label:first-child{border-left:0}.outline-asset-group-hd,.fv-sb-group-hd{grid-column:1 / -1;display:flex;align-items:center;gap:var(--space-4);font-size:var(--fs-xs);font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--text2);padding:var(--space-4) var(--space-1) var(--space-2);margin-top:var(--space-1);border-bottom:1px solid var(--border)}.outline-asset-group-hd{padding:var(--space-3) var(--space-1) 5px}.outline-asset-group-hd .oag-count,.fv-sb-group-hd .fv-sb-group-count{margin-left:auto;font-family:var(--mono);font-weight:600;color:var(--text3);font-size:var(--fs-2xs)}.shot-thumb{width:80px;height:52px;border-radius:6px;flex-shrink:0;border:1px solid var(--border);cursor:pointer;transition:border-color .15s,transform .18s,box-shadow .18s;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg2)}.shot-thumb:hover{border-color:var(--accent);transform:scale(1.06);box-shadow:0 4px 16px #00000080;z-index:5}.shot-thumb.playing{border-color:var(--cyan);box-shadow:0 0 12px var(--cyan-dim)}.shot-num{position:absolute;bottom:3px;left:4px;font-size:var(--fs-2xs);font-family:var(--mono);color:#ffffff59;font-weight:500}.shot-type{position:absolute;top:3px;right:3px;font-size:var(--fs-2xs);font-family:var(--mono);background:#0000008c;color:#ffffff80;padding:var(--space-px) var(--space-2);border-radius:2px;letter-spacing:.3px}.shot-actions-overlay{position:absolute;inset:0;background:#060a12b3;display:flex;align-items:center;justify-content:center;gap:var(--space-3);opacity:0;transition:opacity .15s}.shot-thumb:hover .shot-actions-overlay{opacity:1}.shot-action-icon{width:22px;height:22px;border-radius:50%;background:#ffffff26;backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.25);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;cursor:pointer;transition:background .12s}.shot-action-icon:hover{background:#ffffff4d}.shot-add-btn{width:94px;height:52px;border-radius:6px;flex-shrink:0;border:1px dashed rgba(79,130,255,.3);cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-1);color:var(--accent);transition:all .15s;background:#4f82ff0a}.shot-add-btn:hover{border-color:var(--accent);background:var(--accent-dim)}.shot-add-btn-icon{font-size:var(--fs-lg)}.shot-add-btn-label{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;letter-spacing:.5px;opacity:.7;white-space:nowrap}.shot-thumb.shot-dragging{opacity:.2;transform:none!important}.shot-add-btn.drop-active{border-color:var(--accent)!important;background:var(--accent-dim)!important}.file-badge{position:absolute;top:3px;left:3px;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;padding:var(--space-px) var(--space-2);border-radius:3px;letter-spacing:.5px;text-transform:uppercase}.file-badge.img{background:#4f82ffd9;color:#fff}.file-badge.vid{background:#06b6d4d9;color:#fff}.shot-remove{position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:#ef4444e6;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;opacity:0;transition:opacity .15s;cursor:pointer;z-index:10}.video-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;opacity:0;transition:opacity .15s}.video-play-btn{width:20px;height:20px;border-radius:50%;background:#fff3;border:1px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;padding-left:var(--space-px)}.scene-body{display:flex;align-items:stretch;border-top:1px solid var(--border)}.prompt-preview{flex:1;padding:var(--space-6) var(--space-8);background:#060a1266;font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.65;cursor:pointer;transition:background .15s;position:relative;min-width:0;border-right:1px solid var(--border)}.prompt-preview:hover{background:#060a12a6}.prompt-preview-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.4px;color:var(--text3);text-transform:uppercase;margin-bottom:5px;display:flex;align-items:center;gap:var(--space-3)}.prompt-preview-label:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--accent);flex-shrink:0}.prompt-preview-text{opacity:.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.prompt-preview-text.has-prompt{color:var(--cyan);opacity:.8}.prompt-preview-expand{position:absolute;right:12px;top:50%;transform:translateY(-50%);font-size:var(--fs-2xs);color:var(--accent);opacity:0;transition:opacity .15s;background:var(--accent-dim);border:1px solid rgba(79,130,255,.25);border-radius:4px;padding:var(--space-1) 7px;font-family:var(--mono);font-weight:700}.prompt-preview:hover .prompt-preview-expand{opacity:1}.scene-stats-sidebar{padding:var(--space-5) var(--space-7);display:flex;flex-direction:column;gap:var(--space-3);min-width:110px;flex-shrink:0;background:#060a124d}.scene-stat-item{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono)}.scene-stat-icon{font-size:var(--fs-xs);width:16px;text-align:center;flex-shrink:0}.scene-stat-val{font-weight:600;color:var(--text1)}.scene-card.dragging{opacity:.3;transform:scale(.97);box-shadow:none!important;border-color:var(--accent)!important;pointer-events:none}.drag-ghost{position:fixed;pointer-events:none;z-index:calc(var(--z-popover) + 20);opacity:.88;transform:rotate(1deg) scale(.96);border-radius:16px;overflow:hidden;box-shadow:0 24px 64px #000c,0 0 0 1px var(--accent);transition:none}.shot-strip-drop-zone{border:1px dashed var(--border);border-radius:6px;width:80px;height:52px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xl);color:var(--text3);transition:all .15s}.shot-strip-drop-zone.drop-active{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.workspace.panel-docked-bottom .panel{border-left:none;border-top:1px solid var(--border);border-radius:0}.workspace.panel-docked-bottom .panel-header{padding:var(--space-4) var(--space-8) var(--space-3);display:flex;align-items:center;gap:var(--space-6);flex-wrap:nowrap}.workspace.panel-docked-bottom .panel-scene-name{font-size:var(--fs-sm);margin-bottom:0;white-space:nowrap}.workspace.panel-docked-bottom .panel-scene-meta{font-size:var(--fs-2xs);margin-left:var(--space-2);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workspace.panel-docked-bottom .panel-header-actions{margin-top:0;margin-left:auto}.workspace.panel-docked-bottom .panel-tabs{flex-shrink:0}.workspace.panel-docked-bottom .panel-ew-handle{display:none}.panel-resize-handle{position:absolute;top:0;left:0;right:0;height:4px;cursor:ns-resize;z-index:10;background:transparent;transition:background .15s,height .1s}.workspace:not(.panel-docked-bottom) .panel-resize-handle{display:none}.panel-resize-handle:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:32px;height:3px;background:var(--border2);border-radius:2px;transition:width .15s,background .15s}.panel-resize-handle:hover:after,.panel-resize-handle.dragging:after{width:48px;background:var(--accent)}.panel-resize-handle:hover,.panel-resize-handle.dragging{background:#4f82ff14;height:5px}.panel{position:relative}.panel-dock-btn{font-size:var(--fs-2xs);color:var(--text3);cursor:pointer;font-family:var(--mono);padding:3px 7px;border-radius:4px;border:1px solid var(--border);background:var(--glass);transition:all .12s;flex-shrink:0;display:flex;align-items:center;gap:3px;letter-spacing:.2px;font-weight:600}.panel-dock-btn:hover{color:var(--text0);border-color:var(--border2);background:var(--glass2)}.panel-dock-btn.docked{color:var(--accent);border-color:#4f82ff59;background:var(--accent-dim)}.panel{background:var(--bg1);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;min-width:220px;max-width:560px}.panel-ew-handle{position:absolute;top:0;bottom:0;left:-3px;width:6px;cursor:ew-resize;z-index:20;background:transparent;transition:background .15s}.panel-ew-handle:hover,.panel-ew-handle.dragging{background:var(--accent);opacity:.45}.panel-header{padding:var(--space-7) var(--space-8) var(--space-6);border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg1)}.panel-scene-name{font-size:var(--fs-md);font-weight:800;margin-bottom:3px;letter-spacing:-.2px;color:var(--text0);display:flex;align-items:center;gap:7px}.panel-scene-num-chip{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;background:var(--accent);color:var(--text-on-accent);border-radius:3px;padding:var(--space-1) var(--space-3);letter-spacing:.5px;flex-shrink:0}.panel-scene-desc{font-size:var(--fs-sm);line-height:1.55;color:var(--text1);margin:var(--space-1) 0 var(--space-2);padding:var(--space-1) var(--space-3);margin-left:-6px;border-radius:5px;cursor:text;white-space:pre-wrap;transition:background .12s}.panel-scene-desc:hover{background:var(--glass2)}.panel-scene-desc.empty{color:var(--text3);font-style:italic}.panel-desc-edit-input{width:100%;min-height:40px;resize:none;overflow:hidden;box-sizing:border-box;background:var(--bg0);border:1px solid var(--accent);border-radius:6px;padding:var(--space-3) 9px;margin:var(--space-1) 0 var(--space-2);font-size:var(--fs-sm);line-height:1.55;font-family:var(--font);color:var(--text0);outline:none;display:block}.panel-scene-meta{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.5}.panel-scene-edit-row{display:flex;align-items:center;gap:var(--space-3);margin-top:var(--space-3)}.panel-scene-edit-input{flex:1;background:var(--bg0);border:1px solid var(--border);border-radius:6px;padding:5px 9px;font-size:var(--fs-sm);font-family:var(--font);color:var(--text0);outline:none;transition:border-color .15s;font-weight:700;display:none}.panel-scene-edit-input:focus{border-color:var(--accent);display:block}.panel-header-edit-btn{font-size:var(--fs-2xs);color:var(--text3);cursor:pointer;font-family:var(--mono);padding:3px 7px;border-radius:4px;border:1px solid var(--border);background:var(--glass);transition:all .12s;flex-shrink:0}.panel-header-edit-btn:hover{color:var(--text0);border-color:var(--border2)}.panel-cont-status{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;padding:var(--space-1) 7px;border-radius:10px;margin-top:var(--space-2)}.panel-cont-status.ok{color:var(--green);background:#22c55e1a;border:1px solid rgba(34,197,94,.2)}.panel-cont-status.warn{color:var(--amber);background:#f59e0b1a;border:1px solid rgba(245,158,11,.2)}.panel-cont-status.err{color:var(--red-soft);background:#ef44441a;border:1px solid rgba(239,68,68,.2)}.panel-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg0);padding:0 var(--space-4);gap:0}.p-tab{flex:1;min-width:0;padding:var(--space-5) var(--space-2);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.8px;text-align:center;cursor:pointer;color:var(--text2);transition:all .15s;border:none;background:none;font-family:var(--font);border-bottom:2px solid transparent;margin-bottom:-1px;text-transform:uppercase;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.p-tab:hover{color:var(--text1)}.p-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.panel{container-type:inline-size;container-name:ffpanel}@container ffpanel (max-width: 460px){.p-tab{flex-direction:column;gap:3px;padding:var(--space-4) 1px var(--space-3);letter-spacing:.3px}}.p-tab-icon{font-size:var(--fs-xs)}.p-tab-badge{display:inline-block;background:var(--accent-dim);color:var(--accent);border-radius:8px;padding:0px var(--space-2);font-size:var(--fs-2xs);font-family:var(--mono);line-height:1.5}.panel-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.panel-section-action{font-size:var(--fs-2xs);color:var(--accent);cursor:pointer;font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;border:1px solid rgba(79,130,255,.25);background:var(--accent-dim);transition:all .12s}.panel-section-action:hover{background:#4f82ff40}.pf-char-chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.pf-char-chip{font-size:var(--fs-2xs);padding:3px var(--space-4);border-radius:20px;cursor:pointer;font-family:var(--mono);font-weight:500;border:1px solid;transition:all .12s}.pf-char-chip.active{opacity:1}.pf-char-chip:not(.active){opacity:.4}.pf-char-chip:hover{opacity:.8}.prompt-tokens-wrap{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.prompt-token-pill{font-size:var(--fs-2xs);padding:3px var(--space-4);border-radius:20px;font-family:var(--mono)}.prompt-token-pill.subject{background:#06b6d41f;color:var(--cyan);border:1px solid rgba(6,182,212,.25)}.prompt-token-pill.env{background:#8b5cf61f;color:var(--violet);border:1px solid rgba(139,92,246,.25)}.prompt-token-pill.camera{background:#4f82ff1f;color:#7fa8ff;border:1px solid rgba(79,130,255,.25)}.prompt-token-pill.mood{background:#d946ef1f;color:var(--magenta);border:1px solid rgba(217,70,239,.25)}.prompt-token-pill.style{background:#f59e0b1f;color:var(--amber);border:1px solid rgba(245,158,11,.25)}.iter-item{cursor:pointer}.iter-item:hover{border-color:var(--border2);background:var(--bg3)}.iter-num{display:flex;justify-content:space-between;align-items:center;font-size:var(--fs-2xs);color:var(--text3);margin-bottom:5px;font-family:var(--mono)}.iter-restore{font-size:var(--fs-2xs);color:var(--accent);opacity:0;transition:opacity .12s;padding:var(--space-px) 5px;border-radius:3px;background:var(--accent-dim);border:1px solid rgba(79,130,255,.25)}.iter-text{font-size:var(--fs-xs);line-height:1.5;color:var(--text1)}.asset-stat-row{display:flex;gap:var(--space-4);margin-bottom:var(--space-6)}.asset-stat{flex:1;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:var(--space-4) var(--space-5);text-align:center}.asset-stat-num{font-size:var(--fs-xl);font-weight:700;font-family:var(--mono);color:var(--text0);display:block}.asset-stat-key{font-size:var(--fs-2xs);color:var(--text3);text-transform:uppercase;letter-spacing:.6px}.asset-vault-sync{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:var(--space-6);padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:linear-gradient(180deg,rgba(245,165,36,.05),transparent);cursor:pointer;transition:border-color .12s}.asset-vault-sync:hover{border-color:#f5a52466}.avs-chip{font-family:var(--mono);font-size:var(--fs-2xs);font-weight:700;color:var(--c);padding:var(--space-1) 7px;border-radius:5px;border:1px solid color-mix(in srgb,var(--c) 45%,transparent);background:color-mix(in srgb,var(--c) 12%,transparent)}.avs-arrow{margin-left:auto;font-family:var(--mono);font-size:var(--fs-2xs);color:var(--amber, #f59e0b)}.asset-thumb-remove{position:absolute;top:4px;right:4px;z-index:5;width:16px;height:16px;border-radius:50%;background:#ef4444d9;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;opacity:0;transition:opacity .12s;cursor:pointer;border:none}.asset-thumb:hover .asset-thumb-remove{opacity:1}.cont-section-header{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.cont-edit-btn{font-size:var(--fs-2xs);padding:var(--space-1) var(--space-3);border-radius:3px;background:var(--glass);border:1px solid var(--border);color:var(--text3);cursor:pointer;font-family:var(--mono);transition:all .1s;margin-left:auto}.cont-edit-btn:hover{color:var(--text1);border-color:var(--border2)}.cont-field-row{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.cont-field-row .pf{flex:1;margin-bottom:0}.cont-scene-jump{display:flex;align-items:center;justify-content:space-between;padding:7px var(--space-5);border-radius:7px;cursor:pointer;transition:background .12s;margin-bottom:var(--space-2);border:1px solid transparent}.cont-scene-jump:hover{background:var(--glass2);border-color:var(--border)}.cont-scene-jump.active-scene{background:var(--accent-dim);border-color:#4f82ff33}.cont-scene-jump-left{display:flex;align-items:center;gap:7px;font-size:var(--fs-xs)}.cont-scene-jump-status{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3)}.panel-body{flex:1;overflow-y:auto;padding:0}.panel-section{padding:var(--space-7) var(--space-8);border-bottom:1px solid var(--border)}.panel-section:last-child{border-bottom:none}.panel-section-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.6px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-5)}.pf{margin-bottom:var(--space-5)}.pf:last-child{margin-bottom:0}.pf label{display:block;font-size:var(--fs-2xs);font-weight:700;letter-spacing:.8px;color:var(--text2);text-transform:uppercase;margin-bottom:5px;display:flex;align-items:center;gap:5px}.pf label:before{content:"";width:3px;height:3px;border-radius:50%;background:var(--text3);flex-shrink:0}.pf input,.pf textarea,.pf select{width:100%;background:var(--bg0);border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:var(--fs-sm);font-family:var(--mono);color:var(--text0);outline:none;resize:vertical;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;line-height:1.55}.pf input:focus,.pf textarea:focus,.pf select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.pf input::placeholder,.pf textarea::placeholder{color:var(--text3)}.pf select{cursor:pointer}.pf select option{background:var(--bg2)}.pf textarea.tall{min-height:80px}.pf textarea.subject{min-height:70px}.pf textarea.env{min-height:56px}.pf-row{display:flex;gap:var(--space-4)}.pf-row .pf{flex:1}.prompt-out{background:var(--bg0);border:1px solid var(--border);border-radius:10px;padding:13px var(--space-7);font-size:var(--fs-sm);font-family:var(--mono);line-height:1.8;color:var(--text1);margin-bottom:var(--space-5);position:relative;min-height:90px;transition:border-color .15s}.prompt-out:hover{border-color:var(--border2)}.prompt-out-idle{color:var(--text3);font-style:italic;font-size:var(--fs-xs)}.prompt-token{color:var(--cyan)}.prompt-token2{color:var(--violet)}.prompt-token3{color:var(--magenta)}.prompt-copy{position:absolute;top:10px;right:10px;font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);padding:3px var(--space-4);border-radius:5px;background:var(--bg2);border:1px solid var(--border);cursor:pointer;transition:all .15s}.prompt-copy:hover{color:var(--text0);border-color:var(--border2);background:var(--bg3)}.btn-full{width:100%;padding:var(--space-5);border-radius:9px;font-size:var(--fs-sm);font-weight:700;letter-spacing:.2px;cursor:pointer;transition:all .18s;font-family:var(--font);border:none;margin-bottom:7px;display:flex;align-items:center;justify-content:center;gap:7px}.btn-full:last-child{margin-bottom:0}.btn-full.primary{background:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 18px var(--accent-glow)}.btn-full.primary:hover{background:#6696ff;box-shadow:0 4px 26px var(--accent-glow);transform:translateY(-1px)}.btn-full.primary:active{transform:translateY(0)}.btn-full.secondary{background:var(--glass);border:1px solid var(--border);color:var(--text1)}.btn-full.secondary:hover{background:var(--glass2);border-color:var(--border2)}.btn-full.violet-btn{background:var(--violet-dim);border:1px solid rgba(139,92,246,.3);color:#b08cff}.btn-full.violet-btn:hover{background:#8b5cf640}.xm-btn{display:inline-flex;align-items:center;gap:6px}.xm-caret{opacity:.7;transition:transform .15s ease}.xm-btn[aria-expanded=true] .xm-caret{transform:rotate(180deg)}.xm{position:fixed;z-index:950;width:min(380px,calc(100vw - 16px));max-height:min(86vh,760px);overflow-y:auto;overscroll-behavior:contain;background:var(--bg1);border:1px solid var(--border2);border-radius:12px;box-shadow:0 18px 50px #00000073,0 2px 8px #00000040;padding:6px;font-family:var(--font);animation:xmIn .14s cubic-bezier(.22,1,.36,1) both}.xm[hidden]{display:none}@keyframes xmIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.xm-group+.xm-group{border-top:1px solid var(--border);margin-top:4px;padding-top:4px}.xm-head{display:flex;align-items:baseline;gap:6px;min-width:0;padding:8px 10px 4px;font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.1px;text-transform:uppercase;color:var(--text2)}.xm-dot{color:var(--text3)}.xm-name{text-transform:none;letter-spacing:0;font-weight:700;color:var(--text1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.xm-row{display:flex;align-items:flex-start;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:8px;background:none;color:var(--text1);font:inherit;text-align:left;cursor:pointer}button.xm-row:hover,button.xm-row:focus-visible{background:var(--accent-dim);color:var(--text0);outline:none}button.xm-row:focus-visible{box-shadow:inset 0 0 0 1px var(--accent)}.xm-row[aria-disabled=true]{cursor:default;opacity:.62}button.xm-row[aria-disabled=true]:hover{background:none}.xm-row-fmt{cursor:default}.xm-row>.ic{margin-top:2px;color:var(--accent)}.xm-txt{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.xm-label{font-size:var(--fs-sm);font-weight:700;display:inline-flex;align-items:center;gap:6px}.xm-sub{font-size:var(--fs-xs);color:var(--text2);line-height:1.4}.xm-pro{font-size:var(--fs-2xs);font-weight:800;letter-spacing:.6px;padding:1px 6px;border-radius:999px;background:var(--amber-dim, rgba(245,158,11,.15));color:var(--amber)}.xm-fmts{display:inline-flex;gap:4px;flex-shrink:0;align-self:center}.xm-fmt{font:inherit;font-size:var(--fs-xs);font-weight:700;font-family:var(--mono);padding:4px 9px;border-radius:6px;cursor:pointer;border:1px solid var(--border2);background:var(--bg2);color:var(--text1)}.xm-fmt:hover,.xm-fmt:focus-visible{border-color:var(--accent);color:var(--accent);background:var(--accent-dim);outline:none}.xm-foot{margin-top:4px;padding:8px 10px 6px;border-top:1px solid var(--border);font-size:var(--fs-xs);color:var(--text2)}.xm-empty{padding:14px 12px;font-size:var(--fs-sm);color:var(--text2)}.xm.xm-sheet{inset:auto 0 0;width:auto;max-height:82vh;border-radius:16px 16px 0 0;padding:8px 8px calc(10px + env(safe-area-inset-bottom,0px));animation-name:xmUp}@keyframes xmUp{0%{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}@media (max-width: 640px){.xm:not(.xm-sheet){left:8px;right:8px!important;width:auto}}.iter-item{background:var(--bg2);border:1px solid var(--border);border-radius:6px;padding:var(--space-4) var(--space-5);margin-bottom:var(--space-3);font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);cursor:pointer;transition:all .12s;line-height:1.5}.iter-item:hover{border-color:var(--border2);color:var(--text1)}.iter-num{font-size:var(--fs-2xs);color:var(--text3);margin-bottom:3px;display:flex;justify-content:space-between}.iter-restore{color:var(--accent);font-size:var(--fs-2xs);opacity:0;transition:opacity .12s}.iter-item:hover .iter-restore{opacity:1}.cont-card{background:var(--bg2);border:1px solid var(--border);border-radius:9px;padding:var(--space-6);margin-bottom:var(--space-5);transition:border-color .15s}.cont-card.ok{border-left:3px solid var(--green)}.cont-card.warn{border-left:3px solid var(--amber)}.cont-card.err{border-left:3px solid var(--red)}.cont-title{font-size:var(--fs-xs);font-weight:700;margin-bottom:9px;display:flex;align-items:center;gap:7px}.cont-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.cont-dot.ok{background:var(--green);box-shadow:0 0 6px #22c55e80}.cont-dot.warn{background:var(--amber);box-shadow:0 0 6px #f59e0b80}.cont-dot.err{background:var(--red);box-shadow:0 0 6px #ef444480}.cont-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:5px;font-size:var(--fs-xs)}.cont-key{color:var(--text2)}.cont-val{font-family:var(--mono);font-size:var(--fs-xs);color:var(--text0)}.cont-warn-text{font-size:var(--fs-xs);font-family:var(--mono);color:var(--amber);margin-top:7px;line-height:1.5}.cont-err-text{font-size:var(--fs-xs);font-family:var(--mono);color:var(--red-soft);margin-top:7px;line-height:1.5}.warn-pill{font-size:var(--fs-2xs);padding:var(--space-1) var(--space-3);border-radius:4px;background:var(--amber-dim);border:1px solid rgba(245,158,11,.3);color:var(--amber);margin-left:auto}.err-pill{font-size:var(--fs-2xs);padding:var(--space-1) var(--space-3);border-radius:4px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--red-soft);margin-left:auto}.asset-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3);margin-bottom:var(--space-6)}.asset-thumb{aspect-ratio:16/10;border-radius:7px;border:1px solid var(--border);cursor:pointer;transition:border-color .15s,transform .15s;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.asset-thumb:hover{border-color:var(--accent);transform:scale(1.02)}.asset-badge{position:absolute;top:4px;right:4px;font-size:var(--fs-2xs);font-family:var(--mono);background:#0009;color:#ffffff80;padding:var(--space-px) var(--space-2);border-radius:3px}.asset-name{position:absolute;bottom:0;left:0;right:0;padding:3px 5px;font-size:var(--fs-2xs);font-family:var(--mono);background:linear-gradient(transparent,#000000b3);color:#fff6}.asset-add{aspect-ratio:16/10;border-radius:7px;border:1px dashed rgba(79,130,255,.3);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);color:var(--accent);opacity:.5;transition:all .15s}.asset-add:hover{opacity:1;background:var(--accent-dim);border-color:var(--accent)}.shot-box{border:1px solid var(--border);border-radius:9px;background:var(--bg0);margin-bottom:var(--space-6);overflow:hidden}.shot-box-header{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);cursor:pointer;user-select:none;background:var(--bg1);transition:color .15s,background .15s;font-size:var(--fs-xs);font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text2)}.shot-box-header:hover{color:var(--text1);background:var(--glass2)}.shot-box-caret{display:inline-flex;font-size:var(--fs-2xs);color:var(--text3);transition:transform .18s}.shot-box.collapsed .shot-box-caret{transform:rotate(-90deg)}.shot-box-count{margin-left:auto;font-family:var(--mono);font-weight:600;letter-spacing:0;color:var(--text3);text-transform:none}.shot-box-scroll{max-height:264px;overflow-y:auto;overflow-x:hidden;padding:var(--space-5)}.shot-box-scroll .asset-grid{margin-bottom:0}.shot-box.collapsed .shot-box-scroll{display:none}.shot-box-empty{font-size:var(--fs-xs);color:var(--text3);font-style:italic;padding:var(--space-3) var(--space-2) var(--space-5);line-height:1.4}.shot-box+.shot-box{margin-top:var(--space-1)}.suggestion-card{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:var(--space-5) var(--space-6);margin-bottom:var(--space-4);cursor:pointer;transition:all .15s}.suggestion-card:hover{border-color:var(--border2)}.suggestion-title{font-size:var(--fs-xs);font-weight:700;margin-bottom:3px}.suggestion-sub{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2)}.cmd-overlay{position:fixed;inset:0;z-index:calc(var(--z-lightbox) + 50);background:#000000a6;backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding-top:80px;opacity:0;pointer-events:none;transition:opacity .15s}.cmd-overlay.open{opacity:1;pointer-events:all}.cmd-box{width:580px;background:var(--bg2);border:1px solid var(--border2);border-radius:14px;overflow:hidden;box-shadow:0 32px 80px #000c,0 0 0 1px #4f82ff26;transform:translateY(-10px);transition:transform .2s}.cmd-overlay.open .cmd-box{transform:translateY(0)}.cmd-search{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-7) var(--space-8);border-bottom:1px solid var(--border)}.cmd-search-icon{color:var(--accent);font-size:var(--fs-lg);flex-shrink:0}.cmd-input{flex:1;background:none;border:none;outline:none;font-size:var(--fs-lg);color:var(--text0);font-family:var(--font)}.cmd-input::placeholder{color:var(--text3)}.cmd-hint{font-size:var(--fs-xs);color:var(--text3);font-family:var(--mono);flex-shrink:0}.cmd-list{padding:var(--space-3);max-height:340px;overflow-y:auto}.cmd-group-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;padding:var(--space-4) var(--space-5) var(--space-2)}.cmd-item{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-4) var(--space-5);border-radius:8px;cursor:pointer;font-size:var(--fs-sm);color:var(--text1);transition:all .1s}.cmd-item:hover,.cmd-item.focused{background:var(--glass2);color:var(--text0)}.cmd-item[hidden]{display:none}.cmd-item-ico{width:30px;height:30px;border-radius:8px;background:var(--bg3);border:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md)}.cmd-item-text{flex:1}.cmd-item-title{font-weight:600}.cmd-item-sub{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono)}.cmd-item-kb{font-family:var(--mono);font-size:var(--fs-2xs);color:var(--text3);background:var(--bg3);border:1px solid var(--border);padding:var(--space-1) 5px;border-radius:4px}.drag-handle{position:absolute;left:8px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:var(--space-1);opacity:0;transition:opacity .15s;cursor:grab;padding:var(--space-2);z-index:10}.scene-card:hover .drag-handle{opacity:.4}.drag-handle:hover{opacity:1!important}.drag-dot{width:3px;height:3px;border-radius:50%;background:var(--text2)}.scene-card.dragging{opacity:.35;transform:scale(.97);box-shadow:none!important;border-color:var(--accent)!important;pointer-events:none}.scene-card.drag-over-top{border-top:2px solid var(--accent)!important;margin-top:-2px}.scene-card.drag-over-bottom{border-bottom:2px solid var(--accent)!important;margin-bottom:-2px}.drag-ghost{position:fixed;pointer-events:none;z-index:calc(var(--z-popover) + 20);opacity:.85;transform:rotate(1.5deg) scale(.96);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px #000c,0 0 0 1px var(--accent);transition:none}.shot-thumb[draggable=true]{cursor:grab}.shot-thumb[draggable=true]:active{cursor:grabbing}.shot-thumb.shot-dragging{opacity:.25;transform:none!important}.shot-thumb.shot-drag-over{border-color:var(--accent)!important;box-shadow:-3px 0 0 var(--accent)}.scene-hero.drop-active{outline:2px dashed var(--accent);outline-offset:-4px}.scene-hero.drop-active:after{content:"Drop image or video";position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:700;font-family:var(--font);color:var(--accent);background:#060a12bf;letter-spacing:.3px}.shot-add-btn.drop-active{border-color:var(--accent)!important;background:var(--accent-dim)!important;color:var(--accent)!important}.shot-thumb .video-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#0000004d;opacity:0;transition:opacity .15s}.shot-thumb:hover .video-play{opacity:1}.video-play-btn{width:22px;height:22px;border-radius:50%;background:#fff3;border:1px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;padding-left:var(--space-px)}.file-badge{position:absolute;top:3px;left:3px;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:600;padding:var(--space-px) var(--space-2);border-radius:3px;letter-spacing:.5px;text-transform:uppercase}.file-badge.img{background:#4f82ffcc;color:#fff}.file-badge.vid{background:#06b6d4cc;color:#fff}.shot-remove{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#ef4444d9;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;opacity:0;transition:opacity .15s;cursor:pointer;z-index:10;line-height:1}.shot-thumb:hover .shot-remove{opacity:1}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}.hero-media-remove{position:absolute;top:8px;left:8px;z-index:30;width:22px;height:22px;border-radius:50%;background:#ef4444d9;border:1px solid rgba(239,68,68,.5);display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);color:#fff;opacity:0;transition:opacity .15s;cursor:pointer}.scene-hero:hover .hero-media-remove{opacity:1}.asset-drop-zone{border:2px dashed var(--border);border-radius:9px;padding:var(--space-9);text-align:center;transition:all .2s;margin-bottom:var(--space-6);cursor:pointer}.asset-drop-zone:hover,.asset-drop-zone.drop-active{border-color:var(--accent);background:var(--accent-dim)}.asset-drop-zone p{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono);margin-top:var(--space-3)}.asset-drop-zone .drop-icon{font-size:var(--fs-2xl);opacity:.6}.asset-drop-zone.drop-active .drop-icon{opacity:1}.outline-view{padding:var(--space-9);display:none}.focus-view{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--bg0);min-height:0}.fv-strip-bar{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-7);background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0}.fv-strip-label{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--text3);white-space:nowrap;flex-shrink:0}.fv-strip{display:flex;gap:var(--space-3);overflow-x:auto;scrollbar-width:none;flex:1;align-items:center;padding:var(--space-1) 0}.fv-strip::-webkit-scrollbar{display:none}.fv-strip-tab{position:relative;width:84px;height:50px;border-radius:7px;flex-shrink:0;border:1.5px solid var(--border);overflow:hidden;cursor:pointer;background:var(--bg2);transition:border-color .15s,transform .12s}.fv-strip-tab:hover{border-color:var(--border2);transform:scale(1.04)}.fv-strip-tab.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.fv-strip-tab img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fv-strip-tab-bg{position:absolute;inset:0}.fv-strip-tab-ov{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-2) 5px;background:linear-gradient(transparent 20%,#000000c7)}.fv-strip-tab-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;color:var(--accent);line-height:1;margin-bottom:var(--space-px)}.fv-strip-tab-name{font-size:var(--fs-2xs);font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.fv-hdr{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap;padding:var(--space-5) 18px;background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0}.fv-hdr-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;background:var(--accent);color:var(--text-on-accent);border-radius:4px;padding:3px var(--space-4);letter-spacing:.5px;flex-shrink:0}.fv-hdr-title{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.2px;background:none;border:none;color:var(--text0);font-family:var(--font);flex:1;min-width:120px;outline:none;border-bottom:1.5px solid transparent;transition:border-color .15s;padding:var(--space-px) 0}.fv-hdr-title:focus{border-bottom-color:var(--accent)}.fv-hdr-desc{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);background:none;border:none;outline:none;border-bottom:1px solid transparent;transition:border-color .15s;padding:var(--space-px) 0;flex-shrink:0;min-width:90px}.fv-hdr-desc:focus{border-bottom-color:var(--border2)}.fv-hdr-badge{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);background:var(--bg2);border:1px solid var(--border);border-radius:4px;padding:3px var(--space-4);flex-shrink:0}.fv-hdr-status{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;padding:3px 9px;border-radius:4px;flex-shrink:0;letter-spacing:.3px}.fv-hdr-status.ok{background:#22c55e26;color:var(--green)}.fv-hdr-status.warn{background:#f59e0b26;color:var(--amber)}.fv-hdr-status.err{background:#ef444426;color:var(--red-soft)}.fv-board{flex:1;display:grid;grid-template-columns:270px 1fr 1fr;min-height:0;overflow:hidden}.fv-col{display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;border-right:1px solid var(--border);min-width:0;scrollbar-width:thin;scrollbar-color:var(--border) transparent}.fv-col:last-child{border-right:none}.fv-col-section-hd{display:flex;align-items:center;justify-content:space-between;padding:9px 13px 7px;font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.3px;text-transform:uppercase;color:var(--text3);background:var(--bg1);border-bottom:1px solid var(--border);flex-shrink:0;position:sticky;top:0;z-index:3}.fv-char-card{border-bottom:1px solid var(--border);transition:background .12s}.fv-char-card:hover{background:var(--glass)}.fv-char-imgs{display:grid;gap:0;height:86px;overflow:hidden}.fv-char-imgs.n1{grid-template-columns:1fr}.fv-char-imgs.n2{grid-template-columns:1fr 1fr}.fv-char-imgs.n3{grid-template-columns:1fr 1fr 1fr}.fv-char-img-cell{overflow:hidden;position:relative;border-right:1px solid var(--border)}.fv-char-img-cell:last-child{border-right:none}.fv-char-img-cell img{width:100%;height:100%;object-fit:cover;display:block}.fv-char-img-cell .fv-char-no-img{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);font-weight:800}.fv-char-meta{padding:var(--space-4) var(--space-6);display:flex;flex-direction:column;gap:var(--space-2)}.fv-char-name{font-size:var(--fs-sm);font-weight:800}.fv-char-detail-lines{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);line-height:1.55}.fv-char-variation{font-size:var(--fs-2xs);color:var(--amber);font-family:var(--mono);margin-top:var(--space-px)}.fv-char-rm{align-self:flex-start;padding:3px var(--space-4);border-radius:5px;font-size:var(--fs-2xs);font-weight:700;cursor:pointer;border:1px solid rgba(239,68,68,.25);background:none;color:var(--red-soft);font-family:var(--font);margin-top:3px;transition:all .12s}.fv-char-rm:hover{background:#ef44441a;border-color:var(--red-soft)}.fv-char-add-bar{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-3);border-bottom:1px solid var(--border)}.fv-sel{width:100%;padding:7px 9px;border-radius:7px;font-size:var(--fs-xs);border:1px solid var(--border);background:var(--bg2);color:var(--text0);font-family:var(--font);cursor:pointer;outline:none;transition:border-color .15s}.fv-sel:focus{border-color:var(--accent)}.fv-action-btn{padding:var(--space-3) var(--space-5);border-radius:6px;font-size:var(--fs-2xs);font-weight:700;cursor:pointer;border:1px solid var(--border);background:var(--glass);color:var(--text2);font-family:var(--font);text-align:center;transition:all .12s}.fv-action-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.fv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px var(--space-6);gap:var(--space-3);color:var(--text3);font-size:var(--fs-xs);text-align:center}.fv-env-topbar{display:flex;align-items:center;gap:var(--space-3);padding:7px 11px;border-bottom:1px solid var(--border);flex-shrink:0}.fv-env-topbar .fv-sel{flex:1}.fv-env-hero{width:100%;aspect-ratio:16/9;position:relative;overflow:hidden;flex-shrink:0;border-bottom:1px solid var(--border);background:var(--bg2)}.fv-env-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fv-env-hero-empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);color:var(--text3);font-size:var(--fs-xs)}.fv-env-caption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#000000c7);padding:18px 13px 9px;color:#fff;font-size:var(--fs-xs);font-family:var(--mono);pointer-events:none}.fv-map-wrap{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.fv-map-subhd{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1px;text-transform:uppercase;color:var(--text3)}.fv-map-box{width:100%;aspect-ratio:4/3;border-radius:8px;border:1px solid var(--border);overflow:hidden;background:var(--bg2);display:flex;align-items:center;justify-content:center;position:relative}.fv-map-box img{width:100%;height:100%;object-fit:contain}.fv-map-upload-btn{width:100%;height:100%;border:none;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--text3);font-family:var(--font);font-size:var(--fs-xs);transition:all .15s}.fv-map-upload-btn:hover{background:var(--glass);color:var(--accent)}.fv-map-replace-btn{position:absolute;bottom:6px;right:6px;padding:3px 9px;font-size:var(--fs-2xs);border-radius:5px;border:1px solid var(--border);background:#0009;color:#fff;cursor:pointer;font-family:var(--font);transition:all .12s}.fv-map-replace-btn:hover{background:var(--accent);border-color:var(--accent)}.fv-map-del-btn{position:absolute;bottom:6px;right:68px;padding:3px 7px;font-size:var(--fs-2xs);border-radius:5px;border:1px solid rgba(239,68,68,.35);background:#0009;color:var(--red-soft);cursor:pointer;font-family:var(--font);transition:all .12s}.fv-map-del-btn:hover{background:#ef444433}.fv-env-kvs{display:flex;flex-direction:column;gap:0;margin-top:var(--space-2)}.fv-env-kv{display:flex;gap:var(--space-4);align-items:baseline;padding:5px 0;border-bottom:1px solid var(--border);font-size:var(--fs-xs)}.fv-env-kv:last-child{border-bottom:none}.fv-env-k{font-family:var(--mono);color:var(--text3);flex-shrink:0;min-width:80px;font-size:var(--fs-2xs)}.fv-env-v{color:var(--text1);font-weight:600;font-size:var(--fs-xs)}.fv-sb-grid-legacy{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);padding:var(--space-5) var(--space-6)}.fv-shot-card{border-radius:8px;border:1px solid var(--border);overflow:hidden;background:var(--bg2);display:flex;flex-direction:column;transition:border-color .15s}.fv-shot-card:hover{border-color:var(--border2)}.fv-shot-frame{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:var(--bg3)}.fv-shot-frame img,.fv-shot-frame video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.fv-shot-frame-empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xl);opacity:.2}.fv-shot-badge{position:absolute;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;background:#000000a6;color:#fff;border-radius:3px;padding:var(--space-px) 5px}.fv-shot-badge.num{top:5px;left:6px}.fv-shot-badge.vid{top:5px;right:6px;color:var(--cyan)}.fv-shot-expand-btn{position:absolute;bottom:5px;right:6px;opacity:0;transition:opacity .15s;cursor:pointer;font-size:var(--fs-xs);background:#0009;border-radius:4px;padding:var(--space-1) 5px;color:#fff}.fv-shot-card:hover .fv-shot-expand-btn{opacity:1}.fv-shot-ann{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.fv-ann-row{display:flex;gap:var(--space-2);align-items:baseline}.fv-ann-k-legacy{font-family:var(--mono);font-weight:800;font-size:var(--fs-2xs);color:var(--text3);text-transform:uppercase;flex-shrink:0;min-width:50px}.fv-ann-v-legacy{font-family:var(--mono);color:var(--text1);font-size:var(--fs-2xs);flex:1;outline:none;min-width:0;word-break:break-word;line-height:1.4;border-bottom:1px solid transparent;transition:border-color .12s}.fv-ann-v-legacy:focus{border-bottom-color:var(--accent)}.fv-ann-v-legacy:empty:before{content:attr(data-ph);color:var(--text3);font-style:italic;pointer-events:none}.fv-notes-wrap{padding:var(--space-5) var(--space-6);display:flex;flex-direction:column;gap:var(--space-4);border-top:1px solid var(--border)}.fv-notes-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.fv-note-card{background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:5px}.fv-note-card.wide{grid-column:1 / -1}.fv-note-hd{font-size:var(--fs-2xs);font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:var(--text3)}.fv-note-ta{width:100%;border:none;background:transparent;color:var(--text0);font-family:var(--mono);font-size:var(--fs-xs);line-height:1.55;resize:none;outline:none}.fv-note-input{width:100%;border:none;background:transparent;color:var(--text0);font-family:var(--mono);font-size:var(--fs-xs);outline:none;border-bottom:1px solid transparent;transition:border-color .12s;padding:0}.fv-note-input:focus{border-bottom-color:var(--accent)}.fv-tags-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.fv-tag-chip{padding:var(--space-1) var(--space-4);border-radius:20px;font-size:var(--fs-2xs);font-weight:700;background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,130,255,.2);cursor:default}.fv-tag-chip-rm{margin-left:3px;cursor:pointer;opacity:.5;font-size:var(--fs-2xs)}.fv-tag-chip-rm:hover{opacity:1}.fv-add-tag-btn{padding:var(--space-1) var(--space-4);border-radius:20px;font-size:var(--fs-2xs);font-weight:700;border:1px dashed var(--border);background:none;color:var(--text3);cursor:pointer;font-family:var(--font);transition:all .12s}.fv-add-tag-btn:hover{border-color:var(--accent);color:var(--accent)}.outline-act{margin-bottom:28px}.outline-act-title{font-size:var(--fs-xl);font-weight:800;letter-spacing:-.5px;margin-bottom:var(--space-2);color:var(--text0)}.outline-act-meta{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);margin-bottom:var(--space-7)}.outline-scene{display:flex;gap:var(--space-7);padding:var(--space-6) var(--space-7);background:var(--bg2);border:1px solid var(--border);border-radius:9px;margin-bottom:var(--space-1);cursor:pointer;transition:border-color .15s,background .15s;align-items:center}.outline-scene:hover{border-color:var(--border2);background:var(--bg3)}.outline-scene.outline-expanded{border-color:var(--accent);background:var(--bg3);border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:0}.outline-scene-num{font-size:var(--fs-xs);font-family:var(--mono);color:var(--accent);min-width:28px;font-weight:600}.outline-scene-body{flex:1}.outline-scene-title{font-size:var(--fs-sm);font-weight:700;margin-bottom:3px}.outline-scene-desc{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono)}.outline-scene-stat{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);display:flex;flex-direction:column;align-items:flex-end;gap:3px}.outline-scene-tab-icons{display:flex;gap:var(--space-2);align-items:center;flex-shrink:0;opacity:0;transition:opacity .15s}.outline-scene:hover .outline-scene-tab-icons,.outline-scene.outline-expanded .outline-scene-tab-icons{opacity:1}.outline-scene-tab-icon-btn{width:26px;height:26px;border-radius:6px;border:1px solid var(--border);background:var(--glass);color:var(--text2);cursor:pointer;font-size:var(--fs-xs);display:flex;align-items:center;justify-content:center;transition:all .12s;font-family:var(--font)}.outline-scene-tab-icon-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.outline-inline-panel{background:var(--bg1);border:1px solid var(--accent);border-top:none;border-radius:0 0 10px 10px;margin-bottom:var(--space-5);overflow:hidden;max-height:0;opacity:0;transition:max-height .22s cubic-bezier(.22,1,.36,1),opacity .18s}.outline-inline-tabs{display:flex;align-items:center;gap:0;border-bottom:1px solid var(--border);background:var(--bg2);padding:0 var(--space-4);position:sticky;top:0;z-index:5}.outline-inline-tab{display:flex;align-items:center;gap:5px;padding:9px var(--space-7);font-size:var(--fs-xs);font-weight:700;color:var(--text2);cursor:pointer;border:none;background:none;font-family:var(--font);border-bottom:2px solid transparent;transition:color .12s,border-color .12s;white-space:nowrap}.outline-inline-tab:hover{color:var(--text0)}.outline-inline-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.outline-inline-tab-icon{font-size:var(--fs-xs)}.outline-inline-close{margin-left:auto;padding:var(--space-3) var(--space-5);color:var(--text3);cursor:pointer;border:none;background:none;font-size:var(--fs-sm);transition:color .12s;border-radius:5px}.outline-inline-close:hover{color:var(--text0);background:var(--glass)}.outline-inline-body{padding:var(--space-9) 22px;overflow-y:auto;max-height:580px}.outline-inline-fields{display:flex;flex-direction:column;gap:var(--space-7)}.outline-inline-field-group{display:flex;flex-direction:column;gap:5px}.outline-inline-field-group label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text3)}.outline-inline-field-group textarea{width:100%;border:1px solid var(--border);border-radius:7px;background:var(--bg0);color:var(--text0);padding:var(--space-5) var(--space-6);font-size:var(--fs-sm);font-family:var(--font);line-height:1.55;resize:vertical;transition:border-color .15s}.outline-inline-field-group textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.outline-inline-generated{background:var(--bg0);border:1px solid var(--border);border-radius:8px;padding:var(--space-6) var(--space-7)}.outline-inline-gen-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text3);margin-bottom:7px}.outline-inline-gen-text{font-size:var(--fs-sm);color:var(--text1);font-family:var(--mono);line-height:1.65;white-space:pre-wrap}.outline-inline-section-label{font-size:var(--fs-xs);font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text3);margin-bottom:var(--space-5)}.outline-inline-asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-4)}.outline-inline-asset-thumb{position:relative;aspect-ratio:16/9;border-radius:7px;overflow:hidden;background:var(--bg2);border:1px solid var(--border);cursor:pointer;transition:border-color .15s,transform .15s}.outline-inline-asset-thumb:hover{border-color:var(--accent);transform:scale(1.03)}.outline-inline-asset-badge{position:absolute;top:4px;right:4px;background:#000000b3;color:#fff;font-size:var(--fs-2xs);font-weight:700;font-family:var(--mono);padding:var(--space-px) var(--space-2);border-radius:3px}.outline-inline-asset-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-5);align-items:start}.outline-inline-asset-list .outline-asset-group-hd,.outline-inline-asset-list .asset-add-btn{grid-column:1 / -1}.outline-inline-asset-card{display:grid;grid-template-columns:120px 1fr;gap:var(--space-5);background:var(--bg2);border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:border-color .15s}.outline-inline-asset-card:hover{border-color:var(--border2)}.outline-inline-asset-card .outline-inline-asset-thumb{width:120px;height:68px;aspect-ratio:unset;border-radius:0;border:none;flex-shrink:0}.outline-inline-asset-fields{padding:7px var(--space-5) 7px 0;display:flex;flex-direction:column;gap:3px;justify-content:center}.outline-inline-asset-field-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-1) 0;border-bottom:1px solid var(--border)}.outline-inline-asset-field-row:last-child{border-bottom:none}.outline-inline-asset-field-key{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:700;color:var(--text3);text-transform:uppercase;letter-spacing:.5px;min-width:52px;flex-shrink:0}.outline-inline-asset-field-val{flex:1;background:none;border:none;color:var(--text0);font-family:var(--mono);font-size:var(--fs-xs);outline:none;padding:0;min-width:0}.outline-inline-asset-field-val:focus{color:var(--accent)}.outline-inline-asset-card{cursor:grab}.outline-inline-asset-card:active{cursor:grabbing}.outline-inline-asset-card.shot-dragging{opacity:.4}.outline-inline-asset-card.shot-drag-over{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.outline-inline-asset-thumb.is-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:var(--bg1);border-right:1px dashed var(--border2)}.asset-empty-glyph{font-size:var(--fs-xl);opacity:.5}.asset-empty-cap{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);letter-spacing:.3px}.asset-card-actions{display:flex;gap:5px;align-items:center;margin-top:5px;padding-top:5px;border-top:1px solid var(--border)}.asset-act-btn{padding:3px 9px;border-radius:5px;font-size:var(--fs-2xs);font-weight:700;font-family:var(--font);cursor:pointer;transition:all .12s;border:1px solid var(--border);background:var(--glass);color:var(--text2)}.asset-act-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.asset-act-btn.danger{margin-left:auto}.asset-act-btn.danger:hover{border-color:var(--red);color:var(--red);background:#ef44441f}.asset-add-btn{width:100%;padding:9px 0;border-radius:8px;margin-top:var(--space-2);border:1px dashed var(--border2);background:none;color:var(--text2);font-family:var(--font);font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;gap:var(--space-3)}.asset-add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.asset-add-plus{font-size:var(--fs-lg);line-height:1}.asset-tools-row{display:flex;align-items:stretch;gap:var(--space-4);margin:var(--space-4) 0;min-width:0}.asset-tool-btn{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px var(--space-6);border-radius:9px;cursor:pointer;font-family:var(--font);font-size:var(--fs-xs);font-weight:700;letter-spacing:.2px;color:var(--text1);background:var(--glass2, var(--bg2));border:1px solid var(--border2);transition:border-color .15s,background .15s,color .15s,transform .1s}.asset-tool-btn:hover{color:var(--text0);border-color:var(--accent);background:var(--accent-dim);transform:translateY(-1px)}.asset-tool-btn:active{transform:translateY(0)}.asset-tool-ic{font-size:var(--fs-md);line-height:1}.asset-tool-lbl{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-tools-row .ds-controls{flex:1 1 0;min-width:0;display:flex;align-items:stretch;gap:var(--space-3)}.asset-tools-row .ds-controls .ds-btn{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;padding:9px var(--space-6);border-radius:9px;cursor:pointer;font-family:var(--font);font-size:var(--fs-xs);font-weight:700;letter-spacing:.2px;border:1px solid var(--border2);white-space:nowrap;transition:border-color .15s,transform .1s,box-shadow .15s}.asset-tools-row .ds-controls .ds-btn:hover{transform:translateY(-1px)}.asset-tools-row .ds-controls .ds-btn:active{transform:translateY(0)}.asset-tools-row .ds-controls .ds-btn-ic{font-size:var(--fs-md);line-height:1}.asset-tools-row .ds-controls .ds-gear{flex:0 0 auto;width:36px;border-radius:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--glass2, var(--bg2));border:1px solid var(--border2);color:var(--text2);font-size:var(--fs-md);transition:border-color .15s,color .15s,background .15s}.asset-tools-row .ds-controls .ds-gear:hover{border-color:var(--accent);color:var(--text0);background:var(--accent-dim)}@media (max-width: 360px){.asset-tools-row{flex-direction:column}}.outline-inline-motion-map-section{margin-top:var(--space-8);border-top:1px solid var(--border);padding-top:var(--space-6)}.outline-inline-motion-map-box{width:100%;aspect-ratio:16/9;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--bg2);position:relative;display:flex;align-items:center;justify-content:center;margin-top:var(--space-4)}.outline-inline-motion-map-box img{width:100%;height:100%;object-fit:contain;cursor:zoom-in}.outline-inline-motion-map-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--text3);font-size:var(--fs-xs);font-family:var(--mono);width:100%;padding:var(--space-9) 0;cursor:pointer;background:none;border:none;transition:color .15s}.outline-inline-motion-map-empty:hover{color:var(--accent)}.outline-inline-empty{text-align:center;color:var(--text3);font-size:var(--fs-sm);padding:28px var(--space-7);line-height:1.5}.outline-inline-history-row{padding:var(--space-5) var(--space-6);border-radius:7px;background:var(--bg0);border:1px solid var(--border);margin-bottom:var(--space-4)}.outline-inline-history-ts{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);margin-bottom:5px}.outline-inline-history-text{font-size:var(--fs-xs);color:var(--text1);font-family:var(--mono);line-height:1.55;white-space:pre-wrap}.outline-assets-stack{gap:var(--space-5)}.outline-asset-sec{border:1px solid var(--border);border-radius:9px;overflow:hidden;background:var(--bg0)}.outline-asset-sec-hd{display:flex;align-items:center;gap:var(--space-4);width:100%;padding:var(--space-5) var(--space-6);cursor:pointer;border:none;background:var(--bg2);font-family:var(--font);text-align:left;transition:background .12s}.outline-asset-sec-hd:hover{background:var(--glass2, rgba(255,255,255,.05))}.outline-asset-sec-caret{font-size:var(--fs-2xs);color:var(--text3);transition:transform .18s;flex-shrink:0}.outline-asset-sec.open .outline-asset-sec-caret{transform:rotate(90deg)}.outline-asset-sec-title{font-size:var(--fs-xs);font-weight:700;letter-spacing:.3px;color:var(--text0)}.outline-asset-sec-count{margin-left:auto;font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);background:var(--glass, rgba(255,255,255,.06));padding:var(--space-1) 7px;border-radius:10px}.outline-asset-sec-body{display:none;padding:var(--space-6)}.outline-asset-sec.open .outline-asset-sec-body{display:block}.outline-mm-img-wrap{width:100%;max-width:420px;aspect-ratio:16/9;border-radius:8px;overflow:hidden;border:1px solid var(--border);background:var(--bg2);cursor:zoom-in;position:relative;transition:border-color .15s}.outline-mm-img-wrap:hover{border-color:var(--accent)}.outline-mm-img-wrap img{width:100%;height:100%;object-fit:contain;display:block}.outline-mm-edit-btn{display:inline-block;margin-top:var(--space-5);padding:var(--space-3) var(--space-6);border-radius:7px;cursor:pointer;border:1px solid var(--border);background:var(--glass);color:var(--text1);font-family:var(--font);font-size:var(--fs-xs);font-weight:700;transition:all .12s}.outline-mm-edit-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.outline-mm-notes{margin-top:var(--space-5);font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono);line-height:1.5;background:var(--bg0);border:1px solid var(--border);border-radius:7px;padding:var(--space-4) var(--space-5)}.grid-view.mode-strip{display:flex;flex-direction:column;padding:0;overflow:hidden}.sb2-row{display:flex;align-items:stretch;cursor:pointer;transition:background .12s;animation:cardReveal .3s ease both}.sb2-row:hover{background:#ffffff04}.sb2-row.selected{background:#4f82ff0a}.sb2-row.selected .sb2-label{border-left:3px solid var(--accent)}.sb2-label{width:200px;flex-shrink:0;padding:var(--space-8) var(--space-8) var(--space-7);border-right:1px solid var(--border);display:flex;flex-direction:column;justify-content:flex-start;gap:5px;background:var(--bg1)}.sb2-num{font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;background:var(--accent);color:var(--text-on-accent);border-radius:3px;padding:var(--space-1) var(--space-3);display:inline-block;width:fit-content;letter-spacing:.5px}.sb2-title{font-size:var(--fs-sm);font-weight:800;color:var(--text0);letter-spacing:-.2px;line-height:1.25;margin-top:var(--space-1)}.sb2-desc{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);line-height:1.4}.sb2-stats{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3)}.sb2-prompt-preview{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);line-height:1.45;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:var(--space-1)}.sb2-open-btn{margin-top:auto;padding:5px var(--space-5);border-radius:6px;font-size:var(--fs-2xs);font-weight:700;cursor:pointer;border:1px solid var(--border);background:var(--glass);color:var(--text2);font-family:var(--font);transition:all .15s;align-self:flex-start}.sb2-open-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.sb2-frames-wrap{flex:1;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--border) transparent;display:flex;align-items:center;padding:var(--space-6) var(--space-7)}.sb2-frames-wrap::-webkit-scrollbar{height:4px}.sb2-frames-wrap::-webkit-scrollbar-track{background:transparent}.sb2-frames-wrap::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sb2-frames{display:flex;gap:var(--space-4);align-items:center;min-width:max-content}.sb2-frame{width:160px;height:96px;border-radius:8px;flex-shrink:0;border:1px solid var(--border);overflow:hidden;position:relative;background:var(--bg2);transition:border-color .15s,transform .15s,box-shadow .15s;cursor:pointer;display:flex;align-items:center;justify-content:center}.sb2-frame:hover{border-color:var(--accent);transform:scale(1.04);box-shadow:0 8px 24px #0006}.sb2-frame.hero{border-color:var(--border2)}.sb2-frame.hero:hover{border-color:var(--accent)}.sb2-frame.add{width:80px;border-style:dashed;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--text3)}.sb2-frame.add:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.sb2-frame-label{position:absolute;bottom:4px;left:5px;font-size:var(--fs-2xs);font-family:var(--mono);font-weight:800;color:#ffffff8c;background:#00000073;padding:var(--space-px) 5px;border-radius:3px}.panel-slim-strip{display:none;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-5) var(--space-2);width:100%;background:var(--bg1)}.panel.panel-minimized{min-width:0!important;max-width:none!important;width:64px!important;transition:width .2s cubic-bezier(.22,1,.36,1)}.panel.panel-minimized .panel-slim-strip{display:flex}.panel.panel-minimized .panel-full-content,.panel.panel-minimized .panel-ew-handle{display:none}.panel-slim-icon{width:56px;padding:7px 2px;border-radius:8px;border:1px solid transparent;background:none;color:var(--text2);cursor:pointer;font-size:var(--fs-md);display:flex;flex-direction:column;align-items:center;gap:3px;transition:all .12s;font-family:var(--font)}.panel-slim-icon:hover{background:var(--glass);border-color:var(--border);color:var(--accent)}.panel-slim-label{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--font);font-weight:600;letter-spacing:0;white-space:nowrap}.panel-full-content{display:flex;flex-direction:column;flex:1;overflow:hidden;min-height:0}.workspace.panel-minimized-ws{grid-template-columns:var(--sidebar-w) 1fr 64px}.workspace.panel-docked-bottom.panel-minimized-ws{grid-template-columns:var(--sidebar-w) 1fr}.panel-slim-expand{padding:6px 2px;margin-bottom:var(--space-2);border-color:var(--border);color:var(--text1)}.panel-slim-expand:hover,.panel-slim-expand:focus-visible{color:var(--accent);border-color:var(--accent);outline:none}.workspace.panel-docked-bottom .panel.panel-minimized{width:auto!important}.workspace.panel-docked-bottom .panel.panel-minimized .panel-slim-strip{flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--space-3);height:100%;padding:0 var(--space-6);box-sizing:border-box}.workspace.panel-docked-bottom .panel.panel-minimized .panel-slim-icon{width:auto;flex-direction:row;gap:6px;padding:6px 12px}.workspace.panel-docked-bottom .panel.panel-minimized .panel-slim-expand{margin:0 var(--space-3) 0 0}.workspace.panel-docked-bottom .panel.panel-minimized .panel-resize-handle{display:none}.h-cold-room{background:linear-gradient(145deg,#060b18,#0d1a35 35%,#0b2240 55%,#0f2d52 80%,#0d3568)}.h-orbit{background:linear-gradient(145deg,#030608,#080f20 30%,#0c1a38 55%,#081f4a 75%,#0d2860)}.h-liminal{background:linear-gradient(145deg,#0e0514,#1e0830 40%,#300c55 65%,#3d0e6a 85%,#200840)}.h-fire{background:linear-gradient(145deg,#140804,#2a120a 35%,#3d1a0f 55%,#5c2010 80%,#4a1808)}.h-mist{background:linear-gradient(145deg,#060c12,#0c1a26 35%,#0f2238 60%,#102a48,#0d3050)}.h-desert{background:linear-gradient(145deg,#120e04,#241c08 35%,#3d2e0c 60%,#5a4010,#7a5a1a)}.toast{position:fixed;bottom:24px;right:24px;z-index:calc(var(--z-lightbox) + 50);background:var(--bg3);border:1px solid var(--border2);border-radius:10px;padding:11px var(--space-8);font-size:var(--fs-sm);color:var(--text0);font-weight:600;box-shadow:0 8px 32px #00000080;display:flex;align-items:center;gap:var(--space-5);transform:translateY(10px);opacity:0;transition:all .25s;pointer-events:none}.toast.show{transform:translateY(0);opacity:1}.toast-icon{font-size:var(--fs-lg)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:14px;height:14px;border:2px solid var(--border2);border-top-color:var(--accent);border-radius:50%;animation:spin .6s linear infinite;display:inline-block}@keyframes pulse-dot{0%,to{opacity:.3}50%{opacity:1}}.typing-dots span{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--cyan);margin:0 var(--space-px);animation:pulse-dot 1.2s ease infinite}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}.generating{border-color:#4f82ff66!important}@keyframes border-pulse{0%,to{box-shadow:0 0 0 0 var(--accent-glow)}50%{box-shadow:0 0 0 4px transparent}}.generating .prompt-out{animation:border-pulse 1.5s ease infinite}.lightbox{position:fixed;inset:0;z-index:var(--z-lightbox);background:#03050af5;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .2s}.lightbox.open{opacity:1;pointer-events:all}.lb-nav{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--border);flex-shrink:0;background:var(--bg1)}.lb-scene-info{flex:1}.lb-scene-name{font-size:var(--fs-sm);font-weight:700;color:var(--text0)}.lb-shot-info{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);margin-top:var(--space-1)}.lb-actions{display:flex;gap:var(--space-3);align-items:center}@media (max-width: 900px){.lb-nav{flex-wrap:wrap;gap:var(--space-3);padding:var(--space-4) var(--space-5)}.lb-scene-info{flex:1 1 100%}.lb-actions{flex:1 1 100%;min-width:0;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.lb-actions::-webkit-scrollbar{display:none}.lb-actions .lb-close{position:sticky;right:0;background:var(--bg2)}}.lb-btn{display:flex;align-items:center;gap:5px;padding:var(--space-3) var(--space-6);border-radius:7px;font-size:var(--fs-xs);font-weight:700;cursor:pointer;border:1px solid var(--border2);background:var(--glass2);color:var(--text1);font-family:var(--font);transition:all .15s;white-space:nowrap}.lb-btn:hover{background:var(--glass3);color:var(--text0);border-color:var(--border3)}.lb-btn.accent{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);box-shadow:0 2px 16px var(--accent-glow)}.lb-btn.accent:hover{background:#6696ff}.lb-btn.green{background:#22c55e26;border-color:#22c55e59;color:var(--green-soft)}.lb-btn.green:hover{background:#22c55e40}.lb-close{width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;background:var(--glass2);border:1px solid var(--border);color:var(--text1);font-size:var(--fs-lg);transition:all .15s;flex-shrink:0}.lb-close:hover{background:#ef444433;border-color:#ef444466;color:var(--red-soft)}.lb-body{flex:1;display:flex;overflow:hidden;min-height:0}.lb-stage{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#030508;cursor:crosshair}.lb-stage-hint{position:absolute;bottom:16px;left:50%;transform:translate(-50%);font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);background:var(--bg2);border:1px solid var(--border);padding:5px var(--space-6);border-radius:20px;pointer-events:none;display:flex;align-items:center;gap:var(--space-4);white-space:nowrap}.lb-stage-hint span{opacity:.6}.lb-media-wrap{position:relative;display:inline-block;cursor:grab;user-select:none;transition:box-shadow .2s;max-width:90%;max-height:90%}.lb-media-wrap:active{cursor:grabbing}.lb-media-wrap img,.lb-media-wrap video{display:block;max-width:100%;max-height:80vh;border-radius:4px;pointer-events:all;box-shadow:0 24px 80px #000c;cursor:grab}.lb-media-wrap img:active{cursor:grabbing}.lb-media-wrap video{cursor:default}.lb-media-wrap.draggable-native{cursor:grab}.lb-media-wrap.draggable-native:active{cursor:grabbing}.lb-drag-cue{position:absolute;inset:-3px;border-radius:6px;border:2px dashed transparent;pointer-events:none;transition:border-color .2s}.lb-media-wrap:hover .lb-drag-cue{border-color:#4f82ff80}.lb-zoom-bar{position:absolute;bottom:16px;right:16px;display:flex;gap:var(--space-2);align-items:center;background:var(--bg2);border:1px solid var(--border);border-radius:8px;padding:var(--space-2) var(--space-4)}.lb-zoom-btn{width:22px;height:22px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);color:var(--text1);background:none;border:none;transition:all .12s;font-family:var(--font)}.lb-zoom-btn:hover{background:var(--glass2);color:var(--text0)}.lb-zoom-pct{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);min-width:36px;text-align:center}.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:#0b1019cc;border:1px solid var(--border2);display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);color:var(--text1);cursor:pointer;transition:all .15s;z-index:10}.lb-arrow:hover{background:var(--bg3);color:var(--text0);border-color:var(--border3)}.lb-arrow.prev{left:16px}.lb-arrow.next{right:16px}.lb-arrow.hidden{opacity:0;pointer-events:none}.lb-sidebar{width:280px;flex-shrink:0;border-left:1px solid var(--border);background:var(--bg1);display:flex;flex-direction:column;overflow-y:auto}.lb-sidebar-section{padding:var(--space-7) var(--space-7) 0;margin-bottom:var(--space-8)}.lb-sidebar-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-4)}.lb-meta-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--space-3);font-size:var(--fs-xs)}.lb-meta-key{color:var(--text2)}.lb-meta-val{font-family:var(--mono);font-size:var(--fs-xs);color:var(--text0)}.lb-prompt-box{background:var(--bg0);border:1px solid var(--border);border-radius:8px;padding:var(--space-5) 11px;font-size:var(--fs-xs);font-family:var(--mono);line-height:1.7;color:var(--text1);margin-bottom:var(--space-5)}.lb-prompt-token{color:var(--cyan)}.lb-prompt-token2{color:var(--violet)}.lb-prompt-token3{color:var(--magenta)}.lb-strip-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase;padding:0 var(--space-7);margin-bottom:var(--space-4)}.lb-film-strip{display:flex;gap:5px;overflow-x:auto;padding:0 var(--space-7) var(--space-7)}.lb-strip-thumb{width:60px;height:40px;border-radius:5px;flex-shrink:0;border:1px solid var(--border);cursor:pointer;overflow:hidden;transition:border-color .12s,transform .12s;position:relative}.lb-strip-thumb:hover{border-color:var(--border2);transform:scale(1.05)}.lb-strip-thumb.active{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.lb-strip-thumb img,.lb-strip-thumb video{width:100%;height:100%;object-fit:cover;pointer-events:none}.lb-strip-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3)}@keyframes copy-flash{0%{background:#22c55e4d}to{background:transparent}}.copy-flash{animation:copy-flash .4s ease}.lb-fullscreen-btn{position:absolute;top:12px;right:12px;z-index:20;width:28px;height:28px;border-radius:6px;background:#0b1019b3;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);cursor:pointer;color:var(--text1);transition:all .15s;opacity:0}.lb-stage:hover .lb-fullscreen-btn{opacity:1}.lb-fullscreen-btn:hover{background:var(--bg3);color:var(--text0)}.story-switcher{display:flex;align-items:center;gap:9px;cursor:pointer;padding:5px var(--space-5) 5px 8px;border-radius:9px;transition:background .15s;width:auto;min-width:calc(var(--sidebar-w) - 16px - 32px);box-sizing:border-box;max-width:min(52vw,660px);margin-right:auto;flex-shrink:0;position:relative;user-select:none}.story-switcher:hover{background:var(--glass2)}.story-switcher-text{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0}.story-switcher-label{font-size:var(--fs-sm);font-weight:800;letter-spacing:-.3px;color:var(--text0);line-height:1.2;max-width:100%;overflow:hidden;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}.story-switcher.is-2line .story-switcher-sub{display:none}.story-switcher-sub{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);letter-spacing:1px}.story-switcher-caret{font-size:var(--fs-xs);color:var(--text2);transition:transform .15s;margin-left:var(--space-1)}.story-switcher.open .story-switcher-caret{transform:rotate(180deg)}.story-picker-dropdown{position:fixed;top:calc(var(--nav-h) + 6px);left:16px;z-index:var(--z-dropdown);background:var(--bg2);border:1px solid var(--border2);border-radius:12px;box-shadow:0 16px 48px #000000b3;overflow:hidden;width:min(460px,calc(100vw - 32px));opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity .15s,transform .15s}.story-picker-dropdown.open{opacity:1;pointer-events:all;transform:translateY(0)}.story-picker-list{max-height:min(420px,60vh);overflow-y:auto;padding:var(--space-3)}.story-picker-item{display:flex;align-items:center;gap:var(--space-5);padding:9px var(--space-5);border-radius:8px;cursor:pointer;transition:background .12s}.story-picker-item:hover{background:var(--glass2)}.story-picker-item.active{background:var(--accent-dim)}.story-picker-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.story-picker-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.story-picker-current{padding:var(--space-3)}.story-picker-here{cursor:default}.story-picker-here .story-picker-name{font-size:var(--fs-md)}.story-picker-dot{background:var(--sp-c, var(--accent))}.story-picker-recent{border-top:1px solid var(--border);padding:var(--space-3) var(--space-3) var(--space-3)}.story-picker-recent[hidden]{display:none}.story-picker-sec{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--text3);padding:6px var(--space-5) 4px}.story-picker-recent .story-picker-list{padding:0;max-height:min(320px,40vh)}button.story-picker-item{width:100%;border:0;background:none;font:inherit;color:inherit;text-align:left}button.story-picker-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.sm-menu-pref{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:var(--space-7);padding:var(--space-5) var(--space-4) 0;border-top:1px solid var(--border);font-size:var(--fs-xs);color:var(--text2)}.sm-menu-pref select{background:var(--bg0);color:var(--text0);border:1px solid var(--border2);border-radius:6px;padding:3px 6px;font:inherit}.story-picker-name{font-size:var(--fs-sm);font-weight:600;color:var(--text0);line-height:1.35;overflow-wrap:anywhere}.story-picker-item{align-items:flex-start}.story-picker-item .story-picker-dot{margin-top:5px}.story-picker-meta{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2)}.story-picker-footer{border-top:1px solid var(--border);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.story-picker-new{padding:var(--space-4) var(--space-5);border-radius:7px;font-size:var(--fs-sm);font-weight:600;color:var(--text2);cursor:pointer;transition:all .12s}.story-picker-new:hover{background:var(--glass2);color:var(--text0)}.story-picker-new:last-child{color:var(--accent)}.story-picker-new:last-child:hover{background:var(--accent-dim)}.sm-layout{display:grid;grid-template-columns:260px 1fr;height:100%;min-height:480px}.sm-sidebar{border-right:1px solid var(--border);padding:var(--space-7) var(--space-6);overflow-y:auto;background:var(--bg1)}.sm-story-item{display:flex;align-items:center;gap:var(--space-4);padding:9px var(--space-5);border-radius:9px;cursor:pointer;transition:all .12s;border:1px solid transparent;margin-bottom:var(--space-2)}.sm-story-item:hover{background:var(--glass2);border-color:var(--border)}.sm-story-item.active{background:var(--accent-dim);border-color:#4f82ff4d}.sm-story-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sm-story-name{font-size:var(--fs-sm);font-weight:700;color:var(--text0);flex:1}.sm-story-count{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2)}.sm-detail{padding:var(--space-9);overflow-y:auto}.sm-detail-hdr{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-9)}.sm-story-color-dot{width:28px;height:28px;border-radius:50%;cursor:pointer;border:2px solid rgba(255,255,255,.2);flex-shrink:0;position:relative}.sm-story-title-input{flex:1;background:none;border:none;outline:none;font-size:var(--fs-2xl);font-weight:800;color:var(--text0);font-family:var(--font);border-bottom:1px solid transparent;padding-bottom:var(--space-1);transition:border-color .15s}.sm-story-title-input:focus{border-bottom-color:var(--accent)}.sm-acts-list{margin-bottom:var(--space-9)}.sm-act-row{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-6);background:var(--bg2);border:1px solid var(--border);border-radius:9px;margin-bottom:var(--space-3);transition:border-color .15s}.sm-act-row:hover{border-color:var(--border2)}.sm-act-drag{cursor:grab;color:var(--text3);font-size:var(--fs-sm);user-select:none}.sm-act-drag:active{cursor:grabbing}.sm-act-color{width:10px;height:10px;border-radius:50%;flex-shrink:0}.sm-act-name-input{flex:1;background:none;border:none;outline:none;font-size:var(--fs-sm);font-weight:600;color:var(--text0);font-family:var(--font)}.sm-act-count{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2)}.sm-act-del{width:20px;height:20px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);color:var(--text3);transition:all .12s;flex-shrink:0}.sm-act-del:hover{background:#ef444433;color:var(--red-soft)}.sm-danger-zone{background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:9px;padding:var(--space-7);margin-top:var(--space-9)}.sm-danger-title{font-size:var(--fs-xs);font-weight:700;color:var(--red-soft);margin-bottom:var(--space-4)}.sm-danger-sub{font-size:var(--fs-xs);color:var(--text2);margin-bottom:var(--space-6);line-height:1.5}.color-swatches{display:flex;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-7)}.color-swatch{width:22px;height:22px;border-radius:50%;cursor:pointer;transition:transform .12s;border:2px solid transparent}.color-swatch:hover{transform:scale(1.2)}.color-swatch.selected{border-color:#fff;transform:scale(1.1)}.import-drop-zone{border:2px dashed var(--border2);border-radius:14px;padding:36px var(--space-10);text-align:center;cursor:pointer;transition:all .2s;position:relative;overflow:hidden;background:var(--bg1)}.import-drop-zone:hover,.import-drop-zone.drop-active{border-color:var(--accent);background:var(--accent-dim)}.import-drop-zone.drop-active .import-drop-icon{transform:scale(1.1)}.import-drop-icon{font-size:var(--fs-4xl);margin-bottom:var(--space-6);transition:transform .2s;display:block}.import-drop-title{font-size:var(--fs-lg);font-weight:700;color:var(--text0);margin-bottom:var(--space-3)}.import-drop-sub{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.6}.import-drop-or{display:flex;align-items:center;gap:var(--space-6);margin:18px 0;color:var(--text3);font-size:var(--fs-xs);font-family:var(--mono)}.import-drop-or:before,.import-drop-or:after{content:"";flex:1;height:1px;background:var(--border)}.import-format-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-bottom:18px}.import-format-card{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:var(--space-7);cursor:pointer;transition:all .15s;text-align:left}.import-format-card:hover{border-color:var(--border2)}.import-format-card.selected{border-color:var(--accent);background:var(--accent-dim)}.import-format-icon{font-size:var(--fs-2xl);margin-bottom:var(--space-4);display:block}.import-format-name{font-size:var(--fs-sm);font-weight:700;color:var(--text0);margin-bottom:var(--space-2)}.import-format-desc{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.5}.import-preview{background:var(--bg0);border:1px solid var(--border);border-radius:10px;overflow:hidden;margin-top:var(--space-8)}.import-preview-hdr{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-7);border-bottom:1px solid var(--border);font-size:var(--fs-xs);font-weight:700;color:var(--text1);background:var(--bg2)}.import-preview-badge{font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) 7px;border-radius:4px;font-weight:600}.import-preview-badge.ok{background:#22c55e26;color:var(--green);border:1px solid rgba(34,197,94,.25)}.import-preview-badge.err{background:#ef444426;color:var(--red-soft);border:1px solid rgba(239,68,68,.25)}.import-preview-badge.warn{background:var(--amber-dim);color:var(--amber);border:1px solid rgba(245,158,11,.25)}.import-tree{padding:var(--space-6) var(--space-7);max-height:260px;overflow-y:auto}.import-tree-story{font-size:var(--fs-sm);font-weight:800;color:var(--text0);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-4)}.import-tree-act{font-size:var(--fs-xs);font-weight:700;color:var(--accent);margin:var(--space-4) 0 var(--space-2) var(--space-6);display:flex;align-items:center;gap:var(--space-3)}.import-tree-scene{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);padding:3px 0 3px 28px;display:flex;align-items:center;gap:var(--space-3)}.import-tree-scene:before{content:"";width:4px;height:4px;border-radius:50%;background:var(--text3);flex-shrink:0}.import-tree-error{font-size:var(--fs-xs);font-family:var(--mono);color:var(--red-soft);padding:var(--space-4) var(--space-7);background:#ef444414;border-top:1px solid rgba(239,68,68,.15)}.import-template-box{background:var(--bg0);border:1px solid var(--border);border-radius:9px;padding:var(--space-7);font-size:var(--fs-xs);font-family:var(--mono);line-height:1.8;color:var(--text1);max-height:200px;overflow-y:auto;white-space:pre;margin-bottom:var(--space-5)}.tpl-comment{color:var(--text3)}.tpl-key{color:var(--cyan)}.tpl-act{color:var(--accent);font-weight:700}.tpl-scene{color:var(--violet)}.import-progress{background:var(--bg2);border:1px solid var(--border);border-radius:10px;padding:var(--space-9);text-align:center;display:none}.import-progress.show{display:block}.import-progress-bar-wrap{background:var(--bg1);border-radius:4px;height:4px;margin:var(--space-6) 0;overflow:hidden}.import-progress-bar{height:100%;background:var(--accent);border-radius:4px;transition:width .3s}.import-progress-label{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2)}.modal-backdrop{position:fixed;inset:0;z-index:var(--z-modal);background:#03050ad9;backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s}.modal-backdrop.open{opacity:1;pointer-events:all}.modal{background:var(--bg2);border:1px solid var(--border2);border-radius:16px;box-shadow:0 32px 80px #000000b3;display:flex;flex-direction:column;overflow:hidden;transform:translateY(12px) scale(.98);transition:transform .2s;max-height:90vh}.modal-backdrop.open .modal{transform:translateY(0) scale(1)}.modal-sm{width:480px}.modal-md{width:660px}.modal-lg{width:880px}.modal-xl{width:1040px;max-height:88vh}#modal-assets .modal.vault-fs{width:100vw!important;max-width:100vw!important;height:100vh;height:100dvh;max-height:none!important;border-radius:0;border:0;box-shadow:none;transform:none}.vault-fs-hdr{position:relative;background:linear-gradient(180deg,rgba(138,147,166,.07),var(--bg1));padding-top:12px;padding-bottom:12px}.vault-fs-body{padding:0!important;overflow:hidden!important;display:flex;flex-direction:column;min-height:0}.modal-hdr{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-8) var(--space-9);border-bottom:1px solid var(--border);flex-shrink:0}.modal-icon{width:32px;height:32px;border-radius:9px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg)}.modal-title{font-size:var(--fs-lg);font-weight:800;letter-spacing:-.2px}.modal-sub{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono);margin-top:var(--space-px)}.modal-close{margin-left:auto;width:28px;height:28px;border-radius:7px;background:var(--glass2);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:var(--fs-md);color:var(--text2);transition:all .15s;flex-shrink:0}.modal-close:hover{background:#ef444433;color:var(--red-soft);border-color:#ef44444d}.modal-body{flex:1;overflow-y:auto;padding:var(--space-9)}.modal-footer{display:flex;gap:var(--space-4);padding:var(--space-7) var(--space-9);border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end}.modal-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);padding:0 var(--space-9);flex-shrink:0;background:var(--bg1)}.modal-tab{padding:var(--space-5) var(--space-8);font-size:var(--fs-xs);font-weight:700;letter-spacing:.5px;color:var(--text2);cursor:pointer;border:none;background:none;font-family:var(--font);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .15s;text-transform:uppercase}.modal-tab:hover{color:var(--text1)}.modal-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.modal-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-9)}.modal-col3{display:grid;grid-template-columns:200px 1fr 200px;gap:var(--space-8)}.mf{margin-bottom:var(--space-7)}.mf label{display:block;font-size:var(--fs-2xs);font-weight:700;letter-spacing:1px;color:var(--text2);text-transform:uppercase;margin-bottom:5px}.mf input,.mf textarea,.mf select{width:100%;background:var(--bg1);border:1px solid var(--border);border-radius:8px;padding:var(--space-4) 11px;font-size:var(--fs-sm);font-family:var(--mono);color:var(--text0);outline:none;resize:none;transition:border-color .15s;-webkit-appearance:none}.mf input:focus,.mf textarea:focus,.mf select:focus{border-color:var(--accent)}.mf select{cursor:pointer}.mf select option{background:var(--bg2)}.m-section{margin-bottom:22px}.m-section-hdr{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.3px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-5);display:flex;align-items:center;justify-content:space-between}.m-section-add{font-size:var(--fs-xs);color:var(--accent);cursor:pointer;font-weight:700;letter-spacing:0;text-transform:none}.m-section-add:hover{opacity:.8}.char-card{background:var(--bg1);border:1px solid var(--border);border-radius:10px;padding:var(--space-7);margin-bottom:var(--space-5);transition:border-color .15s}.char-card:hover{border-color:var(--border2)}.char-card-hdr{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6)}.char-avatar-lg{width:44px;height:44px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-lg);font-weight:800;cursor:pointer;position:relative;overflow:hidden}.char-avatar-lg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.char-avatar-edit{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;font-size:var(--fs-md);opacity:0;transition:opacity .15s}.char-avatar-lg:hover .char-avatar-edit{opacity:1}.char-scenes{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-top:var(--space-4)}.char-scene-pill{font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) 7px;border-radius:4px;background:var(--bg3);border:1px solid var(--border);color:var(--text2);cursor:pointer;transition:all .12s}.char-scene-pill:hover{border-color:var(--accent);color:var(--accent)}.char-scene-pill.active{background:var(--accent-dim);border-color:#4f82ff4d;color:var(--accent)}.char-media-section{margin-bottom:var(--space-9)}.char-media-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:var(--text2);text-transform:uppercase;margin-bottom:var(--space-5);display:flex;align-items:center;gap:var(--space-4)}.char-media-count{font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;background:var(--glass2);color:var(--text3)}.char-media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.char-media-thumb{aspect-ratio:4/3;background:var(--bg3);border:1px solid var(--border);border-radius:8px;position:relative;overflow:hidden;cursor:pointer;transition:all .15s}.char-media-thumb:hover{border-color:var(--border2);transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.char-media-thumb img,.char-media-thumb video{width:100%;height:100%;object-fit:cover}.char-media-label-overlay{position:absolute;bottom:0;left:0;right:0;padding:var(--space-3) var(--space-4);background:linear-gradient(to top,rgba(0,0,0,.85),transparent);font-size:var(--fs-2xs);font-weight:700;color:#fff;font-family:var(--mono)}.char-media-type-badge{position:absolute;top:6px;left:6px;font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;background:#000000b3;color:var(--text0);font-weight:700;text-transform:uppercase}.char-media-type-badge.wardrobe{background:#4f82ffcc;color:#fff}.char-media-type-badge.profile{background:#8b5cf6cc;color:#fff}.char-media-type-badge.detail{background:#06b6d4cc;color:#fff}.char-media-type-badge.video{background:#d946efcc;color:#fff}.char-media-remove{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:50%;background:#ef4444e6;border:none;color:#fff;font-size:var(--fs-md);font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.char-media-thumb:hover .char-media-remove{opacity:1}.char-media-remove:hover{background:#ef4444;transform:scale(1.1)}.char-media-duration{position:absolute;bottom:6px;right:6px;font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;background:#000000d9;color:#fff;font-weight:700}.char-media-add{aspect-ratio:4/3;background:var(--bg3);border:2px dashed var(--border2);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;gap:var(--space-3)}.char-media-add:hover{border-color:var(--accent);background:var(--accent-dim)}.char-media-add-icon{font-size:var(--fs-2xl);opacity:.5}.char-media-add-label{font-size:var(--fs-xs);font-weight:700;color:var(--text2);font-family:var(--mono)}.char-media-add:hover .char-media-add-label{color:var(--accent)}.variation-panel{background:var(--bg2);border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-top:var(--space-8)}.variation-header{padding:var(--space-6) var(--space-7);background:var(--bg3);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.variation-title{font-size:var(--fs-xs);font-weight:800;color:var(--text0);display:flex;align-items:center;gap:var(--space-4)}.variation-badge{font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-1) var(--space-3);border-radius:4px;background:var(--amber-dim);border:1px solid rgba(245,158,11,.3);color:var(--amber);font-weight:700;text-transform:uppercase}.variation-char-card{background:var(--bg3);border:1px solid var(--border);border-radius:8px;padding:var(--space-6);margin-bottom:var(--space-5);transition:all .15s}.variation-char-card:last-child{margin-bottom:0}.variation-char-card.has-override{border-color:var(--amber);background:#f59e0b0d}.variation-char-header{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-5)}.variation-char-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--fs-sm);font-weight:800;flex-shrink:0;border:2px solid rgba(255,255,255,.1);position:relative;overflow:hidden}.variation-char-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.variation-char-info{flex:1;min-width:0}.variation-char-name{font-size:var(--fs-xs);font-weight:700;color:var(--text0);margin-bottom:var(--space-1)}.variation-char-default{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.variation-override-btn{padding:var(--space-2) var(--space-4);border-radius:5px;font-size:var(--fs-2xs);font-weight:700;cursor:pointer;transition:all .15s;border:1px solid var(--border);background:var(--glass);color:var(--text2);font-family:var(--font);flex-shrink:0}.variation-override-btn:hover{background:var(--glass2);color:var(--text0)}.variation-override-btn.active{background:var(--amber-dim);border-color:#f59e0b4d;color:var(--amber)}.variation-fields{display:none;margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--border)}.variation-fields.expanded{display:block}.variation-field{margin-bottom:var(--space-4)}.variation-field:last-child{margin-bottom:0}.variation-field-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:.8px;color:var(--text3);text-transform:uppercase;margin-bottom:5px;display:flex;align-items:center;justify-content:space-between}.variation-field input,.variation-field textarea{width:100%;background:var(--bg2);border:1px solid var(--border);border-radius:6px;padding:var(--space-3) 9px;font-size:var(--fs-xs);font-family:var(--mono);color:var(--text0);outline:none;resize:vertical;transition:border-color .15s}.variation-field input:focus,.variation-field textarea:focus{border-color:var(--amber)}.variation-field input::placeholder,.variation-field textarea::placeholder{color:var(--text3);font-style:italic;opacity:1}.variation-field-hint{font-weight:500;letter-spacing:0;text-transform:none;color:var(--text3)}.variation-body{padding:0 0 4px}.variation-char-default.is-overridden{color:var(--amber)}.panel-section-action.is-accent{color:var(--accent)}.variation-says{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:6px;background:var(--bg2);border:1px dashed var(--border);font-size:var(--fs-2xs);line-height:1.45;color:var(--text1)}.variation-says[hidden]{display:none}.variation-says-k{display:block;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text3);margin-bottom:2px}.toast-container{position:fixed;bottom:24px;right:24px;z-index:calc(var(--z-toast) + 30);display:flex;flex-direction:column;gap:var(--space-5);pointer-events:none}.toast{background:var(--bg3);border:1px solid var(--border2);border-radius:10px;padding:var(--space-6) var(--space-8);display:flex;align-items:center;gap:var(--space-6);box-shadow:0 12px 40px #00000080;transform:translate(400px);opacity:0;transition:all .3s cubic-bezier(.34,1.56,.64,1);max-width:360px;pointer-events:all}.toast.show{transform:translate(0);opacity:1}.toast-icon{font-size:var(--fs-lg);flex-shrink:0}.toast-content{flex:1;min-width:0}.toast-message{font-size:var(--fs-xs);font-weight:600;color:var(--text0);margin-bottom:var(--space-1)}.toast-sub{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2)}.toast-action{padding:5px var(--space-5);border-radius:5px;font-size:var(--fs-xs);font-weight:700;background:var(--accent);color:var(--text-on-accent);border:none;cursor:pointer;transition:all .15s;font-family:var(--font);flex-shrink:0}.toast-action:hover{background:#6696ff}.toast-dismiss{padding:3px 7px;border-radius:4px;font-size:var(--fs-xs);font-weight:700;background:transparent;color:var(--text3);border:none;cursor:pointer;transition:all .15s;flex-shrink:0;line-height:1}.toast-dismiss:hover{background:var(--bg4);color:var(--text0)}.toast-history-btn{align-self:flex-end;padding:var(--space-2) var(--space-5);border-radius:6px;font-size:var(--fs-xs);background:var(--bg3);border:1px solid var(--border2);color:var(--text2);cursor:pointer;pointer-events:all;transition:all .15s;font-family:var(--font);margin-top:var(--space-1)}.toast-history-btn:hover{background:var(--bg4);color:var(--text0)}.toast-history-panel{position:fixed;bottom:80px;right:24px;z-index:calc(var(--z-toast) + 40);width:380px;max-height:420px;background:var(--bg2);border:1px solid var(--border2);border-radius:12px;box-shadow:0 16px 48px #0009;overflow:hidden;display:flex;flex-direction:column;animation:toast-history-in .2s cubic-bezier(.34,1.56,.64,1)}@keyframes toast-history-in{0%{opacity:0;transform:translate(20px) scale(.96)}to{opacity:1;transform:translate(0) scale(1)}}.toast-history-hdr{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-7);border-bottom:1px solid var(--border);font-size:var(--fs-xs);font-weight:700;color:var(--text0);flex-shrink:0}.toast-history-hdr>span:first-child{flex:1}.toast-history-list{overflow-y:auto;flex:1}.toast-history-row{display:flex;align-items:flex-start;gap:var(--space-5);padding:var(--space-4) var(--space-7);border-bottom:1px solid var(--border);transition:background .1s}.toast-history-row:last-child{border-bottom:none}.toast-history-row:hover{background:var(--bg3)}.toast-history-icon{font-size:var(--fs-md);flex-shrink:0;margin-top:var(--space-px)}.toast-history-body{flex:1;min-width:0}.toast-history-msg{font-size:var(--fs-xs);font-weight:600;color:var(--text0)}.toast-history-sub{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);margin-top:var(--space-px)}.toast-history-time{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);flex-shrink:0;margin-top:var(--space-1)}.asset-lib-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:var(--space-4);margin-bottom:var(--space-7)}.asset-lib-item{aspect-ratio:16/10;border-radius:8px;border:1px solid var(--border);position:relative;overflow:hidden;cursor:pointer;transition:border-color .15s,transform .12s;background:var(--bg3)}.asset-lib-item:hover{border-color:var(--border2);transform:scale(1.02)}.asset-lib-item.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.asset-lib-item img,.asset-lib-item video{width:100%;height:100%;object-fit:cover}.asset-lib-badge{position:absolute;top:3px;right:3px;font-size:var(--fs-2xs);font-family:var(--mono);padding:var(--space-px) var(--space-2);border-radius:3px;font-weight:600}.asset-lib-check{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--accent);border:2px solid #fff;display:none;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:var(--text-on-accent)}.asset-lib-item.selected .asset-lib-check{display:flex}.asset-lib-drop{border:2px dashed var(--border2);border-radius:10px;padding:var(--space-10);text-align:center;cursor:pointer;transition:all .2s;margin-bottom:var(--space-7)}.asset-lib-drop:hover,.asset-lib-drop.drop-active{border-color:var(--accent);background:var(--accent-dim)}.asset-lib-drop .drop-icon{font-size:var(--fs-3xl);margin-bottom:var(--space-4)}.asset-lib-drop p{font-size:var(--fs-xs);color:var(--text2);font-family:var(--mono)}.asset-lib-unassigned-badge{position:absolute;top:4px;left:4px;z-index:5;width:16px;height:16px;border-radius:50%;background:#f59e0be6;display:flex;align-items:center;justify-content:center;font-size:var(--fs-2xs);color:#fff;pointer-events:none}.asset-lib-scene-label{position:absolute;bottom:0;left:0;right:0;font-size:var(--fs-2xs);font-family:var(--mono);color:#fff;background:#0000009e;padding:var(--space-1) var(--space-2);text-overflow:ellipsis;overflow:hidden;white-space:nowrap;pointer-events:none}.asset-lib-delete-btn{position:absolute;top:4px;right:22px;z-index:6;width:18px;height:18px;border-radius:50%;background:#ef4444e6;border:none;display:flex;align-items:center;justify-content:center;font-size:var(--fs-xs);color:#fff;opacity:0;transition:opacity .15s;cursor:pointer;padding:0;line-height:1}.asset-lib-item:hover .asset-lib-delete-btn{opacity:1}.export-scene-row{display:flex;align-items:flex-start;gap:var(--space-6);padding:var(--space-6) var(--space-7);background:var(--bg1);border:1px solid var(--border);border-radius:9px;margin-bottom:var(--space-4);transition:border-color .15s}.export-scene-row:hover{border-color:var(--border2)}.export-scene-num{font-size:var(--fs-xs);font-family:var(--mono);color:var(--accent);min-width:24px;font-weight:600;margin-top:var(--space-1)}.export-scene-body{flex:1;min-width:0}.export-scene-title{font-size:var(--fs-sm);font-weight:700;margin-bottom:3px}.export-scene-prompt{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.export-scene-status{flex-shrink:0;display:flex;align-items:center;gap:var(--space-3)}.export-check{width:18px;height:18px;border-radius:5px;border:1px solid var(--border2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s;flex-shrink:0}.export-check.checked{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent);font-size:var(--fs-xs)}.export-platform-btn{padding:var(--space-5) var(--space-7);border-radius:9px;border:1px solid var(--border);background:var(--bg1);cursor:pointer;transition:all .15s;text-align:center;font-family:var(--font)}.export-platform-btn:hover{border-color:var(--border2);background:var(--bg2)}.export-platform-btn.selected{border-color:var(--accent);background:var(--accent-dim)}.export-platform-icon{font-size:var(--fs-2xl);margin-bottom:var(--space-3)}.export-platform-name{font-size:var(--fs-xs);font-weight:700;color:var(--text0)}.export-platform-sub{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);margin-top:var(--space-1)}.export-out-box{background:var(--bg0);border:1px solid var(--border);border-radius:9px;padding:var(--space-7);font-size:var(--fs-xs);font-family:var(--mono);line-height:1.8;color:var(--text1);min-height:120px;max-height:280px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.export-out-scene{color:var(--accent);font-weight:700}.export-out-prompt{color:var(--cyan)}.export-out-meta{color:var(--text3)}.refine-history-item{background:var(--bg1);border:1px solid var(--border);border-radius:8px;padding:11px 13px;margin-bottom:var(--space-4);cursor:pointer;transition:all .15s}.refine-history-item:hover{border-color:var(--border2)}.refine-history-item.current{border-color:var(--accent);background:var(--accent-dim)}.refine-ver{font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text3);margin-bottom:var(--space-2);display:flex;justify-content:space-between;align-items:center}.refine-ver-restore{color:var(--accent);font-weight:700;opacity:0;transition:opacity .12s}.refine-history-item:hover .refine-ver-restore{opacity:1}.refine-text{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text1);line-height:1.6}.refine-diff-add{color:var(--green);background:#22c55e1a;border-radius:2px}.refine-diff-rem{color:var(--red);background:#ef44441a;border-radius:2px;text-decoration:line-through}.refine-suggestion{background:var(--bg1);border:1px solid var(--border);border-radius:8px;padding:var(--space-5) var(--space-6);margin-bottom:7px;cursor:pointer;transition:all .15s;display:flex;align-items:flex-start;gap:var(--space-5)}.refine-suggestion:hover{border-color:var(--accent);background:var(--accent-dim)}.refine-suggestion-icon{font-size:var(--fs-md);flex-shrink:0;margin-top:var(--space-px)}.refine-suggestion-body{flex:1}.refine-suggestion-title{font-size:var(--fs-xs);font-weight:700;margin-bottom:3px}.refine-suggestion-text{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);line-height:1.5}.cont-scene-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--space-5);margin-bottom:var(--space-8)}.cont-scene-card{background:var(--bg1);border:1px solid var(--border);border-radius:9px;padding:var(--space-5);cursor:pointer;transition:all .15s}.cont-scene-card:hover{border-color:var(--border2)}.cont-scene-card.selected{border-color:var(--accent);background:var(--accent-dim)}.cont-matrix{display:grid;grid-template-columns:auto repeat(4,1fr);border:1px solid var(--border);border-radius:9px;overflow:hidden;margin-bottom:var(--space-8);font-size:var(--fs-xs)}.cont-matrix-hdr{background:var(--bg1);padding:var(--space-4) var(--space-5);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.8px;color:var(--text3);text-transform:uppercase;border-bottom:1px solid var(--border)}.cont-matrix-cell{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);border-left:1px solid var(--border);font-size:var(--fs-xs);font-family:var(--mono)}.cont-matrix-row-label{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border);font-size:var(--fs-xs);font-weight:600;color:var(--text1);background:var(--bg1)}.cont-matrix-cell.ok-cell{color:var(--green)}.cont-matrix-cell.warn-cell{color:var(--amber)}.cont-matrix-cell.err-cell{color:var(--red)}.var-chip{display:inline-block;background:#d946ef26;border:1px solid rgba(217,70,239,.4);color:var(--magenta);border-radius:4px;padding:0 5px;font-size:var(--fs-xs);font-family:var(--mono);font-weight:700;letter-spacing:.3px;vertical-align:middle;cursor:help;white-space:nowrap}.var-chip.resolved{background:#22c55e1f;border-color:#22c55e59;color:var(--green)}.var-chip.unknown{background:#ef44441f;border-color:#ef44444d;color:var(--red-soft)}.sync-state-badge{position:absolute;top:8px;right:8px;display:flex;align-items:center;gap:var(--space-2);padding:3px 7px;border-radius:5px;font-size:var(--fs-2xs);font-weight:800;letter-spacing:.8px;font-family:var(--mono);text-transform:uppercase;backdrop-filter:blur(6px);z-index:8;pointer-events:none;transition:opacity .2s}.sync-state-badge.global{background:#22c55e2e;border:1px solid rgba(34,197,94,.4);color:var(--green)}.sync-state-badge.hardcoded{background:#f59e0b2e;border:1px solid rgba(245,158,11,.4);color:var(--amber)}.sync-state-badge.no-prompt{display:none}.sync-badge-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}.sync-state-badge.global .sync-badge-dot{background:var(--green);box-shadow:0 0 5px #22c55eb3}.sync-state-badge.hardcoded .sync-badge-dot{background:var(--amber);box-shadow:0 0 5px #f59e0bb3}.preview-toggle-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.preview-toggle-label{font-size:var(--fs-xs);font-family:var(--mono);color:var(--text2);display:flex;align-items:center;gap:var(--space-3)}.preview-toggle-label .var-count{font-size:var(--fs-2xs);padding:var(--space-px) 5px;border-radius:4px;background:#d946ef26;border:1px solid rgba(217,70,239,.3);color:var(--magenta);font-weight:700}.preview-toggle{display:flex;align-items:center;gap:var(--space-4);font-size:var(--fs-2xs);font-family:var(--mono);color:var(--text2);cursor:pointer}.toggle-pill{width:32px;height:17px;border-radius:9px;background:var(--bg3);border:1px solid var(--border2);position:relative;transition:background .18s,border-color .18s;cursor:pointer;flex-shrink:0}.toggle-pill:after{content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:var(--text2);transition:transform .18s,background .18s}.toggle-pill.on{background:#22c55e40;border-color:#22c55e80}.toggle-pill.on:after{transform:translate(15px);background:var(--green)}.prompt-out-resolved{border-color:#22c55e4d!important}.resolved-marker{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--fs-2xs);font-family:var(--mono);color:var(--green);padding:var(--space-1) var(--space-3);border-radius:4px;background:#22c55e1a;border:1px solid rgba(34,197,94,.25);margin-bottom:var(--space-3)}.var-shortcode-row{display:flex;align-items:center;gap:var(--space-4);padding:5px 0;border-bottom:1px solid var(--border);font-size:var(--fs-xs)}.var-shortcode-row:last-child{border-bottom:none}.var-shortcode-key{font-family:var(--mono);color:var(--magenta);background:#d946ef1a;border:1px solid rgba(217,70,239,.25);border-radius:4px;padding:var(--space-1) var(--space-3);font-size:var(--fs-2xs);font-weight:700;white-space:nowrap;cursor:pointer;user-select:all;transition:background .12s}.var-shortcode-key:hover{background:#d946ef38}.var-shortcode-val{color:var(--text1);flex:1;font-size:var(--fs-xs);font-family:var(--mono)}.var-shortcode-copy{font-size:var(--fs-2xs);color:var(--text3);cursor:pointer;padding:var(--space-1) 5px;border-radius:3px;border:1px solid var(--border);background:var(--glass);transition:all .12s}.var-shortcode-copy:hover{color:var(--accent);border-color:#4f82ff4d}.scene-var-strip{background:#d946ef0a;border:1px solid rgba(217,70,239,.18);border-radius:8px;padding:var(--space-4) var(--space-5)}.scene-var-strip-hdr{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:2px 10px;margin-bottom:7px}.scene-var-strip-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.2px;color:#d946efa6;text-transform:uppercase}.scene-var-strip-hint{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);line-height:1.45}.scene-var-tokens{display:flex;flex-wrap:wrap;gap:5px}.scene-var-token{display:inline-flex;align-items:center;gap:5px;font:inherit;color:var(--text1);background:#d946ef14;border:1px solid rgba(217,70,239,.2);border-radius:5px;padding:3px var(--space-4);cursor:pointer;transition:all .12s;max-width:100%}.scene-var-token:hover{background:#d946ef2e;border-color:#d946ef73;transform:translateY(-1px)}.scene-var-code{font-size:var(--fs-xs);font-family:var(--mono);font-weight:700;white-space:nowrap;color:#d946ef}.scene-var-val{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.at-field-btn{position:absolute;bottom:7px;right:8px;background:var(--glass);border:1px solid var(--border);border-radius:4px;color:var(--text3);font-size:var(--fs-xs);font-family:var(--mono);font-weight:700;padding:var(--space-px) var(--space-3);cursor:pointer;line-height:1.5;transition:all .12s;z-index:2}.at-field-btn:hover{color:var(--magenta);border-color:#d946ef73;background:#d946ef14}.pf input{padding-right:42px}.at-picker-dropdown{background:var(--bg1);border:1px solid var(--border2);border-radius:9px;overflow:hidden;box-shadow:0 12px 36px #00000073,0 0 0 1px #d946ef1a;max-height:220px;overflow-y:auto}.at-picker-item{display:flex;align-items:center;gap:var(--space-4);padding:7px 11px;cursor:pointer;border-bottom:1px solid var(--border);transition:background .1s}.at-picker-item:last-child{border-bottom:none}.at-picker-item:hover,.at-picker-item.selected{background:var(--accent-dim)}.at-picker-code{font-size:var(--fs-xs);font-family:var(--mono);font-weight:700;flex-shrink:0;white-space:nowrap}.at-picker-src{font-size:var(--fs-2xs);color:var(--text3);font-family:var(--mono);flex-shrink:0}.at-picker-val{font-size:var(--fs-2xs);color:var(--text2);font-family:var(--mono);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.at-picker-empty{padding:var(--space-5) var(--space-6);font-size:var(--fs-xs);font-family:var(--mono);color:var(--text3);text-align:center}.hc-nudge{display:flex;align-items:center;gap:var(--space-4);background:#f59e0b12;border:1px solid rgba(245,158,11,.22);border-radius:7px;padding:7px var(--space-5);margin-bottom:var(--space-4)}.hc-nudge-dot{width:6px;height:6px;border-radius:50%;background:#f59e0bcc;flex-shrink:0}.hc-nudge-text{font-size:var(--fs-xs);color:var(--amber);font-family:var(--mono);flex:1;line-height:1.4}.hc-nudge-action{font-size:var(--fs-2xs);color:var(--accent);cursor:pointer;font-family:var(--mono);font-weight:700;white-space:nowrap;padding:var(--space-1) var(--space-3);border:1px solid rgba(79,130,255,.25);border-radius:4px;background:var(--accent-dim);transition:all .12s;flex-shrink:0}.hc-nudge-action:hover{background:#4f82ff33}.var-tab-section{padding:var(--space-5) var(--space-7) 0}.var-tab-label{font-size:var(--fs-2xs);font-weight:700;letter-spacing:1.4px;color:var(--text3);text-transform:uppercase;margin-bottom:var(--space-4);display:flex;align-items:center;justify-content:space-between}.var-insert-grid{display:flex;flex-direction:column;gap:var(--space-2)}.var-insert-item{display:flex;align-items:center;gap:var(--space-3);padding:5px 7px;border-radius:6px;background:var(--glass);border:1px solid var(--border);cursor:pointer;transition:all .12s;font-size:var(--fs-2xs)}.var-insert-item:hover{border-color:#d946ef66;background:#d946ef14}.var-insert-code{font-family:var(--mono);color:var(--magenta);font-weight:700;flex:1}.var-insert-preview{color:var(--text2);font-family:var(--mono);font-size:var(--fs-2xs);max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.token-var{color:var(--magenta);font-style:italic}.token-plain{color:var(--cyan)}@keyframes reconcile-insert{0%{outline:2px solid rgba(34,197,94,.9);outline-offset:0px}to{outline:2px solid rgba(34,197,94,0);outline-offset:4px}}.reconcile-inserted{animation:reconcile-insert .4s ease forwards}#stutter-overlay{position:fixed;bottom:72px;right:16px;background:#060a12f5;border:1px solid rgba(217,70,239,.5);border-radius:10px;padding:var(--space-6) var(--space-7);z-index:var(--z-max);font-family:var(--mono);font-size:var(--fs-xs);color:var(--text1);min-width:210px;display:none;box-shadow:0 8px 32px #d946ef33}#stutter-overlay.active{display:block}.stutter-header{font-size:var(--fs-2xs);font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:var(--magenta);margin-bottom:var(--space-4);display:flex;align-items:center;gap:var(--space-3)}.stutter-dot{width:6px;height:6px;border-radius:50%;background:var(--magenta);flex-shrink:0;animation:stutter-pulse 1s ease infinite}@keyframes stutter-pulse{0%,to{opacity:1}50%{opacity:.2}}.stutter-row{display:flex;justify-content:space-between;gap:var(--space-6);margin-bottom:3px}.stutter-key{color:var(--text3)}.stutter-val{font-weight:700}.stutter-val.ok{color:var(--green)}.stutter-val.warn{color:var(--amber)}.stutter-val.fail{color:var(--red)}.stutter-stop{margin-top:var(--space-5);width:100%;padding:5px 0;background:#d946ef1f;border:1px solid rgba(217,70,239,.35);border-radius:5px;color:var(--magenta);font-family:var(--mono);font-size:var(--fs-2xs);font-weight:700;cursor:pointer;text-transform:uppercase;letter-spacing:.8px}.stutter-stop:hover{background:#d946ef38}[data-theme=slate]{--bg0: #181715;--bg1: #1f1e1b;--bg2: #252320;--bg3: #2e2c28;--bg4: #3a3733;--bg5: #4a4742;--glass: rgba(250,249,245,.03);--glass2: rgba(250,249,245,.06);--glass3: rgba(250,249,245,.09);--border: rgba(250,249,245,.08);--border2: rgba(250,249,245,.14);--border3: rgba(250,249,245,.22);--accent: #cc785c;--accent-dim: rgba(204,120,92,.18);--accent-glow: rgba(204,120,92,.38);--violet: #8b7cf6;--violet-dim: rgba(139,124,246,.18);--cyan: #5db8a6;--cyan-dim: rgba(93,184,166,.18);--magenta: #e8a55a;--magenta-dim: rgba(232,165,90,.18);--amber: #d4a017;--amber-dim: rgba(212,160,23,.18);--green: #5db872;--red: #c64545;--text0: #faf9f5;--text1: #c8c4bc;--text2: #a09d94;--text3: #97948d;--font: "EB Garamond", "Georgia", serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 8px;--r3: 6px}[data-theme=slate] body{background:var(--bg0);color:var(--text0)}[data-theme=slate] .nav{background:#181715f5!important;border-bottom:1px solid var(--border)}[data-theme=slate] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=slate] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);box-shadow:none}[data-theme=slate] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0000004d}[data-theme=slate] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px #cc785c33!important}[data-theme=slate] .btn.primary,[data-theme=slate] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);border-radius:var(--r2)}[data-theme=slate] .modal-content{background:var(--bg1);border:1px solid var(--border2);box-shadow:0 16px 48px #00000080}[data-theme=cal]{--bg0: #0f0f0f;--bg1: #161616;--bg2: #1e1e1e;--bg3: #252525;--bg4: #2e2e2e;--bg5: #3a3a3a;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.05);--glass3: rgba(255,255,255,.08);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #3b82f6;--accent-dim: rgba(59,130,246,.18);--accent-glow: rgba(59,130,246,.35);--violet: #8b5cf6;--violet-dim: rgba(139,92,246,.18);--cyan: #06b6d4;--cyan-dim: rgba(6,182,212,.18);--magenta: #ec4899;--magenta-dim: rgba(236,72,153,.18);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.18);--green: #10b981;--red: #ef4444;--text0: #ffffff;--text1: #a1a1aa;--text2: #95959e;--text3: #8d8d96;--font: "Inter", sans-serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 8px;--r3: 6px;--cal-badge-orange: #fb923c;--cal-badge-pink: #ec4899;--cal-badge-violet: #8b5cf6;--cal-badge-emerald: #34d399}[data-theme=cal] body{background:var(--bg0);color:var(--text0)}[data-theme=cal] .nav{background:#0f0f0ff7!important;border-bottom:1px solid var(--border);box-shadow:none}[data-theme=cal] .nav-logo-text{color:#fff;letter-spacing:-.5px}[data-theme=cal] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=cal] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);box-shadow:none}[data-theme=cal] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0006}[data-theme=cal] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px #3b82f633!important}[data-theme=cal] .btn,[data-theme=cal] button.btn{border-radius:var(--r2);font-weight:600}[data-theme=cal] .btn.primary,[data-theme=cal] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}[data-theme=cal] .modal-content{background:var(--bg1);border:1px solid var(--border2);box-shadow:0 16px 48px #00000080}[data-theme=sanity]{--bg0: #0b0b0b;--bg1: #212121;--bg2: #2a2a2a;--bg3: #353535;--bg4: #424242;--bg5: #505050;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.06);--glass3: rgba(255,255,255,.09);--border: #353535;--border2: #505050;--border3: rgba(255,255,255,.22);--accent: #f36458;--accent-dim: rgba(243,100,88,.15);--accent-glow: rgba(243,100,88,.35);--violet: #505b6c;--violet-dim: rgba(80,91,108,.2);--cyan: #afe3ff;--cyan-dim: rgba(175,227,255,.15);--magenta: #f36458;--magenta-dim: rgba(243,100,88,.15);--amber: #f5a623;--amber-dim: rgba(245,166,35,.15);--green: #37cd84;--red: #dd0000;--text0: #ffffff;--text1: #b9b9b9;--text2: #a8a8a8;--text3: #9c9fa3;--font: "Inter", sans-serif;--mono: "IBM Plex Mono", monospace;--r: 6px;--r2: 4px;--r3: 3px}[data-theme=sanity] body{background:var(--bg0);color:var(--text0)}[data-theme=sanity] .nav{background:#0b0b0bf7!important;border-bottom:1px solid var(--border)}[data-theme=sanity] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=sanity] .scene-card{background:var(--bg1);border:1px solid var(--border);border-radius:var(--r);box-shadow:none}[data-theme=sanity] .scene-card:hover{border-color:var(--border2);background:var(--bg2)}[data-theme=sanity] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px #f3645826!important}[data-theme=sanity] .btn.primary,[data-theme=sanity] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);border-radius:9999px;font-weight:500}[data-theme=sanity] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:#0009 0 16px 48px}[data-theme=zapier]{--bg0: #1a1714;--bg1: #221f1b;--bg2: #2a2722;--bg3: #36342e;--bg4: #423f38;--bg5: #524e46;--glass: rgba(255,254,251,.03);--glass2: rgba(255,254,251,.05);--glass3: rgba(255,254,251,.08);--border: rgba(197,192,177,.15);--border2: rgba(197,192,177,.28);--border3: rgba(197,192,177,.45);--accent: #ff4f00;--accent-dim: rgba(255,79,0,.18);--accent-glow: rgba(255,79,0,.38);--violet: #c5c0b1;--violet-dim: rgba(197,192,177,.15);--cyan: #b5b2aa;--cyan-dim: rgba(181,178,170,.15);--magenta: #ff4f00;--magenta-dim: rgba(255,79,0,.18);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.18);--green: #22c55e;--red: #ef4444;--text0: #fffefb;--text1: #c5c0b1;--text2: #aaa799;--text3: #a29e91;--font: "Inter", sans-serif;--mono: "DM Mono", monospace;--r: 8px;--r2: 4px;--r3: 3px}[data-theme=zapier] body{background:var(--bg0);color:var(--text0)}[data-theme=zapier] .nav{background:#1a1714f7!important;border-bottom:1px solid var(--border)}[data-theme=zapier] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=zapier] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:5px;box-shadow:none}[data-theme=zapier] .scene-card:hover{border-color:var(--border2);background:var(--bg3)}[data-theme=zapier] .scene-card.selected{border-color:var(--accent)!important;box-shadow:#ff4f00 0 -3px inset!important}[data-theme=zapier] .btn,[data-theme=zapier] button.btn{border-radius:var(--r2);font-weight:600}[data-theme=zapier] .btn.primary,[data-theme=zapier] button.btn.primary{background:#ff4f00;color:#fffefb;border-color:#ff4f00;border-radius:4px}[data-theme=zapier] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 16px 48px #00000080}[data-theme=playstation]{--bg0: #00044a;--bg1: #00063a;--bg2: #000c5c;--bg3: #001280;--bg4: #001a99;--bg5: #0022b3;--glass: rgba(0,174,239,.04);--glass2: rgba(0,174,239,.08);--glass3: rgba(0,174,239,.13);--border: rgba(0,174,239,.15);--border2: rgba(0,174,239,.28);--border3: rgba(0,174,239,.45);--accent: #00aeef;--accent-dim: rgba(0,174,239,.18);--accent-glow: rgba(0,174,239,.45);--violet: #003791;--violet-dim: rgba(0,55,145,.3);--cyan: #00aeef;--cyan-dim: rgba(0,174,239,.18);--magenta: #e4003a;--magenta-dim: rgba(228,0,58,.18);--amber: #f5c518;--amber-dim: rgba(245,197,24,.15);--green: #00d4aa;--red: #e4003a;--text0: #ffffff;--text1: #b0c4de;--text2: #799bc0;--text3: #7991b1;--font: "Syne", sans-serif;--mono: "DM Mono", monospace;--r: 4px;--r2: 2px;--r3: 2px}[data-theme=playstation] body{background:var(--bg0);color:var(--text0)}[data-theme=playstation] .nav{background:#00044af7!important;border-bottom:1px solid var(--border);box-shadow:0 1px #00aeef33}[data-theme=playstation] .nav-logo-text{color:var(--accent);letter-spacing:2px;text-transform:uppercase;font-weight:700}[data-theme=playstation] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=playstation] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r)}[data-theme=playstation] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 12px #00aeef33}[data-theme=playstation] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent),0 0 24px #00aeef4d!important}[data-theme=playstation] .btn.primary,[data-theme=playstation] button.btn.primary{background:var(--accent);color:#00044a;border-color:var(--accent);font-weight:700}[data-theme=playstation] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 0 60px #00aeef1f,#00000080 0 16px 48px}[data-theme=mongodb]{--bg0: #001e2b;--bg1: #052b37;--bg2: #0a3545;--bg3: #0f4055;--bg4: #184d65;--bg5: #235c78;--glass: rgba(0,237,100,.04);--glass2: rgba(0,237,100,.07);--glass3: rgba(0,237,100,.11);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #00ed64;--accent-dim: rgba(0,237,100,.18);--accent-glow: rgba(0,237,100,.4);--violet: #9c6fe4;--violet-dim: rgba(156,111,228,.18);--cyan: #21d4fd;--cyan-dim: rgba(33,212,253,.15);--magenta: #ec4899;--magenta-dim: rgba(236,72,153,.15);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.15);--green: #00ed64;--red: #f04e44;--text0: #ffffff;--text1: #c8d1d9;--text2: #a1b3be;--text3: #97aab5;--font: "Syne", sans-serif;--mono: "DM Mono", monospace;--r: 12px;--r2: 9999px;--r3: 6px}[data-theme=mongodb] .nav{background:#001e2bf5!important;border-bottom:1px solid rgba(255,255,255,.08)}[data-theme=mongodb] .nav-logo-text{background:linear-gradient(90deg,var(--accent),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent}[data-theme=mongodb] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=mongodb] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);box-shadow:#001e2b14 0 4px 12px}[data-theme=mongodb] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),#00ed641f 0 8px 20px}[data-theme=mongodb] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent),#00ed6433 0 8px 24px!important}[data-theme=mongodb] .btn.primary,[data-theme=mongodb] button.btn.primary{background:var(--accent);color:#001e2b;border-radius:9999px;border-color:var(--accent);font-weight:600}[data-theme=mongodb] .modal-content{background:var(--bg1);border:1px solid var(--border2);box-shadow:#001e2b4d 0 16px 48px}[data-theme=mseries]{--bg0: #000000;--bg1: #0d0d0d;--bg2: #1a1a1a;--bg3: #262626;--bg4: #2b2b2b;--bg5: #3c3c3c;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.05);--glass3: rgba(255,255,255,.08);--border: #3c3c3c;--border2: #505050;--border3: rgba(255,255,255,.2);--accent: #ffffff;--accent-dim: rgba(255,255,255,.1);--accent-glow: rgba(255,255,255,.15);--violet: #1c69d4;--violet-dim: rgba(28,105,212,.18);--cyan: #0066b1;--cyan-dim: rgba(0,102,177,.18);--magenta: #e22718;--magenta-dim: rgba(226,39,24,.18);--amber: #f4b400;--amber-dim: rgba(244,180,0,.15);--green: #0fa336;--red: #e22718;--text0: #ffffff;--text1: #e6e6e6;--text2: #bbbbbb;--text3: #8e8e8e;--font: "Syne", sans-serif;--mono: "DM Mono", monospace;--r: 0px;--r2: 0px;--r3: 0px;--m-stripe: linear-gradient(90deg, #0066b1 33.3%, #1c69d4 33.3% 66.6%, #e22718 66.6%)}[data-theme=mseries] body{background:#000;color:#fff}[data-theme=mseries] .nav{background:#000000f7!important;border-bottom:1px solid var(--border);box-shadow:none}[data-theme=mseries] .nav-logo-text{letter-spacing:4px;text-transform:uppercase;font-weight:700}[data-theme=mseries] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=mseries] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:0;box-shadow:none;position:relative;overflow:hidden}[data-theme=mseries] .scene-card:hover{border-color:var(--border2);box-shadow:inset 0 0 0 1px #ffffff1a}[data-theme=mseries] .scene-card.selected{border-color:#fff!important;box-shadow:none!important}[data-theme=mseries] .scene-card.selected:before{content:"";display:block;height:3px;background:var(--m-stripe);position:absolute;top:0;left:0;right:0}[data-theme=mseries] .btn,[data-theme=mseries] button.btn{border-radius:0;text-transform:uppercase;letter-spacing:1.5px;font-size:var(--fs-xs);font-weight:700}[data-theme=mseries] .btn.primary,[data-theme=mseries] button.btn.primary{background:transparent;color:#fff;border:1px solid #fff}[data-theme=mseries] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:0;box-shadow:#0009 0 16px 48px}[data-theme=cal] *{font-family:Inter,Syne,sans-serif}[data-theme=cal] .modal-content,[data-theme=cal] .scene-card,[data-theme=cal] .sidebar,[data-theme=cal] .nav{font-family:Inter,sans-serif}[data-theme=eleven]{--bg0: #0c0a09;--bg1: #14110f;--bg2: #1c1917;--bg3: #292524;--bg4: #3a3530;--bg5: #4a443d;--glass: rgba(245,245,240,.03);--glass2: rgba(245,245,240,.06);--glass3: rgba(245,245,240,.1);--border: rgba(231,229,228,.08);--border2: rgba(231,229,228,.16);--border3: rgba(231,229,228,.28);--accent: #a7e5d3;--accent-dim: rgba(167,229,211,.14);--accent-glow: rgba(167,229,211,.28);--violet: #c8b8e0;--violet-dim: rgba(200,184,224,.14);--cyan: #a8c8e8;--cyan-dim: rgba(168,200,232,.14);--magenta: #e8b8c4;--magenta-dim: rgba(232,184,196,.14);--amber: #f4c5a8;--amber-dim: rgba(244,197,168,.14);--green: #a7e5d3;--red: #e8b8c4;--text0: #f5f5f0;--text1: #a8a29e;--text2: #9b9590;--text3: #928d8a;--font: "EB Garamond", "Georgia", serif;--mono: "JetBrains Mono", monospace;--r: 16px;--r2: 12px;--r3: 8px}[data-theme=eleven] body{background:var(--bg0);color:var(--text0);background-image:radial-gradient(circle at 25% 35%,rgba(167,229,211,.12) 0%,transparent 50%),radial-gradient(circle at 75% 65%,rgba(244,197,168,.1) 0%,transparent 50%);background-attachment:fixed}[data-theme=eleven] .nav{background:#0c0a09f0!important;backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}[data-theme=eleven] .nav-logo-text{font-family:var(--font);font-weight:300;letter-spacing:-.5px;color:var(--text0)}[data-theme=eleven] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=eleven] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);box-shadow:none}[data-theme=eleven] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0006}[data-theme=eleven] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 24px var(--accent-dim)!important}[data-theme=eleven] .btn,[data-theme=eleven] button.btn{border-radius:9999px;font-weight:500}[data-theme=eleven] .btn.primary,[data-theme=eleven] button.btn.primary{background:var(--text0);color:var(--bg0);border-color:var(--text0);border-radius:9999px}[data-theme=eleven] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 16px 48px #0009}[data-theme=kraken]{--bg0: #0a0a0e;--bg1: #101114;--bg2: #16171c;--bg3: #1d1e25;--bg4: #25262f;--bg5: #2f303a;--glass: rgba(113,50,245,.04);--glass2: rgba(113,50,245,.08);--glass3: rgba(113,50,245,.13);--border: rgba(222,222,229,.1);--border2: rgba(222,222,229,.18);--border3: rgba(222,222,229,.3);--accent: #7132f5;--accent-dim: rgba(113,50,245,.18);--accent-glow: rgba(113,50,245,.4);--violet: #5741d8;--violet-dim: rgba(87,65,216,.18);--cyan: #855bfb;--cyan-dim: rgba(133,91,251,.16);--magenta: #a371fa;--magenta-dim: rgba(163,113,250,.16);--amber: #ffd11a;--amber-dim: rgba(255,209,26,.15);--green: #149e61;--red: #d03238;--text0: #ffffff;--text1: #c1c3d0;--text2: #9497a9;--text3: #84869a;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "IBM Plex Mono", monospace;--r: 12px;--r2: 10px;--r3: 6px}[data-theme=kraken] body{background:var(--bg0);color:var(--text0)}[data-theme=kraken] .nav{background:#0a0a0ef5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border);box-shadow:0 1px #7132f51a}[data-theme=kraken] .nav-logo-text{font-weight:700;letter-spacing:-.5px;color:var(--text0)}[data-theme=kraken] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=kraken] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;box-shadow:#0003 0 4px 24px}[data-theme=kraken] .scene-card:hover{border-color:var(--accent);box-shadow:#7132f533 0 4px 24px}[data-theme=kraken] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 24px var(--accent-glow)!important}[data-theme=kraken] .btn,[data-theme=kraken] button.btn{border-radius:12px;font-weight:500}[data-theme=kraken] .btn.primary,[data-theme=kraken] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);border-radius:12px;font-weight:600}[data-theme=kraken] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 0 60px #7132f51f,0 16px 48px #0009}[data-theme=kraken] *{font-family:var(--font)}[data-theme=supa]{--bg0: #1c1c1c;--bg1: #202020;--bg2: #262626;--bg3: #2e2e2e;--bg4: #383838;--bg5: #444444;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.05);--glass3: rgba(255,255,255,.08);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #3ecf8e;--accent-dim: rgba(62,207,142,.16);--accent-glow: rgba(62,207,142,.35);--violet: #6b01c2;--violet-dim: rgba(107,1,194,.18);--cyan: #4ade80;--cyan-dim: rgba(74,222,128,.15);--magenta: #644fc1;--magenta-dim: rgba(100,79,193,.16);--amber: #ffdb13;--amber-dim: rgba(255,219,19,.15);--green: #3ecf8e;--red: #ef4444;--text0: #ededed;--text1: #b2b2b2;--text2: #a0a0a0;--text3: #979797;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 8px;--r3: 6px}[data-theme=supa] body{background:var(--bg0);color:var(--text0)}[data-theme=supa] .nav{background:#1c1c1cf5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}[data-theme=supa] .nav-logo-text{font-weight:500;letter-spacing:-.42px;color:var(--text0)}[data-theme=supa] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=supa] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px;box-shadow:0 1px 3px #0000004d}[data-theme=supa] .scene-card:hover{border-color:var(--border2);box-shadow:0 8px 24px #0006}[data-theme=supa] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px var(--accent-dim)!important}[data-theme=supa] .btn,[data-theme=supa] button.btn{border-radius:6px;font-weight:500;font-size:var(--fs-md)}[data-theme=supa] .btn.primary,[data-theme=supa] button.btn.primary{background:var(--accent);color:#171717;border-color:var(--accent);border-radius:6px}[data-theme=supa] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 16px 48px #0000008c}[data-theme=supa] *{font-family:var(--font)}[data-theme=wise]{--bg0: #0e0f0c;--bg1: #15161a;--bg2: #1c1d22;--bg3: #25272d;--bg4: #2f3138;--bg5: #3a3d44;--glass: rgba(159,232,112,.04);--glass2: rgba(159,232,112,.08);--glass3: rgba(159,232,112,.13);--border: rgba(232,235,230,.08);--border2: rgba(232,235,230,.15);--border3: rgba(232,235,230,.26);--accent: #9fe870;--accent-dim: rgba(159,232,112,.18);--accent-glow: rgba(159,232,112,.4);--violet: #cdffad;--violet-dim: rgba(205,255,173,.15);--cyan: #38c8ff;--cyan-dim: rgba(56,200,255,.1);--magenta: #ffc091;--magenta-dim: rgba(255,192,145,.15);--amber: #ffd11a;--amber-dim: rgba(255,209,26,.15);--green: #9fe870;--red: #d03238;--text0: #ffffff;--text1: #c4c8c0;--text2: #989996;--text3: #8d918b;--font: "Inter", "Helvetica", sans-serif;--mono: "JetBrains Mono", monospace;--r: 30px;--r2: 16px;--r3: 9999px}[data-theme=wise] body{background:var(--bg0);color:var(--text0);font-feature-settings:"calt"}[data-theme=wise] *{font-feature-settings:"calt"}[data-theme=wise] .nav{background:#0e0f0cf5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}[data-theme=wise] .nav-logo-text{font-weight:900;letter-spacing:-1px;color:var(--text0)}[data-theme=wise] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=wise] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:30px}[data-theme=wise] .scene-card:hover{border-color:var(--accent);box-shadow:#9fe87026 0 4px 20px}[data-theme=wise] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent),0 0 24px var(--accent-dim)!important}[data-theme=wise] .btn,[data-theme=wise] button.btn{border-radius:9999px;font-weight:600;transition:transform .12s cubic-bezier(.22,1,.36,1),background .12s}[data-theme=wise] .btn:hover,[data-theme=wise] button.btn:hover{transform:scale(1.05)}[data-theme=wise] .btn:active,[data-theme=wise] button.btn:active{transform:scale(.95)}[data-theme=wise] .btn.primary,[data-theme=wise] button.btn.primary{background:var(--accent);color:#163300;border-color:var(--accent);border-radius:9999px;font-weight:600}[data-theme=wise] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:30px;box-shadow:0 16px 48px #0009}[data-theme=wise] *{font-family:var(--font)}[data-theme=air]{--bg0: #121212;--bg1: #1a1a1a;--bg2: #222222;--bg3: #2c2c2c;--bg4: #383838;--bg5: #444444;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.06);--glass3: rgba(255,255,255,.09);--border: rgba(255,255,255,.09);--border2: rgba(255,255,255,.16);--border3: rgba(255,255,255,.26);--accent: #ff385c;--accent-dim: rgba(255,56,92,.18);--accent-glow: rgba(255,56,92,.38);--violet: #460479;--violet-dim: rgba(70,4,121,.2);--cyan: #ff385c;--cyan-dim: rgba(255,56,92,.15);--magenta: #92174d;--magenta-dim: rgba(146,23,77,.18);--amber: #e67e22;--amber-dim: rgba(230,126,34,.15);--green: #22c55e;--red: #ff385c;--text0: #ffffff;--text1: #cccccc;--text2: #9d9d9d;--text3: #949494;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 14px;--r2: 8px;--r3: 4px}[data-theme=air] body{background:var(--bg0);color:var(--text0)}[data-theme=air] .nav{background:#121212f5!important;border-bottom:1px solid var(--border)}[data-theme=air] .nav-logo-text{font-weight:600;color:var(--accent)}[data-theme=air] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=air] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:14px}[data-theme=air] .scene-card:hover{border-color:var(--border2);box-shadow:0 2px 6px #0000004d,0 4px 8px #00000040}[data-theme=air] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)!important}[data-theme=air] .btn,[data-theme=air] button.btn{border-radius:8px;font-weight:600}[data-theme=air] .btn.primary,[data-theme=air] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent);border-radius:8px}[data-theme=air] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 4px 24px #00000080}[data-theme=beami]{--bg0: #0d0f12;--bg1: #13161a;--bg2: #1a1e24;--bg3: #22272e;--bg4: #2c3340;--bg5: #363e4d;--glass: rgba(28,105,212,.04);--glass2: rgba(28,105,212,.08);--glass3: rgba(28,105,212,.13);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #1c69d4;--accent-dim: rgba(28,105,212,.18);--accent-glow: rgba(28,105,212,.4);--violet: #0653b6;--violet-dim: rgba(6,83,182,.2);--cyan: #296ef9;--cyan-dim: rgba(41,110,249,.15);--magenta: #e22718;--magenta-dim: rgba(226,39,24,.15);--amber: #f5a623;--amber-dim: rgba(245,166,35,.15);--green: #22c55e;--red: #e22718;--text0: #ffffff;--text1: #c8cdd6;--text2: #8e98a9;--text3: #878f9f;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "IBM Plex Mono", monospace;--r: 0px;--r2: 0px;--r3: 0px}[data-theme=beami] body{background:var(--bg0);color:var(--text0)}[data-theme=beami] .nav{background:#0d0f12f7!important;border-bottom:1px solid var(--border)}[data-theme=beami] .nav-logo-text{font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text0)}[data-theme=beami] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=beami] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:0;box-shadow:none}[data-theme=beami] .scene-card:hover{border-color:var(--accent)}[data-theme=beami] .scene-card.selected{border-color:var(--accent)!important;border-left:3px solid var(--accent)!important;box-shadow:none!important}[data-theme=beami] .btn,[data-theme=beami] button.btn{border-radius:0;font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:var(--fs-sm)}[data-theme=beami] .btn.primary,[data-theme=beami] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}[data-theme=beami] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:0;box-shadow:0 16px 48px #00000080}[data-theme=buga]{--bg0: #000000;--bg1: #0d0d0d;--bg2: #141414;--bg3: #1f1f1f;--bg4: #262626;--bg5: #3a3a3a;--glass: rgba(255,255,255,.02);--glass2: rgba(255,255,255,.04);--glass3: rgba(255,255,255,.07);--border: #262626;--border2: #3a3a3a;--border3: rgba(255,255,255,.22);--accent: #c3d9f3;--accent-dim: rgba(195,217,243,.12);--accent-glow: rgba(195,217,243,.25);--violet: #c3d9f3;--violet-dim: rgba(195,217,243,.1);--cyan: #c3d9f3;--cyan-dim: rgba(195,217,243,.1);--magenta: #c3d9f3;--magenta-dim: rgba(195,217,243,.1);--amber: #c3d9f3;--amber-dim: rgba(195,217,243,.1);--green: #c3d9f3;--red: #c3d9f3;--text0: #ffffff;--text1: #aaaaaa;--text2: #909090;--text3: #888888;--font: "Inter", serif;--mono: "JetBrains Mono", monospace;--r: 9999px;--r2: 0px;--r3: 0px}[data-theme=buga] body{background:#000;color:#fff}[data-theme=buga] .nav{background:#000000f2!important;border-bottom:1px solid #1f1f1f}[data-theme=buga] .nav-logo-text{font-weight:400;letter-spacing:6px;text-transform:uppercase;color:#fff}[data-theme=buga] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=buga] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:0;box-shadow:none}[data-theme=buga] .scene-card:hover{border-color:var(--border2)}[data-theme=buga] .scene-card.selected{border-color:#fff!important;box-shadow:none!important}[data-theme=buga] .btn,[data-theme=buga] button.btn{border-radius:9999px;font-weight:400;letter-spacing:2px;text-transform:uppercase;font-size:var(--fs-xs)}[data-theme=buga] .btn.primary,[data-theme=buga] button.btn.primary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.5)}[data-theme=buga] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:0;box-shadow:none}[data-theme=chouse]{--bg0: #0a0a0a;--bg1: #121212;--bg2: #1a1a1a;--bg3: #242424;--bg4: #2e2e2e;--bg5: #3a3a3a;--glass: rgba(250,255,105,.03);--glass2: rgba(250,255,105,.06);--glass3: rgba(250,255,105,.1);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #faff69;--accent-dim: rgba(250,255,105,.16);--accent-glow: rgba(250,255,105,.35);--violet: #faff69;--violet-dim: rgba(250,255,105,.12);--cyan: #e6eb52;--cyan-dim: rgba(230,235,82,.12);--magenta: #faff69;--magenta-dim: rgba(250,255,105,.12);--amber: #faff69;--amber-dim: rgba(250,255,105,.12);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: #cccccc;--text2: #949494;--text3: #8c8c8c;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 8px;--r3: 6px}[data-theme=chouse] body{background:var(--bg0);color:var(--text0)}[data-theme=chouse] .nav{background:#0a0a0af7!important;border-bottom:1px solid var(--border)}[data-theme=chouse] .nav-logo-text{font-weight:700;letter-spacing:-1px;color:var(--accent)}[data-theme=chouse] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=chouse] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r)}[data-theme=chouse] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 16px #faff691f}[data-theme=chouse] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px var(--accent-dim)!important}[data-theme=chouse] .btn,[data-theme=chouse] button.btn{border-radius:8px;font-weight:600}[data-theme=chouse] .btn.primary,[data-theme=chouse] button.btn.primary{background:var(--accent);color:#0a0a0a;border-color:var(--accent);font-weight:700}[data-theme=chouse] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 0 40px #faff6914,0 16px 48px #0009}[data-theme=chouse] *{font-family:var(--font)}[data-theme=hp]{--bg0: #0a0c10;--bg1: #121520;--bg2: #1a1e2e;--bg3: #22283c;--bg4: #2c344d;--bg5: #38435f;--glass: rgba(2,74,216,.04);--glass2: rgba(2,74,216,.08);--glass3: rgba(2,74,216,.13);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #296ef9;--accent-dim: rgba(41,110,249,.18);--accent-glow: rgba(41,110,249,.4);--violet: #024ad8;--violet-dim: rgba(2,74,216,.2);--cyan: #c9e0fc;--cyan-dim: rgba(201,224,252,.15);--magenta: #0e3191;--magenta-dim: rgba(14,49,145,.2);--amber: #f5a623;--amber-dim: rgba(245,166,35,.15);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: #b8c4d8;--text2: #8b9ab6;--text3: #8491ab;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "IBM Plex Mono", monospace;--r: 8px;--r2: 4px;--r3: 2px}[data-theme=hp] body{background:var(--bg0);color:var(--text0)}[data-theme=hp] .nav{background:#0a0c10f7!important;border-bottom:1px solid var(--border)}[data-theme=hp] .nav-logo-text{font-weight:700;color:var(--accent)}[data-theme=hp] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=hp] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px}[data-theme=hp] .scene-card:hover{border-color:var(--accent)}[data-theme=hp] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)!important}[data-theme=hp] .btn,[data-theme=hp] button.btn{border-radius:4px;font-weight:500;text-transform:capitalize}[data-theme=hp] .btn.primary,[data-theme=hp] button.btn.primary{background:var(--accent);color:var(--text-on-accent);border-color:var(--accent)}[data-theme=hp] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:8px;box-shadow:0 16px 48px #0009}[data-theme=labo]{--bg0: #000000;--bg1: #0d0d0d;--bg2: #141414;--bg3: #1f1f1f;--bg4: #2a2a2a;--bg5: #353535;--glass: rgba(255,192,0,.03);--glass2: rgba(255,192,0,.06);--glass3: rgba(255,192,0,.1);--border: rgba(255,255,255,.07);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.24);--accent: #ffc000;--accent-dim: rgba(255,192,0,.16);--accent-glow: rgba(255,192,0,.38);--violet: #917300;--violet-dim: rgba(145,115,0,.2);--cyan: #ffce3e;--cyan-dim: rgba(255,206,62,.15);--magenta: #917300;--magenta-dim: rgba(145,115,0,.15);--amber: #ffc000;--amber-dim: rgba(255,192,0,.16);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: #aaaaaa;--text2: #909090;--text3: #888888;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 0px;--r2: 0px;--r3: 0px}[data-theme=labo] body{background:#000;color:#fff}[data-theme=labo] .nav{background:#000000f7!important;border-bottom:1px solid rgba(255,255,255,.07)}[data-theme=labo] .nav-logo-text{font-weight:400;letter-spacing:4px;text-transform:uppercase;color:#fff}[data-theme=labo] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=labo] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:0}[data-theme=labo] .scene-card:hover{border-color:var(--accent)}[data-theme=labo] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 16px #ffc00033!important}[data-theme=labo] .btn,[data-theme=labo] button.btn{border-radius:0;font-weight:400;letter-spacing:2px;text-transform:uppercase;font-size:var(--fs-sm)}[data-theme=labo] .btn.primary,[data-theme=labo] button.btn.primary{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}[data-theme=labo] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:0;box-shadow:0 16px 48px #000c}[data-theme=minimax]{--bg0: #0a0a0a;--bg1: #111111;--bg2: #1a1a1a;--bg3: #222222;--bg4: #2e2e2e;--bg5: #3a3a3a;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.05);--glass3: rgba(255,255,255,.08);--border: rgba(255,255,255,.09);--border2: rgba(255,255,255,.16);--border3: rgba(255,255,255,.26);--accent: #ff4b36;--accent-dim: rgba(255,75,54,.16);--accent-glow: rgba(255,75,54,.35);--violet: #c946c0;--violet-dim: rgba(201,70,192,.16);--cyan: #3b82f6;--cyan-dim: rgba(59,130,246,.15);--magenta: #c946c0;--magenta-dim: rgba(201,70,192,.16);--amber: #f97316;--amber-dim: rgba(249,115,22,.15);--green: #22c55e;--red: #ff4b36;--text0: #ffffff;--text1: #cccccc;--text2: #939393;--text3: #8b8b8b;--font: "Inter", "DM Sans", sans-serif;--mono: "JetBrains Mono", monospace;--r: 16px;--r2: 9999px;--r3: 9999px}[data-theme=minimax] body{background:var(--bg0);color:var(--text0)}[data-theme=minimax] .nav{background:#0a0a0af5!important;border-bottom:1px solid var(--border)}[data-theme=minimax] .nav-logo-text{font-weight:700;letter-spacing:-.5px;color:var(--text0)}[data-theme=minimax] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=minimax] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px}[data-theme=minimax] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0006}[data-theme=minimax] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)!important}[data-theme=minimax] .btn,[data-theme=minimax] button.btn{border-radius:9999px;font-weight:600}[data-theme=minimax] .btn.primary,[data-theme=minimax] button.btn.primary{background:#fff;color:#000;border-color:#fff;border-radius:9999px}[data-theme=minimax] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 16px 48px #0009}[data-theme=minimax] *{font-family:var(--font)}[data-theme=minitfy]{--bg0: #0c1118;--bg1: #111822;--bg2: #18202e;--bg3: #1f2a3d;--bg4: #28364f;--bg5: #334260;--glass: rgba(52,211,153,.04);--glass2: rgba(52,211,153,.08);--glass3: rgba(52,211,153,.13);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #34d399;--accent-dim: rgba(52,211,153,.16);--accent-glow: rgba(52,211,153,.35);--violet: #6366f1;--violet-dim: rgba(99,102,241,.18);--cyan: #34d399;--cyan-dim: rgba(52,211,153,.15);--magenta: #fb923c;--magenta-dim: rgba(251,146,60,.15);--amber: #fbbf24;--amber-dim: rgba(251,191,36,.15);--green: #34d399;--red: #ef4444;--text0: #f0f6fc;--text1: #b0c4d8;--text2: #829eb9;--text3: #8094ad;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 9999px;--r3: 9999px}[data-theme=minitfy] body{background:var(--bg0);color:var(--text0);background-image:radial-gradient(ellipse at 50% 0%,rgba(52,211,153,.08) 0%,transparent 60%)}[data-theme=minitfy] .nav{background:#0c1118f5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}[data-theme=minitfy] .nav-logo-text{font-weight:600;color:var(--accent)}[data-theme=minitfy] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=minitfy] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px}[data-theme=minitfy] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 16px #34d3991f}[data-theme=minitfy] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px var(--accent-dim)!important}[data-theme=minitfy] .btn,[data-theme=minitfy] button.btn{border-radius:9999px;font-weight:600}[data-theme=minitfy] .btn.primary,[data-theme=minitfy] button.btn.primary{background:#000;color:#fff;border-color:#000;border-radius:9999px}[data-theme=minitfy] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:12px;box-shadow:0 16px 48px #0009}[data-theme=minitfy] *{font-family:var(--font)}[data-theme=renault]{--bg0: #0a0a0a;--bg1: #111111;--bg2: #181818;--bg3: #222222;--bg4: #2c2c2c;--bg5: #383838;--glass: rgba(255,237,0,.03);--glass2: rgba(255,237,0,.06);--glass3: rgba(255,237,0,.1);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.22);--accent: #ffed00;--accent-dim: rgba(255,237,0,.16);--accent-glow: rgba(255,237,0,.35);--violet: #ffed00;--violet-dim: rgba(255,237,0,.12);--cyan: #ffed00;--cyan-dim: rgba(255,237,0,.12);--magenta: #ffed00;--magenta-dim: rgba(255,237,0,.12);--amber: #ffed00;--amber-dim: rgba(255,237,0,.12);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: #c8c8c8;--text2: #929292;--text3: #8a8a8a;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 2px;--r2: 0px;--r3: 0px}[data-theme=renault] body{background:var(--bg0);color:var(--text0)}[data-theme=renault] .nav{background:#000000f7!important;border-bottom:1px solid var(--border)}[data-theme=renault] .nav-logo-text{font-weight:700;letter-spacing:-.5px;color:var(--accent)}[data-theme=renault] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=renault] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:0}[data-theme=renault] .scene-card:hover{border-color:var(--border2)}[data-theme=renault] .scene-card.selected{border-color:var(--accent)!important;box-shadow:inset 0 -3px 0 var(--accent)!important}[data-theme=renault] .btn,[data-theme=renault] button.btn{border-radius:2px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:var(--fs-xs)}[data-theme=renault] .btn.primary,[data-theme=renault] button.btn.primary{background:var(--accent);color:#0a0a0a;border-color:var(--accent)}[data-theme=renault] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:0;box-shadow:0 16px 48px #000000b3}[data-theme=resend]{--bg0: #000000;--bg1: #0a0a0a;--bg2: #111111;--bg3: #1a1a1a;--bg4: #242424;--bg5: #303030;--glass: rgba(252,253,255,.04);--glass2: rgba(252,253,255,.08);--glass3: rgba(252,253,255,.14);--border: rgba(252,253,255,.06);--border2: rgba(252,253,255,.14);--border3: rgba(252,253,255,.24);--accent: #fcfdff;--accent-dim: rgba(252,253,255,.1);--accent-glow: rgba(252,253,255,.2);--violet: #a78bfa;--violet-dim: rgba(167,139,250,.15);--cyan: #60a5fa;--cyan-dim: rgba(96,165,250,.15);--magenta: #f472b6;--magenta-dim: rgba(244,114,182,.15);--amber: #fb923c;--amber-dim: rgba(251,146,60,.15);--green: #34d399;--red: #f87171;--text0: #fcfdff;--text1: #a0a8b8;--text2: #838c9e;--text3: #7c8494;--font: "EB Garamond", "Georgia", serif;--mono: "JetBrains Mono", monospace;--r: 12px;--r2: 8px;--r3: 9999px}[data-theme=resend] body{background:#000;color:var(--text0)}[data-theme=resend] .nav{background:#000000f2!important;backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}[data-theme=resend] .nav-logo-text{font-family:var(--font);font-weight:400;letter-spacing:-.5px;color:var(--text0);font-size:var(--fs-lg)}[data-theme=resend] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=resend] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px}[data-theme=resend] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #00000080}[data-theme=resend] .scene-card.selected{border-color:#fcfdff80!important;box-shadow:0 0 0 1px #fcfdff4d!important}[data-theme=resend] .btn,[data-theme=resend] button.btn{border-radius:8px;font-weight:500;font-family:Inter,sans-serif}[data-theme=resend] .btn.primary,[data-theme=resend] button.btn.primary{background:var(--text0);color:#000;border-color:var(--text0);border-radius:8px}[data-theme=resend] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:12px;box-shadow:0 16px 48px #000c}[data-theme=revo]{--bg0: #000000;--bg1: #0a0a0a;--bg2: #111111;--bg3: #1a1a1a;--bg4: #222222;--bg5: #2e2e2e;--glass: rgba(73,79,223,.04);--glass2: rgba(73,79,223,.08);--glass3: rgba(73,79,223,.13);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--border3: rgba(255,255,255,.24);--accent: #494fdf;--accent-dim: rgba(73,79,223,.18);--accent-glow: rgba(73,79,223,.4);--violet: #494fdf;--violet-dim: rgba(73,79,223,.18);--cyan: #06b6d4;--cyan-dim: rgba(6,182,212,.15);--magenta: #ec4899;--magenta-dim: rgba(236,72,153,.15);--amber: #f59e0b;--amber-dim: rgba(245,158,11,.15);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: #c0c4d0;--text2: #848ba8;--text3: #7d8496;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 9999px;--r2: 16px;--r3: 8px}[data-theme=revo] body{background:var(--bg0);color:var(--text0)}[data-theme=revo] .nav{background:#000000f5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}[data-theme=revo] .nav-logo-text{font-weight:500;letter-spacing:-.5px;color:var(--text0)}[data-theme=revo] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=revo] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:16px}[data-theme=revo] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 20px #00000080}[data-theme=revo] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent)!important}[data-theme=revo] .btn,[data-theme=revo] button.btn{border-radius:9999px;font-weight:500}[data-theme=revo] .btn.primary,[data-theme=revo] button.btn.primary{background:#fff;color:#000;border-color:#fff;border-radius:9999px}[data-theme=revo] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 16px 48px #000000b3}[data-theme=revo] *{font-family:var(--font)}[data-theme=verge]{--bg0: #131313;--bg1: #1a1a1a;--bg2: #2d2d2d;--bg3: #383838;--bg4: #444444;--bg5: #505050;--glass: rgba(60,255,208,.04);--glass2: rgba(60,255,208,.08);--glass3: rgba(60,255,208,.13);--border: rgba(255,255,255,.12);--border2: rgba(255,255,255,.22);--border3: rgba(255,255,255,.38);--accent: #3cffd0;--accent-dim: rgba(60,255,208,.18);--accent-glow: rgba(60,255,208,.4);--violet: #5200ff;--violet-dim: rgba(82,0,255,.2);--cyan: #3cffd0;--cyan-dim: rgba(60,255,208,.15);--magenta: #5200ff;--magenta-dim: rgba(82,0,255,.18);--amber: #ffdd00;--amber-dim: rgba(255,221,0,.15);--green: #3cffd0;--red: #ff3333;--text0: #ffffff;--text1: #cccccc;--text2: #adadad;--text3: #a4a4a4;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 24px;--r2: 16px;--r3: 9999px}[data-theme=verge] body{background:var(--bg0);color:var(--text0)}[data-theme=verge] .nav{background:#131313f7!important;border-bottom:1px solid var(--border)}[data-theme=verge] .nav-logo-text{font-weight:900;letter-spacing:-1px;color:var(--text0)}[data-theme=verge] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=verge] .scene-card{background:var(--bg2);border:1px solid rgba(255,255,255,.12);border-radius:20px}[data-theme=verge] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 20px #3cffd026}[data-theme=verge] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 2px var(--accent),0 0 30px #3cffd033!important}[data-theme=verge] .btn,[data-theme=verge] button.btn{border-radius:9999px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:var(--fs-xs)}[data-theme=verge] .btn.primary,[data-theme=verge] button.btn.primary{background:var(--accent);color:#000;border-color:var(--accent)}[data-theme=verge] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 16px 48px #000000b3}[data-theme=volta]{--bg0: #050507;--bg1: #0a0a0c;--bg2: #121214;--bg3: #1a1a1e;--bg4: #222228;--bg5: #2c2c34;--glass: rgba(0,217,146,.04);--glass2: rgba(0,217,146,.08);--glass3: rgba(0,217,146,.13);--border: rgba(61,58,57,.6);--border2: rgba(139,148,158,.3);--border3: rgba(184,179,176,.4);--accent: #00d992;--accent-dim: rgba(0,217,146,.16);--accent-glow: rgba(0,217,146,.4);--violet: #818cf8;--violet-dim: rgba(129,140,248,.18);--cyan: #2fd6a1;--cyan-dim: rgba(47,214,161,.15);--magenta: #818cf8;--magenta-dim: rgba(129,140,248,.18);--amber: #fbbf24;--amber-dim: rgba(251,191,36,.15);--green: #00d992;--red: #f87171;--text0: #f0f6fc;--text1: #b8b3b0;--text2: #8b949e;--text3: #878380;--font: "Inter", system-ui, sans-serif;--mono: "JetBrains Mono", monospace;--r: 8px;--r2: 6px;--r3: 4px}[data-theme=volta] body{background:var(--bg0);color:var(--text0)}[data-theme=volta] .nav{background:#050507f7!important;border-bottom:1px solid var(--border)}[data-theme=volta] .nav-logo-text{font-weight:700;color:var(--accent);text-shadow:0 0 12px var(--accent-glow)}[data-theme=volta] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=volta] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r);box-shadow:none}[data-theme=volta] .scene-card:hover{border-color:var(--accent);box-shadow:0 0 16px #00d99226}[data-theme=volta] .scene-card.selected{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 20px var(--accent-dim)!important}[data-theme=volta] .btn,[data-theme=volta] button.btn{border-radius:var(--r);font-weight:600}[data-theme=volta] .btn.primary,[data-theme=volta] button.btn.primary{background:var(--accent);color:#050507;border-color:var(--accent);font-weight:700}[data-theme=volta] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 16px 48px #000000b3,0 0 40px #00d9920f}[data-theme=volta] *{font-family:var(--font)}[data-theme=warp]{--bg0: #1a1916;--bg1: #212019;--bg2: #2a2820;--bg3: #333128;--bg4: #3f3c32;--bg5: #4e4a3e;--glass: rgba(250,249,246,.03);--glass2: rgba(250,249,246,.06);--glass3: rgba(250,249,246,.1);--border: rgba(250,249,246,.08);--border2: rgba(250,249,246,.15);--border3: rgba(250,249,246,.26);--accent: #faf9f6;--accent-dim: rgba(250,249,246,.12);--accent-glow: rgba(250,249,246,.25);--violet: #666469;--violet-dim: rgba(102,100,105,.2);--cyan: #afaeac;--cyan-dim: rgba(175,174,172,.15);--magenta: #868584;--magenta-dim: rgba(134,133,132,.2);--amber: #d4a574;--amber-dim: rgba(212,165,116,.15);--green: #7eb888;--red: #c85a5a;--text0: #faf9f6;--text1: #afaeac;--text2: #a5a4a2;--text3: #9b9b99;--font: "Inter", "Helvetica Neue", sans-serif;--mono: "JetBrains Mono", monospace;--r: 9999px;--r2: 12px;--r3: 8px}[data-theme=warp] body{background:var(--bg0);color:var(--text0)}[data-theme=warp] .nav{background:#1a1916f5!important;backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}[data-theme=warp] .nav-logo-text{font-weight:400;letter-spacing:2.4px;text-transform:uppercase;font-size:var(--fs-xs);color:var(--text0)}[data-theme=warp] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=warp] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:12px}[data-theme=warp] .scene-card:hover{border-color:var(--border2);box-shadow:0 4px 16px #0006}[data-theme=warp] .scene-card.selected{border-color:var(--text0)!important;box-shadow:0 0 0 1px #faf9f680!important}[data-theme=warp] .btn,[data-theme=warp] button.btn{border-radius:9999px;font-weight:400;background:#353534;color:var(--text0);border-color:transparent}[data-theme=warp] .btn.primary,[data-theme=warp] button.btn.primary{background:#353534;color:var(--text0);border-color:transparent}[data-theme=warp] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:16px;box-shadow:0 16px 48px #0009}[data-theme=xai]{--bg0: #1f2228;--bg1: #252a32;--bg2: #2d333c;--bg3: #353c46;--bg4: #3e4550;--bg5: #484f5c;--glass: rgba(255,255,255,.03);--glass2: rgba(255,255,255,.05);--glass3: rgba(255,255,255,.08);--border: rgba(255,255,255,.1);--border2: rgba(255,255,255,.2);--border3: rgba(255,255,255,.36);--accent: #ffffff;--accent-dim: rgba(255,255,255,.12);--accent-glow: rgba(255,255,255,.2);--violet: #ffffff;--violet-dim: rgba(255,255,255,.1);--cyan: #ffffff;--cyan-dim: rgba(255,255,255,.1);--magenta: #ffffff;--magenta-dim: rgba(255,255,255,.1);--amber: #ffffff;--amber-dim: rgba(255,255,255,.1);--green: #22c55e;--red: #ef4444;--text0: #ffffff;--text1: rgba(255,255,255,.75);--text2: rgba(255,255,255,.65);--text3: rgba(255,255,255,.55);--font: "Spectral", serif;--mono: "IBM Plex Mono", monospace;--r: 4px;--r2: 2px;--r3: 0px}[data-theme=xai] body{background:var(--bg0);color:var(--text0)}[data-theme=xai] .nav{background:#1f2228f7!important;border-bottom:1px solid var(--border)}[data-theme=xai] .nav-logo-text{font-family:var(--mono);font-weight:300;letter-spacing:1.4px;text-transform:uppercase;color:var(--text0)}[data-theme=xai] .sidebar{background:var(--bg1);border-right:1px solid var(--border)}[data-theme=xai] .scene-card{background:var(--bg2);border:1px solid var(--border);border-radius:4px;box-shadow:none}[data-theme=xai] .scene-card:hover{border-color:var(--border2)}[data-theme=xai] .scene-card.selected{border-color:#fff!important;box-shadow:none!important}[data-theme=xai] .btn,[data-theme=xai] button.btn{font-family:var(--mono);border-radius:0;text-transform:uppercase;letter-spacing:1.4px;font-size:var(--fs-xs);font-weight:300}[data-theme=xai] .btn.primary,[data-theme=xai] button.btn.primary{background:#fff;color:var(--bg0);border-color:#fff}[data-theme=xai] .modal-content{background:var(--bg1);border:1px solid var(--border2);border-radius:4px;box-shadow:none}[data-theme=xai] *{font-family:var(--font)}.ff-mswitch{display:none}.ff-mswitch{position:fixed;left:0;right:0;bottom:0;z-index:calc(var(--z-nav) + 50);height:calc(var(--ff-msw-h, 58px) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:#060a12f0;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border)}.ff-mswitch button{flex:1;background:none;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--text2);font-size:var(--fs-xs);font-weight:600;font-family:var(--font);letter-spacing:.2px;padding-top:7px}.ff-mswitch button .ff-ic{font-size:var(--fs-xl);line-height:1}.ff-mswitch button.on{color:var(--accent)}.ff-sheet-back{position:fixed;inset:0;z-index:calc(var(--z-overlay) + 50);background:#03050a99;opacity:0;pointer-events:none;transition:opacity .2s}.ff-sheet-back.open{opacity:1;pointer-events:auto}.ff-sheet{position:fixed;left:0;right:0;bottom:0;z-index:calc(var(--z-overlay) + 60);background:var(--bg2);border-top:1px solid var(--border2);border-radius:18px 18px 0 0;padding:0 var(--space-6) calc(16px + env(safe-area-inset-bottom,0px));transform:translateY(110%);transition:transform .26s cubic-bezier(.2,.8,.2,1);box-shadow:0 -16px 50px #00000080}.ff-sheet.open{transform:translateY(0)}.ff-sheet-grab{width:38px;height:4px;border-radius:2px;background:var(--border3, rgba(255,255,255,.22));margin:var(--space-5) auto var(--space-3)}.ff-sheet button{width:100%;text-align:left;display:flex;align-items:center;gap:13px;background:none;border:none;cursor:pointer;color:var(--text0);font-size:var(--fs-lg);font-weight:600;font-family:var(--font);padding:var(--space-7) var(--space-5);border-radius:12px}.ff-sheet button:active{background:var(--bg3)}.ff-sheet button .ff-ic{font-size:var(--fs-2xl);width:24px;text-align:center;flex-shrink:0}.ff-sheet button .ff-tx{display:flex;flex-direction:column}.ff-sheet button .ff-sub{font-size:var(--fs-xs);font-weight:400;color:var(--text2);margin-top:var(--space-px)}.ff-sheet-divider{height:1px;background:var(--border);margin:var(--space-2) var(--space-4)}@media (max-width: 860px){:root{--ff-msw-h: 58px}.nav{gap:var(--space-4);padding:0 var(--space-6)}.nav .act-tabs,.nav .kbd,.nav-actions>.btn{display:none!important}.nav-actions{margin-left:auto;gap:var(--space-4)}.story-switcher,.story-switcher-text{min-width:0}.story-switcher-label{max-width:42vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace{grid-template-columns:1fr!important;grid-template-rows:1fr!important;height:100vh;height:100dvh;padding-top:var(--nav-h);padding-bottom:calc(var(--ff-msw-h) + env(safe-area-inset-bottom,0px))}.workspace>.sidebar,.workspace>.canvas,.workspace>.panel{grid-column:1!important;grid-row:1!important;width:100%!important;min-width:0!important;max-width:100%!important}body[data-mp=story] .workspace>.canvas,body[data-mp=story] .workspace>.panel{display:none!important}body[data-mp=canvas] .workspace>.sidebar,body[data-mp=canvas] .workspace>.panel{display:none!important}body[data-mp=panel] .workspace>.sidebar,body[data-mp=panel] .workspace>.canvas{display:none!important}.workspace.panel-docked-bottom{grid-template-rows:1fr!important}.workspace.panel-docked-bottom>.panel{grid-row:1!important;grid-column:1!important}.panel-ew-handle,.sidebar-ew-handle,.sidebar-resize-handle{display:none!important}.modal-sm,.modal-md,.modal-lg,.modal-xl{width:94vw!important;max-width:94vw!important}.modal{max-height:88vh}.user-panel{width:100vw!important;max-width:100vw!important}.ff-mswitch{display:flex!important}.auth-bg-glow{width:340px;height:340px;top:-80px}.auth-bg-glow2{width:240px;height:240px;bottom:-60px;right:-40px}.auth-bg-grid{background-size:28px 28px}}.ffp-locked{position:relative}.ffp-locked:after{content:"";position:absolute;top:50%;right:8px;transform:translateY(-50%);width:11px;height:11px;flex-shrink:0;background-color:currentColor;opacity:.5;-webkit-mask:var(--ffp-lock) center / contain no-repeat;mask:var(--ffp-lock) center / contain no-repeat;pointer-events:none}.ffp-locked:hover:after{opacity:.95}.sidebar-char-btn.ffp-locked,.cam-sidebar-btn.ffp-locked,.btn.ffp-locked{padding-right:26px}:root{--ffp-lock: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='10.5' width='16' height='10' rx='2.5'/%3E%3Cpath d='M8 10.5V7a4 4 0 0 1 8 0v3.5'/%3E%3C/svg%3E")}.ffp-overlay{position:fixed;inset:0;z-index:var(--z-toast);display:flex;align-items:center;justify-content:center;padding:var(--space-9);background:#03060cb8;backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:opacity var(--dur-base);overflow-y:auto}.ffp-overlay.open{opacity:1;pointer-events:auto}.ffp-sheet{position:relative;width:min(440px,100%);background:var(--bg1);border:1px solid var(--border2);border-radius:18px;padding:30px 30px 26px;box-shadow:0 32px 90px #000000b3,0 0 0 1px #4f82ff1a;transform:translateY(14px) scale(.98);transition:transform var(--dur-base) var(--ease-spring)}.ffp-overlay.open .ffp-sheet{transform:translateY(0) scale(1)}.ffp-close{position:absolute;top:12px;right:12px;width:var(--tap-min);height:var(--tap-min);display:flex;align-items:center;justify-content:center;background:none;border:none;cursor:pointer;color:var(--text2);font-size:var(--fs-2xl);line-height:1;border-radius:8px;transition:color var(--dur-fast),background var(--dur-fast)}.ffp-close:hover{color:var(--text0);background:var(--glass)}.ffp-close:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.ffp-badge{display:inline-block;margin-bottom:var(--space-7);padding:var(--space-2) 9px;border-radius:6px;background:var(--accent-dim);color:var(--accent);border:1px solid rgba(79,130,255,.25);font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;text-transform:uppercase}.ffp-title{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.4px;color:var(--text0);margin-bottom:var(--space-4);line-height:1.25}.ffp-blurb{font-size:var(--fs-sm);line-height:1.6;color:var(--text1);margin-bottom:var(--space-9)}.ffp-included{background:var(--bg0);border:1px solid var(--border);border-radius:12px;padding:var(--space-7) 15px;margin-bottom:var(--space-9)}.ffp-included-label{font-family:var(--mono);font-size:var(--fs-xs);font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--text2);margin-bottom:var(--space-5)}.ffp-list{list-style:none;display:grid;gap:7px}.ffp-list li{position:relative;padding-left:var(--space-9);font-size:var(--fs-sm);color:var(--text1);line-height:1.4}.ffp-list li:before{content:"";position:absolute;left:0;top:5px;width:11px;height:11px;background-color:var(--accent);opacity:.75;-webkit-mask:var(--ffp-check) center / contain no-repeat;mask:var(--ffp-check) center / contain no-repeat}.ffp-list li.is-target{color:var(--text0);font-weight:700}.ffp-list li.is-target:before{opacity:1}:root{--ffp-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 6.5'/%3E%3C/svg%3E")}.ffp-actions{display:flex;flex-direction:column;gap:9px}.ffp-cta{width:100%;min-height:var(--tap-min);padding:var(--space-6) 18px;border:none;border-radius:10px;cursor:pointer;background:linear-gradient(135deg,var(--accent) 0%,var(--violet) 100%);color:var(--text-on-accent);font-family:var(--font);font-size:var(--fs-md);font-weight:800;letter-spacing:-.2px;box-shadow:0 6px 22px var(--accent-glow);transition:transform var(--dur-fast),box-shadow var(--dur-fast)}.ffp-cta:hover{transform:translateY(-1px);box-shadow:0 10px 30px var(--accent-glow)}.ffp-cta:active{transform:translateY(0)}.ffp-cta:focus-visible{outline:2px solid var(--text0);outline-offset:2px}.ffp-dismiss{width:100%;min-height:var(--tap-min);padding:var(--space-5);border:1px solid var(--border);border-radius:10px;background:var(--glass);color:var(--text2);cursor:pointer;font-family:var(--font);font-size:var(--fs-sm);font-weight:600;transition:color var(--dur-fast),border-color var(--dur-fast)}.ffp-dismiss:hover{color:var(--text1);border-color:var(--border2)}.ffp-dismiss:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ffp-fine{margin-top:13px;text-align:center;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text3);line-height:1.5}@media (max-width: 440px){.ffp-sheet{padding:26px var(--space-9) 22px;border-radius:14px}.ffp-title{font-size:var(--fs-2xl)}}.ff-trial-banner{display:flex;align-items:center;gap:9px;padding:var(--space-2) 5px var(--space-2) 11px;border-radius:8px;background:var(--accent-dim);border:1px solid rgba(79,130,255,.25);white-space:nowrap}.ff-trial-banner[hidden]{display:none}.ff-trial-txt{font-family:var(--mono);font-size:var(--fs-xs);font-weight:500;color:var(--accent)}.ff-trial-cta{padding:var(--space-2) var(--space-5);border:none;border-radius:6px;cursor:pointer;background:var(--accent);color:var(--text-on-accent);font-family:var(--font);font-size:var(--fs-xs);font-weight:700;transition:filter var(--dur-fast)}.ff-trial-cta:hover{filter:brightness(1.12)}.ff-trial-cta:focus-visible{outline:2px solid var(--text0);outline-offset:2px}.ff-trial-banner.is-urgent{background:var(--amber-dim);border-color:#f59e0b4d}.ff-trial-banner.is-urgent .ff-trial-txt{color:var(--amber)}.ff-trial-banner.is-urgent .ff-trial-cta{background:var(--amber);color:#1a1204}.ff-trial-banner.is-expired{background:var(--glass);border-color:var(--border2)}.ff-trial-banner.is-expired .ff-trial-txt{color:var(--text2)}@media (pointer: coarse){.ff-trial-cta{min-height:34px}}@media (max-width: 860px){.ff-trial-banner{padding:var(--space-2)}.ff-trial-txt{display:none}}.auth-closed-note{display:none}html[data-ff-signups=closed] .auth-closed-note{display:block;margin:var(--space-4) 0 0;text-align:center;font-size:var(--fs-xs);color:var(--text2);line-height:1.5}html[data-ff-signups=closed] .auth-closed-note a{color:var(--accent)}html[data-ff-signups=closed] #authTabs,html[data-ff-signups=closed] #authRegisterForm{display:none!important}.auth-cta-note{margin-top:9px;text-align:center;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text3);line-height:1.5}.ffp-readonly [data-ffp-ro]{opacity:.45;cursor:not-allowed!important}.ffp-readonly input[data-ffp-ro],.ffp-readonly textarea[data-ffp-ro],.ffp-readonly [contenteditable][data-ffp-ro]{opacity:1;cursor:default!important;background-image:repeating-linear-gradient(-45deg,transparent 0 6px,rgba(139,154,184,.045) 6px 12px)}.ffp-readonly [data-ffp-ro]:focus{outline:none;box-shadow:none}.ffp-ro-banner{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:11px;padding:var(--space-5) var(--space-7);background:var(--amber-dim);border-bottom:1px solid rgba(245,158,11,.28);backdrop-filter:blur(8px);font-family:var(--font)}.ffp-ro-icon{flex-shrink:0;width:15px;height:15px;background-color:var(--amber);-webkit-mask:var(--ffp-lock) center / contain no-repeat;mask:var(--ffp-lock) center / contain no-repeat}.ffp-ro-txt{flex:1;font-size:var(--fs-sm);line-height:1.45;color:var(--text1)}.ffp-ro-txt strong{color:var(--amber);font-weight:800}.ffp-ro-cta{flex-shrink:0;min-height:32px;padding:var(--space-3) var(--space-7);border:none;border-radius:7px;cursor:pointer;background:var(--amber);color:#1a1204;font-family:var(--font);font-size:var(--fs-sm);font-weight:800;transition:filter var(--dur-fast)}.ffp-ro-cta:hover{filter:brightness(1.1)}.ffp-ro-cta:focus-visible{outline:2px solid var(--text0);outline-offset:2px}@media (max-width: 560px){.ffp-ro-banner{padding:9px 11px;gap:9px}.ffp-ro-txt{font-size:var(--fs-xs)}}.fft-overlay{position:fixed;inset:0;z-index:calc(var(--z-toast) + 10);display:flex;align-items:center;justify-content:center;padding:var(--space-9);background:#03060ccc;backdrop-filter:blur(10px);opacity:0;pointer-events:none;transition:opacity var(--dur-base);overflow-y:auto}.fft-overlay.open{opacity:1;pointer-events:auto}.fft-card{position:relative;width:min(480px,100%);background:var(--bg1);border:1px solid var(--border2);border-radius:20px;padding:var(--space-11) 34px 26px;box-shadow:0 40px 100px #000000b3,0 0 0 1px #4f82ff1a;transform:translateY(16px) scale(.97);transition:transform var(--dur-slow) var(--ease-spring)}.fft-overlay.open .fft-card{transform:translateY(0) scale(1)}.fft-dots{display:flex;gap:var(--space-3);margin-bottom:22px}.fft-dot{width:22px;height:3px;border-radius:2px;background:var(--border2);transition:background var(--dur-base)}.fft-dot.is-on{background:var(--accent)}.fft-title{font-size:var(--fs-2xl);font-weight:800;letter-spacing:-.5px;color:var(--text0);line-height:1.2;margin-bottom:var(--space-6)}.fft-body{font-size:var(--fs-md);line-height:1.65;color:var(--text1);margin-bottom:var(--space-7)}.fft-body strong{color:var(--text0);font-weight:700}.fft-hint{padding:11px 13px;margin-bottom:var(--space-10);background:var(--bg0);border-left:2px solid var(--accent);border-radius:0 8px 8px 0;font-size:var(--fs-sm);line-height:1.55;color:var(--text2)}.fft-hint strong{color:var(--accent);font-weight:700}.fft-actions{display:flex;align-items:center;gap:9px}.fft-spacer{flex:1}.fft-skip,.fft-back{min-height:var(--tap-min);padding:9px var(--space-7);background:none;border:1px solid transparent;border-radius:9px;color:var(--text3);cursor:pointer;font-family:var(--font);font-size:var(--fs-sm);font-weight:600;transition:color var(--dur-fast),border-color var(--dur-fast)}.fft-back{border-color:var(--border);color:var(--text2)}.fft-skip:hover,.fft-back:hover{color:var(--text1);border-color:var(--border2)}.fft-skip:focus-visible,.fft-back:focus-visible,.fft-next:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fft-next{min-height:var(--tap-min);padding:var(--space-5) var(--space-9);border:none;border-radius:9px;cursor:pointer;background:linear-gradient(135deg,var(--accent) 0%,var(--violet) 100%);color:var(--text-on-accent);font-family:var(--font);font-size:var(--fs-sm);font-weight:800;box-shadow:0 5px 18px var(--accent-glow);transition:transform var(--dur-fast),box-shadow var(--dur-fast)}.fft-next:hover{transform:translateY(-1px);box-shadow:0 9px 26px var(--accent-glow)}.fft-next:active{transform:translateY(0)}@media (max-width: 480px){.fft-card{padding:26px 22px var(--space-9);border-radius:16px}.fft-title{font-size:var(--fs-2xl)}.fft-body{font-size:var(--fs-sm)}.fft-skip{padding:9px var(--space-4)}}.story-picker-item.is-sample .story-picker-name:after{content:"SAMPLE";margin-left:var(--space-4);padding:var(--space-1) 5px;border-radius:4px;vertical-align:middle;background:var(--glass);border:1px solid var(--border2);color:var(--text3);font-family:var(--mono);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.8px}.story-picker-new[hidden]{display:none!important}.ic{width:16px;height:16px;flex-shrink:0;display:inline-block;vertical-align:-.18em;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.ic-sm{width:13px;height:13px;stroke-width:1.85}.ic-lg{width:20px;height:20px;stroke-width:1.6}.ic-xl{width:26px;height:26px;stroke-width:1.45}.modal-icon .ic,.auth-activate-icon .ic{vertical-align:middle}.btn .ic,.story-picker-new .ic,.up-footer-btn .ic,.sidebar-char-btn .ic,.cam-sb-icon .ic,.s-node-icon .ic{margin-right:var(--space-px)}@media (prefers-contrast: more){.ic{stroke-width:2.1}}[data-cs=ref-main].on .ic,[data-cs=char-ref-main].on .ic,.ffcl-fav.on .ic,.vault-fav.on .ic,.hist-btn.on .ic{fill:currentColor}.nav-tools{display:flex;align-items:center;gap:var(--space-1);padding:var(--space-1);border-radius:9px;background:var(--bg2);border:1px solid var(--border)}.btn-icon{width:28px;height:28px;padding:0;display:flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:7px;color:var(--text2)}.btn-icon:hover{background:var(--glass2);color:var(--text0);border:none}.btn-icon:active{transform:translateY(.5px)}.btn-icon:focus-visible{outline:2px solid var(--accent);outline-offset:-1px}.btn-icon.ffp-locked{padding-right:0}.btn-icon.ffp-locked:after{top:3px;right:3px;transform:none;width:9px;height:9px;opacity:.75}@media (pointer: coarse){.btn-icon{width:var(--tap-min);height:var(--tap-min)}.nav-tools{gap:3px}}@media (max-width: 1100px){.nav-tools{display:none}}.ff-lazy-busy{position:fixed;bottom:20px;left:50%;z-index:calc(var(--z-toast) + 20);display:flex;align-items:center;gap:var(--space-5);padding:var(--space-5) var(--space-8);border-radius:10px;background:var(--bg2);border:1px solid var(--border2);box-shadow:0 12px 32px #00000080;font-family:var(--font);font-size:var(--fs-sm);font-weight:600;color:var(--text1);white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,8px);transition:opacity var(--dur-base),transform var(--dur-base)}.ff-lazy-busy.show{opacity:1;transform:translate(-50%)}.ff-lazy-spin{width:13px;height:13px;flex-shrink:0;border:2px solid var(--border3);border-top-color:var(--accent);border-radius:50%;animation:ffLazySpin .7s linear infinite}@keyframes ffLazySpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.ff-lazy-spin{animation:none;border-color:var(--accent);border-top-color:var(--accent);opacity:.7}}.scene-hero{aspect-ratio:16 / 9}.scene-hero-overlay{background:linear-gradient(to bottom,transparent 55%,rgba(6,10,18,.72) 100%)}.scene-info .scene-num{display:inline-flex;align-items:center;gap:var(--space-3);background:#060a12c7;border:1px solid rgba(255,255,255,.1);padding:var(--space-1) var(--space-4) var(--space-1) var(--space-1);border-radius:999px;backdrop-filter:blur(6px)}.scene-num-act{color:#ffffffb8;font-size:var(--fs-2xs);letter-spacing:.06em}.hero-tags .tag{background:#060a12b8;border:1px solid rgba(255,255,255,.12);color:#ffffffe0;backdrop-filter:blur(6px)}.hero-actions{flex-wrap:wrap;max-width:calc(100% - 24px)}.hero-action-btn{white-space:nowrap;flex-shrink:0}.scene-body{flex-direction:column;align-items:stretch}.prompt-preview{border-right:none}.scene-stats-sidebar{flex-direction:row;align-items:center;gap:var(--space-8);min-width:0;padding:var(--space-4) var(--space-8) var(--space-5);background:transparent;border-top:1px solid var(--border)}.scene-stat-item{flex-shrink:0}.scene-title-bar-text{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.scene-title-bar .ff-pipe{margin-left:auto}.scene-max-btn{flex-shrink:0}.ff-update-bar{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));transform:translate(-50%);z-index:var(--z-toast);display:flex;align-items:center;gap:10px;max-width:calc(100vw - 24px);padding:10px 12px 10px 16px;background:var(--bg3);color:var(--text0);border:1px solid var(--border2);border-radius:var(--r);box-shadow:0 8px 32px #00000073;font:500 13px/1.3 var(--font);animation:ff-update-in var(--dur-base) var(--ease-spring) both}.ff-update-txt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ff-update-btn{flex-shrink:0;min-height:32px;padding:0 12px;border:1px solid var(--border2);border-radius:var(--r2);background:transparent;color:var(--text1);font:inherit;cursor:pointer}.ff-update-btn:hover{background:var(--glass2);color:var(--text0)}.ff-update-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ff-update-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.ff-update-btn.primary:hover{filter:brightness(1.1);background:var(--accent)}@keyframes ff-update-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.ff-update-bar{animation:none}}.up-email-row{display:flex;align-items:center;gap:var(--space-4);min-height:32px}.up-email-current{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text0)}.up-link-btn{flex-shrink:0;background:none;border:none;padding:var(--space-2) var(--space-3);font:700 var(--fs-xs) var(--font);color:var(--accent);cursor:pointer;border-radius:6px}.up-link-btn:hover{background:var(--accent-dim)}.up-link-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.up-email-pending{margin-top:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--amber-dim);border:1px solid rgba(245,158,11,.35);border-radius:7px;font-size:var(--fs-xs);color:var(--text1);line-height:1.45}.up-email-pending strong{color:var(--text0);word-break:break-all}.up-email-change{display:grid;gap:var(--space-3);margin-top:var(--space-4)}.up-email-change[hidden]{display:none}.up-email-hint{font-size:var(--fs-2xs);color:var(--text2);line-height:1.45}.ff-hov-reveal:hover{opacity:1!important}.ff-hov-grow:hover{transform:scale(1.15)!important}.ff-hov-accent:hover{color:var(--accent)!important;background:var(--accent-dim)!important}.ff-hov-border:hover,.ff-hov-border:focus-visible{border-color:var(--accent)!important}.ff-hov-bg-accent:hover{background:#4f82ff40!important}.ff-hov-bg-glass:hover{background:var(--glass2)!important}.ff-hov-fill-accent:hover{background:#4f82ff26!important;border-color:var(--accent)!important}.ff-hov-fill-green:hover{background:#22c55e26!important;border-color:var(--green)!important}.ff-hov-quiet:hover{border-color:var(--border2)!important;color:var(--text1)!important}.ff-focus-accent:focus{border-color:var(--accent)!important}.ff-img-globe{font-size:var(--fs-2xl)}@media (prefers-reduced-motion: reduce){.ff-hov-grow:hover{transform:none!important}}body:not(.ff-cast-all) .ff-castscope .ff-cast-ico.dim:not(.ff-cast-adding),body:not(.ff-cast-all) .ff-castscope .ff-cast-ico-wrap:has(>.ff-cast-ico.dim:not(.ff-cast-adding)){display:none}body.ff-cast-all .ff-castscope-none{display:none}.ff-castscope-btn{font:inherit;font-family:var(--mono);font-size:var(--fs-2xs);font-weight:700;letter-spacing:.3px;height:26px;padding:0 10px;border-radius:13px;cursor:pointer;flex-shrink:0;white-space:nowrap;border:1px dashed var(--border2);background:var(--glass);color:var(--text2);display:inline-flex;align-items:center}.ff-castscope-btn:hover,.ff-castscope-btn:focus-visible{border-color:var(--accent);border-style:solid;color:var(--accent);outline:none}.ff-castscope-btn[aria-pressed=true]{border-style:solid;color:var(--text1)}.ff-castscope-btn[hidden]{display:none}.lb-lane-seg{display:inline-flex;gap:2px;margin-top:6px;padding:2px;border-radius:7px;background:var(--bg0);border:1px solid var(--border)}.lb-lane-seg button{display:inline-flex;align-items:center;gap:5px;font:inherit;font-size:var(--fs-2xs);font-weight:700;padding:3px 9px;border:0;border-radius:5px;background:transparent;color:var(--text2);cursor:pointer}.lb-lane-seg button[aria-pressed=true]{background:var(--accent-dim);color:var(--text0)}.lb-lane-seg button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.lb-strip-vid{position:absolute;right:2px;bottom:2px;width:14px;height:14px;border-radius:3px;display:grid;place-items:center;background:#06b6d4e6;color:#fff;pointer-events:none}.lb-strip-vid .ic{width:9px;height:9px}
