:root{--orange: #fd6802;--cyan: #99fcfd;--green: #00fe97;--yellow: #fef46f;--pink: #ffe2de;--purple: #9580ff;--bg: #131313;--panel: #1b1b1b;--panel-2: #262626;--border: #303030;--border-strong: #454545;--stage: #000;--code-bg: #0a0a0a;--shadow: 0 8px 28px rgba(0, 0, 0, .6);--text: #f2f2f2;--muted: #969696;--error: #ff6b5e;--ok: var(--green);--ok-soft: rgba(0, 254, 151, .12);--warn-soft: rgba(255, 107, 94, .14);--accent-soft: rgba(253, 104, 2, .1);--font-display: "Instrument Serif", serif;--font-body: "Geist", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--radius: 8px;--radius-sm: 5px}:root[data-theme=light]{--bg: #f4f2ef;--panel: #ffffff;--panel-2: #e9e6e1;--border: #ddd8d1;--border-strong: #bfb8ae;--stage: #111;--code-bg: #f0ede8;--shadow: 0 8px 28px rgba(40, 35, 30, .18);--text: #1a1814;--muted: #6f6a62;--error: #c8372a;--ok: #0a8f57;--ok-soft: rgba(10, 143, 87, .12);--warn-soft: rgba(200, 55, 42, .1);--accent-soft: rgba(253, 104, 2, .12)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-display);font-weight:400;margin:0}code,pre{font-family:var(--font-mono);font-size:.85em}p{margin:0 0 .6rem}p:last-child{margin-bottom:0}.muted{color:var(--muted)}.small{font-size:12px}.error{color:var(--error)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-track{background:transparent}.btn{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .9rem;border-radius:var(--radius-sm);border:1px solid transparent;font:inherit;font-weight:500;cursor:pointer;background:var(--panel-2);color:var(--text);text-decoration:none;transition:background .12s,border-color .12s,color .12s}.btn:disabled{opacity:.45;cursor:default}.btn--primary{background:var(--orange);color:#000}.btn--primary:not(:disabled):hover{background:#ff7d22}.btn--ghost{background:transparent;border-color:var(--border-strong)}.btn--ghost:not(:disabled):hover{border-color:var(--text)}.btn--danger{background:var(--error);color:#000}.btn--sm{padding:.3rem .65rem;font-size:13px}.link{background:none;border:none;padding:0;font:inherit;color:var(--orange);cursor:pointer;text-decoration:none}.link:hover{text-decoration:underline}.iconbtn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--muted);cursor:pointer}.iconbtn:hover{background:var(--panel-2);color:var(--text)}.chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--panel);color:var(--text);font:inherit;font-size:13px;cursor:pointer}.chip:hover,.chip--active{border-color:var(--orange);color:var(--orange)}.pill{padding:.25rem .7rem;border-radius:999px;border:1px solid var(--border-strong);background:transparent;color:var(--muted);font:inherit;font-size:12px;cursor:pointer}.pill--active{border-color:var(--orange);color:var(--orange)}.badge{display:inline-block;margin-left:.45rem;padding:.05rem .45rem;border-radius:999px;font-size:11px;vertical-align:middle}.badge--ok{background:var(--ok-soft);color:var(--ok)}.badge--warn{background:var(--warn-soft);color:var(--error)}.primitive-pill{display:inline-block;padding:.05rem .4rem;margin:0 .15rem .15rem 0;border-radius:4px;background:var(--panel-2);border:1px solid var(--border);font-size:11px}.full-page-status{height:100%;display:grid;place-items:center;color:var(--muted)}.login-shell{height:100%;display:grid;place-items:center}.login-card{width:min(360px,90vw);padding:2rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);display:flex;flex-direction:column;gap:.6rem}.login-card h1{font-size:2rem}.login-card label{font-size:12px;color:var(--muted);margin-top:.4rem}.login-card input{padding:.55rem .7rem;border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--bg);color:var(--text);font:inherit}.login-card input:focus{outline:none;border-color:var(--orange)}.login-card button{margin-top:.6rem;justify-content:center}.dashboard{height:100%;display:flex;flex-direction:column}.dashboard__bar{display:flex;align-items:center;gap:1rem;padding:.9rem 1.4rem;border-bottom:1px solid var(--border)}.dashboard__brand{display:flex;align-items:center;gap:.55rem;margin-right:auto}.brand-mark{width:12px;height:12px;border-radius:50%;background:var(--orange)}.brand-name{font-family:var(--font-display);font-size:1.15rem}.dashboard__search{display:flex;align-items:center;gap:.45rem;padding:.35rem .7rem;border:1px solid var(--border-strong);border-radius:999px;color:var(--muted)}.dashboard__search input{background:none;border:none;color:var(--text);font:inherit;width:180px}.dashboard__search input:focus{outline:none}.dashboard__signout{color:var(--muted);font-size:13px}.dashboard__body{flex:1;overflow-y:auto;padding:1.6rem 1.4rem}.dashboard__empty{text-align:center;margin-top:14vh;display:grid;gap:.7rem;justify-items:center}.dashboard__empty h2{font-size:2rem}.dashboard__error{display:grid;gap:.5rem;justify-items:start}.deck-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.deck-card{position:relative;border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);overflow:visible;transition:border-color .12s}.deck-card:hover{border-color:var(--border-strong)}.deck-card__main{display:block;color:inherit;text-decoration:none}.deck-card__stripe{display:flex;height:6px;border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.deck-card__band{flex:1}.deck-card__body{padding:.9rem 1rem 1rem}.deck-card__title{font-size:1.25rem;line-height:1.2}.deck-card__slug{margin:.25rem 0 .5rem;font-family:var(--font-mono);font-size:11px}.deck-card__meta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.deck-card__menu{position:absolute;top:10px;right:8px;z-index:2}.menu{position:absolute;top:38px;right:8px;z-index:10;min-width:180px;padding:.3rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel-2);box-shadow:var(--shadow);display:flex;flex-direction:column}.menu__item{display:flex;align-items:center;gap:.5rem;padding:.45rem .6rem;border:none;border-radius:4px;background:none;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.menu__item:hover{background:var(--panel)}.menu__item--destructive{color:var(--error)}.menu__sep{border:none;border-top:1px solid var(--border);margin:.25rem 0}.tag-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .5rem;border:1px solid var(--border);border-radius:999px;background:var(--panel-2);color:var(--muted);font-size:11px;line-height:1.5;white-space:nowrap}.deck-card__tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.55rem}.tag-chip__count{color:var(--muted);opacity:.7;font-variant-numeric:tabular-nums}.tag-chip--filter{cursor:pointer;color:var(--text);transition:border-color .12s,background .12s}.tag-chip--filter:hover{border-color:var(--border-strong)}.tag-chip--filter.is-active{background:var(--orange);border-color:var(--orange);color:#000}.tag-chip--filter.is-active .tag-chip__count{color:#000;opacity:.65}.tag-filter{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1.3rem}.tag-filter__clear{margin-left:.3rem;color:var(--muted)}.tag-filter__sep{width:1px;align-self:stretch;min-height:1.1em;background:var(--border);margin:0 .35rem}.tag-chip--published.is-active{background:var(--ok);border-color:var(--ok);color:#000}.tag-chip--published.is-active .tag-chip__count{color:#000;opacity:.65}.tag-input{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;padding:.45rem .5rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel-2)}.tag-chip--removable{color:var(--text)}.tag-chip__x{border:none;background:none;color:var(--muted);cursor:pointer;font-size:13px;line-height:1;padding:0}.tag-chip__x:hover{color:var(--text)}.tag-input__field{flex:1;min-width:120px;border:none;background:none;color:var(--text);font:inherit;padding:.15rem .1rem}.tag-input__field:focus{outline:none}.deck-groups{display:flex;flex-direction:column;gap:.5rem}.deck-group+.deck-group{border-top:1px solid var(--border);padding-top:.5rem}.deck-group__head{display:flex;align-items:center;gap:.55rem;width:100%;padding:.55rem .3rem;border:none;background:none;color:var(--text);font:inherit;cursor:pointer;text-align:left}.deck-group__head:hover{color:var(--text)}.deck-group__chevron{display:inline-flex;color:var(--muted);transform:rotate(-90deg);transition:transform .12s ease}.deck-group.is-open .deck-group__chevron{transform:rotate(0)}.deck-group__icon{display:inline-flex;color:var(--orange)}.deck-group__label{font-family:var(--font-display);font-size:1.05rem}.deck-group__count{margin-left:auto;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums}.deck-group .deck-grid{margin:.4rem 0 .8rem}.canvas{height:100%;display:flex;flex-direction:column}.canvas__topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.5rem .9rem;border-bottom:1px solid var(--border)}.canvas__topbar-left{display:flex;align-items:center;gap:.6rem;min-width:0}.canvas__deck-name{font-family:var(--font-mono);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas__topbar-actions{display:flex;align-items:center;gap:.45rem}.canvas__stage{flex:1;display:flex;min-height:0}.canvas__error{padding:2rem;display:grid;gap:.4rem;justify-items:start}.canvas__blank{display:grid;gap:.8rem;justify-items:center}.canvas__blank .muted{color:#9a9a9a}.canvas__blank-mark{width:18px;height:18px;border-radius:50%;background:var(--orange);animation:pulse 2.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.35}}.rail-toggle{flex:1;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.55rem .5rem;border:none;background:none;color:var(--muted);font:inherit;font-size:11px;text-transform:lowercase;letter-spacing:.04em;cursor:pointer}.rail-toggle:hover{color:var(--text)}.rail-toggle__label{writing-mode:vertical-rl}.rail-toggle__count{padding:0 .3rem;border-radius:999px;background:var(--panel-2);font-family:var(--font-mono);font-size:10px}.filmstrip{position:relative;width:168px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--panel)}.filmstrip--collapsed{width:auto}.filmstrip__head{display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.3rem .3rem .3rem .65rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;text-transform:lowercase;letter-spacing:.04em;flex-shrink:0;-webkit-user-select:none;user-select:none}.filmstrip__resize{position:absolute;top:0;bottom:0;right:-4px;width:9px;cursor:ew-resize;z-index:5;touch-action:none}.filmstrip__resize:hover:after,.filmstrip__resize:active:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:var(--orange)}.filmstrip__list{flex:1;overflow-y:auto;list-style:none;margin:0;padding:.5rem .45rem;display:flex;flex-direction:column;gap:.3rem}.filmstrip__tile{width:100%;display:flex;align-items:baseline;gap:.45rem;padding:.45rem .55rem;border:1px solid transparent;border-left:3px solid var(--section-color, var(--orange));border-radius:var(--radius-sm);background:var(--panel-2);color:var(--text);font:inherit;font-size:12px;text-align:left;cursor:pointer}.filmstrip__tile:hover{border-color:var(--border-strong);border-left-color:var(--section-color)}.filmstrip__activity{flex-shrink:0;align-self:center;margin-left:auto;width:7px;height:7px;border-radius:50%}.filmstrip__activity--streaming{background:var(--orange);animation:pulse 1s ease-in-out infinite}.filmstrip__activity--unread{background:var(--green)}.filmstrip__tile--active{border-color:var(--section-color);background:var(--bg)}.filmstrip__num{font-family:var(--font-mono);font-size:10px;color:var(--muted)}.filmstrip__title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.filmstrip__add{margin:.45rem;padding:.4rem;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:none;color:var(--muted);cursor:pointer}.filmstrip__add:hover{color:var(--orange);border-color:var(--orange)}.filmstrip__generating{display:flex;align-items:center;gap:.45rem;padding:.5rem .55rem;color:var(--muted);font-size:11px}.filmstrip__spinner{width:10px;height:10px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--orange);animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.preview-frame{flex:1;position:relative;display:grid;place-items:center;min-width:0;background:var(--stage)}.preview-frame__iframe{width:100%;height:100%;border:none;background:#000}.preview-frame__iframe--hidden{visibility:hidden}.preview-frame__skeleton{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted)}.canvas__tabs{display:inline-flex;gap:2px;margin-left:.9rem;background:var(--panel-2);border:1px solid var(--border);border-radius:var(--radius);padding:2px}.canvas__tab{border:none;background:transparent;color:var(--muted);font:inherit;font-size:.78rem;padding:.18rem .7rem;border-radius:var(--radius-sm);cursor:pointer}.canvas__tab--active{background:var(--panel);color:var(--text)}.plan-panel{display:block;overflow-y:auto;background:var(--bg)}.plan-panel__inner{max-width:780px;margin:0 auto;padding:2rem 2.2rem 4rem}.plan-panel h2{font-family:var(--font-display);font-weight:400;font-size:1.5rem;margin:0 0 .3rem}.plan-panel__section{margin-top:1.4rem;display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.06em;font-size:.74rem;color:var(--muted)}.plan-panel__dot{width:10px;height:10px;border-radius:50%;flex:none}.plan-panel__row{display:flex;align-items:center;gap:.6rem;padding:.45rem .2rem;border-bottom:1px solid var(--border);font-size:.9rem}.plan-panel__row-title{flex:2;min-width:0}.plan-panel__row-prim{color:var(--muted);font-family:var(--font-mono);font-size:.72rem;white-space:nowrap}.plan-panel__row input{background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);color:inherit;font:inherit;padding:.15rem .45rem;width:100%}.plan-panel__rowbtn{background:transparent;border:none;color:var(--muted);cursor:pointer;padding:0 .2rem}.plan-panel__rowbtn:hover{color:var(--text)}.plan-panel__actions{display:flex;gap:.5rem;margin-top:1.2rem;flex-wrap:wrap}.plan-panel__errors{color:var(--error);font-size:.84rem;margin-top:.8rem;white-space:pre-wrap}.plan-panel__rationale{color:var(--muted);font-size:.86rem;margin-top:1.4rem;line-height:1.5}.command-bar{position:relative;width:400px;flex-shrink:0;min-height:0;border-left:1px solid var(--border);background:var(--panel);display:flex;flex-direction:column}.command-bar--collapsed{width:auto}.command-bar--floating{position:fixed;z-index:60;min-width:320px;min-height:240px;border:1px solid var(--border-strong);border-radius:var(--radius);box-shadow:var(--shadow)}.command-bar__rs{position:absolute;z-index:10;touch-action:none}.command-bar__rs--n,.command-bar__rs--s{left:10px;right:10px;height:7px}.command-bar__rs--e,.command-bar__rs--w{top:10px;bottom:10px;width:7px}.command-bar__rs--n{top:-2px;cursor:ns-resize}.command-bar__rs--s{bottom:-2px;cursor:ns-resize}.command-bar__rs--e{right:-2px;cursor:ew-resize}.command-bar__rs--w{left:-2px;cursor:ew-resize}.command-bar__rs--ne,.command-bar__rs--nw,.command-bar__rs--se,.command-bar__rs--sw{width:14px;height:14px}.command-bar__rs--ne{top:-2px;right:-2px;cursor:nesw-resize}.command-bar__rs--sw{bottom:-2px;left:-2px;cursor:nesw-resize}.command-bar__rs--nw{top:-2px;left:-2px;cursor:nwse-resize}.command-bar__rs--se{bottom:-2px;right:-2px;cursor:nwse-resize}.command-bar__float-head{display:flex;align-items:center;gap:.45rem;padding:.35rem .5rem .35rem .9rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;text-transform:lowercase;letter-spacing:.04em;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0}.command-bar__float-head:active{cursor:grabbing}.command-bar__dock{margin-left:auto;font-size:13px}.command-bar__popout{margin-left:.2rem;font-size:12px}.command-bar__head{display:flex;align-items:center;gap:.45rem;padding:.35rem .5rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:11px;text-transform:lowercase;letter-spacing:.04em;flex-shrink:0;-webkit-user-select:none;user-select:none}.command-bar__head .command-bar__popout{margin-left:auto}.command-bar__resize{position:absolute;top:0;bottom:0;left:-4px;width:9px;cursor:ew-resize;z-index:5;touch-action:none}.command-bar__resize:hover:after,.command-bar__resize:active:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:2px;background:var(--orange)}.command-bar__turns{padding:0 .4rem;border-radius:999px;background:var(--panel-2);font-family:var(--font-mono);font-size:10px}.command-bar__clear{margin-left:auto;font-size:11px}.command-bar__limit{padding:.35rem .9rem;font-size:12px;color:var(--yellow)}.command-bar__limit--critical{color:var(--error)}.command-bar__skills{display:flex;flex-direction:column;margin:0 .9rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);overflow:hidden}.command-bar__skill{display:flex;align-items:baseline;gap:.6rem;padding:.45rem .75rem;border:none;background:none;color:var(--text);font:inherit;font-size:13px;text-align:left;cursor:pointer}.command-bar__skill--active{background:var(--panel-2)}.command-bar__skill-name{font-family:var(--font-mono);color:var(--orange);white-space:nowrap}.command-bar__skill-desc{color:var(--muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-bar__row{display:flex;flex-shrink:0;align-items:flex-end;flex-wrap:wrap;gap:.45rem;padding:.5rem .7rem .6rem}.command-bar__break{display:block;flex-basis:100%;height:0}.command-bar__error{font-size:12px;align-self:center;flex-basis:100%}.command-bar__attach{flex-shrink:0;align-self:flex-end;height:38px;width:38px;padding:0;justify-content:center;border:1px solid var(--border-strong)}.command-bar__attach:hover{border-color:var(--orange);color:var(--orange)}.command-bar__input{flex:1;min-width:0;resize:vertical;min-height:92px;max-height:50vh;padding:.55rem .75rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font:inherit}.command-bar__input:focus{outline:none;border-color:var(--orange)}.command-bar__send{height:38px;padding:0 1rem}.command-bar__usage{padding:0 .9rem .5rem}[data-tip]{position:relative}[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%);width:max-content;max-width:260px;padding:.5rem .65rem;border:1px solid var(--border-strong);border-radius:7px;background:var(--panel);color:var(--text);font-size:11.5px;font-weight:400;line-height:1.45;text-align:left;text-transform:none;letter-spacing:normal;white-space:pre-line;box-shadow:0 6px 18px #00000040;pointer-events:none;z-index:40}[data-tip]:hover:before,[data-tip]:focus-visible:before{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%) rotate(45deg);width:9px;height:9px;background:var(--panel);border-right:1px solid var(--border-strong);border-bottom:1px solid var(--border-strong);pointer-events:none;z-index:41}.scope-toggle [data-tip]:hover:after,.scope-toggle [data-tip]:focus-visible:after,.command-bar [data-tip]:hover:after,.command-bar [data-tip]:focus-visible:after{left:0;transform:none}.scope-toggle [data-tip]:hover:before,.scope-toggle [data-tip]:focus-visible:before,.command-bar [data-tip]:hover:before,.command-bar [data-tip]:focus-visible:before{left:16px;transform:rotate(45deg)}.scope-toggle--speed [data-tip]:hover:after,.scope-toggle--speed [data-tip]:focus-visible:after,.command-bar .scope-toggle--speed [data-tip]:hover:after,.command-bar .scope-toggle--speed [data-tip]:focus-visible:after{left:auto;right:0;transform:none}.scope-toggle--speed [data-tip]:hover:before,.scope-toggle--speed [data-tip]:focus-visible:before,.command-bar .scope-toggle--speed [data-tip]:hover:before,.command-bar .scope-toggle--speed [data-tip]:focus-visible:before{left:auto;right:16px;transform:rotate(45deg)}.command-bar__head [data-tip]:hover:after,.command-bar__head [data-tip]:focus-visible:after{bottom:auto;top:calc(100% + 9px);left:auto;right:0}.command-bar__head [data-tip]:hover:before,.command-bar__head [data-tip]:focus-visible:before{display:none}.scope-toggle{display:inline-flex;align-items:center;align-self:center;border:1px solid var(--border-strong);border-radius:999px;flex-shrink:0}.scope-toggle__opt{border:none;background:none;font:inherit;font-size:11.5px;padding:.26rem .55rem;color:var(--muted);cursor:pointer;white-space:nowrap}.scope-toggle__opt:first-child{border-radius:999px 0 0 999px}.scope-toggle__opt:last-child{border-radius:0 999px 999px 0}.scope-toggle__txt{display:block;max-width:11ch;overflow:hidden;text-overflow:ellipsis}.scope-toggle__opt+.scope-toggle__opt{border-left:1px solid var(--border-strong)}.scope-toggle__opt--active{background:var(--accent-soft);color:var(--orange)}.scope-toggle__opt:not(.scope-toggle__opt--active):hover{color:var(--text)}.scope-toggle__opt:disabled{opacity:.45;cursor:default}.conversation{max-height:50vh;overflow-y:auto;padding:.6rem .9rem;display:flex;flex-direction:column;gap:.7rem;border-top:1px solid var(--border)}.conversation__empty{color:var(--muted);max-width:60ch}.conversation__chips{display:flex;flex-wrap:wrap;gap:.45rem;padding:.2rem 0 .4rem 2.2rem}.chat-msg{display:grid;gap:.25rem}.chat-msg__role{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.chat-msg--user .chat-msg__role{color:var(--orange)}.chat-msg__body{white-space:pre-wrap;max-width:72ch}.chat-msg--live .chat-msg__body:after{content:"▋";color:var(--orange);animation:pulse 1s ease-in-out infinite}.chat-msg__thinking{display:flex;align-items:baseline;gap:.5rem;font-size:12px;color:var(--muted);min-width:0}.chat-msg__thinking-label{flex-shrink:0;color:var(--orange);animation:pulse 1s ease-in-out infinite}.chat-msg__thinking-tail{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;direction:rtl;text-align:left;font-style:italic;opacity:.7}.tool-card{border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel-2);padding:.7rem .8rem;display:grid;gap:.5rem;max-width:560px}.tool-card--applied{border-color:#00fe9766}.tool-card--rejected{opacity:.55}.tool-card--previewing{border-color:var(--orange)}.tool-card__head{display:flex;align-items:center;gap:.5rem}.tool-card__icon{display:inline-flex;color:var(--orange)}.tool-card__name{font-weight:600;font-size:13px}.tool-card__status{margin-left:auto;font-size:11px;color:var(--muted);text-transform:lowercase}.tool-card--applied .tool-card__status{color:var(--ok)}.tool-card__target{display:flex;align-items:center;gap:.4rem;padding:.25rem .45rem;border:none;border-radius:4px;background:var(--panel);color:var(--muted);font:inherit;font-size:12px;text-align:left;cursor:pointer}.tool-card__target:hover{color:var(--text)}.tool-card__target-arrow{color:var(--orange)}.tool-card__summary{display:flex;flex-wrap:wrap;gap:.35rem}.tool-card__chip{display:inline-flex;align-items:center;gap:.3rem;padding:.15rem .5rem;border-radius:4px;background:var(--panel);font-size:12px}.tool-card__chip b{font-weight:600}.tool-card__chip--warn{color:var(--error)}.tool-card__chip-dot{width:8px;height:8px;border-radius:50%;background:var(--chip-accent, var(--orange))}.tool-card__rationale{color:var(--muted);font-size:13px}.tool-card__sources{font-size:12px;color:var(--muted)}.tool-card__sources ul{margin:.25rem 0 0;padding-left:1.1rem}.tool-card__pre{margin:.4rem 0 0;padding:.6rem;border-radius:var(--radius-sm);background:var(--code-bg);overflow-x:auto;max-height:260px;font-size:11px;line-height:1.45}.tool-card__actions{display:flex;justify-content:flex-end;gap:.45rem}.tool-card__compare{display:flex;align-items:center;gap:.5rem;font-size:12px}.tool-card__compare-label{color:var(--muted)}.tool-card__compare-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:999px;background:none;padding:2px;cursor:pointer}.tool-card__compare-pill{padding:.1rem .6rem;border-radius:999px;font-size:11px;color:var(--muted)}.tool-card__compare-pill--active{background:var(--orange);color:#000}.tool-card__error{font-size:12px}.plan-card{max-width:640px}.plan-card__sections{display:flex;flex-wrap:wrap;gap:.35rem}.plan-card__slides{margin:.4rem 0 0;padding-left:1.4rem;display:grid;gap:.25rem;font-size:12px;max-height:240px;overflow-y:auto}.plan-card__slides li{display:flex;align-items:baseline;gap:.5rem}.plan-card__slide-title{flex:1}.settings{display:flex;flex-direction:column;gap:1.1rem}.settings__section{display:flex;flex-direction:column;gap:.45rem}.settings__heading{margin:0;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.settings__providers{display:flex;flex-direction:column;gap:.35rem}.settings__provider{display:flex;align-items:center;gap:.5rem;font-size:13px;cursor:pointer}.settings__provider--off{opacity:.45;cursor:not-allowed}.settings__field{display:flex;flex-direction:column;gap:.25rem;font-size:12px;color:var(--muted)}.settings__field input{padding:.45rem .6rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--text);font:inherit;font-size:13px}.settings__field input:focus{outline:none;border-color:var(--orange)}.settings__actions{display:flex;align-items:center;gap:.6rem}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000080;display:flex;justify-content:flex-end}.drawer{width:min(380px,92vw);height:100%;background:var(--panel);border-left:1px solid var(--border-strong);display:flex;flex-direction:column;animation:drawer-in .16s ease-out}.drawer--wide{width:min(520px,95vw)}@keyframes drawer-in{0%{transform:translate(24px);opacity:0}}.drawer__header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;border-bottom:1px solid var(--border)}.drawer__title{font-size:1.4rem}.drawer__body{flex:1;overflow-y:auto;padding:1rem 1.1rem;display:grid;gap:.9rem;align-content:start}.assets__drop{display:grid;justify-items:center;gap:.3rem;padding:1.2rem;border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--muted);cursor:pointer;text-align:center}.assets__drop--over{border-color:var(--orange);color:var(--orange)}.assets__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.7rem}.asset-card{display:grid;gap:.25rem}.asset-card__thumb{padding:0;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel-2);cursor:pointer;overflow:hidden;aspect-ratio:4 / 3}.asset-card__thumb img,.asset-card__thumb video{width:100%;height:100%;object-fit:cover;display:block}.asset-card__meta{display:flex;align-items:center;gap:.25rem}.asset-card__name{flex:1;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.publish__section{display:grid;gap:.5rem}.publish__section h3{font-size:1.1rem}.publish__issues{list-style:none;margin:0;padding:0;display:grid;gap:.3rem;font-size:12px}.publish__issue{display:flex;gap:.5rem;align-items:baseline}.publish__issue--error .publish__issue-msg{color:var(--error)}.publish__issue-num{font-family:var(--font-mono);color:var(--muted)}.publish__issue-field{color:var(--muted)}.publish__shared{display:grid;gap:.3rem}.publish__url{display:flex;gap:.5rem;align-items:baseline;flex-wrap:wrap}.publish__shared-actions,.publish__actions{display:flex;gap:.45rem;flex-wrap:wrap}.publish__group{margin-top:.85rem}.publish__group-head{margin:0 0 .4rem;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.publish__group-head .muted{text-transform:none;font-weight:400;letter-spacing:0}.publish__downloads{display:flex;flex-wrap:wrap;gap:.65rem 1.5rem;font-size:13px}.publish__dl{display:flex;flex-direction:column;gap:.1rem}.publish__dl small{font-size:11px}.publish__log{margin:0;padding:.6rem;border-radius:var(--radius-sm);background:var(--code-bg);max-height:220px;overflow-y:auto;font-size:11px;line-height:1.45;white-space:pre-wrap}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0009;display:grid;place-items:center}.modal{width:min(420px,92vw);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);padding:1.2rem 1.3rem;display:grid;gap:.8rem}.modal__title{font-size:1.5rem}.modal__body{color:var(--muted);font-size:13px}.modal__footer{display:flex;justify-content:flex-end;gap:.5rem}.toast{position:fixed;bottom:1.1rem;left:50%;transform:translate(-50%);z-index:80;display:flex;align-items:center;gap:.7rem;max-width:min(520px,90vw);padding:.55rem .6rem .55rem .9rem;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--panel);box-shadow:var(--shadow);font-size:12.5px;animation:toast-in .18s ease-out}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,6px)}to{opacity:1;transform:translate(-50%)}}.toast--error{border-color:var(--error)}.toast--error .toast__message{color:var(--error)}.toast__message{min-width:0}.toast__undo{flex-shrink:0;font-size:12.5px}.toast__close{flex-shrink:0;font-size:14px;line-height:1}.filmstrip__tile{position:relative;align-items:center;padding:.15rem .3rem .15rem .15rem;gap:.15rem;cursor:default}.filmstrip__select{flex:1;min-width:0;display:flex;align-items:baseline;gap:.45rem;padding:.3rem .25rem;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.filmstrip__grip{flex-shrink:0;display:flex;align-items:center;padding:.25rem .05rem;color:var(--muted);opacity:0;cursor:grab;touch-action:none}.filmstrip__grip:active{cursor:grabbing}.filmstrip__kebab{flex-shrink:0;padding:.2rem;opacity:0}.filmstrip__tile:hover .filmstrip__grip,.filmstrip__tile:hover .filmstrip__kebab,.filmstrip__tile:focus-within .filmstrip__grip,.filmstrip__tile:focus-within .filmstrip__kebab,.filmstrip__tile--active .filmstrip__kebab,.filmstrip__tile--menu .filmstrip__grip,.filmstrip__tile--menu .filmstrip__kebab{opacity:1}@media(hover:none){.filmstrip__grip,.filmstrip__kebab{opacity:1}}.filmstrip--dragging{-webkit-user-select:none;user-select:none}.filmstrip--dragging .filmstrip__select{cursor:grabbing}.filmstrip__li--dragging .filmstrip__tile{opacity:.4}.filmstrip__drop{height:2px;margin:.1rem .3rem;border-radius:1px;background:var(--orange)}.filmstrip__li{position:relative}.filmstrip__insert{position:absolute;left:.1rem;right:.1rem;bottom:-.4rem;height:.5rem;display:flex;align-items:center;gap:.25rem;padding:0;border:none;background:none;opacity:0;cursor:pointer;z-index:2}.filmstrip__insert:before,.filmstrip__insert:after{content:"";flex:1;height:2px;border-radius:1px;background:var(--orange)}.filmstrip__insert-dot{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:13px;height:13px;border-radius:50%;background:var(--orange);color:#000;transform:scale(.6);transition:transform .12s ease-out}.filmstrip__insert:hover,.filmstrip__insert:focus-visible{opacity:1}.filmstrip__insert:hover .filmstrip__insert-dot,.filmstrip__insert:focus-visible .filmstrip__insert-dot{transform:scale(1)}.filmstrip--dragging .filmstrip__insert{display:none}@media(hover:none){.filmstrip__insert{display:none}}.filmstrip__section-row{position:sticky;top:-.5rem;z-index:10;margin:.15rem -.45rem 0;padding:.2rem .45rem;background:var(--panel)}.filmstrip__section-row:has(.strip-pop){z-index:40}.strip-section{position:relative;display:flex;align-items:center;gap:.35rem;padding:.2rem .1rem;color:var(--muted);font-size:11px;text-transform:lowercase;letter-spacing:.04em;-webkit-user-select:none;user-select:none}.strip-section__collapse{padding:.15rem}.strip-section__dot{flex-shrink:0;width:11px;height:11px;border:1px solid var(--border-strong);border-radius:50%;background:var(--swatch);cursor:pointer;padding:0}.strip-section__dot:hover{box-shadow:0 0 0 2px var(--border-strong)}.strip-section__dot--static{cursor:default}.strip-section__dot--static:hover{box-shadow:none}.strip-section__name{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:default}.strip-section__input{flex:1;min-width:0;padding:.1rem .25rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:11px}.strip-section__count{flex-shrink:0;padding:0 .3rem;border-radius:999px;background:var(--panel-2);font-family:var(--font-mono);font-size:10px}.strip-section__kebab{padding:.15rem;opacity:0}.strip-section:hover .strip-section__kebab,.strip-section:focus-within .strip-section__kebab{opacity:1}@media(hover:none){.strip-section__kebab{opacity:1}}.strip-section--readonly{padding-left:.35rem}.strip-pop{position:absolute;top:calc(100% + 2px);right:0;z-index:60;min-width:150px;padding:.25rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--panel);box-shadow:var(--shadow)}.strip-pop--swatches{padding:.5rem .6rem}.strip-pop--slide{top:auto;right:.35rem;margin-top:1.6rem}.strip-pop--up{top:auto;bottom:calc(100% + 2px);margin-top:0}.strip-pop__item{display:block;width:100%;padding:.4rem .55rem;border:none;border-radius:var(--radius-sm);background:none;color:var(--text);font:inherit;font-size:12px;text-align:left;cursor:pointer}.strip-pop__item:hover:not(:disabled){background:var(--panel-2)}.strip-pop__item:disabled{color:var(--muted);cursor:default}.strip-pop__item--sub{padding-left:1.3rem}.strip-pop__item--danger{color:var(--error)}.swatches{display:grid;gap:.35rem}.swatches__row{display:flex;gap:.4rem}.swatches__dot{width:18px;height:18px;border:1px solid var(--border-strong);border-radius:50%;background:var(--swatch);cursor:pointer;padding:0}.swatches__dot:hover:not(:disabled){box-shadow:0 0 0 2px var(--border-strong)}.swatches__dot--active{box-shadow:0 0 0 2px var(--text)}.swatches__dot--active:hover:not(:disabled){box-shadow:0 0 0 2px var(--text)}.swatches__dot:disabled{opacity:.5;cursor:default}.swatches__meta{font-size:11px}.filmstrip__foot{display:flex;gap:.45rem;padding:.45rem;flex-shrink:0}.filmstrip__foot .filmstrip__add{margin:0;flex:1}.filmstrip__add--section{gap:.3rem;font-size:11px;text-transform:lowercase;letter-spacing:.04em}.command-bar__tabs{display:flex;gap:.15rem;padding:.12rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--panel-2)}.command-bar__tab{padding:.12rem .55rem;border:none;border-radius:4px;background:none;color:var(--muted);font:inherit;font-size:11px;text-transform:lowercase;letter-spacing:.04em;cursor:pointer}.command-bar__tab--active{background:var(--panel);color:var(--text)}.edit-panel{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:1rem;padding:.8rem .9rem}.edit-panel__group{display:grid;gap:.55rem}.edit-panel__heading{margin:0;color:var(--muted);font-size:11px;font-weight:500;text-transform:lowercase;letter-spacing:.04em}.edit-panel__note{margin:0}.edit-panel__field{display:grid;gap:.3rem}.edit-panel__field-label{color:var(--muted);font-size:11px;text-transform:lowercase;letter-spacing:.04em}.edit-panel__input{width:100%;padding:.45rem .55rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:12.5px;line-height:1.5;resize:none}.edit-panel__input:focus{outline:none;border-color:var(--orange)}.edit-panel__warning{color:var(--error);font-size:11px}.edit-panel__field--locked .edit-panel__locked-value{margin:0;padding:.45rem .55rem;border:1px dashed var(--border);border-radius:var(--radius-sm);color:var(--muted);font-size:12px}.edit-panel__field--locked .muted{margin:0}.edit-panel__conflict{display:grid;gap:.5rem;padding:.55rem .65rem;border:1px solid var(--error);border-radius:var(--radius-sm);background:var(--warn-soft);font-size:12px}.edit-panel__conflict p{margin:0}.edit-panel__conflict-actions{display:flex;gap:.4rem}.strip-addsection{display:grid;gap:.5rem;margin:.45rem;padding:.55rem;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);flex-shrink:0}.strip-addsection__name{padding:.35rem .45rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:12px}.strip-addsection__after{display:flex;align-items:center;gap:.4rem}.strip-addsection__after select{flex:1;min-width:0;padding:.25rem .3rem;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);font:inherit;font-size:11px}.strip-addsection__actions{display:flex;justify-content:flex-end;gap:.4rem}
