:root{--black:#000000;--white:#ffffff;--red:#e8636c;--red-dim:rgba(232,99,108,0.12);--indigo:#424c96;--indigo-dim:rgba(66,76,150,0.15);--gray-bg:#e7e6e6;--gray-dark:#111111;--gray-card:#161616;--gray-mid:#2a2a2a;--gray-light:#b0b0b0;--gray-muted:#707070;--accent-gradient:linear-gradient(135deg,var(--red),var(--indigo));--border:rgba(255,255,255,0.06);--border-hover:rgba(255,255,255,0.14);--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:32px;--s8:40px;--s9:48px;--s10:56px;--s11:64px;--s12:80px;--s13:96px;--s14:120px;--font-mono:"Roboto Mono",monospace;--font-sans:"Inter",sans-serif;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--shadow-card:0 4px 24px rgba(0,0,0,0.4);--slide-width:1920px;--slide-height:1080px;--cover-bg:#000000;--editor-bg:#0a0a0a;--editor-panel:#111111;--editor-panel-border:rgba(255,255,255,0.08);--editor-toolbar:#0d0d0d;--editor-highlight:rgba(232,99,108,0.2);--editor-selection:rgba(66,76,150,0.3);--editor-canvas-bg:#1a1a1a;--ed-bg:#0a0a0a;--ed-panel:#111111;--ed-panel-2:#161616;--ed-toolbar:#0d0d0d;--ed-canvas-bg:#1a1a1a;--ed-border:rgba(255,255,255,0.06);--ed-border-2:rgba(255,255,255,0.1);--ed-text:#e8e8e8;--ed-text-2:#a0a0a0;--ed-text-3:#666666;--ed-accent:#e8636c;--ed-accent-2:#424c96;--ed-success:#4ade80;--ed-warn:#f59e0b;--text-primary:#e8e8e8;--ruler-tick:rgba(255,255,255,0.25);--ruler-label:rgba(255,255,255,0.35);--grid-stroke:rgba(255,255,255,0.08);--slide-shadow:0 16px 48px rgba(0,0,0,0.9),0 0 0 1px rgba(255,255,255,0.14);--shadow-float:0 8px 32px rgba(0,0,0,0.55);--shadow-menu:0 8px 24px rgba(0,0,0,0.6);--toggle-off:rgba(255,255,255,0.08);--chip-bg:rgba(255,255,255,0.06);--surface-tint:rgba(255,255,255,0.03);--input-bg:rgba(255,255,255,0.05);--row-selected:rgba(255,255,255,0.08);--swatch-border:rgba(255,255,255,0.15)}[data-theme=light]{--border:rgba(0,0,0,0.08);--border-hover:rgba(0,0,0,0.16);--shadow-card:0 4px 24px rgba(0,0,0,0.1);--editor-bg:#f0f0f2;--editor-panel:#ffffff;--editor-panel-border:rgba(0,0,0,0.08);--editor-toolbar:#fafafa;--editor-highlight:rgba(232,99,108,0.12);--editor-selection:rgba(66,76,150,0.15);--editor-canvas-bg:#e2e2e5;--ed-bg:#f0f0f2;--ed-panel:#ffffff;--ed-panel-2:#f5f5f7;--ed-toolbar:#fafafa;--ed-canvas-bg:#e2e2e5;--ed-border:rgba(0,0,0,0.07);--ed-border-2:rgba(0,0,0,0.12);--ed-text:#1a1a1a;--ed-text-2:#555555;--ed-text-3:#888888;--ed-accent:#e8636c;--ed-accent-2:#424c96;--ed-success:#16a34a;--ed-warn:#d97706;--text-primary:#1a1a1a;--indigo-dim:rgba(66,76,150,0.1);--red-dim:rgba(232,99,108,0.1);--cover-bg:#111111;--ruler-tick:rgba(0,0,0,0.22);--ruler-label:rgba(0,0,0,0.38);--grid-stroke:rgba(0,0,0,0.1);--slide-shadow:0 8px 32px rgba(0,0,0,0.18),0 0 0 1px rgba(0,0,0,0.1);--shadow-float:0 4px 16px rgba(0,0,0,0.14);--shadow-menu:0 8px 24px rgba(0,0,0,0.16);--toggle-off:rgba(0,0,0,0.1);--chip-bg:rgba(0,0,0,0.06);--surface-tint:rgba(0,0,0,0.03);--input-bg:rgba(0,0,0,0.04);--row-selected:rgba(0,0,0,0.07);--swatch-border:rgba(0,0,0,0.15)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-sans);background:var(--ed-bg);color:var(--ed-text);-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--chip-bg);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--ruler-tick)}.editor{position:fixed;inset:0;background:var(--ed-bg);color:var(--ed-text);font-family:var(--font-sans);font-size:13px;display:flex;flex-direction:column;overflow:hidden}.editor>.sub,.editor>.tb{flex-shrink:0}.editor>.editor-body{flex:1 1;min-height:0}.editor>.notes-bar,.editor>.strip{flex-shrink:0}.tb{display:flex;align-items:center;background:var(--ed-toolbar);border-bottom:1px solid var(--ed-border);padding:6px 14px;gap:8px;position:relative;z-index:5}@media (max-width:1100px){.tb .ai-tag{display:none}}@media (max-width:960px){.tb-hide-md{display:none!important}}@media (max-width:768px){.tb-hide-sm,.tb-txt-sm{display:none!important}}@media (max-width:640px){.tb-hide-xs{display:none!important}}.tb-section{display:flex;align-items:center;gap:3px}.tb-divider{width:1px;height:22px;background:var(--ed-border-2);flex-shrink:0}.tb-grow{flex:1 1}.brand{display:flex;align-items:center;gap:8px;flex-shrink:0}.brand-mark{width:24px;height:24px;border-radius:6px;background:linear-gradient(135deg,var(--red) 0,var(--indigo) 100%);position:relative;flex-shrink:0}.brand-mark:after{content:"";position:absolute;inset:5px;border:1.5px solid #000;border-radius:2px}.brand-name{font-weight:500;font-size:13px;color:var(--ed-text);letter-spacing:-.01em}.brand-name,.brand-sep{font-family:var(--font-mono)}.brand-sep{color:var(--ed-text-3)}.crumb{display:flex;align-items:center;gap:6px;padding:4px 8px;border-radius:6px;cursor:pointer;max-width:320px;overflow:hidden}.crumb:hover{background:var(--surface-tint)}.crumb-team{font-family:var(--font-mono);font-size:11px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.crumb-title{font-size:13px;color:var(--ed-text);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.crumb-status{font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);padding:2px 6px;border:1px solid var(--ed-border);border-radius:3px;text-transform:uppercase;white-space:nowrap;flex-shrink:0}.tbtn{height:30px;min-width:30px;padding:0 8px;display:inline-flex;align-items:center;justify-content:center;gap:5px;background:transparent;color:var(--ed-text);border:0;border-radius:6px;cursor:pointer;font:inherit;font-size:13px;flex-shrink:0}.tbtn:hover{background:var(--chip-bg)}.tbtn:disabled{opacity:.3;cursor:not-allowed}.tbtn:disabled:hover{background:transparent}.tbtn.active{background:var(--toggle-off)}.tbtn-primary{height:30px;padding:0 12px;background:var(--ed-accent);color:#fff;border:0;border-radius:6px;font:inherit;font-size:12.5px;font-weight:500;display:inline-flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap;flex-shrink:0}.tbtn-primary:hover{filter:brightness(1.08)}.tbtn-ghost{height:30px;padding:0 12px;background:transparent;color:var(--ed-text);border:1px solid var(--ed-border-2);border-radius:6px;font:inherit;font-size:12.5px;display:inline-flex;align-items:center;gap:5px;cursor:pointer;white-space:nowrap;flex-shrink:0}.tbtn-ghost:hover{border-color:var(--ed-border-2);background:var(--surface-tint)}.presence{display:flex}.av,.presence{align-items:center}.av{width:28px;height:28px;border-radius:50%;border:2px solid var(--ed-toolbar);margin-left:-8px;display:inline-flex;justify-content:center;font-family:var(--font-mono);font-size:10px;font-weight:500;color:#fff;position:relative;flex-shrink:0}.av:first-child{margin-left:0}.av-dot{position:absolute;bottom:-1px;right:-1px;width:8px;height:8px;background:var(--ed-success);border:1.5px solid var(--ed-toolbar);border-radius:50%}.ai-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;background:var(--indigo-dim);border:1px solid rgba(66,76,150,.4);border-radius:4px;font-family:var(--font-mono);font-size:10px;color:#a4adff;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.sub{display:flex;flex-direction:column;background:var(--ed-panel);border-bottom:1px solid var(--ed-border);position:relative;z-index:4}.sub-row{display:flex;align-items:center;padding:0 14px;gap:3px}.sub-row-1{height:44px;border-bottom:none}.sub-row-2{height:36px;border-top:1px solid var(--ed-border);gap:0;overflow:hidden}.sub-grow{flex:1 1}.tool{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer;color:var(--ed-text-2);border:0;background:transparent;flex-shrink:0}.tool:hover{background:var(--input-bg);color:var(--ed-text)}.tool.active{background:rgba(232,99,108,.14);color:var(--red)}.shortcut{display:inline-flex;align-items:center;gap:3px;font-family:var(--font-mono);font-size:11px;color:var(--ed-text-3);flex-shrink:0}.shortcut .key{display:inline-block;min-width:16px;text-align:center;padding:1px 4px;background:var(--surface-tint);border:1px solid var(--ed-border);border-radius:3px;color:var(--ed-text-2);font-size:10px}.editor-body{flex-direction:row;flex:1 1;min-height:0}.editor-body,.sidebar-left{display:flex;overflow:hidden}.sidebar-left{flex-shrink:0;width:0;transition:width .2s ease;background:var(--ed-panel);border-right:0 solid var(--ed-border);flex-direction:column}.sidebar-left.open{width:240px;border-right-width:1px}.sidebar-left-inner{width:240px;height:100%}.sidebar-left-inner,.sidebar-right{display:flex;flex-direction:column;overflow:hidden}.sidebar-right{flex-shrink:0;width:0;transition:width .2s ease;background:var(--ed-panel);border-left:0 solid var(--ed-border)}.sidebar-right.open{width:260px;border-left-width:1px}.sidebar-right-inner{width:260px;height:100%;display:flex;flex-direction:column;overflow:hidden}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--ed-border);flex-shrink:0;font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.07em}.sidebar-header-tabs{display:flex;gap:0;flex:1 1}.sidebar-tab{flex:1 1;height:28px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;color:var(--ed-text-3);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;transition:color .15s,border-color .15s}.sidebar-tab.active{color:var(--ed-text);border-bottom-color:var(--ed-accent)}.sidebar-close{background:none;border:none;cursor:pointer;color:var(--ed-text-3);padding:3px;display:flex;align-items:center;border-radius:4px;flex-shrink:0}.sidebar-close:hover{background:var(--surface-tint);color:var(--ed-text-2)}.sidebar-body{flex:1 1;overflow-y:auto;overflow-x:hidden}.stage{position:relative;background:var(--ed-canvas-bg);overflow:hidden;flex:1 1;min-width:0}.stage-grid{inset:0;background-image:radial-gradient(circle,var(--surface-tint) 1px,transparent 1px);background-size:24px 24px;background-position:12px 12px;pointer-events:none;z-index:0}.fp,.stage-grid{position:absolute}.fp{background:var(--ed-panel);border:1px solid var(--ed-border-2);border-radius:12px;box-shadow:var(--shadow-float);z-index:30;display:flex;flex-direction:column;overflow:hidden}.fp-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--ed-border);flex-shrink:0}.palette{left:12px;top:12px;bottom:12px;width:216px}.pal-search{display:flex;align-items:center;gap:6px;margin:8px 10px 4px;padding:5px 8px;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:6px;font-size:11px}.pal-cat,.pal-search{color:var(--ed-text-3);font-family:var(--font-mono);flex-shrink:0}.pal-cat{display:block;margin:10px 12px 5px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}.pal-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:6px;gap:6px;padding:0 8px 8px}.pal-item{aspect-ratio:1.2;border-radius:8px;background:var(--ed-bg);border:1px solid var(--ed-border);position:relative;overflow:hidden;cursor:-webkit-grab;cursor:grab;transition:border-color .12s,transform .12s}.pal-item:hover{border-color:var(--ed-border-2);transform:translateY(-1px)}.pal-item-label{position:absolute;bottom:0;left:0;right:0;padding:4px 6px;font-family:var(--font-mono);font-size:9.5px;color:var(--ed-text-2);background:linear-gradient(to top,var(--ed-bg) 60%,transparent)}.pal-body{overflow-y:auto;flex:1 1}.props{right:12px;top:12px;bottom:12px;width:268px}.props-tabs{display:flex;border-bottom:1px solid var(--ed-border);flex-shrink:0}.props-tab{flex:1 1;padding:9px 0;text-align:center;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ed-text-3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.props-tab.active{color:var(--ed-text);border-bottom-color:var(--ed-accent)}.props-body{overflow-y:auto;flex:1 1}.psec{padding:12px 14px;border-bottom:1px solid var(--ed-border)}.psec-title{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ed-text-3);margin-bottom:10px;justify-content:space-between}.prow,.psec-title{display:flex;align-items:center}.prow{gap:6px;margin-bottom:6px}.prow:last-child{margin-bottom:0}.plabel{font-size:10px;color:var(--ed-text-3);text-transform:uppercase;width:14px;flex-shrink:0}.pinput,.plabel{font-family:var(--font-mono)}.pinput{flex:1 1;height:28px;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:5px;color:var(--ed-text);padding:0 8px;font-size:11px;display:flex;align-items:center}input.pinput{outline:none;width:100%}input.pinput:focus{border-color:var(--ed-accent)}.swatch{width:22px;height:22px;border-radius:5px;border:1px solid var(--ed-border-2);flex-shrink:0;cursor:pointer}.seg{display:inline-flex;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:5px;overflow:hidden;height:28px}.seg button{min-width:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:0;color:var(--ed-text-3);cursor:pointer;padding:0 6px}.seg button:hover{color:var(--ed-text-2)}.seg button.on{background:var(--toggle-off);color:var(--ed-text)}.row{display:flex;align-items:center;gap:6px;margin-bottom:6px}.row:last-child{margin-bottom:0}.row .label{font-size:10px;color:var(--ed-text-3);text-transform:uppercase;width:14px;flex-shrink:0}.input,.row .label{font-family:var(--font-mono)}.input{flex:1 1;height:28px;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:5px;color:var(--ed-text);padding:0 8px;font-size:11px;display:flex;align-items:center;gap:6px;box-sizing:border-box}.input.split{display:grid;grid-template-columns:auto 1fr;grid-gap:0;gap:0;padding:0;overflow:hidden}.input.split .pre{padding:0 6px;border-right:1px solid var(--ed-border);color:var(--ed-text-3);font-size:9px;white-space:nowrap;letter-spacing:.05em}.input.split .pre,.input.split .val{display:flex;align-items:center;font-family:var(--font-mono)}.input.split .val{padding:0 8px;font-size:11px}.toggle{width:28px;height:16px;background:var(--toggle-off);border:1px solid var(--ed-border);border-radius:10px;position:relative;cursor:pointer;flex-shrink:0;transition:background .15s}.toggle:after{content:"";position:absolute;left:3px;top:50%;transform:translateY(-50%);width:9px;height:9px;background:var(--ed-text-3);border-radius:50%;transition:left .15s,background .15s}.toggle.on{background:var(--ed-accent);border-color:var(--ed-accent)}.toggle.on:after{left:14px;background:#fff}.zoom{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;background:var(--ed-panel);border:1px solid var(--ed-border-2);border-radius:8px;padding:4px;box-shadow:var(--shadow-float);z-index:30;font-family:var(--font-mono);font-size:11px}.zoom,.zoom-btn{align-items:center;color:var(--ed-text-2)}.zoom-btn{width:26px;height:26px;display:inline-flex;justify-content:center;background:transparent;border:0;border-radius:5px;cursor:pointer}.zoom-btn:hover{background:var(--chip-bg);color:var(--ed-text)}.zoom-val{padding:0 10px;min-width:52px;text-align:center}.fmt-bar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-float)}.fmt-bar input[type=number]::-webkit-inner-spin-button,.fmt-bar input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.fmt-bar input:focus{border-color:var(--ed-accent)!important;box-shadow:0 0 0 1px var(--ed-accent)}.strip{background:var(--ed-panel);border-top:1px solid var(--ed-border);display:flex;align-items:stretch;padding:10px 12px;gap:10px;overflow:hidden;position:relative}.strip-col{flex-shrink:0;padding-right:10px;border-right:1px solid var(--ed-border);flex-direction:column}.strip-add,.strip-col{display:flex;gap:6px;justify-content:center}.strip-add{width:152px;height:46px;border:1.5px dashed var(--ed-border-2);border-radius:6px;align-items:center;color:var(--ed-text-3);background:transparent;cursor:pointer;font-family:var(--font-mono);font-size:10px}.strip-add:hover{border-color:var(--ed-accent);color:var(--ed-text-2)}.strip-thumbs{display:flex;gap:10px;overflow-x:auto;flex:1 1;align-items:flex-start;padding-bottom:2px}.strip-thumbs::-webkit-scrollbar{height:4px}.thumb{flex-shrink:0;display:flex;flex-direction:column;gap:4px}.thumb-frame{width:152px;height:86px;background:var(--cover-bg);border-radius:4px;position:relative;overflow:hidden;border:1.5px solid transparent;cursor:pointer}.thumb-frame:hover{border-color:var(--ed-border-2)}.thumb.active .thumb-frame{border-color:var(--ed-accent)}.thumb-meta{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:9.5px;color:var(--ed-text-3);padding:0 1px}.thumb-num{color:var(--ed-text-2)}.thumb-label{max-width:110px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.thumb-handle{position:absolute;bottom:4px;left:50%;transform:translateX(-50%);opacity:0;transition:opacity .15s}.thumb-frame:hover .thumb-handle{opacity:1}.thumb-badges{position:absolute;top:4px;right:4px;display:flex;gap:3px}.tbadge{background:rgba(0,0,0,.6);color:var(--ed-text-2);font-family:var(--font-mono);font-size:8px;padding:2px 4px;border-radius:3px}.dash{position:fixed;inset:0;background:var(--ed-bg);color:var(--ed-text);font-family:var(--font-sans);font-size:13px;display:grid;grid-template-columns:240px 1fr;grid-template-rows:56px 1fr;overflow:hidden}.dash-top{grid-column:1/-1;padding:0 16px;border-bottom:1px solid var(--ed-border);background:var(--ed-toolbar);gap:12px}.dash-search,.dash-top{display:flex;align-items:center}.dash-search{flex:0 1 400px;height:32px;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:6px;gap:8px;padding:0 10px;color:var(--ed-text-3);font-family:var(--font-mono);font-size:11px;cursor:text}.dash-side{background:var(--ed-bg);border-right:1px solid var(--ed-border);padding:12px 8px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.nav-section{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--ed-text-3);padding:10px 10px 5px;justify-content:space-between}.nav-item,.nav-section{display:flex;align-items:center}.nav-item{height:32px;gap:9px;padding:0 10px;border-radius:6px;color:var(--ed-text-2);cursor:pointer;font-size:13px;text-decoration:none;transition:background .1s,color .1s}.nav-item:hover{background:var(--surface-tint);color:var(--ed-text)}.nav-item.active{background:rgba(232,99,108,.1);color:var(--ed-text)}.nav-item.active .nav-icon{color:var(--ed-accent)}.nav-count{margin-left:auto;font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3)}.team-row{display:flex;align-items:center;gap:9px;padding:0 10px;height:30px;border-radius:6px;cursor:pointer}.team-row:hover{background:var(--surface-tint)}.team-mark{width:18px;height:18px;border-radius:4px;flex-shrink:0;font-family:var(--font-mono);font-size:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}.team-name{font-size:12.5px;color:var(--ed-text-2)}.dash-main{overflow-y:auto;padding:28px 36px 60px}.dash-h1{font-family:var(--font-sans);font-weight:600;font-size:26px;letter-spacing:-.015em;margin:0 0 3px;color:var(--ed-text)}.dash-sub{color:var(--ed-text-3);font-family:var(--font-mono);font-size:11px;letter-spacing:.02em;margin-bottom:20px}.dash-tabs{display:flex;gap:20px;border-bottom:1px solid var(--ed-border);margin-bottom:16px}.dash-tab{padding:8px 0;font-size:13px;color:var(--ed-text-3);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;display:inline-flex;align-items:center;gap:7px}.dash-tab.active{color:var(--ed-text);border-bottom-color:var(--ed-accent)}.tab-badge{font-family:var(--font-mono);font-size:10px;padding:1px 6px;background:var(--chip-bg);border-radius:3px;color:var(--ed-text-2)}.dash-toolbar{display:flex;align-items:center;margin-bottom:16px;gap:6px;flex-wrap:wrap}.chip{height:28px;padding:0 10px;display:inline-flex;align-items:center;gap:5px;background:var(--ed-panel);border:1px solid var(--ed-border);border-radius:6px;font-size:11px;color:var(--ed-text-2);cursor:pointer;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em}.chip:hover{border-color:var(--ed-border-2)}.pres-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:16px;gap:16px}.pres-card{background:var(--ed-panel);border:1px solid var(--ed-border);border-radius:10px;overflow:hidden;cursor:pointer;text-decoration:none;display:block;transition:border-color .12s,transform .12s}.pres-card:hover{border-color:var(--ed-border-2);transform:translateY(-1px)}.card-cover{aspect-ratio:16/9;background:var(--cover-bg);position:relative;overflow:hidden}.card-meta{padding:11px 13px 13px;display:flex;flex-direction:column;gap:7px}.card-title{font-size:13px;font-weight:500;color:var(--ed-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-row{justify-content:space-between;font-family:var(--font-mono);font-size:10.5px;color:var(--ed-text-3)}.card-row,.card-row-left{display:flex;align-items:center}.card-row-left{gap:5px}.card-avatars{display:flex}.card-avatars .av{width:18px;height:18px;font-size:9px;border-width:1.5px;margin-left:-5px;border-color:var(--ed-panel)}.card-avatars .av:first-child{margin-left:0}.card-status{display:inline-flex;gap:4px;font-family:var(--font-mono);font-size:10px;padding:1px 6px;border-radius:3px;background:var(--ed-bg);border:1px solid var(--ed-border);white-space:nowrap}.card-status,.pres-card-new{align-items:center;color:var(--ed-text-2)}.pres-card-new{background:transparent;border:1.5px dashed var(--ed-border-2);border-radius:10px;display:flex;justify-content:center;flex-direction:column;gap:8px;font-size:12.5px;cursor:pointer;aspect-ratio:16/11;text-decoration:none;transition:border-color .12s,color .12s}.pres-card-new:hover{border-color:var(--ed-accent);color:var(--ed-text)}.new-plus{width:32px;height:32px;border-radius:8px;background:var(--ed-panel);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--ed-text-2)}.new-hint{font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3)}.dash-section-header{display:flex;align-items:center;justify-content:space-between;margin:28px 0 14px}.dash-section-header .t{text-transform:uppercase;letter-spacing:.08em}.dash-section-header .t,.see-all{font-family:var(--font-mono);font-size:11px;color:var(--ed-text-3)}.see-all{cursor:pointer;text-decoration:none}.see-all:hover{color:var(--ed-text-2)}.presenter{position:fixed;inset:0;z-index:9999;background:#050505;color:var(--ed-text);font-family:var(--font-sans);display:grid;grid-template-columns:1fr 460px;grid-template-rows:56px 1fr 80px}.pv-top{grid-column:1/-1;display:flex;align-items:center;padding:0 20px;background:#0a0a0a;border-bottom:1px solid var(--ed-border);gap:16px;font-family:var(--font-mono);font-size:11px;color:var(--ed-text-2);letter-spacing:.05em}.pv-top .live{color:var(--red);display:inline-flex;align-items:center;gap:6px}.pv-top .live:before{content:"";width:8px;height:8px;background:var(--red);border-radius:50%;box-shadow:0 0 10px var(--red)}.pv-stage{padding:32px 24px 24px 32px;display:flex;align-items:center;justify-content:center;position:relative}.pv-current{width:100%;aspect-ratio:16/9;background:var(--cover-bg);border-radius:6px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.7);position:relative}.pv-current-inner{position:absolute;inset:0;transform-origin:0 0}@keyframes pv-fade-in{0%{opacity:0}to{opacity:1}}@keyframes pv-slide-in{0%{opacity:0;transform:translateX(2%)}to{opacity:1;transform:translateX(0)}}.pv-side{background:#0a0a0a;border-left:1px solid var(--ed-border);padding:24px 24px 16px;display:flex;flex-direction:column;gap:18px;overflow:hidden}.pv-next{width:100%;aspect-ratio:16/9;background:var(--cover-bg);border-radius:4px;overflow:hidden;position:relative;border:1px solid var(--ed-border)}.pv-next-inner{position:absolute;inset:0;transform-origin:0 0}.pv-section-h{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--ed-text-3);display:flex;align-items:center;justify-content:space-between}.pv-notes{flex:1 1;background:var(--surface-tint);border:1px solid var(--ed-border);border-radius:6px;padding:14px 16px;font-size:14px;line-height:1.55;color:var(--ed-text-2);overflow:auto}.pv-notes b{color:var(--ed-accent);font-weight:500}.pv-bot{grid-column:1/-1;display:flex;padding:0 20px;background:#0a0a0a;border-top:1px solid var(--ed-border);gap:16px}.pv-bot,.pv-timer{align-items:center}.pv-timer{font-family:var(--font-mono);font-size:28px;letter-spacing:.04em;color:var(--white);display:inline-flex;gap:14px}.pv-timer .lbl{font-size:9px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.12em;display:flex;flex-direction:column;line-height:1.2}.pv-progress{flex:1 1;height:4px;background:rgba(255,255,255,.06);border-radius:2px;position:relative;margin:0 20px}.pv-progress>.pv-fill{position:absolute;left:0;top:0;bottom:0;background:var(--ed-accent);border-radius:2px;transition:width .3s}.pv-progress>.ticks{position:absolute;inset:0;display:flex}.pv-progress>.ticks span{flex:1 1;border-right:1px solid #050505}.pv-tools{display:flex;gap:4px}.pv-tool{width:36px;height:36px;background:rgba(255,255,255,.04);border:1px solid var(--ed-border);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--ed-text-2);cursor:pointer}.pv-tool.on{background:var(--ed-accent);color:#fff;border-color:var(--ed-accent)}.minimap{position:absolute;top:16px;right:16px;width:120px;height:80px;background:var(--ed-panel);border:1px solid var(--ed-border-2);border-radius:8px;z-index:25;padding:6px;box-sizing:border-box;box-shadow:var(--shadow-float)}.minimap-frame{background:var(--ed-canvas-bg);border-radius:4px;width:100%;height:100%;position:relative;overflow:hidden}.ruler-h,.ruler-v{position:absolute;background:var(--ed-panel);border-color:var(--ed-border);z-index:3;pointer-events:none;flex-shrink:0}.ruler-h{top:0;left:22px;right:0;height:22px;border-bottom:1px solid var(--ed-border)}.ruler-v{top:0;left:0;bottom:0;width:22px;border-right:1px solid var(--ed-border)}.slide-wrap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.slide-label{position:absolute;bottom:-28px;left:0;font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);letter-spacing:.05em;text-transform:uppercase;pointer-events:none}.pin{position:absolute;width:24px;height:24px;border-radius:50% 50% 50% 0;transform:rotate(-45deg);display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:20;box-shadow:0 2px 8px rgba(0,0,0,.5)}.pin span{transform:rotate(45deg);font-family:var(--font-mono);font-size:10px;font-weight:600;color:#fff}.laser-dot{position:absolute;width:14px;height:14px;background:radial-gradient(circle,#ff3b3b 30%,rgba(255,59,59,.4) 70%,transparent 100%);border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:30}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px;gap:14px}.card{background:var(--ed-panel);border:1px solid var(--ed-border);border-radius:10px;overflow:hidden;cursor:pointer;transition:border-color .12s,transform .12s;display:flex;flex-direction:column}.card:hover{border-color:var(--ed-border-2);transform:translateY(-1px)}.card-new{border:1.5px dashed var(--ed-border-2);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ed-text-2);font-size:12.5px;cursor:pointer;aspect-ratio:16/10;text-decoration:none;transition:border-color .12s,color .12s;background:transparent}.card-new:hover{border-color:var(--ed-accent);color:var(--ed-text)}.card-new .plus{width:32px;height:32px;border-radius:8px;background:var(--ed-bg);display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--ed-text-2)}.card-new .hint{font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3)}.card-pres{display:flex;align-items:center}.card-pres .av{width:18px;height:18px;font-size:9px;border-width:1.5px;margin-left:-5px;border-color:var(--ed-panel)}.card-pres .av:first-child{margin-left:0}.card-left,.left{display:flex;align-items:center;gap:5px}.card-status.review{color:var(--ed-warn);border-color:rgba(245,158,11,.3);background:rgba(245,158,11,.08)}.card-status.shipped{color:var(--ed-success);border-color:rgba(74,222,128,.3);background:rgba(74,222,128,.08)}.card-status.ai{color:#a4adff;border-color:rgba(66,76,150,.3);background:rgba(66,76,150,.12)}.card-status.draft{color:var(--ed-text-3)}.badge{font-family:var(--font-mono);font-size:10px;padding:1px 6px;background:var(--chip-bg);border-radius:3px;color:var(--ed-text-2)}.nav-icon{color:var(--ed-text-3);display:flex;align-items:center}.kbd{font-size:10px;padding:1px 6px;background:var(--chip-bg);border:1px solid var(--ed-border);border-radius:3px}.dash-section-h,.kbd{font-family:var(--font-mono);color:var(--ed-text-3)}.dash-section-h{display:flex;align-items:center;justify-content:space-between;margin:28px 0 14px;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.dash-section-h .t{letter-spacing:.04em}.claude-panel{right:12px;top:12px;bottom:12px;width:360px}.cp-header{gap:10px;padding:14px 14px 10px;border-bottom:1px solid var(--ed-border)}.cp-header,.cp-mark{display:flex;align-items:center;flex-shrink:0}.cp-mark{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,#424c96,#6e79c8);justify-content:center}.cp-title{font-size:13px;font-weight:500;color:var(--ed-text);font-family:var(--font-sans)}.cp-sub{color:#a4adff;margin-top:1px}.cp-status,.cp-sub{font-family:var(--font-mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.08em}.cp-status{margin-left:auto;color:var(--ed-success)}.cp-thread{flex:1 1;overflow-y:auto;padding:10px 12px;display:flex;flex-direction:column;gap:8px}.cp-msg-user{background:var(--surface-tint);border:1px solid var(--ed-border);border-radius:8px;padding:8px 10px;color:var(--ed-text)}.cp-msg-claude,.cp-msg-user{font-size:12.5px;line-height:1.45}.cp-msg-claude{color:var(--ed-text-2);padding:0 2px}.cp-tool-call{background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:8px;overflow:hidden;font-family:var(--font-mono);font-size:11px}.cp-tool-name{align-items:center;gap:6px;background:rgba(66,76,150,.12);color:#a4adff;font-size:10.5px;border-bottom:1px solid var(--ed-border)}.cp-diff,.cp-tool-name{display:flex;padding:6px 10px}.cp-diff{flex-direction:column;gap:2px}.cp-diff .ctx{color:var(--ed-text-3);font-size:10px;margin-top:2px}.cp-diff .rm{color:#f87171}.cp-diff .add{color:#4ade80}.cp-input{padding:8px;border-top:1px solid var(--ed-border);display:flex;flex-direction:column;gap:6px;flex-shrink:0}.cp-input-box{background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:8px;padding:8px 10px;min-height:52px;font-size:12.5px;color:var(--ed-text);line-height:1.45}.cp-input-box:focus-within{border-color:rgba(66,76,150,.6)}.cp-actions{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.cp-cmd{height:24px;padding:0 8px;background:transparent;border:1px solid var(--ed-border);border-radius:5px;font-family:var(--font-mono);font-size:10.5px;color:var(--ed-text-2);cursor:pointer}.cp-cmd:hover{border-color:var(--ed-border-2);color:var(--ed-text)}.ctxchip{background:rgba(66,76,150,.18);border:1px solid rgba(66,76,150,.3);border-radius:4px;padding:1px 7px;font-family:var(--font-mono);font-size:10.5px;color:#a4adff}.caret:after{content:"|";animation:blink 1s step-end infinite;color:var(--ed-accent)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.comments-panel{right:12px;top:12px;bottom:12px;width:340px}.cm-filter{display:flex;gap:6px;padding:8px 10px;border-bottom:1px solid var(--ed-border);flex-shrink:0}.chip.on{background:var(--toggle-off);border-color:var(--ed-border-2);color:var(--ed-text)}.cm-thread{flex:1 1;overflow-y:auto;display:flex;flex-direction:column;gap:1px}.cm-card{padding:10px 12px;cursor:pointer;border-bottom:1px solid var(--ed-border);transition:background .1s}.cm-card.active,.cm-card:hover{background:var(--surface-tint)}.cm-card.active{border-left:2px solid var(--ed-accent);padding-left:10px}.cm-card.resolved{opacity:.5}.cm-row{display:flex;align-items:center;gap:7px;margin-bottom:5px;font-family:var(--font-mono);font-size:11px}.cm-row .who{color:var(--ed-text);font-size:11.5px}.cm-row .when{color:var(--ed-text-3);margin-left:auto}.cm-pin{width:18px;height:18px;border-radius:50%;background:var(--ed-accent);color:#fff;font-family:var(--font-mono);font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cm-pin.r{background:var(--swatch-border);color:var(--ed-text-3)}.cm-body{font-size:12.5px;color:var(--ed-text-2);line-height:1.45;margin-bottom:6px}.cm-actions{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3)}.cm-actions span{cursor:pointer}.cm-actions span:hover,.cm-reply{color:var(--ed-text-2)}.cm-reply{display:flex;align-items:center;gap:6px;background:var(--surface-tint);border:1px solid var(--ed-border);border-radius:6px;padding:5px 8px;margin-bottom:6px;font-family:var(--font-mono);font-size:11px}.men{color:var(--ed-accent)}.veil{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100}.modal{background:var(--ed-panel);border:1px solid var(--ed-border-2);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-float);display:flex;flex-direction:column;max-height:90vh}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;padding:20px 22px 16px;border-bottom:1px solid var(--ed-border);flex-shrink:0}.modal-h1{font-size:16px;font-weight:600;color:var(--ed-text);font-family:var(--font-sans);letter-spacing:-.01em;margin:0}.modal-sub{font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.08em;margin-top:4px}.modal-body{overflow-y:auto;flex:1 1;padding:18px 22px;display:flex;flex-direction:column;gap:20px}.modal-foot{display:flex;align-items:center;gap:8px;padding:14px 22px;border-top:1px solid var(--ed-border);flex-shrink:0}.field{display:flex;flex-direction:column;gap:7px}.field-label{font-family:var(--font-mono);font-size:10.5px;color:var(--ed-text-3);text-transform:uppercase;letter-spacing:.08em}.field-row{display:flex;align-items:center;gap:8px}.field-input{height:34px;border:1px solid var(--ed-border);border-radius:7px;padding:0 12px;display:flex;font-size:13px}.field-input,.role-pill{background:var(--ed-bg);align-items:center;color:var(--ed-text-2)}.role-pill{height:30px;padding:0 10px;border:1px solid var(--ed-border);border-radius:6px;font-family:var(--font-mono);font-size:11px;cursor:pointer;display:inline-flex;gap:4px;white-space:nowrap}.role-pill:hover{border-color:var(--ed-border-2)}.role-pill.disabled{cursor:default;opacity:.5}.people-row{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--ed-border)}.people-row:last-child{border-bottom:none}.people-meta{flex:1 1;min-width:0}.people-name{font-size:13px;color:var(--ed-text);font-weight:500}.people-mail{font-family:var(--font-mono);font-size:10px;color:var(--ed-text-3);margin-top:2px}.permission-tile{display:flex;align-items:center;gap:12px;padding:12px 14px;background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:8px;cursor:pointer}.permission-tile.on{border-color:var(--ed-accent);background:rgba(232,99,108,.05)}.permission-tile .icon{width:36px;height:36px;border-radius:8px;background:var(--input-bg);display:flex;align-items:center;justify-content:center;color:var(--ed-text-3);flex-shrink:0}.permission-tile .meta{flex:1 1;min-width:0}.permission-tile .meta .t{font-size:13px;color:var(--ed-text);font-weight:500}.permission-tile .meta .d{font-size:10.5px;margin-top:3px}.permission-tile .meta .d,.steps{font-family:var(--font-mono);color:var(--ed-text-3)}.steps{gap:0;padding:12px 22px;border-bottom:1px solid var(--ed-border);font-size:11px;flex-shrink:0}.steps,.steps .s{display:flex;align-items:center}.steps .s{gap:7px;padding:4px 0;text-transform:uppercase;letter-spacing:.06em}.steps .s.active{color:var(--ed-text)}.steps .s.done{color:var(--ed-success)}.steps .s .num{width:20px;height:20px;border-radius:50%;background:var(--chip-bg);border:1px solid var(--ed-border);display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:700;flex-shrink:0}.steps .s.active .num{background:var(--ed-accent);border-color:var(--ed-accent);color:#fff}.steps .s.done .num{background:var(--ed-success);border-color:var(--ed-success);color:#000}.steps .sep{margin:0 10px;color:var(--ed-border-2)}.drop{gap:12px;background:var(--ed-bg);border:1px solid var(--ed-border);padding:12px 14px}.drop,.drop-mark{display:flex;align-items:center;border-radius:8px}.drop-mark{width:36px;height:36px;background:var(--input-bg);border:1px solid var(--ed-border);justify-content:center;color:var(--ed-text-2);flex-shrink:0}.preview-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.preview-tile{aspect-ratio:16/9;background:var(--cover-bg);border-radius:3px;position:relative;overflow:hidden;border:1px solid var(--ed-border);cursor:pointer}.preview-tile.warn{border-color:rgba(245,158,11,.5)}.pv-num{bottom:3px;left:4px;font-size:8px;color:var(--ed-text-3)}.pv-num,.pv-warn-tag{position:absolute;font-family:var(--font-mono)}.pv-warn-tag{top:3px;right:3px;background:rgba(245,158,11,.85);color:#000;font-size:7.5px;padding:1px 4px;border-radius:2px;font-weight:700}.mapping-table{background:var(--ed-bg);border:1px solid var(--ed-border);border-radius:8px;overflow:hidden;font-family:var(--font-mono);font-size:11.5px}.mapping-row{display:flex;align-items:center;gap:12px;padding:8px 12px;border-bottom:1px solid var(--ed-border)}.mapping-row:last-child{border-bottom:none}.mapping-row .src{color:var(--ed-text-2);flex:1 1}.mapping-row .arrow{color:var(--ed-text-3);flex-shrink:0}.mapping-row .dst{color:var(--ed-text);flex:1 1;text-align:right}[data-theme=light] .minimap{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1)}[data-theme=light] input[type=range]{background:rgba(0,0,0,.1)}[data-theme=light] input[type=range]::-webkit-slider-runnable-track{background:rgba(0,0,0,.08)}[data-theme=light] .chip{border-color:rgba(0,0,0,.1)}[data-theme=light] input[type=number],[data-theme=light] input[type=text],[data-theme=light] textarea{background:rgba(0,0,0,.04);border-color:rgba(0,0,0,.12);color:var(--ed-text)}[data-theme=light] input[type=number]:focus,[data-theme=light] input[type=text]:focus,[data-theme=light] textarea:focus{background:rgba(0,0,0,.06);border-color:var(--ed-accent)}[data-theme=light] .pi,[data-theme=light] .prop-input{background:rgba(0,0,0,.05);border-color:rgba(0,0,0,.1)}[data-theme=light] .shortcut-help{background:rgba(255,255,255,.96)}[data-theme=light] .shortcut-help .sh-item{background:rgba(0,0,0,.04)}[data-theme=light] .brand-mark:after{border-color:#fff}[data-theme=light] .stage-grid{background-image:radial-gradient(circle,rgba(0,0,0,.1) 1px,transparent 0)}[data-theme=light] .sp-item.active{background:rgba(0,0,0,.08)}.html-block-canvas-stage .ProseMirror{outline:none;width:100%;height:100%;font:inherit;color:inherit;background:transparent;padding:0;margin:0;cursor:text}.html-block-canvas-stage .ProseMirror h1,.html-block-canvas-stage .ProseMirror h2,.html-block-canvas-stage .ProseMirror h3,.html-block-canvas-stage .ProseMirror h4,.html-block-canvas-stage .ProseMirror p{margin:0}.row-hover{transition:background .1s ease}.row-hover:hover{background:var(--row-hover,rgba(255,255,255,.04))}