.dock-wrap{position:absolute;left:50%;bottom:var(--dock-bottom);transform:translateX(-50%);z-index:8;transition:transform var(--motion-enter),opacity var(--motion-enter)}.dock-wrap[data-dock=hidden]{transform:translateX(-50%) translateY(calc(100% + var(--space-lg)));opacity:0;pointer-events:none;transition:transform var(--motion-exit),opacity var(--motion-exit)}.dock{box-sizing:border-box;display:flex;align-items:flex-end;gap:var(--space-sm);height:var(--dock-h);padding:var(--space-sm);background:var(--surface-glass);-webkit-backdrop-filter:var(--surface-glass-filter);backdrop-filter:var(--surface-glass-filter);border:var(--line-width) solid var(--line);border-radius:var(--room-radius);box-shadow:var(--shadow-dock)}@supports (corner-shape:squircle){.dock{corner-shape:squircle}}.tile-wrap{position:relative;flex-direction:column}.tile,.tile-wrap{display:flex;align-items:center}.tile{flex:none;justify-content:center;width:var(--tile);height:var(--tile);padding:0;cursor:pointer;color:var(--ink);background:var(--surface);border:var(--line-width) solid var(--line);border-radius:12px;box-shadow:var(--shadow-tile);transition:background var(--motion-settle),border-color var(--motion-settle),box-shadow var(--motion-settle)}@supports (corner-shape:squircle){.tile{corner-shape:squircle}}.tile:is(:hover,:focus-visible){background:var(--surface-raised);border-color:color-mix(in srgb,var(--ink) 18%,var(--line));box-shadow:var(--shadow-tile-raised);transition:background var(--motion-lively),border-color var(--motion-lively),box-shadow var(--motion-lively)}.tile-mono:is(:hover,:focus-visible){color:var(--accent)}.drag-ghost-mark svg,.tile svg{display:block;width:25px;height:25px}.tile-mono svg{width:auto;height:26px}.dock-gap{flex:none;align-self:center;width:var(--line-width);height:24px;margin:0 var(--space-xs);background:var(--line)}.tip{position:absolute;bottom:calc(100% + var(--space-xs));left:50%;transform:translateX(-50%);padding:3px var(--space-sm);white-space:nowrap;opacity:0;pointer-events:none;background:var(--surface-raised);border:var(--line-width) solid var(--line);font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;color:var(--ink);transition:opacity var(--motion-state)}.tile-wrap:is(:hover,:focus-within) .tip{opacity:1}.palette{position:fixed;left:50%;top:30%;transform:translateX(-50%);width:560px;max-width:calc(100vw - 2 * var(--space-lg));max-height:48vh;margin:0;padding:0;flex-direction:column;overflow:hidden;color:var(--ink);background:var(--surface-raised);border:var(--line-width) solid var(--line);border-radius:var(--room-radius);box-shadow:var(--shadow-room);animation:pal-in var(--motion-modal)}.palette[open]{display:flex}@supports (corner-shape:squircle){.palette{corner-shape:squircle}}@keyframes pal-in{0%{opacity:0;transform:translateX(-50%) translateY(6px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.palette::backdrop{background:transparent}.pal-input-row{flex:none;display:flex;align-items:baseline;gap:var(--space-sm);padding:var(--space-md) var(--space-lg);border-bottom:var(--line-width) solid var(--line)}#shell .pal-input:focus-visible{outline:none}.pal-input{flex:1 1;min-width:0;border:none;background:none;outline:none;color:var(--ink);font-family:var(--font-ui);font-size:var(--text-heading);font-weight:500}.pal-input::placeholder{color:var(--ink-muted);font-weight:400}.pal-arg{white-space:nowrap;font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase}.pal-arg,.pal-flight{flex:none;color:var(--ink-muted)}.pal-flight{width:14px;font-size:var(--text-body)}.pal-results{overflow-y:auto;padding:var(--space-sm) 0}.pal-section+.pal-section{margin-top:var(--space-sm);border-top:var(--line-width) solid var(--line);padding-top:var(--space-sm)}.pal-head{padding:var(--space-xs) var(--space-lg);color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pal-row{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);cursor:pointer;color:var(--ink);font-size:var(--text-body)}.pal-row[data-selected]{background:color-mix(in srgb,var(--ink) 6%,transparent)}.row-mark{flex:none;display:flex;color:var(--ink-muted)}.row-mark svg{display:block;width:16px;height:16px}.row-name{flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-kind{flex:none;color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase}.pal-row[data-selected] .row-kind:after{content:" ↵"}.pal-row[data-selected]:not(:has(.row-kind)):after{content:"↵";flex:none;color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-label)}.pal-empty{padding:var(--space-lg);color:var(--ink-muted);font-size:var(--text-body)}[data-part][hidden]{display:none}.nav-children{display:flex;flex-direction:column}.rail{flex:none;display:flex;flex-direction:column;width:212px;padding:var(--space-md) 0;border-right:var(--line-width) solid var(--line);overflow-y:auto;transition:width var(--motion-settle)}.rail[data-collapsed]{width:56px}.rail[data-collapsed] .nav-chevron,.rail[data-collapsed] .nav-label{display:none}.rail[data-collapsed] .nav-group,.rail[data-collapsed] .nav-item{justify-content:center;padding-left:0;padding-right:0}.nav-item{position:relative;display:flex;align-items:center;gap:var(--space-sm);width:auto;margin:0 var(--space-sm);padding:7px var(--space-sm);border:none;border-radius:7px;background:none;color:var(--ink-secondary);font:inherit;font-size:var(--text-body);text-align:left;cursor:pointer;transition:color var(--motion-state),background var(--motion-state)}.nav-item:is(:hover,:focus-visible){color:var(--ink);background:color-mix(in srgb,var(--line) 55%,transparent)}.nav-item[data-selected]{color:var(--ink);background:var(--line)}.nav-item[data-selected]:is(:hover,:focus-visible){background:var(--line)}.nav-ico{flex:none;display:flex;align-items:center;justify-content:center;width:18px;height:18px}.nav-ico svg{display:block;width:100%;height:100%}.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-tip{position:absolute;left:calc(100% + var(--space-sm));top:50%;z-index:20;padding:3px var(--space-sm);border:var(--line-width) solid var(--line);background:var(--surface-raised);color:var(--ink);font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase;white-space:nowrap;transform:translateY(-50%);opacity:0;pointer-events:none;transition:opacity var(--motion-state)}.rail[data-collapsed] .nav-group:is(:hover,:focus-visible) .nav-tip,.rail[data-collapsed] .nav-item:is(:hover,:focus-visible) .nav-tip{opacity:1}.nav-group{position:relative;display:flex;align-items:center;gap:var(--space-sm);width:auto;margin:0 var(--space-sm);padding:7px var(--space-sm);border:none;border-radius:7px;background:none;color:var(--ink-secondary);font:inherit;font-size:var(--text-body);text-align:left;cursor:pointer;transition:color var(--motion-state),background var(--motion-state)}.nav-group:is(:hover,:focus-visible){color:var(--ink);background:color-mix(in srgb,var(--line) 55%,transparent)}.nav-chevron{margin-left:auto;opacity:.6;transition:transform var(--motion-state)}.nav-group[aria-expanded=false] .nav-chevron{transform:rotate(-90deg)}.nav-division{flex:none;height:0;margin:var(--space-md) var(--space-sm);border-bottom:var(--line-width) solid var(--line)}.rail-ctl{position:relative;flex:none;display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:var(--line-width) solid var(--ink-muted);border-radius:6px;background:none;color:var(--ink-muted);cursor:pointer;transition:color var(--motion-state),border-color var(--motion-state)}.rail-ctl:after{content:"";position:absolute;inset:-8px}.rail-ctl:is(:hover,:focus-visible){color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,var(--line));background:none}.rail-ctl svg{display:block;width:100%;height:100%;border-radius:5px;overflow:clip}.rail-narrow,.rail-wide{transition:opacity var(--motion-state)}.rail-ctl[data-collapsed] .rail-wide,.rail-narrow{opacity:0}.rail-ctl[data-collapsed] .rail-narrow{opacity:1}.nav-ico [class^=a-]{transform-box:fill-box;transform-origin:center;transition:transform var(--motion-settle),opacity var(--motion-state)}.nav-group:is(:hover,:focus-visible) .nav-ico [class^=a-],.nav-item:is(:hover,:focus-visible) .nav-ico [class^=a-]{transition:transform var(--motion-lively),opacity var(--motion-state)}.nav-group:active .nav-ico [class^=a-],.nav-item:active .nav-ico [class^=a-]{transition:transform var(--motion-press),opacity var(--motion-state)}.nav-item:is(:hover,:focus-visible) .a-reg{transform:translateX(-2.6px)}.nav-item:active .a-reg{transform:translateX(-5.6px)}.nav-ico .a-swing{transform-origin:left center}.nav-group:is(:hover,:focus-visible) .a-swing{transform:scaleX(.74)}.nav-group:active .a-swing{transform:scaleX(.55)}.a-join{opacity:0;transform:translateY(2.4px) scale(.8)}.nav-item:is(:hover,:focus-visible) .a-join{opacity:.58;transform:translateY(0) scale(1)}.nav-item:active .a-join{opacity:.82}.nav-item:active .a-fig-l{transform:translateX(-1.1px)}.nav-item:active .a-fig-r{transform:translateX(1.1px)}.a-sleep{opacity:.45}.a-wake{opacity:0;transform:scale(.3)}.nav-item:is(:hover,:focus-visible) .a-sleep{opacity:0}.nav-item:is(:hover,:focus-visible) .a-wake{opacity:1;transform:scale(1)}.nav-item:active .a-wake{transform:scale(1.34)}.nav-ico .a-rule{transform-origin:left center}.a-rule{opacity:0;transform:scaleX(0)}.nav-item:is(:hover,:focus-visible) .a-rule{opacity:1;transform:scaleX(1)}.nav-item:active .a-rule-3{transform:scaleX(1.7)}.panel-head{flex:none;display:flex;align-items:center;gap:var(--space-md);padding:0 0 var(--space-md)}.panel-title{color:var(--ink);font-family:var(--font-display);font-size:var(--text-title);font-weight:500}.panel-act{margin-left:auto}.row{display:flex;align-items:baseline;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:var(--line-width) solid var(--line)}[data-part=row]{border-top:var(--line-width) solid var(--line)}[data-part=row]+[data-part=row]{border-top:0}.row-title{min-width:0;color:var(--ink)}.row-role{display:block;color:var(--ink-muted);font-size:var(--text-detail)}.row-tail{margin-left:auto;text-align:right}.tail-standing{color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-label);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase}.tail-status{color:var(--ink-muted);font-size:var(--text-meta)}[data-part=row][data-columned]{display:grid;grid-template-columns:minmax(0,1fr) 150px 220px 120px 44px;align-items:center;transition:grid-template-columns var(--motion-settle)}[data-part=row][data-columned][data-narrow]{grid-template-columns:minmax(0,1fr) 0 220px 0 44px}[data-part=row][data-columned] .row-tail{display:contents}.row-cell{min-width:0;overflow:hidden;color:var(--ink-muted);font-size:var(--text-detail);white-space:nowrap;text-overflow:ellipsis}.row-cell-when{font-size:var(--text-meta);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}.field{position:relative;display:flex;align-items:baseline;gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:var(--line-width) solid var(--line)}[data-part=field]{border-top:var(--line-width) solid var(--line)}[data-part=field]+[data-part=field]{border-top:0}.field-label{flex:none;width:148px;color:var(--ink-muted);font-size:var(--text-body)}.field-value,.inp{color:var(--ink)}.inp{flex:1 1;min-width:0;padding:1px 0;border:none;border-bottom:var(--line-width) solid transparent;background:none;font:inherit;font-size:var(--text-body);outline:none;transition:border-color var(--motion-state)}.inp:hover{border-bottom-color:var(--line)}.inp:focus{border-bottom-color:var(--ink-muted)}.choices{display:flex;gap:var(--space-xs);margin-left:auto}.choice{padding:3px 10px;border:var(--line-width) solid transparent;border-radius:6px;background:none;color:var(--ink-muted);font:inherit;font-size:var(--text-detail);cursor:pointer;transition:color var(--motion-state),border-color var(--motion-state)}.choice:enabled:is(:hover,:focus-visible){color:var(--ink)}.choice:disabled{cursor:default;opacity:.6}.choice[data-selected]{border-color:var(--line);background:var(--surface-raised);color:var(--ink)}[data-part=action-button]{display:inline-grid;align-items:center;justify-items:center}[data-part=action-button]>*{grid-area:1/1}[data-part=action-button][data-pressed]{animation:action-button-press var(--motion-press-spring)}@keyframes action-button-press{0%{transform:scale(.94)}to{transform:scale(1)}}.action-button-word{transition:opacity var(--motion-state)}[data-part=action-button][aria-busy=true] .action-button-word{opacity:0;transition-delay:var(--palette-flight)}.action-button-marks{display:flex;align-items:center;gap:3px;opacity:0;pointer-events:none}.action-button-marks[data-working]{opacity:1;transition:opacity var(--motion-state) var(--palette-flight)}.action-button-mark{width:3px;height:3px;border-radius:50%;background:currentcolor}.action-button-marks[data-working] .action-button-mark{animation-name:action-button-mark-arrive,action-button-mark-travel;animation-duration:var(--dur-mark-arrive),var(--dur-mark-travel);animation-timing-function:var(--ease-mark-arrive),var(--ease-mark-arrive);animation-fill-mode:both,none;animation-iteration-count:1,infinite;animation-delay:var(--palette-flight),calc(var(--palette-flight) + var(--mark-travel-wait))}.action-button-marks[data-working] .action-button-mark:nth-child(2){animation-delay:calc(var(--palette-flight) + var(--mark-stagger)),calc(var(--palette-flight) + var(--mark-travel-wait) + var(--mark-stagger))}.action-button-marks[data-working] .action-button-mark:nth-child(3){animation-delay:calc(var(--palette-flight) + var(--mark-stagger) * 2),calc(var(--palette-flight) + var(--mark-travel-wait) + var(--mark-stagger) * 2)}@keyframes action-button-mark-arrive{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes action-button-mark-travel{0%,to{translate:0 0}45%{translate:0 -2.5px}}.plate{position:relative;display:flex;align-items:center;gap:var(--space-md);width:100%;padding:var(--space-md);border:var(--line-width) solid var(--line);border-radius:10px;background:var(--surface-raised);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--motion-state)}.plate:is(:hover,:focus-visible){border-color:var(--ink-muted)}.plate[data-selected]{border-color:var(--ink)}.plate-lines{min-width:0}.plate-name{color:var(--ink);font-size:var(--text-body)}.plate-name,.plate-role{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.plate-role{color:var(--ink-muted);font-size:var(--text-detail)}.plate-standing{display:inline-block;margin-top:3px;color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-meta);font-weight:500;letter-spacing:var(--track-label);text-transform:uppercase}.plate-standing[data-pending]{font-family:var(--font-ui);letter-spacing:normal;text-transform:none}.plate[data-fallback] svg{width:34px;height:40px;color:var(--ink-muted);opacity:.55}.shot{flex:none;display:flex;align-items:center;justify-content:center;width:42px;height:42px;overflow:hidden;border:var(--line-width) solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink-muted);font-family:var(--font-label);font-size:var(--text-detail);font-weight:500;letter-spacing:.04em}.shot img{width:100%;height:100%;object-fit:cover}.shot-lg{width:60px;height:60px;border-radius:16px;font-size:var(--text-body)}.side-sheet{position:absolute;top:0;right:0;bottom:0;z-index:5;display:flex;flex-direction:column;width:440px;max-width:72%;overflow-y:auto;border-left:var(--line-width) solid var(--surface-glass-sheet-edge);background:var(--surface-glass-sheet);-webkit-backdrop-filter:var(--surface-glass-sheet-filter);backdrop-filter:var(--surface-glass-sheet-filter);box-shadow:var(--shadow-sheet);animation:side-sheet-in var(--motion-modal)}@keyframes side-sheet-in{0%{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none}}.side-sheet[data-in-plane]{position:relative;inset:auto;z-index:auto;flex:none;max-width:none;border-left:var(--line-width) solid var(--line);background:var(--surface-raised);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;animation:none}.sheet-close{flex:none;align-self:flex-start;display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-left:auto;padding:0;border:none;background:none;color:var(--ink-muted);font:inherit;font-size:15px;cursor:pointer;transition:color var(--motion-state)}.sheet-close:is(:hover,:focus-visible){color:var(--ink)}.sheet-who{flex:none;display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg) var(--space-xl)}.sheet-name{display:block;color:var(--ink);font-family:var(--font-display);font-size:var(--text-title);font-weight:500}.sheet-role{display:block;color:var(--ink-muted);font-size:var(--text-body)}[data-part=toast]{position:fixed;right:var(--space-lg);bottom:var(--space-lg);z-index:6;display:flex;flex-direction:column;gap:var(--space-sm);width:300px;padding:var(--space-md);border:var(--line-width) solid var(--line);border-radius:10px;background:var(--surface-raised);box-shadow:var(--shadow-dock);pointer-events:none;transform:translateX(0);transition:transform var(--motion-exit);animation:toast-in var(--motion-modal)}@keyframes toast-in{0%{opacity:0;translate:0 10px}to{opacity:1;translate:none}}[data-part=toast][data-panel-open]{transform:translateX(-360px);transition:transform var(--motion-enter)}.toast-head{display:flex;align-items:flex-start;gap:var(--space-sm)}.toast-mark{flex:none;width:6px;height:6px;margin-top:6px;border-radius:50%;background:var(--pending)}[data-part=toast][data-mark=failed] .toast-mark{background:var(--accent)}[data-part=toast][data-mark=ok] .toast-mark{width:10px;height:10px;margin-top:4px;border-radius:0;background:none;color:var(--ok)}.toast-mark svg{display:block;width:100%;height:100%}.toast-lines{flex:1 1;min-width:0}.toast-title{display:block;color:var(--ink);font-size:var(--text-body)}.toast-detail{display:block;padding-top:2px;color:var(--ink-muted);font-size:var(--text-detail)}[data-part=toast] .toast-dismiss{flex:none;display:flex;align-items:center;justify-content:center;width:14px;height:14px;margin-top:3px;padding:0;border:none;background:none;color:var(--ink-muted);font:inherit;cursor:pointer;pointer-events:auto;transition:color var(--motion-state)}[data-part=toast] .toast-dismiss:is(:hover,:focus-visible){color:var(--ink)}[data-part=toast] .toast-dismiss svg{display:block;width:100%;height:100%}.toast-bar{overflow:hidden;height:2px;border-radius:1px;background:var(--line)}.toast-bar-fill{display:block;width:100%;height:100%;transform:scaleX(var(--toast-fill,0));transform-origin:left center;background:var(--ink-muted);transition:transform var(--motion-state)}.toast-verbs{display:flex;justify-content:flex-end}.toast-verb{border:var(--line-width) solid transparent;border-radius:7px;padding:2px 8px;background:none;color:var(--ink-muted);font:inherit;font-size:var(--text-detail);cursor:pointer;pointer-events:auto;transition:color var(--motion-state),border-color var(--motion-state)}.toast-verb:is(:hover,:focus-visible){border-color:var(--line);color:var(--ink)}.field-thumbs{display:block;padding:var(--space-md) 0}.field-thumbs .field-label{display:block;width:auto;padding-bottom:var(--space-sm)}.thumbs{display:flex;flex-wrap:wrap;gap:var(--space-md)}.thumb{display:block;padding:0;border:none;background:none;font:inherit;text-align:left;cursor:pointer}.thumb-stage{position:relative;display:block;width:194px;height:147px;overflow:hidden;border:var(--line-width) solid var(--line);border-radius:9px;background:var(--surface);transition:border-color var(--motion-state)}.thumb:is(:hover,:focus-visible) .thumb-stage{border-color:var(--ink-muted)}.thumb[data-selected] .thumb-stage{border-color:var(--ink)}.thumb-name{display:block;padding-top:6px;color:var(--ink-muted);font-size:var(--text-detail);transition:color var(--motion-state)}.thumb[data-selected] .thumb-name{color:var(--ink)}.mini{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--surface)}.mini-bar{flex:none;height:9px;border-bottom:var(--line-width) solid var(--line);background:var(--surface-raised)}.mini-room{flex:1 1;display:flex;flex-direction:column;min-height:0;margin:5px;overflow:hidden;border:var(--line-width) solid var(--line);border-radius:5px;background:var(--surface)}.mini-roombar{flex:none;display:flex;align-items:center;gap:3px;height:11px;padding:0 4px;border-bottom:var(--line-width) solid var(--line);background:var(--surface-raised)}.mini-roombar i{width:5px;height:5px;border:var(--line-width) solid var(--ink-muted);border-radius:1.5px}.mini-body{flex:1 1;display:flex;min-height:0}.mini-side{flex:none;display:flex;flex-direction:column;gap:3px;width:34px;padding:4px 3px;border-right:var(--line-width) solid var(--line)}.mini-who{height:11px;border:var(--line-width) solid var(--line);border-radius:3px;background:var(--surface-raised)}.mini-item{height:6px;border-radius:2px;background:color-mix(in srgb,var(--ink) 12%,transparent)}.mini-item[data-selected]{background:var(--line)}.mini-panel{flex:1 1;display:flex;flex-direction:column;gap:4px;padding:5px 4px}.mini-title{width:34%;height:6px;border-radius:2px;background:color-mix(in srgb,var(--ink) 55%,transparent)}.mini-card{height:13px;border:var(--line-width) solid var(--line);border-radius:3px;background:var(--surface-raised)}.mini-accent{width:14%;height:4px;border-radius:2px;background:var(--accent)}@supports (corner-shape:squircle){.choice,.nav-group,.nav-item,.plate,.rail-ctl,.rail-ctl svg,.shot,.thumb-stage,.toast{corner-shape:squircle}}