.control-workbench{border-radius:inherit;grid-template-columns:minmax(18rem,22rem) minmax(0,1fr);min-width:0;min-height:32rem;display:grid;overflow:hidden}.control-workbench__inputs{background:var(--color-surface-muted);border-inline-end:1px solid var(--color-border);min-width:0}.control-workbench__results{background:var(--color-surface);min-width:0}.control-form{gap:var(--space-4);padding:var(--space-5);display:grid}.control-form__heading{border-block-end:1px solid var(--color-border);padding-block-end:var(--space-4)}.control-form__heading>span,.control-result-heading span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-xs);margin-block-end:var(--space-1);font-weight:700;display:block}.control-form__heading h2,.control-result-heading h2{font-size:var(--font-size-lg);margin:0}.control-form__heading p{margin:var(--space-2) 0 0;font-size:var(--font-size-xs);line-height:1.5}.control-presets,.pid-controller-fieldset{border:0;min-width:0;margin:0;padding:0}.control-presets legend,.pid-controller-fieldset legend{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-block-end:var(--space-2);font-weight:700}.control-presets>div{gap:var(--space-1);flex-wrap:wrap;display:flex}.control-presets button,.pid-add-button{min-height:var(--control-height-sm);padding:var(--space-1) var(--space-2);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs)}.control-presets button:hover,.pid-add-button:hover{color:var(--color-accent);border-color:var(--color-accent)}.control-field{gap:var(--space-1);min-width:0;display:grid}.control-field__label{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-xs);font-weight:700;display:flex}.control-field__label small{color:var(--color-text-subtle);font-family:var(--font-mono);font-weight:500}.control-field input,.control-field select,.pid-controller-row input{width:100%;min-width:0;height:var(--control-height-md);padding:var(--space-2) var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-mono);font-size:var(--font-size-sm)}.control-field select{font-family:var(--font-sans)}.control-field input:hover,.control-field select:hover,.pid-controller-row input:hover{border-color:var(--color-border-strong)}.control-field input:focus,.control-field select:focus,.pid-controller-row input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.control-field__hint{color:var(--color-text-subtle);font-size:.6875rem}.control-field-row{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.control-form__actions{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;padding-block-start:var(--space-2);display:grid}.control-run-button,.control-reset-button{min-height:var(--control-height-md);justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-md);cursor:pointer;display:inline-flex}.control-run-button{padding:var(--space-2) var(--space-4);color:var(--color-accent-contrast);background:var(--color-accent);border:1px solid var(--color-accent);font-size:var(--font-size-sm);font-weight:700}.control-run-button:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.control-reset-button{width:var(--control-height-md);color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border);padding:0}.control-reset-button:hover{color:var(--color-accent);border-color:var(--color-accent)}.control-error{align-items:flex-start;gap:var(--space-2);padding:var(--space-3);color:var(--color-danger);background:var(--color-danger-soft);border-inline-start:3px solid var(--color-danger);border-radius:var(--radius-sm);font-size:var(--font-size-xs);line-height:1.45;display:flex}.control-error svg{flex:none;margin-block-start:.1rem}.control-result-section{min-width:0;padding:var(--space-5);border-block-end:1px solid var(--color-border)}.control-result-section:last-child{border-block-end:0}.control-result-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-3);min-width:0;margin-block-end:var(--space-4);display:flex}.control-export-button{min-height:var(--control-height-sm);align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);flex:none;font-weight:700;display:inline-flex}.control-export-button:hover{background:var(--color-surface);border-color:var(--color-accent)}.control-metrics{border-block-start:1px solid var(--color-border);border-inline-start:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.control-metrics>div{align-content:start;gap:var(--space-1);min-width:0;padding:var(--space-3);border-block-end:1px solid var(--color-border);border-inline-end:1px solid var(--color-border);display:grid}.control-metrics dt{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.control-metrics dd{min-width:0;color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-sm);overflow-wrap:anywhere;margin:0;font-weight:700}.control-metrics small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.control-metrics [data-tone=good] dd{color:var(--color-success)}.control-metrics [data-tone=warn] dd{color:var(--color-warning)}.control-metrics [data-tone=bad] dd{color:var(--color-danger)}.control-diagnostic{padding:var(--space-3) var(--space-4);background:var(--color-info-soft);border-inline-start:3px solid var(--color-info);border-radius:var(--radius-sm);margin-block-start:var(--space-4)}.control-diagnostic[data-tone=good]{background:var(--color-success-soft);border-color:var(--color-success)}.control-diagnostic[data-tone=warn]{background:var(--color-warning-soft);border-color:var(--color-warning)}.control-diagnostic[data-tone=bad]{background:var(--color-danger-soft);border-color:var(--color-danger)}.control-diagnostic strong{color:var(--color-text);font-size:var(--font-size-sm)}.control-diagnostic p{margin:var(--space-1) 0 0;font-size:var(--font-size-xs);line-height:1.5}.control-chart{width:100%;min-width:0;overflow:hidden}.control-inline-note{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:var(--font-size-xs)}.control-root-columns{border-block-start:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.control-root-columns>div{min-width:0;padding:var(--space-3)}.control-root-columns>div:first-child{border-inline-end:1px solid var(--color-border)}.control-root-columns h3,.control-state-space h3{margin:0 0 var(--space-2);font-size:var(--font-size-sm)}.control-root-columns ol{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.control-root-columns li,.control-root-list code{padding:var(--space-1) var(--space-2);color:var(--color-text);background:var(--color-surface-muted);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--font-size-xs)}.control-root-columns p{font-size:var(--font-size-xs);margin:0}.control-root-list{gap:var(--space-1);border-block-start:1px solid var(--color-border);flex-wrap:wrap;padding-block-start:var(--space-3);display:flex}.control-state-space{border-block-start:1px solid var(--color-border);border-inline-start:1px solid var(--color-border);grid-template-columns:minmax(12rem,2fr) repeat(3,minmax(6rem,1fr));display:grid}.control-state-space>div{min-width:0;padding:var(--space-3);border-block-end:1px solid var(--color-border);border-inline-end:1px solid var(--color-border)}.control-state-space p{font-family:var(--font-mono);font-size:var(--font-size-xs);overflow-wrap:anywhere;margin:0}.control-state-space table{border-collapse:collapse;font-family:var(--font-mono);font-size:var(--font-size-xs)}.control-state-space td{min-width:2.5rem;padding:var(--space-1) var(--space-2);text-align:end;border:1px solid var(--color-border)}.control-table-scroll{border:1px solid var(--color-border);width:100%;overflow-x:auto}.control-data-table{border-collapse:collapse;width:100%;font-size:var(--font-size-xs);white-space:nowrap}.control-data-table th,.control-data-table td{padding:var(--space-2) var(--space-3);text-align:end;border-block-end:1px solid var(--color-border);border-inline-end:1px solid var(--color-border)}.control-data-table th:first-child,.control-data-table td:first-child{text-align:start}.control-data-table thead th{color:var(--color-text-muted);background:var(--color-surface-muted);font-weight:700}.control-data-table tbody tr:last-child>*{border-block-end:0}.control-data-table tr>:last-child{border-inline-end:0}.control-data-table--pid th:first-child{min-width:10rem}.control-data-table--pid th small{color:var(--color-text-subtle);font-family:var(--font-mono);margin-block-start:var(--space-1);font-weight:400;display:block}.control-data-table--pid tr[data-stable=false]>td:nth-child(2){color:var(--color-danger);font-weight:700}.pid-controller-list{gap:var(--space-2);display:grid}.pid-controller-row{align-items:end;gap:var(--space-1);grid-template-columns:minmax(5rem,1.35fr) repeat(3,minmax(3.5rem,.75fr)) auto;min-width:0;display:grid}.pid-controller-row label{gap:2px;min-width:0;display:grid}.pid-controller-row label>span:not(.sr-only){color:var(--color-text-subtle);font-family:var(--font-mono);font-size:.625rem}.pid-controller-row input{height:var(--control-height-sm);padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.pid-controller-row>button{width:var(--control-height-sm);height:var(--control-height-sm);color:var(--color-text-subtle);border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:1px solid #0000;place-items:center;padding:0;display:grid}.pid-controller-row>button:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger)}.pid-controller-row>button:disabled{cursor:not-allowed;opacity:.4}.pid-add-button{align-items:center;gap:var(--space-1);margin-block-start:var(--space-2);display:inline-flex}@media (width<=76rem){.control-workbench{grid-template-columns:minmax(16rem,19rem) minmax(0,1fr)}.control-metrics,.control-state-space{grid-template-columns:repeat(2,minmax(0,1fr))}.pid-controller-row{grid-template-columns:minmax(5rem,1fr) repeat(3,minmax(3rem,.7fr)) auto}}@media (width<=58rem){.control-workbench{grid-template-columns:minmax(0,1fr)}.control-workbench__inputs{border-inline-end:0;border-block-end:1px solid var(--color-border)}.control-form{grid-template-columns:repeat(2,minmax(0,1fr))}.control-form__heading,.control-presets,.pid-controller-fieldset,.control-error,.control-form__actions{grid-column:1/-1}}@media (width<=38rem){.control-form{padding:var(--space-4);grid-template-columns:minmax(0,1fr)}.control-form__heading,.control-presets,.pid-controller-fieldset,.control-error,.control-form__actions{grid-column:auto}.control-result-section{padding:var(--space-4)}.control-field-row,.control-root-columns,.control-state-space{grid-template-columns:minmax(0,1fr)}.control-root-columns>div:first-child{border-inline-end:0;border-block-end:1px solid var(--color-border)}.control-metrics{grid-template-columns:minmax(0,1fr)}.pid-controller-row{grid-template-columns:minmax(6rem,1fr) repeat(3,minmax(3.5rem,.7fr)) auto;overflow-x:auto}}@media (prefers-reduced-motion:reduce){.control-chart canvas{animation:none!important}}.data-workbench{min-height:34rem;color:var(--color-text);grid-template-columns:minmax(19rem,.72fr) minmax(0,1.55fr);display:grid}.data-workbench__controls,.data-workbench__results{min-width:0}.data-workbench__controls{gap:var(--space-4);padding:var(--space-5);background:var(--color-surface-muted);border-inline-end:1px solid var(--color-border);border-radius:var(--radius-lg) 0 0 var(--radius-lg);flex-direction:column;display:flex}.data-workbench__results{background:var(--color-surface);border-radius:0 var(--radius-lg) var(--radius-lg) 0}.data-workbench__control-heading,.data-section-heading{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.data-workbench__control-heading>div>span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-xs);margin-block-end:var(--space-1);font-weight:700;display:block}.data-workbench__control-heading h2{font-size:var(--font-size-xl);margin:0}.data-toolbar{gap:var(--space-2);flex-wrap:wrap;display:flex}.data-button,.data-icon-button{min-height:var(--control-height-md);justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);transition:color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);font-weight:650;display:inline-flex}.data-button{padding:var(--space-2) var(--space-3)}.data-icon-button{width:var(--control-height-md);flex:none;padding:0}.data-button:hover:not(:disabled),.data-icon-button:hover:not(:disabled),.data-file-button:hover{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.data-button--primary{color:var(--color-accent-contrast);background:var(--color-accent);border-color:var(--color-accent)}.data-button--primary:hover:not(:disabled){color:var(--color-accent-contrast);background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.data-button:disabled,.data-icon-button:disabled{color:var(--color-disabled);cursor:not-allowed;opacity:.65}.data-file-button{cursor:pointer;position:relative}.data-file-button:focus-within{box-shadow:var(--focus-ring)}.data-privacy-note,.data-alert,.data-issue-list{align-items:flex-start;gap:var(--space-2);font-size:var(--font-size-xs);line-height:1.45;display:flex}.data-privacy-note{color:var(--color-success)}.data-privacy-note svg,.data-alert svg,.data-issue-list>svg{flex:none;margin-block-start:.08rem}.data-alert{padding:var(--space-3);color:var(--color-danger);background:var(--color-danger-soft);border:1px solid var(--color-danger);border-radius:var(--radius-md)}.data-field{gap:var(--space-2);min-width:0;display:grid}.data-field>span,.data-axis-settings legend{color:var(--color-text);font-size:var(--font-size-sm);font-weight:650}.data-field>small,.data-axis-settings legend small{color:var(--color-text-subtle);font-size:var(--font-size-xs);font-weight:500}.data-field textarea,.data-field input,.data-field select{width:100%;min-width:0;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--motion-fast) var(--motion-ease)}.data-field textarea:hover,.data-field input:hover,.data-field select:hover{border-color:var(--color-border-strong)}.data-field textarea:focus,.data-field input:focus,.data-field select:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.data-field textarea{min-height:12rem;padding:var(--space-3);resize:vertical;font-family:var(--font-mono);font-size:var(--font-size-xs);tab-size:2;line-height:1.55}.data-field input,.data-field select{min-height:var(--control-height-md);padding-inline:var(--space-3)}.data-form-grid{align-items:end;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.data-toggle{min-height:var(--control-height-md);align-items:center;gap:var(--space-2);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-sm);display:inline-flex}.data-toggle input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.data-toggle>span{background:var(--color-border-strong);width:2rem;height:1.125rem;transition:background-color var(--motion-fast) var(--motion-ease);border-radius:1rem;flex:none;position:relative}.data-toggle>span:after{content:"";background:var(--color-surface);width:.75rem;height:.75rem;box-shadow:var(--shadow-sm);transition:transform var(--motion-fast) var(--motion-ease);border-radius:50%;position:absolute;inset-block-start:.1875rem;inset-inline-start:.1875rem}.data-toggle input:checked+span{background:var(--color-accent)}.data-toggle input:checked+span:after{transform:translate(.875rem)}.data-toggle input:focus-visible+span{box-shadow:var(--focus-ring)}.data-axis-settings{gap:var(--space-4);border-block-start:1px solid var(--color-border);padding-block-start:var(--space-4);display:grid}.data-axis-settings fieldset{border:0;min-width:0;margin:0;padding:0}.data-axis-settings legend{width:100%;margin-block-end:var(--space-2)}.data-axis-settings legend small{float:right}.data-series-picker{gap:var(--space-1);max-height:8.5rem;display:grid;overflow:auto}.data-series-picker label{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-1) var(--space-2);color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);grid-template-columns:auto auto minmax(0,1fr);display:grid}.data-series-picker label:hover{color:var(--color-text);background:var(--color-surface)}.data-series-picker label i{border-radius:50%;width:.625rem;height:.625rem}.data-series-picker label span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.data-empty-panel{align-content:center;justify-items:center;gap:var(--space-3);min-height:30rem;padding:var(--space-8) var(--space-5);text-align:center;display:grid}.data-empty-panel__icon{width:3rem;height:3rem;color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);place-items:center;display:grid}.data-empty-panel h3,.data-empty-panel p{margin:0}.data-empty-panel h3{font-size:var(--font-size-lg)}.data-empty-panel p{max-width:31rem;font-size:var(--font-size-sm)}.data-empty-panel__action{margin-block-start:var(--space-2)}.data-error-state{justify-content:center;align-items:center;gap:var(--space-4);min-height:30rem;padding:var(--space-8);color:var(--color-danger);display:flex}.data-error-state>svg{flex:none}.data-error-state h3,.data-error-state p{margin:0}.data-error-state h3{color:var(--color-danger);font-size:var(--font-size-lg)}.data-error-state p{max-width:34rem;color:var(--color-text-muted);font-size:var(--font-size-sm);margin-block-start:var(--space-1)}.data-result-summary{border-block-end:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.data-result-summary>div{gap:var(--space-1);min-width:0;padding:var(--space-4);border-inline-end:1px solid var(--color-border);display:grid}.data-result-summary>div:last-child{border-inline-end:0}.data-result-summary strong{color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-lg);text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.data-result-summary span{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.data-export-bar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-5);background:var(--color-surface-muted);border-block-end:1px solid var(--color-border);display:flex}.data-export-bar>span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700}.data-export-bar>div{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.data-issue-list{margin:var(--space-4) var(--space-5) 0;padding:var(--space-3);color:var(--color-warning);background:var(--color-warning-soft);border:1px solid var(--color-warning);border-radius:var(--radius-md)}.data-issue-list>div{gap:var(--space-1);display:grid}.data-issue-list span{color:var(--color-text-muted)}.data-result-section{min-width:0;padding:var(--space-5);border-block-end:1px solid var(--color-border)}.data-section-heading{margin-block-end:var(--space-3)}.data-section-heading>div{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-accent);display:flex}.data-section-heading h3{font-size:var(--font-size-md);margin:0}.data-section-heading>span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs);text-align:end}.data-chart{width:100%;min-width:0;height:22rem}.data-chart[data-compact=true]{height:18rem}.data-chart-grid{border-block-end:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.data-chart-grid .data-result-section{border-block-end:0}.data-chart-grid .data-result-section:first-child{border-inline-end:1px solid var(--color-border)}.data-table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:38rem;font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.data-table th,.data-table td{max-width:18rem;padding:var(--space-2) var(--space-3);text-align:start;text-overflow:ellipsis;white-space:nowrap;border-block-end:1px solid var(--color-border);overflow:hidden}.data-table thead th{z-index:1;color:var(--color-text-muted);background:var(--color-surface-muted);font-weight:700;position:sticky;inset-block-start:0}.data-table tbody th{color:var(--color-text);background:var(--color-surface-muted);font-family:var(--font-mono);font-weight:650}.data-table tbody tr:last-child>*{border-block-end:0}.data-table tbody tr:hover>*{background:var(--color-accent-soft)}.data-table__sample{color:var(--color-text-muted)}.data-missing{color:var(--color-text-subtle);font-style:italic}.data-type-badge{min-height:1.35rem;padding-inline:var(--space-2);color:var(--color-info);background:var(--color-info-soft);border-radius:var(--radius-sm);align-items:center;font-weight:650;display:inline-flex}.data-type-badge[data-type=number]{color:var(--color-success);background:var(--color-success-soft)}.data-type-badge[data-type=mixed],.data-type-badge[data-type=empty]{color:var(--color-warning);background:var(--color-warning-soft)}.data-inline-empty{padding:var(--space-5);color:var(--color-text-muted);text-align:center;font-size:var(--font-size-sm);margin:0}.data-algorithm-readout{grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.data-algorithm-readout>div{gap:var(--space-1);min-width:0;padding:var(--space-4);border-inline-end:1px solid var(--color-border);display:grid}.data-algorithm-readout>div:last-child{border-inline-end:0}.data-algorithm-readout dt{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.data-algorithm-readout dd{color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}@media (width<=72rem){.data-workbench{grid-template-columns:1fr}.data-workbench__controls{border-inline-end:0;border-block-end:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.data-workbench__results{border-radius:0 0 var(--radius-lg) var(--radius-lg)}.data-field textarea{min-height:10rem}}@media (width<=52rem){.data-chart-grid{grid-template-columns:1fr}.data-chart-grid .data-result-section:first-child{border-inline-end:0;border-block-end:1px solid var(--color-border)}.data-result-summary,.data-algorithm-readout{grid-template-columns:repeat(2,minmax(0,1fr))}.data-result-summary>div:nth-child(2),.data-algorithm-readout>div:nth-child(2){border-inline-end:0}.data-result-summary>div:nth-child(-n+2),.data-algorithm-readout>div:nth-child(-n+2){border-block-end:1px solid var(--color-border)}}@media (width<=34rem){.data-workbench__controls,.data-result-section{padding:var(--space-4)}.data-form-grid{grid-template-columns:1fr}.data-toolbar .data-button,.data-toolbar .data-file-button,.data-workbench__controls>.data-button,.data-export-bar .data-button{width:100%}.data-export-bar{padding-inline:var(--space-4);flex-direction:column;align-items:stretch}.data-export-bar>div{justify-content:stretch;display:grid}.data-result-summary strong{font-size:var(--font-size-md)}.data-result-summary>div,.data-algorithm-readout>div{padding:var(--space-3)}.data-chart{height:18rem}.data-chart[data-compact=true]{height:16rem}.data-error-state{min-height:20rem;padding:var(--space-6) var(--space-4);align-items:flex-start}}.general-workbench{min-height:34rem;color:var(--color-text);grid-template-columns:minmax(19rem,.72fr) minmax(0,1.55fr);display:grid}.general-workbench__controls,.general-workbench__results{min-width:0}.general-workbench__controls{gap:var(--space-4);padding:var(--space-5);background:var(--color-surface-muted);border-inline-end:1px solid var(--color-border);border-radius:var(--radius-lg) 0 0 var(--radius-lg);flex-direction:column;display:flex}.general-workbench__results{background:var(--color-surface);border-radius:0 var(--radius-lg) var(--radius-lg) 0}.general-control-heading,.general-section-heading,.general-image-card__title{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.general-control-heading>div>span{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-xs);margin-block-end:var(--space-1);font-weight:700;display:block}.general-control-heading h2,.general-section-heading h3{margin:0}.general-control-heading h2{font-size:var(--font-size-xl)}.general-section-heading{margin-block-end:var(--space-3)}.general-section-heading h3{font-size:var(--font-size-md)}.general-section-heading>span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs)}.general-toolbar{gap:var(--space-2);flex-wrap:wrap;display:flex}.general-button,.general-icon-button{min-height:var(--control-height-md);justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);transition:color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);font-weight:650;text-decoration:none;display:inline-flex}.general-button{padding:var(--space-2) var(--space-3)}.general-icon-button{width:var(--control-height-md);flex:none;padding:0}.general-button:hover:not(:disabled),.general-icon-button:hover:not(:disabled),.general-file-button:hover{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border-strong)}.general-button--primary{color:var(--color-accent-contrast);background:var(--color-accent);border-color:var(--color-accent)}.general-button--primary:hover:not(:disabled){color:var(--color-accent-contrast);background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.general-button:disabled,.general-icon-button:disabled{color:var(--color-disabled);cursor:not-allowed;opacity:.65}.general-file-button{cursor:pointer}.general-file-button:focus-within{box-shadow:var(--focus-ring)}.general-field{gap:var(--space-2);min-width:0;display:grid}.general-field>span,.general-choice-fieldset legend{color:var(--color-text);font-size:var(--font-size-sm);font-weight:650}.general-field>small,.general-choice-fieldset legend small{color:var(--color-text-subtle);font-size:var(--font-size-xs);font-weight:500}.general-field textarea,.general-field input,.general-field select{width:100%;min-width:0;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--motion-fast) var(--motion-ease)}.general-field textarea:hover,.general-field input:hover,.general-field select:hover{border-color:var(--color-border-strong)}.general-field textarea:focus,.general-field input:focus,.general-field select:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.general-field textarea{min-height:5.5rem;padding:var(--space-3);resize:vertical;font-family:var(--font-mono);font-size:var(--font-size-xs);line-height:1.55}.general-field input:not([type=range]),.general-field select{min-height:var(--control-height-md);padding-inline:var(--space-3)}.general-field input[type=range]{height:var(--control-height-md);accent-color:var(--color-accent)}.general-form-grid{align-items:end;gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.general-choice-fieldset{border:0;min-width:0;margin:0;padding:0}.general-choice-fieldset legend{width:100%;margin-block-end:var(--space-2)}.general-choice-fieldset legend small{float:inline-end}.general-choice-list{gap:var(--space-1);max-height:12rem;display:grid;overflow:auto}.general-choice-list label{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);grid-template-columns:auto minmax(3rem,auto) minmax(0,1fr);display:grid}.general-choice-list label:hover{color:var(--color-text);background:var(--color-surface)}.general-choice-list label>span{color:var(--color-text);font-family:var(--font-mono)}.general-choice-list label>small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.general-endpoint-options{gap:var(--space-2) var(--space-4);flex-wrap:wrap;display:flex}.general-endpoint-options legend{flex:0 0 100%}.general-endpoint-options label{align-items:center;gap:var(--space-2);color:var(--color-text-muted);cursor:pointer;font-size:var(--font-size-sm);display:inline-flex}.general-endpoint-options input,.general-choice-list input{accent-color:var(--color-accent)}.general-privacy-note,.general-alert,.general-inline-note{align-items:flex-start;gap:var(--space-2);font-size:var(--font-size-xs);line-height:1.45;display:flex}.general-budget-note{padding:var(--space-2) var(--space-3);color:var(--color-info);background:var(--color-info-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);margin:0}.general-privacy-note{color:var(--color-success)}.general-alert{padding:var(--space-3);color:var(--color-danger);background:var(--color-danger-soft);border:1px solid var(--color-danger);border-radius:var(--radius-md)}.general-privacy-note svg,.general-alert svg,.general-inline-note svg{flex:none;margin-block-start:.08rem}.general-empty-panel{align-content:center;justify-items:center;gap:var(--space-3);min-height:30rem;padding:var(--space-8) var(--space-5);text-align:center;display:grid}.general-empty-panel__icon{width:3rem;height:3rem;color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);place-items:center;display:grid}.general-empty-panel h3,.general-empty-panel p{margin:0}.general-empty-panel h3{font-size:var(--font-size-lg)}.general-empty-panel p{max-width:31rem;font-size:var(--font-size-sm)}.general-error-panel{justify-content:center;align-items:center;gap:var(--space-4);min-height:30rem;padding:var(--space-8);color:var(--color-danger);display:flex}.general-error-panel>svg{flex:none}.general-error-panel h3,.general-error-panel p{margin:0}.general-error-panel h3{color:var(--color-danger);font-size:var(--font-size-lg)}.general-error-panel p{max-width:34rem;color:var(--color-text-muted);font-size:var(--font-size-sm);margin-block-start:var(--space-1)}.general-metric-grid{border-block-end:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.general-metric-grid>div{gap:var(--space-1);min-width:0;padding:var(--space-4);border-inline-end:1px solid var(--color-border);display:grid}.general-metric-grid>div:last-child{border-inline-end:0}.general-metric-grid dt{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.general-metric-grid dd{overflow-wrap:anywhere;color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-md);margin:0;font-weight:700}.general-metric-grid small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.general-result-section{min-width:0;padding:var(--space-5);border-block-end:1px solid var(--color-border)}.general-chart{width:100%;min-width:0;height:22rem}.general-table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;overflow:auto}.general-table{border-collapse:collapse;width:100%;min-width:34rem;font-size:var(--font-size-xs);font-variant-numeric:tabular-nums}.general-table th,.general-table td{padding:var(--space-2) var(--space-3);text-align:start;white-space:nowrap;border-block-end:1px solid var(--color-border)}.general-table thead th,.general-table tbody th{color:var(--color-text-muted);background:var(--color-surface-muted);font-weight:700}.general-table tbody tr:last-child>*{border-block-end:0}.general-table tbody tr:hover>*{background:var(--color-accent-soft)}.general-matrix-table{width:max-content;min-width:100%}.general-matrix-table td{min-width:6rem;font-family:var(--font-mono);text-align:end}.general-scalar-result{padding:var(--space-8);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-2xl);text-align:center;font-weight:700;display:block}.general-diagnostic-grid{background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.general-diagnostic-grid>div{gap:var(--space-1);min-width:0;padding:var(--space-3);background:var(--color-surface);display:grid}.general-diagnostic-grid span{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.general-diagnostic-grid strong{overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--font-size-sm)}.general-inline-note,.general-coefficient-line{margin:var(--space-3) 0 0;color:var(--color-text-muted)}.general-coefficient-line{overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--font-size-xs)}.general-conversion-source{align-items:center;gap:var(--space-2);color:var(--color-text-muted);flex-wrap:wrap;margin-block-end:var(--space-4);display:flex}.general-conversion-source>svg:first-child{color:var(--color-accent)}.general-conversion-source strong{color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-lg)}.general-split-results{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.general-split-results>.general-result-section:first-child{border-inline-end:1px solid var(--color-border)}.general-duration-readout{align-items:flex-start;gap:var(--space-3);display:flex}.general-duration-readout>svg{color:var(--color-accent);flex:none}.general-duration-readout>div{gap:var(--space-1);min-width:0;display:grid}.general-duration-readout strong{overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--font-size-md)}.general-duration-readout span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.general-detail-list,.general-image-report{gap:var(--space-2);margin:var(--space-4) 0 0;display:grid}.general-detail-list>div,.general-image-report>div{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.general-detail-list dt,.general-image-report dt{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.general-detail-list dd,.general-image-report dd{color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-xs);text-align:end;margin:0}.general-image-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.general-image-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;overflow:hidden}.general-image-card__preview{aspect-ratio:16/10;background:linear-gradient(45deg, var(--color-surface-muted) 25%, transparent 25%), linear-gradient(-45deg, var(--color-surface-muted) 25%, transparent 25%), linear-gradient(45deg, transparent 75%, var(--color-surface-muted) 75%), linear-gradient(-45deg, transparent 75%, var(--color-surface-muted) 75%);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;place-items:center;display:grid;position:relative;overflow:hidden}.general-image-card__preview img{object-fit:contain;width:100%;height:100%}.general-image-card__placeholder{justify-items:center;gap:var(--space-2);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs);display:grid}.general-image-card__preview>span{padding:.125rem var(--space-2);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:700;position:absolute;inset-block-start:var(--space-2);inset-inline-end:var(--space-2)}.general-image-card__preview>span[data-status=ready]{color:var(--color-success);background:var(--color-success-soft);border-color:var(--color-success)}.general-image-card__preview>span[data-status=error]{color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger)}.general-image-card__body{gap:var(--space-3);padding:var(--space-3);display:grid}.general-image-card__title{min-width:0}.general-image-card__title strong{min-width:0;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.general-image-report{margin:0}.general-image-error{color:var(--color-danger);font-size:var(--font-size-xs);margin:0}@media (width<=72rem){.general-workbench{grid-template-columns:minmax(0,1fr)}.general-workbench__controls{border-inline-end:0;border-block-end:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.general-workbench__results{border-radius:0 0 var(--radius-lg) var(--radius-lg)}}@media (width<=52rem){.general-metric-grid,.general-diagnostic-grid,.general-split-results,.general-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.general-metric-grid>div:nth-child(2){border-inline-end:0}.general-metric-grid>div:nth-child(-n+2){border-block-end:1px solid var(--color-border)}.general-split-results>.general-result-section:first-child{border-inline-end:0}}@media (width<=34rem){.general-workbench__controls,.general-result-section{padding:var(--space-4)}.general-form-grid,.general-diagnostic-grid,.general-split-results,.general-image-grid{grid-template-columns:minmax(0,1fr)}.general-toolbar .general-button,.general-workbench__controls>.general-button{width:100%}.general-chart{height:18rem}.general-error-panel{min-height:20rem;padding:var(--space-6) var(--space-4);align-items:flex-start}.general-metric-grid dd{font-size:var(--font-size-sm)}}:root,:root[data-theme=lab],[data-theme=lab]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-sans:Inter, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:"Cascadia Code", "SFMono-Regular", Consolas, monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--line-height-tight:1.25;--line-height-body:1.6;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--radius-xs:5px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--control-height-sm:2rem;--control-height-md:2.5rem;--control-height-lg:2.75rem;--content-max:90rem;--sidebar-width:16rem;--color-canvas:#f3f6f5;--color-canvas-grid:#dce5e2;--color-surface:#fff;--color-surface-muted:#eaf0ee;--color-surface-raised:#fff;--color-surface-inverse:#17201f;--color-text:#17201f;--color-text-muted:#52615e;--color-text-subtle:#596865;--color-text-inverse:#f8fbfa;--color-border:#cbd7d4;--color-border-strong:#92a6a1;--color-accent:#076f68;--color-accent-hover:#055c57;--color-accent-soft:#d9f1ed;--color-accent-contrast:#fff;--color-signal:#b64d2e;--color-signal-soft:#fbe5dd;--color-success:#20744b;--color-success-soft:#def1e5;--color-warning:#9b6200;--color-warning-soft:#fff0c9;--color-danger:#b4232f;--color-danger-soft:#fce3e5;--color-info:#2567a7;--color-info-soft:#deebf7;--color-disabled:#9aa6a3;--color-overlay:#17201f85;--color-chart-1:#087f78;--color-chart-2:#c65332;--color-chart-3:#286eb2;--color-chart-4:#8b5aa6;--color-chart-5:#8a6a12;--color-chart-grid:#dce5e2;--shadow-sm:0 2px 8px #17201f12;--shadow-md:0 14px 36px #17201f1c;--shadow-lg:0 24px 64px #17201f24;--focus-ring:0 0 0 3px #076f6847;--motion-fast:.12s;--motion-normal:.18s;--motion-ease:cubic-bezier(.2, 0, 0, 1)}:root[data-theme=control-room],[data-theme=control-room],:root[data-theme=dark],[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#0c1212;--color-canvas-grid:#253332;--color-surface:#141c1b;--color-surface-muted:#1b2725;--color-surface-raised:#202d2b;--color-surface-inverse:#eff7f5;--color-text:#edf5f3;--color-text-muted:#a9bbb7;--color-text-subtle:#80928e;--color-text-inverse:#111918;--color-border:#344643;--color-border-strong:#607773;--color-accent:#55d6c7;--color-accent-hover:#79e5d8;--color-accent-soft:#183d39;--color-accent-contrast:#09211e;--color-signal:#ff8763;--color-signal-soft:#47271f;--color-success:#76d9a2;--color-success-soft:#1d3d2c;--color-warning:#f0bd5b;--color-warning-soft:#3e321b;--color-danger:#ff8b91;--color-danger-soft:#472326;--color-info:#79b9f2;--color-info-soft:#1d3449;--color-disabled:#657572;--color-overlay:#000000ad;--color-chart-1:#55d6c7;--color-chart-2:#ff8763;--color-chart-3:#79b9f2;--color-chart-4:#d5a5ed;--color-chart-5:#e8c866;--color-chart-grid:#2b3b39;--shadow-sm:0 1px 2px #00000057;--shadow-md:0 10px 28px #0000005c;--shadow-lg:0 24px 64px #00000075;--focus-ring:0 0 0 3px #55d6c752}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-canvas:#0c1212;--color-canvas-grid:#253332;--color-surface:#141c1b;--color-surface-muted:#1b2725;--color-surface-raised:#202d2b;--color-surface-inverse:#eff7f5;--color-text:#edf5f3;--color-text-muted:#a9bbb7;--color-text-subtle:#80928e;--color-text-inverse:#111918;--color-border:#344643;--color-border-strong:#607773;--color-accent:#55d6c7;--color-accent-hover:#79e5d8;--color-accent-soft:#183d39;--color-accent-contrast:#09211e;--color-signal:#ff8763;--color-signal-soft:#47271f;--color-success:#76d9a2;--color-success-soft:#1d3d2c;--color-warning:#f0bd5b;--color-warning-soft:#3e321b;--color-danger:#ff8b91;--color-danger-soft:#472326;--color-info:#79b9f2;--color-info-soft:#1d3449;--color-disabled:#657572;--color-overlay:#000000ad;--color-chart-1:#55d6c7;--color-chart-2:#ff8763;--color-chart-3:#79b9f2;--color-chart-4:#d5a5ed;--color-chart-5:#e8c866;--color-chart-grid:#2b3b39;--shadow-sm:0 1px 2px #00000057;--shadow-md:0 10px 28px #0000005c;--shadow-lg:0 24px 64px #00000075;--focus-ring:0 0 0 3px #55d6c752}}@media (prefers-reduced-motion:reduce){:root{--motion-fast:0s;--motion-normal:0s}}*,:before,:after{box-sizing:border-box}html{background:var(--color-canvas);min-width:20rem;min-height:100%;font-family:var(--font-sans);font-size:100%;line-height:var(--line-height-body);letter-spacing:0;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-width:20rem;min-height:100vh;color:var(--color-text);background-color:var(--color-canvas);background-image:radial-gradient(circle at 14% 8%, color-mix(in srgb, var(--color-info-soft) 72%, transparent) 0, transparent 24rem), radial-gradient(circle at 88% 18%, color-mix(in srgb, var(--color-signal-soft) 58%, transparent) 0, transparent 26rem), linear-gradient(color-mix(in srgb, var(--color-canvas-grid) 23%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--color-canvas-grid) 23%, transparent) 1px, transparent 1px);font-family:inherit;font-size:var(--font-size-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-size:auto,auto,2.5rem 2.5rem,2.5rem 2.5rem;background-attachment:fixed;margin:0}button,input,select,textarea{color:inherit;font:inherit;letter-spacing:0}button,a,input,select,textarea,[tabindex]:not([tabindex="-1"]){outline:none}:focus-visible{border-radius:var(--radius-sm);box-shadow:var(--focus-ring)}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}a{color:var(--color-accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--color-accent-hover)}h1,h2,h3,h4,p{margin-block-start:0}h1,h2,h3,h4{color:var(--color-text);font-weight:650;line-height:var(--line-height-tight)}p{color:var(--color-text-muted)}img,svg,canvas{max-width:100%;display:block}code,kbd,pre,samp{font-family:var(--font-mono)}::selection{color:var(--color-accent-contrast);background:var(--color-accent)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-icon-button{width:var(--control-height-md);height:var(--control-height-md);color:var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;transition:color var(--motion-fast) var(--motion-ease), background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);background:0 0;border:1px solid #0000;flex:none;place-items:center;padding:0;display:inline-grid;position:relative}.ui-icon-button:hover:not(:disabled){color:var(--color-text);background:var(--color-surface-muted);border-color:var(--color-border)}.ui-icon-button:active:not(:disabled){transform:translateY(1px)}.ui-icon-button:disabled{color:var(--color-disabled);opacity:.62}.ui-icon-button[data-size=small]{width:var(--control-height-sm);height:var(--control-height-sm)}.ui-icon-button[data-size=large]{width:var(--control-height-lg);height:var(--control-height-lg)}.ui-icon-button[data-tone=accent]{color:var(--color-accent-contrast);background:var(--color-accent)}.ui-icon-button[data-tone=accent]:hover:not(:disabled){color:var(--color-accent-contrast);background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ui-icon-button[data-tone=danger]{color:var(--color-danger)}.ui-icon-button[data-tone=danger]:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger)}.ui-icon-button__spinner{animation:.8s linear infinite ui-spin}.ui-status-badge,.ui-locality-badge{align-items:center;gap:var(--space-1);min-height:1.5rem;padding:.125rem var(--space-2);color:var(--badge-color,var(--color-text-muted));background:var(--badge-background,var(--color-surface-muted));border:1px solid var(--badge-border,var(--color-border));border-radius:var(--radius-sm);font-size:var(--font-size-xs);white-space:nowrap;font-weight:650;line-height:1.25;display:inline-flex}.ui-status-badge[data-status=ready]{--badge-color:var(--color-success);--badge-background:var(--color-success-soft);--badge-border:var(--color-success)}.ui-status-badge[data-status=beta],.ui-status-badge[data-status=running]{--badge-color:var(--color-info);--badge-background:var(--color-info-soft);--badge-border:var(--color-info)}.ui-status-badge[data-status=experimental]{--badge-color:var(--color-warning);--badge-background:var(--color-warning-soft);--badge-border:var(--color-warning)}.ui-status-badge[data-status=offline]{--badge-color:var(--color-text-muted);--badge-background:var(--color-surface-muted);--badge-border:var(--color-border-strong)}.ui-status-badge[data-status=error]{--badge-color:var(--color-danger);--badge-background:var(--color-danger-soft);--badge-border:var(--color-danger)}.ui-status-badge__icon,.ui-locality-badge__icon{flex:none}.ui-locality-badge{--badge-color:var(--color-accent);--badge-background:var(--color-accent-soft);--badge-border:var(--color-accent)}.ui-locality-badge[data-mode=offline]{--badge-color:var(--color-info);--badge-background:var(--color-info-soft);--badge-border:var(--color-info)}.ui-locality-badge[data-mode=private]{--badge-color:var(--color-success);--badge-background:var(--color-success-soft);--badge-border:var(--color-success)}.ui-locality-badge[data-compact=true] .ui-locality-badge__label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ui-illustration-placeholder{isolation:isolate;width:100%;min-height:11rem;color:var(--color-text-muted);background:var(--color-surface-muted);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);place-items:center;margin:0;display:grid;position:relative;overflow:hidden}.ui-illustration-placeholder:before,.ui-illustration-placeholder:after{z-index:-1;content:"";background:var(--color-border);opacity:.72;position:absolute}.ui-illustration-placeholder[data-ready=true]{background:#fff;border-style:solid}.ui-illustration-placeholder[data-ready=true]:before,.ui-illustration-placeholder[data-ready=true]:after{display:none}.ui-illustration-placeholder__image{object-fit:contain;width:100%;height:100%;display:block}.ui-illustration-placeholder:before{width:1px;inset-block:0;inset-inline-start:50%}.ui-illustration-placeholder:after{height:1px;inset-block-start:50%;inset-inline:0}.ui-illustration-placeholder[data-aspect=wide]{aspect-ratio:16/7}.ui-illustration-placeholder[data-aspect=square]{aspect-ratio:1}.ui-illustration-placeholder[data-aspect=portrait]{aspect-ratio:4/5}.ui-illustration-placeholder__content{justify-items:center;gap:var(--space-2);max-width:18rem;padding:var(--space-5);text-align:center;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid}.ui-illustration-placeholder__kind{color:var(--color-text);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:700}.ui-illustration-placeholder__label,.ui-illustration-placeholder__prompt{color:var(--color-text-muted);font-size:var(--font-size-xs);overflow-wrap:anywhere;margin:0;line-height:1.4}.ui-engineer-cat{--cat-accent:var(--color-accent);width:5.5rem;color:var(--color-text-muted);flex:none;overflow:visible}.ui-engineer-cat__halo{fill:color-mix(in srgb, var(--cat-accent) 11%, var(--color-surface));stroke:none}.ui-engineer-cat__head,.ui-engineer-cat__body{fill:var(--color-surface);stroke:currentColor;stroke-width:2.2px;stroke-linejoin:round}.ui-engineer-cat__ear{fill:color-mix(in srgb, var(--color-signal) 18%, var(--color-surface));stroke:currentColor;stroke-width:2.2px;stroke-linejoin:round}.ui-engineer-cat__tail,.ui-engineer-cat__face,.ui-engineer-cat__whiskers,.ui-engineer-cat__collar,.ui-engineer-cat__paw{stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.ui-engineer-cat__badge{fill:var(--color-signal);stroke:var(--color-surface);stroke-width:1.5px}.ui-engineer-cat__signal,.ui-engineer-cat__info,.ui-engineer-cat__math,.ui-engineer-cat__local{stroke:var(--cat-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.ui-engineer-cat__signal circle,.ui-engineer-cat__info circle,.ui-engineer-cat__math circle{fill:var(--cat-accent);stroke:none}.ui-engineer-cat[data-variant=signal]{--cat-accent:var(--color-chart-3)}.ui-engineer-cat[data-variant=math]{--cat-accent:var(--color-chart-4)}.ui-engineer-cat[data-variant=daily]{--cat-accent:var(--color-signal)}.ui-engineer-cat[data-variant=local]{--cat-accent:var(--color-success)}.ui-illustration-placeholder__prompt{color:var(--color-accent);font-family:var(--font-mono)}.ui-tool-header{align-items:start;gap:var(--space-4);padding-block:var(--space-5);border-block-end:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.ui-tool-header__identity{align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.ui-tool-header__icon{width:2.75rem;height:2.75rem;color:var(--color-accent);background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:none;place-items:center;display:grid}.ui-tool-header__copy{min-width:0}.ui-tool-header__eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;margin-block-end:var(--space-1);font-weight:700;line-height:1.4;display:block}.ui-tool-header__title{color:var(--color-text);font-size:var(--font-size-2xl);overflow-wrap:anywhere;margin:0}.ui-tool-header__description{max-width:52rem;margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.ui-tool-header__meta,.ui-tool-header__actions{align-items:center;gap:var(--space-2);display:flex}.ui-tool-header__meta{flex-wrap:wrap;margin-block-start:var(--space-3)}.ui-tool-header__actions{justify-content:flex-end}.ui-empty-state{align-content:center;justify-items:center;gap:var(--space-3);width:100%;min-height:14rem;padding:var(--space-8) var(--space-4);text-align:center;display:grid}.ui-empty-state__cat{width:7rem;margin-block-end:calc(var(--space-2) * -1)}.ui-empty-state[data-compact=true]{min-height:9rem;padding:var(--space-5) var(--space-3)}.ui-empty-state__icon{width:3rem;height:3rem;color:var(--color-text-subtle);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);place-items:center;display:grid}.ui-empty-state__title{color:var(--color-text);font-size:var(--font-size-lg);margin:0}.ui-empty-state__description{max-width:32rem;color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.ui-empty-state__actions{justify-content:center;gap:var(--space-2);flex-wrap:wrap;margin-block-start:var(--space-1);display:flex}@keyframes ui-spin{to{transform:rotate(360deg)}}@media (width<=42rem){.ui-tool-header{grid-template-columns:auto minmax(0,1fr)}.ui-tool-header__actions{grid-column:2;justify-content:flex-start}.ui-tool-header__title{font-size:var(--font-size-xl)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#root{min-height:100vh}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);min-height:100vh;display:grid}.skip-link{z-index:100;padding:var(--space-2) var(--space-3);color:var(--color-accent-contrast);background:var(--color-accent);border-radius:var(--radius-sm);position:fixed;inset-block-start:var(--space-2);inset-inline-start:var(--space-2);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.pwa-notice{z-index:80;align-items:center;gap:var(--space-3);width:min(27rem,100vw - 2rem);padding:var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);grid-template-columns:auto minmax(0,1fr) auto auto;display:grid;position:fixed;inset-block-end:var(--space-4);inset-inline-end:var(--space-4)}.pwa-notice__icon{width:2rem;height:2rem;color:var(--color-accent);background:var(--color-accent-soft);border-radius:var(--radius-sm);place-items:center;display:grid}.pwa-notice>div{min-width:0;display:grid}.pwa-notice strong{font-size:var(--font-size-sm)}.pwa-notice small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.sidebar{z-index:30;height:100vh;padding:var(--space-4);background:color-mix(in srgb, var(--color-surface) 94%, transparent);border-inline-end:1px solid var(--color-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);flex-direction:column;display:flex;position:sticky;inset-block-start:0;box-shadow:8px 0 32px #17201f0a}.sidebar__brand-row{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:3.25rem;border-block-end:1px solid var(--color-border);padding-block-end:var(--space-4);display:flex}.brand{align-items:center;gap:var(--space-3);min-width:0;color:var(--color-text);text-decoration:none;display:flex}.brand:hover{color:var(--color-text)}.brand__mark{width:2.5rem;height:2.5rem;color:var(--color-accent-contrast);background:var(--color-accent);box-shadow:0 8px 20px color-mix(in srgb, var(--color-accent) 24%, transparent);border-radius:14px 14px 14px 5px;flex:none;place-items:center;display:grid}.brand>span:last-child{min-width:0;display:grid}.brand strong{font-size:var(--font-size-sm);overflow-wrap:anywhere;line-height:1.35}.brand small{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:.625rem}.sidebar__close,.topbar__menu{display:none}.sidebar__nav{gap:var(--space-1);min-height:0;padding-block:var(--space-4);flex-direction:column;flex:1;display:flex;overflow-y:auto}.sidebar__label{margin-block:var(--space-4) var(--space-1);padding-inline:var(--space-2);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:.6875rem;font-weight:700}.sidebar__label:first-child{margin-block-start:0}.sidebar__nav a,.sidebar__footer a{align-items:center;gap:var(--space-3);min-height:2.5rem;padding:var(--space-2) var(--space-3);color:var(--color-text-muted);border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid #0000;font-weight:550;text-decoration:none;display:flex}.sidebar__nav a:hover,.sidebar__footer a:hover{color:var(--color-text);background:var(--color-surface-muted)}.sidebar__nav a.active,.sidebar__nav a[aria-current=page]{color:var(--color-accent);background:var(--color-accent-soft);border-color:var(--color-border)}.sidebar__footer{gap:var(--space-2);border-block-start:1px solid var(--color-border);padding-block-start:var(--space-3);display:grid}.sidebar__mascot{align-items:center;gap:var(--space-2);padding:var(--space-2);background:linear-gradient(135deg, var(--color-accent-soft), var(--color-surface));border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;overflow:hidden}.sidebar__mascot .ui-engineer-cat{width:4.25rem;margin:-.45rem 0 -.65rem -.35rem}.sidebar__mascot>span{min-width:0;display:grid}.sidebar__mascot strong{color:var(--color-text);font-size:var(--font-size-xs)}.sidebar__mascot small{color:var(--color-text-subtle);text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;overflow:hidden}.sidebar__footer .ui-locality-badge{justify-content:center;width:100%}.sidebar__footer a{min-height:2rem;padding:var(--space-1) var(--space-2);font-size:var(--font-size-xs)}.sidebar__version{align-items:center;gap:var(--space-2);padding-inline:var(--space-2);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:.6875rem;display:flex}.sidebar-backdrop{display:none}.app-shell__body{min-width:0}.topbar{z-index:20;justify-content:end;align-items:center;gap:var(--space-3);background:color-mix(in srgb, var(--color-canvas) 92%, transparent);border-block-end:1px solid var(--color-border);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);grid-template-columns:minmax(16rem,36rem) auto auto;height:4rem;padding-inline:clamp(1rem,3vw,2.5rem);display:grid;position:sticky;inset-block-start:0}.topbar__status{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;display:flex}.topbar__status>span{background:var(--color-success);width:.5rem;height:.5rem;box-shadow:0 0 0 3px var(--color-success-soft);border-radius:50%}.theme-control,.category-segments{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:2px;display:inline-flex}.theme-control button,.category-segments button{justify-content:center;align-items:center;gap:var(--space-1);min-height:1.875rem;padding-inline:var(--space-2);color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-xs);white-space:nowrap;background:0 0;border:0;display:inline-flex}.theme-control button:hover,.category-segments button:hover{color:var(--color-text)}.theme-control button[data-active=true],.category-segments button[data-active=true]{color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-sm);font-weight:650}.tool-search{width:100%;min-width:0;position:relative}.tool-search>input{width:100%;height:var(--control-height-md);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 4.25rem 0 2.5rem}.tool-search>input:hover{border-color:var(--color-border-strong)}.tool-search>input:focus{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.tool-search__icon{z-index:1;color:var(--color-text-subtle);pointer-events:none;position:absolute;inset-block-start:.68rem;inset-inline-start:.75rem}.tool-search__shortcut{color:var(--color-text-subtle);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-xs);pointer-events:none;padding:.1rem .35rem;font-size:.625rem;position:absolute;inset-block-start:.55rem;inset-inline-end:.6rem}.tool-search__clear{z-index:2;position:absolute;inset-block-start:.25rem;inset-inline-end:.25rem}.tool-search__results{z-index:50;max-height:min(26rem,70vh);padding:var(--space-2);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);display:grid;position:absolute;inset-block-start:calc(100% + var(--space-2));inset-inline:0;overflow-y:auto}.tool-search__result{align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);text-align:start;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);display:grid}.tool-search__result:hover,.tool-search__result[data-active=true]{background:var(--color-accent-soft)}.tool-search__result-icon{width:2rem;height:2rem;color:var(--color-accent);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);place-items:center;display:grid}.tool-search__result>span:last-child{min-width:0;display:grid}.tool-search__result strong{color:var(--color-text);font-size:var(--font-size-sm)}.tool-search__result small{color:var(--color-text-muted);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tool-search__empty{padding:var(--space-6);text-align:center;font-size:var(--font-size-sm);margin:0}.main-content{width:100%;max-width:var(--content-max);min-height:calc(100vh - 4rem);margin-inline:auto;padding:clamp(1rem,3vw,2.5rem)}.button{min-height:var(--control-height-md);justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:var(--font-size-sm);font-weight:650;text-decoration:none;display:inline-flex}.button:hover{color:var(--color-text);background:var(--color-surface-muted);border-color:var(--color-border-strong)}.button--primary{color:var(--color-accent-contrast);background:var(--color-accent);border-color:var(--color-accent)}.button--primary:hover{color:var(--color-accent-contrast);background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.home-page,.standard-page,.tool-page{gap:var(--space-8);display:grid}.workspace-intro{align-items:center;gap:var(--space-8);background:radial-gradient(circle at 78% 10%, color-mix(in srgb, var(--color-info-soft) 78%, transparent), transparent 18rem), linear-gradient(135deg, color-mix(in srgb, var(--color-surface) 96%, var(--color-accent-soft)), var(--color-surface));border:1px solid var(--color-border);min-height:16rem;box-shadow:var(--shadow-md);border-radius:26px;grid-template-columns:minmax(0,1.15fr) minmax(20rem,.85fr);padding:clamp(1.5rem,3vw,2.5rem);display:grid;position:relative;overflow:hidden}.workspace-intro:before{content:"";border:1px solid color-mix(in srgb, var(--color-accent) 20%, transparent);opacity:.6;border-radius:50%;width:13rem;height:13rem;position:absolute;inset-block-start:-4rem;inset-inline-start:42%}.workspace-intro__copy{z-index:1;max-width:47rem;position:relative}.workspace-intro__eyebrow,.catalog-toolbar__eyebrow,.page-heading__eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--font-size-xs);margin-block-end:var(--space-2);font-weight:700;display:block}.workspace-intro h1{letter-spacing:-.045em;margin-block-end:var(--space-3);font-size:clamp(2.25rem,4vw,3.2rem)}.workspace-intro p{max-width:42rem;font-size:var(--font-size-lg);margin-block-end:var(--space-4)}.workspace-intro__status{gap:var(--space-2);flex-wrap:wrap;display:flex}.workspace-intro__illustration{min-height:10rem;max-height:12rem}.workspace-intro__visual{z-index:1;min-width:0;position:relative}.workspace-intro__illustration[data-ready=true]{aspect-ratio:16/9;border-color:color-mix(in srgb, var(--color-border-strong) 70%, transparent);max-height:18rem;box-shadow:var(--shadow-lg);border-radius:22px 22px 22px 8px}.workspace-intro__cat-note{align-items:center;gap:var(--space-2);color:var(--color-text);background:color-mix(in srgb, var(--color-surface) 94%, transparent);border:1px solid var(--color-border);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:999px;padding:.3rem .65rem .3rem .25rem;display:flex;position:absolute;inset-block-end:-1rem;inset-inline-start:-1rem}.workspace-intro__cat-note .ui-engineer-cat{width:3.75rem;margin-block:-.55rem}.workspace-intro__cat-note>span{display:grid}.workspace-intro__cat-note strong,.workspace-intro__cat-note small{line-height:1.25}.workspace-intro__cat-note strong{font-size:var(--font-size-xs)}.workspace-intro__cat-note small{color:var(--color-accent);font-family:var(--font-mono);font-size:.5625rem;font-weight:700}.workspace-intro__illustration .ui-illustration-placeholder__content{max-width:15rem;padding:var(--space-3)}.workspace-status{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:stretch;display:grid;overflow:hidden}.workspace-status>div,.workspace-status>a{align-items:center;gap:var(--space-3);min-width:0;min-height:4.5rem;padding:var(--space-3) var(--space-4);color:var(--color-accent);border-inline-end:1px solid var(--color-border);display:flex}.workspace-status>a{border-inline-end:0;justify-content:center;min-width:6.5rem;overflow:hidden}.workspace-status>a .ui-engineer-cat{width:4.25rem;margin-block:-1rem}.workspace-status>div span{min-width:0;display:grid}.workspace-status strong{color:var(--color-text);font-size:var(--font-size-sm)}.workspace-status small{color:var(--color-text-muted);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.recent-strip{align-items:center;gap:var(--space-4);padding-block:var(--space-3);border-block-end:1px solid var(--color-border);grid-template-columns:minmax(10rem,.35fr) minmax(0,1fr);display:grid}.recent-strip__items{gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.recent-strip__items a{padding:var(--space-2) var(--space-3);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-sm);text-decoration:none}.catalog-toolbar{justify-content:space-between;align-items:flex-end;gap:var(--space-4);border-block-end:1px solid var(--color-border-strong);padding-block-end:var(--space-3);display:flex}.catalog-toolbar h2,.section-heading h2,.page-heading h1{margin:0}.catalog-toolbar h2{font-size:var(--font-size-2xl)}.category-segments{overflow-x:auto}.tool-section{--tool-section-accent:var(--color-accent);gap:var(--space-4);display:grid}.tool-section[data-category=signal-data]{--tool-section-accent:var(--color-chart-3)}.tool-section[data-category=math-engineering]{--tool-section-accent:var(--color-chart-4)}.tool-section[data-category=daily-media]{--tool-section-accent:var(--color-signal)}.tool-section>.section-heading h2{-webkit-text-decoration-color:var(--tool-section-accent);text-decoration-color:var(--tool-section-accent);text-underline-offset:.35rem;text-decoration-line:underline;text-decoration-thickness:2px}.section-heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.section-heading h2{font-size:var(--font-size-xl)}.section-heading h2 svg{vertical-align:-.15em;margin-inline-end:var(--space-2);display:inline}.section-heading p{margin:var(--space-1) 0 0;font-size:var(--font-size-sm)}.section-heading>span,.section-heading__companion>span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-sm)}.section-heading__companion{align-items:center;gap:var(--space-2);min-height:3.5rem;display:flex}.section-heading__companion .ui-engineer-cat{width:5rem;transition:transform var(--motion-normal) var(--motion-ease);margin-block:-.7rem}.tool-section:hover .section-heading__companion .ui-engineer-cat{transform:rotate(-2deg)translateY(-2px)}.tool-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.tool-card{--tool-accent:var(--color-accent);--tool-accent-soft:var(--color-accent-soft);min-width:0;min-height:15.5rem;padding:var(--space-4);background:linear-gradient(145deg, color-mix(in srgb, var(--tool-accent) 3%, var(--color-surface)), var(--color-surface) 58%);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--motion-fast) var(--motion-ease), box-shadow var(--motion-fast) var(--motion-ease), transform var(--motion-fast) var(--motion-ease);grid-template-rows:auto 1fr auto;display:grid;position:relative;overflow:hidden}.tool-card:before{content:"";background:linear-gradient(90deg, var(--tool-accent), transparent 74%);opacity:.78;border-radius:0 0 999px 999px;height:3px;position:absolute;inset-block-start:0;inset-inline:1rem}.tool-card[data-category=signal-data]{--tool-accent:var(--color-chart-3);--tool-accent-soft:var(--color-info-soft)}.tool-card[data-category=math-engineering]{--tool-accent:var(--color-chart-4);--tool-accent-soft:color-mix(in srgb, var(--color-chart-4) 14%, var(--color-surface))}.tool-card[data-category=daily-media]{--tool-accent:var(--color-signal);--tool-accent-soft:var(--color-signal-soft)}.tool-card:hover{border-color:color-mix(in srgb, var(--tool-accent) 48%, var(--color-border));box-shadow:var(--shadow-md);transform:translateY(-3px)}.tool-card__topline{align-items:center;gap:var(--space-2);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.tool-card__icon{width:2.5rem;height:2.5rem;color:var(--tool-accent);background:var(--tool-accent-soft);border:1px solid color-mix(in srgb, var(--tool-accent) 20%, transparent);border-radius:14px 14px 14px 5px;place-items:center;display:grid}.tool-card__badges{gap:var(--space-1);flex-wrap:wrap;min-width:0;display:flex}.tool-card__favorite[data-active=true],.ui-icon-button[data-active=true]{color:var(--color-warning);background:var(--color-warning-soft);border-color:var(--color-warning)}.tool-card__body{padding-block:var(--space-5) var(--space-4)}.tool-card h3{font-size:var(--font-size-lg);margin-block-end:var(--space-2)}.tool-card h3 a{color:var(--color-text);text-decoration:none}.tool-card h3 a:hover{color:var(--color-accent)}.tool-card p{font-size:var(--font-size-sm);margin:0;line-height:1.55}.tool-card__footer{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;border-block-start:1px solid var(--color-border);padding-block-start:var(--space-3);display:flex}.tool-card__footer>span{color:var(--color-text-subtle);font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;overflow:hidden}.tool-card__open{width:2rem;height:2rem;color:var(--tool-accent);background:var(--tool-accent-soft);transition:transform var(--motion-fast) var(--motion-ease);border-radius:10px 10px 10px 4px;flex:none;place-items:center;display:grid}.tool-card:hover .tool-card__open{transform:translate(2px,-2px)}.empty-band,.not-found{align-content:center;justify-items:center;gap:var(--space-3);min-height:22rem;padding:var(--space-8);color:var(--color-text-subtle);text-align:center;border-block:1px solid var(--color-border);display:grid}.empty-band h2,.empty-band p,.not-found h1{margin:0}.local-project-callout{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-accent-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);display:flex}.local-project-callout>div{align-items:center;gap:var(--space-3);color:var(--color-accent);display:flex}.local-project-callout span{display:grid}.local-project-callout strong{color:var(--color-text)}.local-project-callout small{color:var(--color-text-muted)}.page-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-4);padding-block:var(--space-5);border-block-end:1px solid var(--color-border-strong);display:flex}.page-heading h1{font-size:var(--font-size-2xl)}.page-heading p{margin:var(--space-2) 0 0}.principle-list{border-block-start:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.principle-list section{gap:var(--space-4);padding:var(--space-6);color:var(--color-accent);border-block-end:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr);display:grid}.principle-list section:nth-child(odd){border-inline-end:1px solid var(--color-border)}.principle-list h2{font-size:var(--font-size-lg);margin-block-end:var(--space-2)}.principle-list p{font-size:var(--font-size-sm);margin:0}.project-list{border-block-start:1px solid var(--color-border);display:grid}.storage-error{align-items:center;gap:var(--space-4);min-height:12rem;padding:var(--space-5);color:var(--color-danger);background:var(--color-danger-soft);border:1px solid var(--color-danger);border-radius:var(--radius-lg);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.storage-error h2,.storage-error p{margin:0}.storage-error h2{font-size:var(--font-size-lg)}.storage-error p{font-size:var(--font-size-sm);margin-block-start:var(--space-1)}.project-row{align-items:center;gap:var(--space-4);padding:var(--space-4);background:var(--color-surface);border-block-end:1px solid var(--color-border);grid-template-columns:auto minmax(0,1fr) auto auto auto;display:grid}.project-row__icon{width:2.5rem;height:2.5rem;color:var(--color-accent);background:var(--color-accent-soft);border-radius:var(--radius-md);place-items:center;display:grid}.project-row h2,.project-row p{margin:0}.project-row h2{font-size:var(--font-size-md)}.project-row p,.loading-line{font-size:var(--font-size-xs)}.algorithm-version{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs)}.project-message{padding:var(--space-2) var(--space-3);color:var(--color-success);background:var(--color-success-soft);border:1px solid var(--color-success);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-block-start:calc(var(--space-4) * -1)}.project-message[data-error=true]{color:var(--color-danger);background:var(--color-danger-soft);border-color:var(--color-danger)}.tool-workbench{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:23rem}.tool-workbench__pending{justify-content:center;align-items:center;gap:var(--space-4);min-height:23rem;padding:var(--space-8);color:var(--color-accent);display:flex}.tool-workbench__pending>div{max-width:31rem}.tool-workbench__pending span{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700}.tool-workbench__pending h2{margin:var(--space-1) 0 var(--space-2);font-size:var(--font-size-xl)}.tool-workbench__pending p{font-size:var(--font-size-sm);margin:0}.workbench-loading{justify-content:center;align-items:center;gap:var(--space-3);min-height:23rem;color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.workbench-loading svg{color:var(--color-accent);animation:.8s linear infinite ui-spin}.tool-error-boundary{justify-content:center;align-items:center;gap:var(--space-4);min-height:23rem;padding:var(--space-8);color:var(--color-danger);display:flex}.tool-error-boundary>div{max-width:34rem}.tool-error-boundary span{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700}.tool-error-boundary h2{margin:var(--space-1) 0 var(--space-2);font-size:var(--font-size-xl)}.tool-error-boundary p{font-size:var(--font-size-sm);margin-block-end:var(--space-4)}.tool-reference-grid{border-block-start:1px solid var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tool-reference-grid>section{min-width:0;padding:var(--space-5);border-block-end:1px solid var(--color-border)}.tool-reference-grid>section:first-child{border-inline-end:1px solid var(--color-border)}.reference-heading{justify-content:space-between;align-items:center;gap:var(--space-3);margin-block-end:var(--space-4);display:flex}.reference-heading h2{font-size:var(--font-size-lg);margin:0}.reference-heading span{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--font-size-xs)}.template-list{gap:var(--space-2);display:grid}.template-list button{justify-content:space-between;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-3);text-align:start;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex}.template-list button>span{min-width:0;display:grid}.template-list strong{font-size:var(--font-size-sm)}.template-list small{color:var(--color-text-muted);font-size:var(--font-size-xs)}.algorithm-list{gap:var(--space-3);margin:var(--space-4) 0 0;display:grid}.algorithm-list>div{gap:var(--space-3);grid-template-columns:3rem minmax(0,1fr);display:grid}.algorithm-list dt{color:var(--color-text-subtle);font-size:var(--font-size-xs);font-weight:700}.algorithm-list dd{font-size:var(--font-size-sm);margin:0}.not-found span{color:var(--color-signal);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700}@media (width<=76rem){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topbar{grid-template-columns:minmax(14rem,1fr) auto auto}}@media (width<=64rem){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar{width:min(var(--sidebar-width), 88vw);visibility:hidden;pointer-events:none;transition:transform var(--motion-normal) var(--motion-ease), visibility 0s linear var(--motion-normal);position:fixed;inset-block:0;inset-inline-start:0;transform:translate(-105%)}.sidebar[data-open=true]{visibility:visible;pointer-events:auto;transition-delay:0s;transform:translate(0)}.sidebar__close,.topbar__menu{display:inline-grid}.sidebar-backdrop{z-index:25;background:var(--color-overlay);border:0;display:block;position:fixed;inset:0}.topbar{grid-template-columns:auto minmax(10rem,1fr) auto auto}}@media (width<=48rem){.main-content{padding:var(--space-4)}.topbar{gap:var(--space-2);height:3.75rem;padding-inline:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto}.topbar__status{display:none}.theme-control button span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.theme-control button{width:1.875rem;padding:0}.tool-search__shortcut{display:none}.tool-search>input{padding-inline-end:2.5rem}.workspace-intro{gap:var(--space-4);padding:var(--space-5);border-radius:22px;grid-template-columns:minmax(0,1fr)}.workspace-intro h1{font-size:2.2rem}.workspace-intro p{font-size:var(--font-size-md)}.workspace-intro__illustration{max-height:none}.workspace-intro__cat-note{inset-block-end:-.65rem;inset-inline-start:.5rem}.workspace-status{grid-template-columns:minmax(0,1fr) auto}.workspace-status>div:nth-child(2),.workspace-status>div:nth-child(3){display:none}.section-heading__companion{gap:var(--space-1)}.section-heading__companion .ui-engineer-cat{width:4.25rem}.recent-strip,.catalog-toolbar,.page-heading{grid-template-columns:minmax(0,1fr);align-items:flex-start;display:grid}.category-segments{justify-content:flex-start;width:100%}.tool-grid,.principle-list,.tool-reference-grid{grid-template-columns:minmax(0,1fr)}.principle-list section:nth-child(odd),.tool-reference-grid>section:first-child{border-inline-end:0}.local-project-callout{flex-direction:column;align-items:stretch}.project-row{grid-template-columns:auto minmax(0,1fr) auto auto}.project-row>div{grid-column:2/-1}.storage-error{grid-template-columns:auto minmax(0,1fr)}.storage-error .button{grid-column:2;justify-self:start}.project-row .button{grid-column:2}}@media (width<=30rem){.main-content{padding-inline:var(--space-3)}.topbar{grid-template-columns:auto minmax(0,1fr) auto}.theme-control button:first-child{display:none}.tool-card{min-height:14.5rem}.tool-workbench__pending{padding:var(--space-5);flex-direction:column;align-items:flex-start}.pwa-notice{inset-inline:var(--space-3);grid-template-columns:auto minmax(0,1fr) auto;width:auto;inset-block-end:var(--space-3)}.pwa-notice .button{grid-column:2/-1}}
