.workspace-page,.workspace-state{--bg:var(--color-bg-base);--panel:var(--color-surface-base);--panel-muted:var(--color-surface-muted);--text:var(--color-text-secondary);--text-h:var(--color-text-strong);--border:var(--color-border-default);--accent:var(--color-accent-foreground);--accent-hover:var(--color-accent-solid);--accent-bg:var(--color-accent-surface);--accent-border:var(--color-accent-border-soft);--danger:var(--color-status-error-foreground);--danger-bg:var(--color-status-error-surface);--success:var(--color-status-success-foreground);--success-bg:var(--color-status-success-surface);--warning:var(--color-status-warning-foreground);--warning-bg:var(--color-status-warning-surface);--overlay-text:var(--color-text-secondary);--overlay-warning:var(--color-status-warning-foreground);color:var(--color-text-default);background:var(--color-bg-base);font-family:var(--font-family-sans);font-size:var(--font-size-3xl);line-height:var(--font-line-height-default)}.workspace-page :is(.map-base-toggle,.editor-status,.packet-building,.layer-placeholder-label){border:var(--border-default);border-color:var(--color-border-viewport);border-radius:var(--radius-field);background:var(--color-overlay-surface);color:var(--color-text-secondary);-webkit-backdrop-filter:none;backdrop-filter:none}.workspace-page .map-base-toggle{gap:var(--space-2);padding:var(--space-2)}.workspace-page .map-base-toggle button{padding:var(--space-4) var(--space-11);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);white-space:nowrap;flex:none}.workspace-page .map-base-toggle button[aria-pressed=true]{color:var(--color-accent-foreground);background:var(--color-accent-surface);box-shadow:inset 0 0 0 var(--border-width-thin) var(--color-border-accent)}.workspace-page .map-base-toggle button:disabled{color:var(--color-text-muted);opacity:.5;cursor:not-allowed}.workspace-page .packet-building{max-width:calc(100% - var(--space-16));overflow-wrap:anywhere;padding:var(--space-8) var(--space-10);flex-wrap:wrap}.workspace-page .job-toasts{max-width:calc(100% - var(--space-16))}.workspace-page .job-toast{padding:var(--space-9) var(--space-10);border-radius:var(--radius-item);background:var(--color-surface-base);color:var(--color-text-default);-webkit-backdrop-filter:none;backdrop-filter:none}.workspace-page :is(.job-toast-message,.job-toast-error,.editor-panel-error,.packet-building-error,[role=alert]){color:var(--color-status-error-foreground)}.workspace-page :is(.packet-building-error,.job-toast.job-failed){background:var(--color-status-error-surface);border-color:var(--color-accent-border-soft)}.workspace-page .map-accuracy-warning{color:var(--color-status-warning-foreground);background:var(--color-status-warning-surface)}.workspace-page .progress-track{height:var(--space-4);border-radius:var(--radius-indicator);background:var(--color-surface-progress-track)}.workspace-page .progress-track span{background:var(--color-accent-base)}.workspace-page .drop-zone{gap:var(--space-7);padding:var(--space-dropzone-inset);border:var(--border-dropzone);border-radius:var(--radius-panel);background:var(--color-accent-surface-soft)}.workspace-page .drop-zone.is-dragover{border-color:var(--color-accent-base);background:var(--color-accent-surface)}.workspace-page .job-card{padding:var(--space-11) var(--space-12);border:var(--border-default);border-radius:var(--radius-panel-sm);background:var(--color-surface-base)}.workspace-page .note-create-dialog textarea{padding:var(--space-field-inset);border:var(--border-default);border-radius:var(--radius-field);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit}.workspace-page .confirm-backdrop{padding:var(--space-overlay-inset);background:var(--color-overlay-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.workspace-page .confirm-dialog{max-width:100%;max-height:calc(100dvh - var(--space-42));overflow-wrap:anywhere;padding:var(--space-modal-inset);gap:var(--space-18);border:var(--border-default);border-radius:var(--radius-dialog);color:var(--color-text-strong);box-shadow:0 18px 50px var(--color-shadow-modal);overflow-y:auto}.workspace-page .confirm-dialog>strong{font-size:var(--font-size-page-title);font-weight:var(--font-weight-medium)}.workspace-page .confirm-actions{flex-wrap:wrap}.workspace-page input{accent-color:var(--color-accent-base)}.workspace-page :is(button,input,textarea,select,a,summary):focus-visible{outline:var(--border-width-strong) solid var(--color-focus-ring);outline-offset:var(--space-2)}.workspace-page .button{border-radius:var(--radius-field);font-weight:var(--font-weight-medium)}.workspace-page .button-primary{background:var(--color-accent-solid);color:var(--color-text-on-strong)}@media (width>=769px){.workspace-page{--editor-input-size:var(--font-size-3xl)}}@media (prefers-reduced-motion:reduce){.workspace-page .job-toast.is-fading{animation:none}}.workspace-page .job-toast-close{min-width:var(--space-28);min-height:var(--space-28)}@media (width<=760px),(pointer:coarse){.workspace-page :is(.job-toast-close,.job-toast-actions button){min-width:var(--space-44);min-height:var(--space-44)}.workspace-page .note-create-dialog textarea{min-height:var(--space-44);font-size:1rem}}.workspace-page{--editor-ctl:32px;--editor-head:calc(56px + env(safe-area-inset-top,0px));--editor-status:calc(32px + env(safe-area-inset-bottom,0px));--editor-left:248px;--editor-right:288px;--editor-rail:calc(var(--editor-ctl) + var(--space-8));--editor-tabbar:calc(56px + env(safe-area-inset-bottom,0px));--z-float:10;--z-sheet:30;--z-popover:40;--z-dialog:50;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}@media (pointer:coarse){.workspace-page{--editor-ctl:44px}}@media (width>=769px) and (width<=1100px){.workspace-page{--editor-left:216px;--editor-right:256px}}.workspace-page .num{font-family:var(--font-family-mono);font-variant-numeric:tabular-nums}.workspace-page .visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.workspace-page .confirm-backdrop{z-index:var(--z-dialog)}.editor-shell{grid-template-columns:var(--editor-left) minmax(0, 1fr) auto minmax(0, 1fr) var(--editor-right);grid-template-rows:var(--editor-head) minmax(0, 1fr) var(--editor-status);background:var(--color-bg-base);grid-template-areas:"hs hs tb he he""lp vp vp vp rp""sb sb sb sb sb";height:100%;min-height:0;display:grid}@media (width>=769px){.editor-shell[data-left=rail]{--editor-left:var(--editor-rail)}.editor-shell[data-right=rail]{--editor-right:var(--editor-rail)}}.editor-head{align-items:center;gap:var(--space-8);min-width:0;padding:env(safe-area-inset-top,0px) var(--space-8) 0;border-bottom:var(--border-divider);border-color:var(--color-border-chrome);background:var(--color-surface-raised);display:flex}.editor-head-start{grid-area:hs}.editor-toolbar{grid-area:tb;justify-content:center}.editor-head-end{grid-area:he;justify-content:flex-end}.editor-project-name{min-width:0;color:var(--color-text-strong);font-size:var(--font-size-6xl);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;flex:0 auto;margin:0;overflow:hidden}.editor-chips{align-items:center;gap:var(--space-4);flex:none;margin:0;padding:0;list-style:none;display:flex}.editor-chip,.editor-chips .editor-popover-trigger.editor-chip{align-items:center;gap:var(--space-4);height:24px;padding:0 var(--space-8);border:var(--border-default);border-radius:var(--radius-control-sm);color:var(--color-text-secondary);font-size:var(--font-size-xl);white-space:nowrap;display:inline-flex;position:relative}.editor-chips .editor-chip--frame{border-color:var(--color-border-accent);background:var(--color-accent-surface);color:var(--color-accent-foreground);font-family:var(--font-family-sans);font-weight:var(--font-weight-semibold);cursor:pointer}.editor-chip .studio-icon{width:15px;height:15px}.editor-chips .editor-chip--frame:after{inset:calc((var(--editor-ctl) - 24px) / -2) 0;content:"";position:absolute}.editor-chip-dot{background:var(--color-status-warning-indicator);border-radius:50%;width:6px;height:6px}.workspace-page .editor-tool{justify-content:center;align-items:center;gap:var(--space-6);min-width:var(--editor-ctl);height:var(--editor-ctl);border-radius:var(--radius-control);color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:inline-flex;position:relative}.workspace-page .editor-tool:hover:not(:disabled,[aria-pressed=true],[aria-expanded=true]){background:var(--color-surface-hover);color:var(--color-text-strong)}.workspace-page .editor-tool:disabled{cursor:default;opacity:.4}.workspace-page .editor-tool[aria-pressed=true],.workspace-page .editor-tool[aria-expanded=true]{background:var(--color-accent-surface);color:var(--color-accent-foreground)}.workspace-page .editor-tool.is-primary{background:var(--color-accent-solid);color:var(--color-text-on-strong)}.workspace-page .editor-tool.is-primary:hover:not(:disabled){background:var(--color-accent-base);color:var(--color-text-on-strong)}.workspace-page .editor-button{justify-content:center;align-items:center;gap:var(--space-6);min-height:var(--editor-ctl);padding:0 var(--space-12);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit;font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;display:inline-flex}.workspace-page .editor-button:hover:not(:disabled){background:var(--color-surface-hover)}.workspace-page .editor-button.is-primary{background:var(--color-accent-solid);color:var(--color-text-on-strong);border-color:#0000}.workspace-page .editor-button.is-primary:hover:not(:disabled){background:var(--color-accent-base)}.workspace-page .editor-button:disabled{cursor:default;opacity:.45}.workspace-page .editor-link-button{margin-left:var(--space-4);color:var(--color-accent-foreground);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}.workspace-page .editor-segment{gap:var(--space-2);min-width:0;padding:var(--space-2);border-radius:var(--radius-field-sm);background:var(--color-surface-inset);border:0;flex:none;margin:0;display:inline-flex}.workspace-page .editor-segment--full{width:100%;display:flex}.workspace-page .editor-segment>button:not(.editor-tool){justify-content:center;align-items:center;gap:var(--space-6);min-height:var(--editor-ctl);padding:0 var(--space-8);border-radius:var(--radius-control);color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:1;display:inline-flex}.workspace-page .editor-segment>button:disabled{cursor:default;opacity:.45}.workspace-page .editor-segment>button:is([aria-pressed=true],[aria-checked=true]){background:var(--color-surface-base);color:var(--color-accent-foreground);box-shadow:inset 0 0 0 var(--border-width-thin) var(--color-border-default)}.workspace-page .editor-segment .editor-tool{height:var(--editor-ctl)}.editor-toolbar .editor-mode{padding:0}.editor-tool-label{display:none}@media (width>=1180px){.editor-toolbar .editor-mode{padding:0 var(--space-12) 0 var(--space-8)}.editor-toolbar .editor-tool-label{display:inline}}.share-pill-trigger{align-items:center;gap:var(--space-8);height:var(--editor-ctl);padding:0 var(--space-12);border:var(--border-default);border-radius:var(--radius-pill);background:var(--color-surface-base);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;display:inline-flex}.share-pill-trigger.is-ok{color:var(--color-status-success-foreground)}.share-pill-trigger.is-ng{border-color:var(--color-status-error-foreground);background:var(--color-status-error-surface);color:var(--color-status-error-foreground)}.share-pill-dot{background:currentColor;border-radius:50%;flex:none;width:8px;height:8px}.share-pill-short,.share-pill-count{display:none}@media (width<=1339px){.share-pill-why{display:none}.share-pill-count{display:inline}}@media (width<=1100px){.share-pill-long{display:none}.share-pill-short{display:inline}.editor-share-label{display:none}.workspace-page .editor-share-button{width:var(--editor-ctl);padding:0}}@media (width<=1279px){.editor-chip--epsg{display:none}}.workspace-page .editor-avatar{background:var(--color-surface-inset);border-radius:50%}.share-problems{gap:var(--space-8);margin:0;padding:0;list-style:none;display:grid}.share-problems li{align-items:start;gap:var(--space-6) var(--space-8);padding:var(--space-8) var(--space-10);border-radius:var(--radius-control);background:var(--color-status-error-surface);grid-template-columns:8px minmax(0,1fr);display:grid}.share-problems-dot{background:var(--color-status-error-indicator);border-radius:50%;width:8px;height:8px;margin-top:5px}.share-problems-text{color:var(--color-text-strong);font-weight:var(--font-weight-medium);line-height:var(--font-line-height-compact)}.share-problems .editor-button{grid-column:2;justify-self:start}.editor-popover{flex:none;position:relative}.editor-popover>summary{list-style:none}.editor-popover>summary::-webkit-details-marker{display:none}.editor-popover-panel{z-index:var(--z-popover);width:max-content;max-width:min(340px,100vw - 16px);max-height:min(70dvh,560px);padding:var(--space-6);border:var(--border-default);border-radius:var(--radius-item);background:var(--color-surface-base);color:var(--color-text-default);box-shadow:var(--shadow);font-size:var(--font-size-3xl);text-align:left;white-space:normal;position:fixed;overflow-y:auto}.editor-popover-section{gap:var(--space-8);padding:var(--space-6);display:grid}.editor-popover-heading{justify-content:space-between;align-items:center;gap:var(--space-8);display:flex}.editor-popover-title{color:var(--color-text-strong);font-size:var(--font-size-5xl)}.editor-popover-title.is-error{color:var(--color-status-error-foreground)}.share-pill-panel{width:min(340px,100vw - 32px)}.workspace-page .editor-menu-item{align-items:center;gap:var(--space-8);width:100%;min-height:var(--editor-ctl);padding:0 var(--space-8);border-radius:var(--radius-control);color:var(--color-text-strong);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.workspace-page .editor-menu-item:hover:not(:disabled){background:var(--color-surface-hover)}.workspace-page .editor-menu-item:disabled{cursor:default;opacity:.45}.workspace-page .editor-menu-item.is-danger{color:var(--color-status-error-foreground)}.editor-menu-heading{gap:var(--space-2);padding:var(--space-6) var(--space-8) var(--space-10);margin-bottom:var(--space-4);border-bottom:var(--border-divider);display:grid}.editor-menu-heading span,.editor-menu-note{color:var(--color-text-secondary);font-size:var(--font-size-xl)}.editor-menu-note{padding:var(--space-4) var(--space-8);margin:0}.editor-menu-row{padding:var(--space-6) var(--space-8);border-top:var(--border-divider);border-bottom:var(--border-divider);margin:var(--space-4) 0}.workspace-page .help-tip-trigger{width:var(--editor-ctl);height:var(--editor-ctl);border-radius:var(--radius-control);color:var(--color-text-secondary);cursor:pointer;place-items:center;display:inline-grid}.workspace-page .help-tip-trigger:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.help-tip-body{gap:var(--space-8);max-width:300px;padding:var(--space-6);line-height:var(--font-line-height-relaxed);display:grid}.help-tip-body p{margin:0}.help-tip-aux{color:var(--color-text-secondary);font-size:var(--font-size-xl)}.help-tip-body code,.studio-help-keys kbd{padding:0 var(--space-3);border-radius:var(--radius-indicator);background:var(--color-surface-inset);font-family:var(--font-family-mono);font-size:var(--font-size-xl)}.editor-pane{background:var(--color-surface-raised);min-width:0;min-height:0;display:flex;overflow:hidden}.editor-pane--left{border-right:var(--border-divider);border-color:var(--color-border-chrome);grid-area:lp}.editor-pane--right{border-left:var(--border-divider);border-color:var(--color-border-chrome);grid-area:rp}.editor-pane-body{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.editor-pane-body :is(select,button,input:not([type=checkbox],[type=radio],[type=range],[type=color])){min-height:var(--editor-ctl)}.editor-rail{align-items:center;gap:var(--space-4);width:100%;padding:var(--space-8) 0;flex-direction:column;display:none}.editor-rail-sep{width:20px;height:1px;margin:var(--space-4) 0;background:var(--color-border-section)}@media (width>=769px){.editor-shell[data-left=rail] .editor-pane--left>.editor-pane-body,.editor-shell[data-right=rail] .editor-pane--right>.editor-pane-body{display:none}.editor-shell[data-left=rail] .editor-pane--left>.editor-rail,.editor-shell[data-right=rail] .editor-pane--right>.editor-rail{display:flex}}.editor-pane-head{align-items:center;gap:var(--space-4);min-height:48px;padding:0 var(--space-8) 0 var(--space-12);border-bottom:var(--border-divider);flex:none;display:flex}.editor-pane-title{color:var(--color-text-strong);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);flex:1;margin:0}.editor-pane-count{color:var(--color-text-secondary);font-weight:var(--font-weight-regular)}.editor-pane-collapse .when-narrow{display:none}.editor-badge-dot{border:1.5px solid var(--color-surface-raised);background:var(--color-status-warning-indicator);border-radius:50%;width:8px;height:8px;position:absolute;top:4px;right:4px}.editor-badge-dot.is-error{background:var(--color-status-error-indicator)}.editor-count-badge{min-width:16px;height:16px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--color-status-warning-indicator);color:var(--color-text-strong);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);place-items:center;display:inline-grid}.editor-rail .editor-count-badge{position:absolute;top:0;right:0}.editor-tabs-head{padding:0 var(--space-4);gap:0}.editor-tabs{gap:var(--space-2);flex:1;min-width:0;display:flex}.workspace-page .editor-tab{justify-content:center;align-items:center;gap:var(--space-6);min-width:var(--editor-ctl);height:var(--editor-ctl);padding:0 var(--space-4);border-radius:var(--radius-control);color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;background:0 0;border:0;display:inline-flex;position:relative}.workspace-page .editor-tab:hover{background:var(--color-surface-hover)}.workspace-page .editor-tab[aria-selected=true]{padding:0 var(--space-8);background:var(--color-accent-surface);color:var(--color-accent-foreground)}.editor-tab-label{display:none}.editor-tab[aria-selected=true] .editor-tab-label{display:inline}.editor-tab:not([aria-selected=true]) .editor-count-badge{position:absolute;top:0;right:-2px}@media (width<=1100px){.editor-tab[aria-selected=true] .editor-tab-label{display:none}.workspace-page .editor-tab[aria-selected=true]{padding:0 var(--space-4)}}.editor-tabpanels{flex:1;min-height:0;overflow-y:auto}.editor-tabpanels>[hidden]{display:none}.workspace-page .editor-section-title{justify-content:space-between;align-items:center;gap:var(--space-8);min-height:var(--editor-ctl);margin:0 0 var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);display:flex}.workspace-page .editor-note{margin:var(--space-4) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-xl);line-height:var(--font-line-height-compact)}.workspace-page .editor-aux{color:var(--color-text-secondary);font-size:var(--font-size-xl);font-weight:var(--font-weight-regular);margin-left:auto}.workspace-page .editor-kv{gap:var(--space-6) var(--space-12);font-size:var(--font-size-xl);grid-template-columns:auto minmax(0,1fr);margin:0;display:grid}.workspace-page .editor-kv dt{color:var(--color-text-secondary)}.workspace-page .editor-kv dd{overflow-wrap:anywhere;text-align:right;margin:0}.workspace-page .studio-help-keys dd{text-align:left}.workspace-page .editor-switch-row{align-items:center;gap:var(--space-8);min-height:var(--editor-ctl);color:var(--color-text-strong);font-size:var(--font-size-3xl);cursor:pointer;display:flex}.workspace-page .editor-switch{background:var(--color-border-strong);appearance:none;cursor:pointer;border-radius:9px;flex:none;width:30px;height:18px;margin:0;transition:background-color .12s;position:relative}.workspace-page .editor-switch:after{content:"";background:var(--color-surface-base);width:14px;height:14px;box-shadow:0 1px 2px var(--color-shadow-soft);border-radius:50%;transition:transform .12s;position:absolute;top:2px;left:2px}.workspace-page .editor-switch:checked{background:var(--color-accent-solid)}.workspace-page .editor-switch:checked:after{transform:translate(12px)}.workspace-page .editor-switch:disabled{cursor:default;opacity:.45}.workspace-page .editor-field{align-items:center;gap:var(--space-8);min-height:var(--editor-ctl);padding:0 var(--space-8);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-secondary);display:flex}.workspace-page .editor-field:focus-within{outline:var(--border-width-strong) solid var(--color-focus-ring);outline-offset:var(--space-2)}.workspace-page .editor-field input{min-width:0;min-height:0;color:var(--color-text-strong);font:inherit;font-size:var(--editor-input-size,16px);background:0 0;border:0;outline:0;flex:1;align-self:stretch;padding:0}.editor-field-key{color:var(--color-text-secondary);font-size:var(--font-size-md)}.workspace-page .editor-empty-state{margin:var(--space-12);color:var(--color-text-secondary);font-size:var(--font-size-xl)}.workspace-page .editor-panel-error{margin:var(--space-8) var(--space-12);color:var(--color-status-error-foreground);font-size:var(--font-size-xl);padding:0}.workspace-page .asset-tree-panel{min-height:0;color:var(--color-text-default);font-size:var(--font-size-3xl);flex-direction:column;flex:1;display:flex}.layer-filters{gap:var(--space-8);padding:var(--space-12);border-bottom:var(--border-divider);background:var(--color-bg-base);display:grid}.layer-filters[hidden]{display:none}.layer-filter-row{align-items:center;gap:var(--space-4);display:flex}.workspace-page .asset-filter-inline{align-items:center;gap:var(--space-8);color:var(--color-text-secondary);font-size:var(--font-size-xl);flex:1;display:flex}.workspace-page .asset-filter-inline select{min-width:0;min-height:var(--editor-ctl);padding:0 var(--space-8);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit;flex:1}.workspace-page .asset-filter-summary{align-items:center;gap:var(--space-6);color:var(--color-text-secondary);font-size:var(--font-size-xl);flex-wrap:wrap;display:flex}.workspace-page .asset-filter-clear{margin-left:auto}.workspace-page .asset-action{min-height:26px;padding:0 var(--space-8);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit;font-size:var(--font-size-xl);white-space:nowrap;cursor:pointer}.workspace-page .asset-action:disabled{cursor:default;opacity:.45}.workspace-page .asset-action-danger{border-color:var(--color-status-error-foreground);color:var(--color-status-error-foreground)}.workspace-page .asset-action-accent{border-color:var(--color-accent-border-soft);color:var(--color-accent-foreground)}.layer-list{min-height:0;padding:var(--space-4) 0;flex:1;overflow-y:auto}.workspace-page .asset-hidden-note{padding:var(--space-6) var(--space-12);color:var(--color-text-secondary);font-size:var(--font-size-xl);display:block}.workspace-page .asset-group-label{padding:var(--space-8) var(--space-12) var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.workspace-page .editor-asset-row{align-items:center;gap:var(--space-4);min-height:calc(var(--editor-ctl) + var(--space-4));padding:var(--space-2) var(--space-8) var(--space-2) var(--space-4);display:flex;position:relative}.workspace-page .editor-asset-row:hover{background:var(--color-surface-hover)}.workspace-page .editor-asset-row[data-selected=true]{background:var(--color-accent-surface)}.workspace-page .editor-asset-row[data-selected=true]:before,.workspace-page .editor-asset-row[data-failed=true]:before{content:"";top:var(--space-4);bottom:var(--space-4);background:var(--color-accent-solid);border-radius:0 2px 2px 0;width:3px;position:absolute;left:0}.workspace-page .editor-asset-row[data-selected=true] .asset-row-name{color:var(--color-accent-foreground);font-weight:var(--font-weight-semibold)}.workspace-page .editor-asset-row[data-failed=true]{z-index:1;background:var(--color-status-error-surface);position:sticky;top:0}.workspace-page .editor-asset-row[data-failed=true]:before{background:var(--color-status-error-indicator);border-radius:0;top:0;bottom:0}.workspace-page .editor-asset-row[data-failed=true] .asset-row-name{color:var(--color-status-error-foreground);font-weight:var(--font-weight-semibold)}.layer-visibility{width:var(--editor-ctl);height:var(--editor-ctl);border-radius:var(--radius-control);color:var(--color-text-secondary);cursor:pointer;flex:none;place-items:center;display:inline-grid;position:relative}.layer-visibility:hover{background:var(--color-surface-hover);color:var(--color-text-strong)}.layer-visibility input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.layer-visibility:has(input:focus-visible){outline:var(--border-width-strong) solid var(--color-focus-ring);outline-offset:var(--space-2)}.layer-visibility:has(input:not(:checked)){color:var(--color-text-muted)}.workspace-page .asset-swatch{border-radius:var(--radius-dot);flex:none;width:8px;height:8px}.layer-row-main{flex:1;min-width:0;display:grid}.workspace-page .asset-row-name{min-width:0;height:var(--editor-ctl);margin:calc(var(--space-4) * -1) 0;color:var(--color-text-strong);font:inherit;line-height:var(--editor-ctl);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;display:block;overflow:hidden}.workspace-page .asset-row-name[data-hidden=true]{color:var(--color-text-secondary)}.layer-lock{width:13px;height:13px;margin-right:var(--space-4);vertical-align:-2px}.layer-row-meta{color:var(--color-text-secondary);font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-row-meta[data-tone=error]{color:var(--color-status-error-foreground)}.layer-cells{color:var(--color-text-secondary);font-size:var(--font-size-xl);text-align:right;flex:none}.layer-status{align-items:center;gap:var(--space-6);color:var(--color-text-strong);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);white-space:nowrap;flex:none;display:inline-flex}.layer-status:before{content:"";background:var(--color-text-muted);border-radius:50%;width:8px;height:8px}.layer-status[data-tone=error]{color:var(--color-status-error-foreground)}.layer-status[data-tone=error]:before{background:var(--color-status-error-indicator)}.layer-status[data-tone=warning]:before{background:var(--color-status-warning-indicator)}.layer-status[data-tone=accent]:before{background:var(--color-accent-solid)}.workspace-page .asset-retry{color:var(--color-status-error-foreground)}.workspace-page .asset-row-actions{gap:var(--space-4);flex:none;display:inline-flex}.layer-menu>summary{opacity:0}.editor-asset-row:is(:hover,[data-selected=true]) .layer-menu>summary,.layer-menu[open]>summary,.layer-menu>summary:focus-visible{opacity:1}@media (hover:none){.layer-menu>summary{opacity:1}}.layer-progress{right:var(--space-12);bottom:2px;left:calc(var(--editor-ctl) + var(--space-8));background:var(--color-border-section);appearance:none;border:0;border-radius:1px;width:auto;height:2px;position:absolute}.layer-progress::-webkit-progress-bar{background:var(--color-border-section)}.layer-progress::-webkit-progress-value{background:var(--color-status-warning-indicator)}.layer-progress::-moz-progress-bar{background:var(--color-status-warning-indicator)}.workspace-page .property-panel{color:var(--color-text-default);font-size:var(--font-size-3xl)}.property-empty{justify-content:space-between;align-items:center;gap:var(--space-8);display:flex}.property-empty p{margin:0}.property-empty strong{color:var(--color-text-strong)}.property-head{align-items:center;gap:var(--space-8);padding:var(--space-12) var(--space-14) 0;display:flex}.property-swatch{border-radius:var(--radius-dot);flex:none;width:10px;height:10px}.property-name{min-width:0;color:var(--color-text-strong);font-size:var(--font-size-5xl);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.property-panel>.editor-note{margin:var(--space-8) var(--space-14) 0}.property-hero{gap:var(--space-8);padding:var(--space-12) var(--space-14) var(--space-14);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.property-hero>div{gap:var(--space-2);min-width:0;display:grid}.property-hero dt{color:var(--color-text-secondary);font-size:var(--font-size-md)}.property-hero dd{color:var(--color-text-strong);font-size:var(--font-size-7xl);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-tight);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.property-section{gap:var(--space-2);padding:var(--space-10) var(--space-14);border-top:var(--border-divider);display:grid}.property-display{align-items:center;gap:var(--space-8);grid-template-columns:minmax(0,1fr) minmax(72px,40%) 36px;display:grid}.property-display[data-disabled=true]{opacity:.55}.property-display input[type=range],.workspace-page .spatial-operation-channels input[type=range]{width:100%;min-width:0;accent-color:var(--color-accent-solid)}.property-display-value{color:var(--color-text-secondary);font-size:var(--font-size-xl);text-align:right}.property-axes{gap:var(--space-6);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.property-axis{min-width:0;height:var(--editor-ctl);padding-left:var(--space-8);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-secondary);align-items:center;display:flex}.property-axis:focus-within{outline:var(--border-width-strong) solid var(--color-focus-ring);outline-offset:var(--space-2)}.property-axis input{width:100%;min-width:0;height:100%;padding:0 var(--space-8) 0 var(--space-4);color:var(--color-text-strong);font-size:var(--editor-input-size,16px);text-align:right;background:0 0;border:0;outline:0}.property-details>summary{min-height:var(--editor-ctl);color:var(--color-text-secondary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);cursor:pointer;align-items:center;display:flex}.property-details[open]>summary{margin-bottom:var(--space-6)}.workspace-page .feature-props dd.is-strong{color:var(--color-text-strong)}.workspace-page .spatial-operation-panel{gap:var(--space-8);padding:var(--space-12) var(--space-14);color:var(--color-text-default);font-size:var(--font-size-3xl);display:grid}.spatial-operation-need{align-items:center;gap:var(--space-8);color:var(--color-text-strong);font-weight:var(--font-weight-medium);display:flex}.spatial-operand{align-items:center;gap:var(--space-6);min-width:0;display:flex}.spatial-operand-tag{border-radius:var(--radius-control-sm);width:22px;height:22px;font-family:var(--font-family-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);flex:none;place-items:center;display:inline-grid}.spatial-operand-tag.is-a{background:var(--color-accent-solid);color:var(--color-text-on-strong)}.spatial-operand-tag.is-b{border:1.5px solid var(--color-accent-solid);color:var(--color-accent-foreground)}.workspace-page .editor-operation-select{min-width:0;min-height:var(--editor-ctl);padding:0 var(--space-8);border:var(--border-default);border-radius:var(--radius-control);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit;flex:1}.workspace-page .editor-operation-select[data-empty=true]{border-color:var(--color-accent-solid);box-shadow:inset 0 0 0 var(--border-width-thin) var(--color-accent-solid);color:var(--color-accent-foreground);font-weight:var(--font-weight-semibold)}.spatial-operation-kind{justify-self:start}.spatial-operation-kind>button:not(.editor-tool){width:var(--editor-ctl);font-family:var(--font-family-mono);font-size:var(--font-size-5xl);flex:none;padding:0}.spatial-operation-channels,.spatial-operation-results ul{gap:var(--space-6);margin:0;padding:0;list-style:none;display:grid}.spatial-channel-head{align-items:center;gap:var(--space-6);font-size:var(--font-size-xl);display:flex}.spatial-channel-swatch{border-radius:var(--radius-dot);flex:none;width:10px;height:10px}.spatial-channel-label,.spatial-result-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.spatial-channel-value{color:var(--color-text-secondary);margin-left:auto}.workspace-page .editor-operation-submit{width:100%}.spatial-operation-results li{gap:var(--space-4);display:grid}.notes-panel{gap:var(--space-8);padding:var(--space-12) var(--space-14);display:grid}.notes-toolbar{justify-content:space-between;align-items:center;gap:var(--space-8);display:flex}.notes-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.notes-list>li{align-items:center;gap:var(--space-8);padding:var(--space-8) 0;border-bottom:var(--border-divider);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.note-text{color:var(--color-text-strong);overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.notes-list>li[data-note-status=done] .note-text{color:var(--color-text-secondary)}.workspace-page .note-status{align-items:center;gap:var(--space-6);min-height:var(--editor-ctl);padding:0 var(--space-10);border:var(--border-default);border-radius:var(--radius-pill);background:var(--color-status-warning-surface);color:var(--color-text-strong);font:inherit;font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;display:inline-flex}.workspace-page .note-status[data-status=done]{background:var(--color-surface-base);color:var(--color-status-success-foreground)}.note-status-dot{background:var(--color-status-warning-indicator);border-radius:50%;width:8px;height:8px}.note-status[data-status=done] .note-status-dot{background:var(--color-status-success-indicator)}.notes-edit{gap:var(--space-6);grid-column:1/-1;display:grid}.notes-edit textarea{box-sizing:border-box;width:100%;min-height:6rem;padding:var(--space-field-inset);border:var(--border-default);border-radius:var(--radius-field);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit;resize:vertical}.notes-row-actions{justify-content:flex-end;gap:var(--space-6);display:flex}.editor-scene-stage{isolation:isolate;background:var(--color-bg-viewport);grid-area:vp;min-width:0;min-height:0;position:relative;overflow:hidden}.editor-scene-layer{position:absolute;inset:0}.editor-scene-layer[hidden]{display:none}.workspace-page .scene-float{z-index:var(--z-float);align-items:center;gap:var(--space-6);border:var(--border-default);border-color:var(--color-border-viewport);border-radius:var(--radius-pill);background:var(--color-overlay-surface);color:var(--color-text-secondary);font-size:var(--font-size-xl);display:inline-flex;position:absolute}.workspace-page .studio-scene-caption{top:var(--space-12);height:28px;padding:0 var(--space-12);pointer-events:none;left:50%;transform:translate(-50%)}.workspace-page .gizmo-toggle{top:var(--space-12);left:var(--space-12);padding:var(--space-2);border-radius:var(--radius-field-sm)}.gizmo-toggle button{align-items:center;gap:var(--space-6);min-height:var(--editor-ctl);padding:0 var(--space-10);border-radius:var(--radius-control);color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);cursor:pointer;background:0 0;border:0;display:inline-flex}.gizmo-toggle button[aria-pressed=true]{background:var(--color-accent-surface);color:var(--color-accent-foreground)}.workspace-page .packet-building{z-index:var(--z-float);top:52px}.workspace-page .job-toasts{z-index:var(--z-float);right:var(--space-12);bottom:var(--space-12);max-height:calc(100% - 120px);overflow-y:auto}.workspace-page .source-upload-status{z-index:var(--z-float);max-width:calc(100% - 24px);right:auto;bottom:var(--space-12);left:var(--space-12);position:absolute}.workspace-page .editor-status{display:none}.studio-empty-scene{z-index:var(--z-float);width:min(340px,100% - 32px);padding:var(--space-24) var(--space-20);align-items:center;gap:var(--space-10);border:var(--border-dropzone);border-radius:var(--radius-dialog);background:var(--color-overlay-surface);text-align:center;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.studio-empty-scene>.studio-icon{width:32px;height:32px;color:var(--color-accent-foreground)}.studio-empty-scene strong{color:var(--color-text-strong);font-size:var(--font-size-6xl);font-weight:var(--font-weight-semibold)}.studio-empty-scene p{font-size:var(--font-size-xl);margin:0}.studio-empty-scene>span{color:var(--color-text-secondary);font-size:var(--font-size-lg)}.studio-statusbar{align-items:center;gap:var(--space-14);min-width:0;padding:0 var(--space-4) env(safe-area-inset-bottom,0px) var(--space-12);border-top:var(--border-divider);border-color:var(--color-border-chrome);background:var(--color-surface-raised);color:var(--color-text-secondary);font-size:var(--font-size-xl);white-space:nowrap;grid-area:sb;display:flex}.studio-statusbar-hint{text-overflow:ellipsis;min-width:0;overflow:hidden}.studio-statusbar-coord{margin-left:auto}.studio-statusbar-cells{color:var(--color-text-strong);font-weight:var(--font-weight-semibold)}.studio-hint-touch{display:none}@media (hover:none) and (pointer:coarse){.studio-hint-mouse{display:none}.studio-hint-touch{display:inline}}.editor-tabbar{display:none}.studio-setting-section{padding:var(--space-14);border-bottom:var(--border-divider)}.studio-setting-section h3{margin:0 0 var(--space-10);color:var(--color-text-strong);font-size:var(--font-size-3xl);font-weight:var(--font-weight-medium)}.studio-setting-section p{margin:var(--space-8) 0;font-size:var(--font-size-xl);color:var(--color-text-muted);line-height:1.6}.studio-field{gap:var(--space-6);margin:var(--space-12) 0;font-size:var(--font-size-xl);flex-direction:column;display:flex}.studio-field select{width:100%;padding:var(--space-8);border:var(--border-default);border-radius:var(--radius-field-sm);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit}.studio-segment{padding:var(--space-2);gap:var(--space-2);border-radius:var(--radius-field);background:var(--color-surface-inset);display:flex}.studio-segment button{padding:var(--space-8) var(--space-4);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;background:0 0;border:0;flex:1}.studio-segment button[aria-pressed=true]{background:var(--color-surface-base);color:var(--color-text-strong)}.studio-segment button:disabled{cursor:not-allowed;opacity:.5}.studio-check{align-items:center;gap:var(--space-8);padding:var(--space-12) 0 0;font-size:var(--font-size-xl);display:flex}.studio-conversion-idle{padding:var(--space-8);border-radius:var(--radius-field);background:var(--color-surface-muted);font-size:var(--font-size-xl)}.studio-conversion-job{margin-top:var(--space-12);gap:var(--space-8);font-size:var(--font-size-xl);display:grid}.studio-conversion-job strong{text-overflow:ellipsis;white-space:nowrap;font-weight:var(--font-weight-medium);overflow:hidden}.studio-conversion-job progress{width:100%;height:5px;accent-color:var(--color-accent-base)}.studio-conversion-steps{gap:var(--space-6);margin:0;padding:0;list-style:none;display:flex}.studio-conversion-steps li{padding-bottom:var(--space-6);border-bottom:2px solid var(--color-border-default);color:var(--color-text-muted);flex:1}.studio-conversion-steps li[data-ready=true]{border-color:var(--color-status-success-indicator);color:var(--color-status-success-foreground)}.studio-capture{align-items:center;gap:var(--space-6);justify-content:center;width:100%;display:flex}.studio-setting-section output{margin-top:var(--space-8);font-size:var(--font-size-xl);display:block}.plateau-ward-group-title{margin:var(--space-12) 0 0;color:var(--color-text-secondary);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.plateau-ward-group:first-child .plateau-ward-group-title{margin-top:0}.plateau-catalog-all{padding:var(--space-8) 0;border-bottom:var(--border-divider);font-weight:var(--font-weight-medium);flex-wrap:wrap}.plateau-catalog-meta{color:var(--color-text-muted);margin-left:auto;font-weight:400}.plateau-catalog-list{margin:0 0 var(--space-12);padding:0;list-style:none}.plateau-catalog-list li{padding:var(--space-6) 0;border-bottom:var(--border-divider);font-size:var(--font-size-xl);min-width:0}.plateau-catalog-ward{align-items:center;gap:var(--space-8);flex:1;min-width:0;min-height:32px;display:flex}.plateau-catalog-level{color:var(--color-text-muted);font-size:var(--font-size-md);flex:none}.plateau-catalog-ward input:disabled+.plateau-catalog-ward-name{color:var(--color-text-muted)}.plateau-catalog-ward-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.plateau-catalog-help{color:var(--color-text-secondary);font-size:var(--font-size-md);line-height:1.6}.plateau-catalog-empty{margin:var(--space-8) 0;color:var(--color-text-muted);font-size:var(--font-size-md)}.plateau-ward-list output{margin-top:var(--space-8);font-size:var(--font-size-xl);display:block}.source-picker-dialog .plateau-catalog-list{max-height:min(52dvh,30rem);overflow-y:auto}.plateau-ward-dialog-actions{justify-content:flex-end;display:flex}@media (any-pointer:coarse){.plateau-catalog-ward{min-height:44px}}.lod-preview{width:100%;max-width:400px;margin:var(--space-12) auto;border:var(--border-default);border-radius:var(--radius-field);background:var(--color-surface-subtle);display:block}.lod-preview[data-dimmed=true]{opacity:.45}.lod-preview-gaze{stroke:var(--color-text-strong);stroke-width:1.5px}.lod-preview text{fill:var(--color-text-strong);font-family:var(--font-family-mono);font-size:var(--font-size-xs);paint-order:stroke;stroke:var(--color-surface-base);stroke-width:2.5px;stroke-linejoin:round}.lod-bands{gap:var(--space-8);min-width:0;margin:var(--space-12) 0 0;border:0;padding:0;display:grid}.lod-bands legend{margin-bottom:var(--space-8);color:var(--color-text-strong);font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);padding:0}.lod-bands:disabled .lod-band{opacity:.55}.lod-band{gap:var(--space-6);padding:var(--space-8);border:var(--border-default);border-radius:var(--radius-field);background:var(--color-surface-base);font-size:var(--font-size-xl);display:grid}.lod-band-head{align-items:center;gap:var(--space-6);min-width:0;display:flex}.lod-band-head strong{color:var(--color-text-strong);font-weight:var(--font-weight-medium)}.lod-band-range{color:var(--color-text-muted);font-family:var(--font-family-mono);font-size:var(--font-size-md)}.lod-band-head .lod-level{margin-left:auto}.lod-band-remove{padding:var(--space-2) var(--space-6);border:var(--border-default);border-radius:var(--radius-control);color:var(--color-text-secondary);font-size:var(--font-size-md);cursor:pointer;background:0 0;margin-left:auto}.lod-band-remove:disabled{cursor:not-allowed;opacity:.5}.lod-swatch{border-radius:var(--radius-dot);flex:none;width:10px;height:10px}.lod-row{align-items:center;gap:var(--space-6);color:var(--color-text-secondary);display:flex}.lod-row>span:first-child{flex:none;width:6.5em}.lod-row input[type=range]{min-width:0;accent-color:var(--color-accent-base);flex:1}.lod-row :is(input[type=number],select){width:5.5em;padding:var(--space-4) var(--space-6);border:var(--border-default);border-radius:var(--radius-field-sm);background:var(--color-surface-base);color:var(--color-text-strong);font:inherit}.lod-level,.lod-open{color:var(--color-text-muted);font-family:var(--font-family-mono);font-size:var(--font-size-md);white-space:nowrap}.lod-action{width:100%;margin-top:var(--space-8)}.studio-setting-section .lod-note{padding:var(--space-6) var(--space-8);border-radius:var(--radius-field-sm);background:var(--color-status-warning-surface);color:var(--color-status-warning-foreground)}.lod-subheading{margin-top:var(--space-14);color:var(--color-text-strong);font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);display:block}.lod-warning{padding:var(--space-4) var(--space-6);border-radius:var(--radius-sm);background:var(--color-status-warning-surface);color:var(--color-status-warning-foreground)}.lod-stats{gap:var(--space-4) var(--space-10);margin:var(--space-8) 0;font-size:var(--font-size-xl);grid-template-columns:auto 1fr;display:grid}.lod-stats dt{color:var(--color-text-muted)}.lod-stats dd{font-family:var(--font-family-mono);text-align:right;margin:0}.lod-stats-bands{gap:var(--space-4);font-size:var(--font-size-xl);margin:0;padding:0;list-style:none;display:grid}.lod-stats-bands li{align-items:center;gap:var(--space-6);display:flex}.lod-stats-count{font-family:var(--font-family-mono);margin-left:auto}@media (pointer:coarse){.studio-segment button,.studio-field select,.lod-band-remove,.lod-row :is(input[type=number],select),.workspace-page .asset-action,.workspace-page .asset-filter-inline select,.workspace-page .editor-operation-select,.gizmo-toggle button{min-width:44px;min-height:44px}.workspace-page input[type=range]{min-height:44px}}@media (width<=768px){.workspace-page{--editor-head:calc(48px + env(safe-area-inset-top,0px))}.editor-shell{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:var(--editor-head) minmax(0, 1fr) var(--editor-status) var(--editor-tabbar);grid-template-areas:"hs he""vp vp""sb sb""tab tab"}.editor-head{gap:var(--space-4);padding-inline:var(--space-4)}.editor-toolbar{z-index:var(--z-float);place-self:start end;gap:var(--space-4);margin:var(--space-8);background:0 0;border:0;grid-area:vp;padding:0}.editor-toolbar .editor-modes{display:none}.editor-toolbar .editor-segment{border:var(--border-default);border-color:var(--color-border-viewport);background:var(--color-overlay-surface)}.workspace-page .studio-scene-caption{left:var(--space-8);transform:none}.workspace-page .gizmo-toggle{top:52px;left:var(--space-8)}.workspace-page .packet-building{top:96px}.editor-chip:not(.editor-chip--frame),.editor-chip--frame>span{display:none}.editor-chips .editor-chip--frame{min-width:var(--editor-ctl);height:var(--editor-ctl);justify-content:center;padding:0}.share-pill-trigger{width:var(--editor-ctl);justify-content:center;padding:0}.share-pill-trigger>:not(.share-pill-dot){display:none!important}.editor-pane{z-index:var(--z-sheet);border:0;border-top:var(--border-default);border-radius:var(--radius-dialog) var(--radius-dialog) 0 0;height:62%;box-shadow:0 -12px 28px var(--color-shadow-panel);grid-area:vp;align-self:end;display:none}.editor-shell[data-sheet=left] .editor-pane--left,.editor-shell[data-sheet=right] .editor-pane--right{display:flex}.editor-pane-collapse .when-wide{display:none}.editor-pane-collapse .when-narrow{display:block}.editor-tabs-head .editor-pane-collapse{order:2}.editor-tab[aria-selected=true] .editor-tab-label{display:inline}.studio-statusbar-hint,.studio-statusbar-coord{display:none}.studio-statusbar-cells{margin-left:auto}.editor-tabbar{padding-bottom:env(safe-area-inset-bottom,0px);border-top:var(--border-divider);border-color:var(--color-border-chrome);background:var(--color-surface-raised);grid-area:tab;align-items:stretch;display:flex}.editor-tabbar button{justify-content:center;align-items:center;gap:var(--space-2);min-width:44px;min-height:44px;color:var(--color-text-secondary);font:inherit;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;padding:0;display:flex;position:relative}.editor-tabbar button[aria-pressed=true]{color:var(--color-accent-foreground)}.editor-tabbar button[aria-pressed=true] .studio-icon{box-sizing:content-box;padding:var(--space-2) var(--space-12);border-radius:var(--radius-pill);background:var(--color-accent-surface)}.editor-tabbar .editor-tabbar-panel{border-left:var(--border-divider)}.editor-tabbar .editor-badge-dot{top:6px;right:calc(50% - 16px)}}@media (width<=480px){.editor-pane{height:70%}.editor-project-name{font-size:var(--font-size-5xl)}}@media (prefers-reduced-motion:reduce){.workspace-page *,.workspace-page :before,.workspace-page :after{scroll-behavior:auto;transition:none}}.theme-select{align-items:center;gap:var(--space-6);color:var(--color-text-secondary);font:var(--font-size-xl) var(--font-family-sans);flex:none;display:inline-flex}.theme-select select{border:1px solid var(--color-border-input-idle);border-radius:var(--radius-control);max-width:140px;min-height:34px;padding:var(--space-4) var(--space-8);background:var(--color-surface-base);color:var(--color-text-default);font:inherit;cursor:pointer}.theme-select select:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.auth-theme{margin-bottom:var(--space-16);justify-content:flex-end;display:flex}@media (width<=760px),(pointer:coarse){.theme-select select{min-height:var(--space-44)}}@media (width<=760px){.theme-select>span{display:none}}.projects-main{max-width:1280px;padding:var(--space-24) var(--space-32) var(--space-44);margin:0 auto}.project-sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.projects-heading{align-items:baseline;gap:var(--space-4) var(--space-12);margin-bottom:var(--space-16);flex-wrap:wrap;display:flex}.projects-title{align-items:baseline;gap:var(--space-8);color:var(--color-text-strong);font-size:var(--font-size-display);font-weight:var(--font-weight-semibold);line-height:var(--font-line-height-tight);margin:0;display:flex}.projects-count{color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-page-title);font-weight:var(--font-weight-regular)}.project-list-summary{color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-3xl)}.projects-toolbar{align-items:center;gap:var(--space-12);margin-bottom:var(--space-20);display:flex}.projects-search{width:320px;display:block;position:relative}.projects-search .icon{top:50%;left:var(--space-10);width:18px;height:18px;color:var(--color-text-secondary);pointer-events:none;position:absolute;transform:translateY(-50%)}.projects-search input{width:100%;height:36px;padding:0 var(--space-12) 0 36px;border:var(--border-default);border-radius:var(--radius-control-sm);color:var(--color-text-strong);background:var(--color-surface-base);font:inherit;font-size:var(--font-size-5xl)}.projects-search input::placeholder{color:var(--color-text-subtle)}.projects-search input:focus-visible{border-color:var(--color-border-accent)}.projects-tool-button{border:var(--border-default);border-radius:var(--radius-control-sm);width:36px;height:36px;color:var(--color-text-strong);background:var(--color-surface-base);cursor:pointer;place-items:center;padding:0;transition:background .15s;display:grid}.projects-tool-button .icon{width:20px;height:20px}.projects-tool-button:hover,.menu[open]>.projects-tool-button{background:var(--color-surface-muted)}.projects-view-switch{display:flex}.projects-view-switch .projects-tool-button:first-child{border-radius:var(--radius-control-sm) 0 0 var(--radius-control-sm)}.projects-view-switch .projects-tool-button:last-child{margin-left:calc(-1 * var(--border-width-thin));border-radius:0 var(--radius-control-sm) var(--radius-control-sm) 0}.projects-view-switch .projects-tool-button[aria-pressed=true]{border-color:var(--color-accent-border-soft);color:var(--color-accent-foreground);background:var(--color-accent-surface);position:relative}.projects-new-button{align-items:center;gap:var(--space-8);height:36px;padding:0 var(--space-16);border-radius:var(--radius-control-sm);color:var(--color-text-on-strong);background:var(--color-accent-solid);font:inherit;font-size:var(--font-size-5xl);font-weight:var(--font-weight-medium);white-space:nowrap;cursor:pointer;border:0;display:inline-flex}.projects-new-button .icon{stroke-width:2px;width:20px;height:20px}@media (hover:hover){.projects-new-button:hover{filter:brightness(.92)}}.projects-empty{justify-items:center;gap:var(--space-8);padding:var(--space-32) var(--space-24);color:var(--color-text-secondary);font-size:var(--font-size-3xl);text-align:center;display:grid}.projects-empty-title{color:var(--color-text-strong);font-size:var(--font-size-6xl)}.projects-empty .projects-new-button{margin-top:var(--space-8)}.project-no-results{justify-items:start}.project-thumb{--thumb-tint:var(--color-status-warning-indicator);--thumb-grid:16px;color:var(--color-text-secondary);background:linear-gradient(135deg, color-mix(in srgb, var(--thumb-tint) 22%, var(--color-surface-base)), color-mix(in srgb, var(--thumb-tint) 16%, var(--color-surface-base)));place-items:center;display:grid;position:relative;overflow:hidden}.project-thumb[data-hue="1"]{--thumb-tint:var(--color-axis-z-up-elevation)}.project-thumb[data-hue="2"]{--thumb-tint:var(--color-axis-y-north-latitude)}.project-thumb[data-hue="3"]{--thumb-tint:var(--color-status-warning-foreground)}.project-thumb:before{--thumb-line:color-mix(in srgb, var(--color-text-strong) 5%, transparent);content:"";background-image:repeating-linear-gradient(0deg, var(--thumb-line) 0, var(--thumb-line) 1px, transparent 1px, transparent var(--thumb-grid)), repeating-linear-gradient(90deg, var(--thumb-line) 0, var(--thumb-line) 1px, transparent 1px, transparent var(--thumb-grid));pointer-events:none;position:absolute;inset:0}.project-thumb-card{border-radius:calc(var(--radius-item) - 1px) calc(var(--radius-item) - 1px) 0 0;width:100%;height:140px}.project-thumb-row{--thumb-grid:8px;border-radius:var(--radius-control-sm);width:40px;height:40px}.project-thumb-art{opacity:.6;width:48px;height:48px;position:relative}.project-thumb-image{z-index:1;object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.status-pill{align-items:center;gap:var(--space-6);padding:var(--space-4) var(--space-8);border-radius:var(--radius-pill);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);white-space:nowrap;display:inline-flex}.status-pill.is-running{color:var(--color-text-strong);background:var(--color-status-warning-surface);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--color-status-warning-indicator) 45%, transparent)}.status-dot{border-radius:var(--radius-pill);background:var(--color-status-warning-indicator);flex:none;width:6px;height:6px}.project-grid{align-items:start;gap:var(--space-20);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}@media (width>=768px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1280px){.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.project-card{border:var(--border-default);border-radius:var(--radius-item);background:var(--color-surface-base);flex-direction:column;transition:border-color .15s,box-shadow .15s;display:flex;position:relative}@media (hover:hover){.project-card:not(.project-card-loading):hover{border-color:var(--color-border-accent);box-shadow:var(--shadow)}}.project-card-open{border-radius:var(--radius-item);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;padding:0;display:flex}.project-card-body{align-items:flex-start;gap:var(--space-4);width:100%;min-width:0;padding:var(--space-12) var(--space-16) var(--space-16);flex-direction:column;flex:1;display:flex}.project-card-name{max-width:100%;color:var(--color-text-strong);font-size:var(--font-size-6xl);font-weight:var(--font-weight-semibold);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.project-card-meta{color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-3xl)}.grid-chip{margin-top:var(--space-4);padding:var(--space-4) var(--space-8);border-radius:var(--radius-pill);color:var(--color-text-secondary);background:var(--color-surface-muted);font-size:var(--font-size-md);line-height:1;display:inline-flex}.project-card-status{top:var(--space-8);right:var(--space-8);z-index:2;pointer-events:none;position:absolute}.project-card-menu{top:var(--space-8);right:var(--space-8);z-index:3;opacity:0;transition:opacity .15s;position:absolute}.project-card:hover .project-card-menu,.project-card:focus-within .project-card-menu,.project-card-menu[open]{opacity:1}.project-menu-button{border-radius:var(--radius-control-sm);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.project-menu-button .icon{width:20px;height:20px}.project-menu-button:hover,.menu[open]>.project-menu-button{color:var(--color-text-strong);background:var(--color-surface-muted)}.project-card-menu .project-menu-button{border:var(--border-default);color:var(--color-text-strong);background:color-mix(in srgb, var(--color-surface-base) 92%, transparent)}.project-card-menu .menu-panel{min-width:160px}.project-confirm{gap:var(--space-8);font-size:var(--font-size-xl);line-height:var(--font-line-height-compact);display:grid}.project-card-confirm{padding:var(--space-12) var(--space-16) var(--space-16);border-top:var(--border-divider)}.project-confirm-text{color:var(--color-text-default)}.project-confirm-error{color:var(--color-status-error-foreground)}.project-confirm-actions{justify-content:flex-end;gap:var(--space-8);flex-wrap:wrap;display:flex}.project-confirm-button{min-height:32px;padding:0 var(--space-12);border:var(--border-default);border-radius:var(--radius-control-sm);color:var(--color-text-strong);background:var(--color-surface-base);font:inherit;font-weight:var(--font-weight-semibold);cursor:pointer}.project-confirm-button.is-danger{border-color:var(--color-status-error-foreground);color:var(--color-text-on-strong);background:var(--color-status-error-foreground)}.project-confirm-button:disabled{cursor:not-allowed;opacity:.55}.project-card-loading .project-thumb{background:var(--color-surface-muted)}.project-loading-line{border-radius:var(--radius-pill);background:var(--color-surface-muted);width:55%;height:10px;animation:1.2s ease-in-out infinite project-loading-pulse}.project-loading-line.is-strong{width:75%;height:14px}@keyframes project-loading-pulse{50%{opacity:.45}}.project-table{border:var(--border-default);border-radius:var(--radius-item);border-spacing:0;background:var(--color-surface-base);table-layout:fixed;width:100%}.project-table th{padding:var(--space-12) var(--space-16);border-bottom:var(--border-default);color:var(--color-text-strong);background:var(--color-surface-muted);font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);text-align:left;white-space:nowrap}.project-table th+th{border-left:var(--border-default)}.project-table th:first-child{border-top-left-radius:calc(var(--radius-item) - 1px)}.project-table th:last-child{border-top-right-radius:calc(var(--radius-item) - 1px)}.project-table .col-thumb{width:56px}.project-table .col-status{width:120px}.project-table .col-grid{width:104px}.project-table .col-detail{width:168px}.project-table .col-updated{width:120px}.project-table .col-menu{width:48px}.project-table td{height:64px;padding:var(--space-12) var(--space-16);border-bottom:var(--border-default);color:var(--color-text-strong);font-size:var(--font-size-5xl);vertical-align:middle}.project-table tbody tr:last-child td{border-bottom:0}.project-table :is(th,td):first-child{padding-right:0}.project-table :is(th,td):last-child{padding-inline:var(--space-4);text-align:center}.project-row{position:relative}@media (hover:hover){.project-row:hover td{background:var(--color-surface-hover)}}.project-row-open{max-width:100%;color:var(--color-text-strong);font:inherit;font-weight:var(--font-weight-medium);text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;padding:0;display:block;overflow:hidden}.project-row-open:after{content:"";position:absolute;inset:0}.project-row .cell-menu{z-index:1;position:relative}.project-row .cell-menu .menu{display:inline-block}.project-row-meta{display:none}.cell-grid{white-space:nowrap}.cell-detail{font-family:var(--font-family-mono);font-size:var(--font-size-xl)}.project-table .cell-detail small{color:var(--color-text-secondary);font-family:var(--font-family-sans);font-size:var(--font-size-xl);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-table .cell-updated{color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-3xl);white-space:nowrap}.project-row-confirm td{background:var(--color-surface-raised);height:auto}.project-row-confirm .project-confirm{max-width:560px;margin-left:auto}.project-row-confirm .project-confirm-text{text-align:right}@media (width<=1024px){.project-table :is(.col-detail,.cell-detail){display:none}}@media (width<=768px){.projects-main{padding-inline:var(--space-16)}.projects-toolbar{flex-wrap:wrap}.projects-search{flex:1;width:auto;min-width:200px}}@media (width<=767px){.project-table,.project-table tbody{background:0 0;border:0;display:block}.project-table thead{display:none}.project-table tbody{gap:var(--space-8);flex-direction:column;display:flex}.project-table tr{align-items:center;gap:var(--space-12);min-width:0;padding:var(--space-12);border:var(--border-default);border-radius:var(--radius-item);background:var(--color-surface-base);display:flex}.project-table td,.project-table :is(th,td):first-child,.project-table :is(th,td):last-child{background:0 0;border:0;height:auto;padding:0;display:block}.project-table .cell-name{flex:1;min-width:0}.project-row-meta{margin-top:var(--space-2);color:var(--color-text-secondary);font-family:var(--font-family-mono);font-size:var(--font-size-xl);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.project-table :is(.cell-grid,.cell-detail,.cell-updated,.cell-status){display:none}.project-table .cell-status:has(.status-pill){flex:none;display:block}.project-table .cell-menu{flex:none}.project-row-confirm td{flex:1}}@media (width<=480px){.projects-main{padding-bottom:calc(88px + env(safe-area-inset-bottom,0px))}.projects-title{font-size:var(--font-size-display-sm)}.projects-count{font-size:var(--font-size-6xl)}.projects-toolbar{gap:var(--space-8);margin-bottom:var(--space-16)}.projects-search{min-width:0}.project-grid{gap:var(--space-12)}.projects-toolbar .projects-new-button-toolbar{right:var(--space-16);bottom:calc(var(--space-16) + env(safe-area-inset-bottom,0px));z-index:30;border-radius:var(--radius-pill);width:56px;height:56px;box-shadow:var(--shadow);justify-content:center;padding:0;position:fixed}.projects-toolbar .projects-new-button-toolbar .icon{width:24px;height:24px}.projects-new-button-toolbar .projects-new-label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (pointer:coarse){.project-card-menu{opacity:1}.project-card-status{right:60px}.projects-search input,.projects-tool-button,.projects-new-button,.project-menu-button,.project-confirm-button{min-height:44px}.projects-tool-button,.project-menu-button{width:44px;height:44px}.projects-new-button{height:44px}}
