.infra-map-page{flex-direction:column;min-height:0;display:flex}.infra-map-viewport{border:1px solid var(--outline);border-radius:8px;flex:1;height:calc(100dvh - 150px);min-height:480px;position:relative;overflow:hidden}.infra-map-viewport iframe{border:0;width:100%;height:100%;min-height:0;display:block;position:absolute;inset:0}.infra-map-status{z-index:1;background:var(--surface-panel);pointer-events:none;border-radius:6px;padding:8px 12px;position:absolute;top:12px;left:16px}.infra-map-unavailable{padding:24px}@media (width<=700px){.infra-map-viewport{height:calc(100dvh - 170px)}}.retained-map:not([hidden]){display:contents}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--space-7:24px;--surface-page:#0c1322;--surface-panel:#131a2a;--surface-inset:#1c2436;--surface-head:#171f30;--surface-field:#0c1322;--on-surface:#e4e9f7;--on-surface-dim:#c2c8d8;--on-surface-faint:#8f97ab;--outline:#222b3e;--outline-strong:#364158;--accent:#adc6ff;--accent-strong:#4d8eff;--accent-surface:#4d8eff24;--accent-deep:#2f6fe0;--data-primary:#adc6ff;--on-accent-deep:#fff;--on-accent:#fff;--ok:#4ade80;--ok-surface:#4ade801f;--on-ok:#052e16;--warn:#fbbf24;--warn-surface:#fbbf241f;--on-warn:#1c1917;--danger:#f87171;--danger-surface:#f871711f;--on-danger:#fff;--font-display:"Inter Variable",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-body:"Inter Variable",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;--radius-s:6px;--radius-m:8px;--shadow:0 1px 2px #0000004d;--shadow-raised:0 8px 28px #00000059;--term-a:#e7ecf9;--term-b:#7fb1ff;--term-c:#b8a8ff;--term-d:#ff9db1;--term-e:#e8c268;--term-f:#4edea3;--focus-ring:#4d8eff}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-page:#f4f6fb;--surface-panel:#fff;--surface-inset:#edf1f8;--surface-head:#f6f8fc;--surface-field:#fff;--on-surface:#0c1322;--on-surface-dim:#344055;--on-surface-faint:#66708a;--outline:#e1e6ef;--outline-strong:#c6cedc;--accent:#2459c4;--accent-strong:#2f6fe0;--accent-surface:#2f6fe01a;--accent-deep:#2459c4;--data-primary:#0c1322;--ok:#15803d;--ok-surface:#15803d1a;--warn:#b45309;--warn-surface:#b453091a;--danger:#dc2626;--danger-surface:#dc262614;--shadow:0 1px 2px #0c13220f;--shadow-raised:0 8px 24px #0c132224;--term-a:#0c1322;--term-b:#2459c4;--term-c:#6a4bd1;--term-d:#b8325a;--term-e:#8a5a00;--term-f:#0e7550;--focus-ring:#2f6fe0}}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--surface-page:#f4f6fb;--surface-panel:#fff;--surface-inset:#edf1f8;--surface-head:#f6f8fc;--surface-field:#fff;--on-surface:#0c1322;--on-surface-dim:#344055;--on-surface-faint:#66708a;--outline:#e1e6ef;--outline-strong:#c6cedc;--accent:#2459c4;--accent-strong:#2f6fe0;--accent-surface:#2f6fe01a;--accent-deep:#2459c4;--data-primary:#0c1322;--ok:#15803d;--ok-surface:#15803d1a;--warn:#b45309;--warn-surface:#b453091a;--danger:#dc2626;--danger-surface:#dc262614;--shadow:0 1px 2px #0c13220f;--shadow-raised:0 8px 24px #0c132224;--term-a:#0c1322;--term-b:#2459c4;--term-c:#6a4bd1;--term-d:#b8325a;--term-e:#8a5a00;--term-f:#0e7550;--focus-ring:#2f6fe0}:root{--space-2:4px;--space-3:8px;--space-4:12px;--space-5:16px;--font-xs:12px;--font-sm:13px;--font-md:14px;--font-lg:16px;--font-md-lh:20px;--font-lg-lh:24px;--tracking-caps:0;--radius-3:12px;--row-compact:36px;--row-default:40px;--header-row:40px;--panel-header:56px;--control:36px;--control-sm:32px;--grid-gap:var(--space-7);--outline-subtle:color-mix(in srgb, var(--outline) 55%, transparent)}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--surface-page);color:var(--on-surface);font-family:var(--font-body);font-size:var(--font-md);line-height:var(--font-md-lh);-webkit-font-smoothing:antialiased}.app{min-height:100vh;display:flex}.app-nav{background:var(--surface-page);border-right:1px solid var(--outline);flex-direction:column;flex:0 0 220px;width:220px;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.app-nav__brand{border-bottom:1px solid var(--outline);flex-direction:column;align-items:center;gap:4px;padding:16px 12px;display:flex}.app-nav__logo{object-fit:contain;width:100%;max-width:160px;height:auto}.app-nav__links{flex-direction:column;flex:1 0 auto;display:flex}.app-nav__toggle{border:1px solid var(--outline-strong);border-radius:var(--radius-s);background:var(--surface-panel);color:var(--on-surface);font:inherit;cursor:pointer;min-height:40px;padding:8px 12px;display:none}.app-nav__toggle:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.app-nav__sub{color:var(--on-surface-faint);text-transform:uppercase;letter-spacing:.1em;font-size:9px;font-weight:600}.app-nav__group{padding:16px 12px 4px}.app-nav__label{font-size:var(--font-xs);color:var(--on-surface-faint);padding:0 10px 6px;font-weight:500}.app-nav__link{min-height:var(--control);color:var(--on-surface-dim);font-size:var(--font-md);border-radius:var(--radius-s);align-items:center;gap:10px;margin-bottom:2px;padding:0 10px;font-weight:500;text-decoration:none;transition:color .15s,background .15s;display:flex}.app-nav__link:hover{color:var(--on-surface);background:var(--surface-inset)}.app-nav__link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.app-nav__link[aria-current=page]{color:var(--on-surface);background:var(--surface-inset)}.app-nav__link svg{flex-shrink:0;width:16px;height:16px}.app-nav__foot{border-top:1px solid var(--outline);margin-top:auto;padding:12px}.app-nav__logout{width:100%;min-height:var(--control);border-radius:var(--radius-s);color:var(--on-surface-faint);font:inherit;font-size:var(--font-md);cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:0 10px;display:flex}.app-nav__logout:hover{color:var(--on-surface);background:var(--surface-inset)}.app-nav__logout svg{width:16px;height:16px}@media (width<=700px){.app{flex-direction:column}.app-nav{border-right:0;border-bottom:1px solid var(--outline);flex-flow:wrap;flex:none;justify-content:space-between;align-items:center;width:100%;height:auto;position:static;overflow:visible}.app-nav__brand{border-bottom:0;align-items:flex-start;padding:8px 16px}.app-nav__logo{width:100px}.app-nav__sub{display:none}.app-nav__toggle{margin:8px 16px;display:block}.app-nav__links{flex-basis:100%}.app-nav:not(.app-nav--expanded) .app-nav__links{display:none}.app-nav__group{padding-top:8px}}.main{flex-direction:column;flex:auto;min-width:0;display:flex}.ui-page-header{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-7) var(--space-7) 0;flex-wrap:wrap;display:flex}.ui-page-header__lead{align-items:center;gap:var(--space-5);flex-wrap:wrap;min-width:0;max-width:100%;display:flex}.ui-page-header__title{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600;line-height:32px}.ui-page-header__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap;max-width:100%;display:flex}.page-grid{gap:var(--grid-gap);padding:var(--space-7);flex-direction:column;display:flex}.page-grid--split{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.query-layout{grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.query-layout--schema{grid-template-columns:minmax(0,1fr) minmax(240px,320px)}.query-layout__work{gap:var(--grid-gap);flex-direction:column;min-width:0;display:flex}.query-schema{top:var(--space-5);max-height:calc(100vh - 2 * var(--space-5));position:sticky}.query-schema>.ui-panel__body{overflow:auto}.query-schema__group{padding:var(--space-3) 0;border-bottom:1px solid var(--outline-subtle)}.query-schema__group:last-child{border-bottom:0}.query-schema__name{padding:var(--space-2) var(--space-5);font-size:var(--font-sm);color:var(--on-surface-dim);margin:0;font-weight:600}.query-schema__relation summary{align-items:baseline;gap:var(--space-3);padding:var(--space-2) var(--space-5);cursor:pointer;overflow-wrap:anywhere;list-style:none;display:flex}.query-schema__relation summary::-webkit-details-marker{display:none}.query-schema__relation summary:before{content:"";border-right:1.5px solid var(--on-surface-faint);border-bottom:1.5px solid var(--on-surface-faint);flex:none;align-self:center;width:5px;height:5px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.query-schema__relation[open] summary:before{transform:rotate(45deg)}.query-schema__relation summary:hover{background:var(--surface-inset)}.query-schema__relation summary:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.query-schema__relation summary .query-schema__meta{margin-left:auto}.query-schema__relation ul{padding:0 var(--space-5) var(--space-3) calc(var(--space-5) + 13px);margin:0;list-style:none}.query-schema__relation li{justify-content:space-between;gap:var(--space-3);font-size:var(--font-sm);overflow-wrap:anywhere;padding:2px 0;display:flex}.query-schema__meta{color:var(--on-surface-faint);font-size:var(--font-xs);white-space:nowrap}@media (width<=900px){.query-layout--schema{grid-template-columns:minmax(0,1fr)}.query-schema{order:-1;max-height:420px;position:static}}@media (prefers-reduced-motion:reduce){.query-schema__relation summary:before{transition:none}}.query-ask__note{margin:var(--space-4) 0 var(--space-3);color:var(--on-surface-dim);font-size:var(--font-sm)}.ui-textarea.query-ask__prompt,.ui-textarea.query-sql{font:var(--font-sm)/1.6 var(--font-mono)}@media (width<=1200px){.page-grid--split{grid-template-columns:minmax(0,1fr)}}.page-grid--weighted{gap:var(--grid-gap);grid-template-columns:minmax(0,30fr) minmax(0,20fr) minmax(0,50fr);align-items:stretch;display:grid}@media (width<=1400px){.page-grid--weighted{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}@media (width<=900px){.page-grid--weighted{grid-template-columns:minmax(0,1fr)}}.stack{gap:var(--grid-gap);flex-direction:column;min-width:0;display:flex}.stack>.ui-panel:last-child{flex:auto}.ui-panel{background:var(--surface-panel);border:1px solid var(--outline);box-shadow:var(--shadow);border-radius:var(--radius-3);flex-direction:column;min-width:0;display:flex;overflow:hidden}.ui-panel__header{min-height:var(--panel-header);padding:var(--space-4) var(--space-7);border-bottom:1px solid var(--outline);justify-content:space-between;align-items:center;gap:var(--space-3) var(--space-5);flex-wrap:wrap;display:flex}.ui-panel__lead{align-items:center;gap:var(--space-3) var(--space-4);flex-wrap:wrap;min-width:0;max-width:100%;display:flex}.ui-panel__title{font-size:var(--font-lg);line-height:var(--font-lg-lh);overflow-wrap:anywhere;margin:0;font-weight:600}.ui-panel__title-aside{align-items:center;gap:var(--space-3);flex-wrap:wrap;min-width:0;max-width:100%;display:inline-flex}.ui-panel__actions{align-items:center;gap:var(--space-4);flex-wrap:wrap;max-width:100%;margin-left:auto;display:flex}.ui-panel__title-aside>.ui-select{max-width:100%}.ui-panel__body{padding:var(--space-7);min-width:0;overflow-x:auto}.ui-panel__body--flush{padding:0}.ui-panel__body--scroll{max-height:420px;overflow:auto}.ui-panel__footer{border-top:1px solid var(--outline);padding:var(--space-4) var(--space-7);justify-content:flex-end;align-items:center;gap:var(--space-3);background:color-mix(in srgb, var(--surface-inset) 30%, transparent);display:flex}.ui-panel__footer-spacer{color:var(--on-surface-faint);font-size:var(--font-sm);margin-right:auto}.ui-table{border-collapse:collapse;width:100%;font-size:var(--font-md);line-height:var(--font-md-lh)}.ui-table thead th{z-index:1;height:var(--header-row);padding:0 var(--space-7);background:var(--surface-head);border-bottom:1px solid var(--outline);font-size:var(--font-sm);color:var(--on-surface-dim);text-align:left;white-space:normal;font-weight:500;position:sticky;top:0}.ui-table tbody td{height:var(--row-default);padding:0 var(--space-7);border-bottom:1px solid var(--outline);color:var(--on-surface);white-space:nowrap;text-overflow:ellipsis;max-width:28ch;overflow:hidden}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table tbody tr:hover td{background:var(--surface-inset)}.ui-table th.num,.ui-table td.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.ui-table--compact tbody td{height:var(--row-compact)}.card-panel__sql-panel{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--outline-subtle);background:var(--surface-page);font-family:var(--font-mono)}.card-panel__sql-toolbar{justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.card-panel__sql-path{color:var(--on-surface-dim);font:var(--font-xs)/1.4 var(--font-mono);overflow-wrap:anywhere}.card-panel__sql-statement{margin:var(--space-4) 0 0;color:var(--on-surface);font:var(--font-sm)/1.5 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto}.copy-feedback{font-size:var(--font-sm);white-space:nowrap}.copy-feedback--success{color:var(--ok)}.copy-feedback--failure{color:var(--danger)}.card-panel__copy-cell{width:100%;color:inherit;font:inherit;text-align:inherit;cursor:copy;background:0 0;border:0;padding:0}.card-panel__copy-cell:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-table tbody td.copied,.ui-table tbody tr:hover td.copied{background:var(--accent-surface);box-shadow:inset 2px 0 0 var(--accent);color:var(--accent);text-shadow:0 0 5px color-mix(in srgb,var(--focus-ring) 75%,transparent), 0 0 12px color-mix(in srgb,var(--focus-ring) 35%,transparent)}.ui-table tbody td.copied *{color:var(--accent)}.ui-table tbody td.pick,.ui-table tbody tr:hover td.pick{background:linear-gradient(var(--accent-strong),var(--accent-strong)) center / calc(100% - 10px) calc(100% - 8px) no-repeat}.ui-table tbody td.pick,.ui-table tbody td.pick *{color:var(--on-accent)}.copy-cursor-tag{z-index:99;pointer-events:none;font-family:var(--font-mono);letter-spacing:.08em;background:var(--focus-ring);color:var(--on-accent);opacity:0;border-radius:2px;padding:2px 4px;font-size:7px;font-weight:700;line-height:1;transition:opacity .15s;position:fixed;transform:translate(10px,-14px)}.copy-cursor-tag.on{opacity:1}@media (prefers-reduced-motion:reduce){.copy-cursor-tag{transition:none}}.ui-table tbody th[scope=row]{height:var(--row-compact);padding:0 var(--space-7);text-align:left;font-weight:500;font-size:var(--font-md);color:var(--on-surface);border-bottom:1px solid var(--outline);white-space:nowrap}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.mono{font-family:var(--font-mono)}.nul{color:var(--on-surface-faint)}.ui-sync{color:var(--on-surface-faint);font-size:var(--font-sm);font-family:var(--font-mono);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.ui-source-link{color:var(--on-surface-dim);white-space:nowrap;font-family:var(--font-mono);font-size:var(--font-sm);border-radius:var(--radius-s);align-items:center;gap:4px;padding:0 2px;text-decoration:none;display:inline-flex}.ui-source-link:hover{color:var(--accent)}.ui-source-link:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.dot{background:var(--on-surface-faint);border-radius:50%;flex:none;width:7px;height:7px}.dot--ok{background:var(--ok)}.dot--warn{background:var(--warn)}.dot--danger{background:var(--danger)}.ui-sync--failed{color:var(--danger)}.ui-sync--failed .dot{background:var(--danger)}.ui-link{color:var(--accent);font-size:var(--font-sm);text-decoration:none}.ui-link:hover{text-decoration:underline}.ui-empty{padding:var(--space-5);text-align:center;color:var(--on-surface-faint);font-size:var(--font-md)}.ui-empty--icon{align-items:center;gap:var(--space-4);padding:var(--space-7) var(--space-5);flex-direction:column;display:flex}.ui-empty__icon{border:1px solid var(--outline);border-radius:var(--radius-m);background:var(--surface-head);width:40px;height:40px;color:var(--on-surface-dim);box-shadow:var(--shadow);place-items:center;display:grid}.ui-empty__icon svg{width:18px;height:18px}.ui-chip{height:22px;font-size:var(--font-xs);white-space:nowrap;background:var(--surface-inset);color:var(--on-surface-dim);border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:0 8px;font-weight:500;line-height:1;display:inline-flex}.ui-chip--ok:before,.ui-chip--warn:before,.ui-chip--danger:before{content:"";background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.ui-chip--ok{background:var(--ok-surface);border-color:color-mix(in srgb, var(--ok) 30%, transparent);color:var(--ok)}.ui-chip--warn{background:var(--warn-surface);border-color:color-mix(in srgb, var(--warn) 30%, transparent);color:var(--warn)}.ui-chip--grey{border-color:var(--outline);color:var(--on-surface-faint);background:0 0}.day-navigation{align-items:center;gap:var(--space-3);display:inline-flex}.day-navigation--compact{gap:var(--space-2)}.day-navigation--compact .ui-stepper__btn{width:28px;height:calc(var(--control-sm) - 2px)}.day-navigation--compact .ui-stepper__label{height:calc(var(--control-sm) - 2px);padding:0 var(--space-3)}.ui-stepper{border:1px solid var(--outline);border-radius:var(--radius-s);align-items:center;gap:2px;display:inline-flex;overflow:hidden}.ui-stepper__btn{width:28px;height:28px;color:var(--on-surface-dim);background:var(--surface-panel);font:inherit;cursor:pointer;border:0;justify-content:center;align-items:center;padding:0;text-decoration:none;display:flex}.ui-stepper__btn:hover:not(:disabled){background:var(--surface-inset);color:var(--on-surface)}.ui-stepper__btn:disabled{color:var(--on-surface-faint);cursor:not-allowed;opacity:.55}.ui-stepper__label{height:28px;padding:0 var(--space-4);background:var(--surface-panel);border:0;border-left:1px solid var(--outline);border-right:1px solid var(--outline);color:var(--on-surface);font:inherit;font-size:var(--font-sm);white-space:nowrap;align-items:center;font-weight:500;display:flex}.ui-stepper__label:is(button){cursor:pointer}.ui-stepper__label:is(button):hover{background:var(--surface-inset)}.ui-stepper__btn:focus-visible,.ui-stepper__label:focus-visible,.day-picker:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.day-picker{height:var(--control-sm);padding:0 var(--space-3);border:1px solid var(--outline);border-radius:var(--radius-s);background:var(--surface-panel);color:var(--on-surface);font:inherit;font-size:var(--font-sm);font-variant-numeric:tabular-nums}.ui-input{height:var(--control-sm);padding:0 var(--space-3);background:var(--surface-field);border:1px solid var(--outline-strong);border-radius:var(--radius-s);color:var(--on-surface);font:inherit;font-size:var(--font-md);font-variant-numeric:tabular-nums;text-align:right;width:4.25rem}.ui-textarea{resize:vertical;width:100%;min-height:5rem;padding:var(--space-3) var(--space-4);background:var(--surface-field);border:1px solid var(--outline-strong);border-radius:var(--radius-s);color:var(--on-surface);font:inherit;font-size:var(--font-md);line-height:var(--font-md-lh);flex:auto}.ui-input:hover:not(:disabled):not(:focus-visible),.ui-textarea:hover:not(:disabled):not(:focus-visible){border-color:var(--on-surface-faint)}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--on-surface-faint)}.ui-textarea:focus-visible,.ui-input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px;background:var(--surface-panel)}.ui-input[type=number]{appearance:textfield}.ui-input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ui-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ui-btn{height:var(--control);padding:0 var(--space-5);border-radius:var(--radius-s);border:1px solid var(--accent-strong);background:var(--accent-strong);color:var(--on-accent);font:inherit;font-size:var(--font-md);cursor:pointer;font-weight:500}.ui-btn:hover:not(:disabled){background:var(--accent-deep);border-color:var(--accent-deep);color:var(--on-accent-deep)}.ui-btn--ghost{border-color:var(--outline);color:var(--on-surface);background:0 0}.ui-btn--ghost:hover:not(:disabled){background:var(--surface-inset);border-color:var(--on-surface-faint);color:var(--on-surface)}.ui-btn--ghost[aria-pressed=true]:not(:disabled),.ui-btn--ghost[aria-expanded=true]:not(:disabled){border-color:var(--accent-strong);background:var(--accent-surface);color:var(--accent)}.ui-btn:focus-visible,.ui-select:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.ui-btn--compact{height:var(--control-sm);padding:0 var(--space-4);font-size:var(--font-sm)}.ui-btn:disabled{opacity:.45;cursor:not-allowed}.ui-kv{align-items:center;gap:var(--space-3) var(--space-5);font-size:var(--font-md);grid-template-columns:auto 1fr;display:grid}.ui-kv dt{color:var(--on-surface-faint)}.ui-kv dd{color:var(--on-surface);margin:0}.unit-suffix{color:var(--on-surface-faint);font-size:var(--font-sm)}.ui-select{appearance:none;height:var(--control-sm);padding:0 28px 0 var(--space-4);border:1px solid var(--outline);border-radius:var(--radius-s);color:var(--on-surface);font:inherit;font-size:var(--font-sm);cursor:pointer;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%239da1af' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E") right 8px center no-repeat;max-width:100%;font-weight:500}.ui-select:hover:not(:disabled){background-color:var(--surface-inset);border-color:var(--on-surface-faint);color:var(--on-surface)}.ui-select:disabled{opacity:.45;cursor:not-allowed}.ui-select option{background:var(--surface-panel);color:var(--on-surface)}.main:has(>.chat-workspace){height:100vh;min-height:0;overflow:hidden}.chat-workspace{border-top:1px solid var(--outline-subtle);flex:auto;grid-template-columns:210px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.chat-workspace--collapsed{grid-template-columns:48px minmax(0,1fr)}.chat-sidebar{border-right:1px solid var(--outline-subtle);background:var(--surface-page);min-width:0;padding:6px;font-size:13px;overflow-y:auto}.chat-sidebar__header{height:30px;color:var(--on-surface-faint);align-items:center;gap:6px;margin-bottom:4px;display:flex}.chat-sidebar__header strong{font-size:12px;font-weight:500}.chat-sidebar__toggle{border-radius:var(--radius-s);width:32px;height:32px;color:var(--on-surface-dim);cursor:pointer;background:0 0;border:0}.chat-sidebar__toggle:hover{background:var(--surface-page);color:var(--on-surface)}.chat-new{border-radius:var(--radius-s);width:100%;height:30px;color:var(--on-surface);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin-bottom:6px;padding:0 8px}.chat-new:hover{background:var(--surface-inset)}.chat-sidebar__status{padding:var(--space-3);color:var(--on-surface-faint);font-size:var(--font-sm)}.chat-channel-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.chat-channel{border-radius:var(--radius-s);position:relative}.chat-channel--selected,.chat-channel:hover{background:var(--surface-inset)}.chat-channel__select{width:100%;min-height:32px;color:var(--on-surface);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:6px 8px;display:flex}.chat-channel__select span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chat-channel__select small{color:var(--on-surface-faint);font-size:var(--font-xs)}.chat-channel__actions{background:var(--surface-inset);align-items:center;gap:4px;height:24px;display:none;position:absolute;top:4px;right:4px}.chat-channel:hover .chat-channel__actions,.chat-channel:focus-within .chat-channel__actions{display:flex}.chat-channel__actions button,.chat-archive>button,.chat-channel__edit button{background:var(--surface-page);color:var(--on-surface-dim);font:inherit;font-size:var(--font-xs);cursor:pointer;border:0;padding:1px 4px}.chat-channel__edit{grid-template-columns:1fr auto;gap:4px;padding:6px;display:grid}.chat-channel__edit input{border:1px solid var(--outline-strong);border-radius:var(--radius-s);background:var(--surface-page);min-width:0;color:var(--on-surface);font:inherit;grid-column:1/-1;padding:5px}.chat-archive{margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--outline-subtle)}.chat-archive>button{background:0 0}.chat-archive .chat-channel-list{margin-top:var(--space-2)}.chat{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.chat-thread{gap:var(--space-5);width:100%;max-width:760px;padding:var(--space-7) var(--space-5) 0;flex-direction:column;flex:auto;margin:0 auto;display:flex;overflow-y:auto}.chat-empty{text-align:center;color:var(--on-surface-dim);margin:auto}.chat-empty h2{margin:0 0 var(--space-2);color:var(--on-surface);font-size:20px}.chat-loading{color:var(--on-surface-faint)}.chat-msg{gap:var(--space-3);flex-direction:column;display:flex}.chat-msg--user{align-items:flex-end}.chat-msg--user .chat-body{max-width:82%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-3);background:var(--surface-inset)}.chat-body{color:var(--on-surface);overflow-wrap:anywhere;line-height:1.6}.chat-body h2,.chat-body h3{margin:0 0 var(--space-3);font-size:17px;line-height:1.35}.chat-body p,.chat-body ul,.chat-body ol{margin:0 0 var(--space-4)}.chat-body li+li{margin-top:var(--space-2)}.chat-body p:last-child{margin-bottom:0}.chat-msg--fail .chat-body{color:var(--danger)}.chat-sources{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.chat-sources__label{color:var(--on-surface-faint);font-size:var(--font-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-weight:700}.chat-cite{border-radius:var(--radius-s);background:var(--surface-inset);color:var(--on-surface-dim);font-family:var(--font-mono);font-size:var(--font-xs);padding:3px 10px}.chat-pending{align-items:center;gap:var(--space-3);color:var(--on-surface-dim);font-size:var(--font-md);display:flex}.chat-pending__dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent);border-radius:50%;animation:1.4s ease-in-out infinite chat-pulse}@keyframes chat-pulse{50%{opacity:.35}}.chat-composer{width:100%;max-width:760px;padding:var(--space-5);margin:0 auto}.chat-composer__status{margin:0 0 var(--space-2);color:var(--on-surface-faint);font-size:var(--font-sm)}.chat-form{align-items:flex-end;gap:var(--space-3);padding:7px 7px 7px var(--space-5);background:var(--surface-inset);border:1px solid var(--outline-subtle);border-radius:22px;display:flex}.chat-form:focus-within{border-color:var(--accent)}.chat-input{min-width:0;color:var(--on-surface);font:inherit;font-size:var(--font-md);resize:none;background:0 0;border:0;flex:auto;max-height:160px;padding:5px 0;line-height:1.45;overflow-y:auto}.chat-input:focus{outline:none}.chat-input::placeholder{color:var(--on-surface-faint)}.chat-send{height:32px;padding:0 var(--space-5);background:var(--accent-strong);color:var(--on-accent);font:inherit;font-size:var(--font-md);cursor:pointer;border:0;border-radius:999px;flex:none;font-weight:600}.chat-send:hover{background:var(--accent-deep);color:var(--on-accent-deep)}.chat-send:disabled{opacity:.45;cursor:not-allowed}.chat-disclaimer{margin:var(--space-3) 0 0;text-align:center;font-size:var(--font-sm);color:var(--on-surface-faint)}@media (width<=700px){.main:has(>.chat-workspace){height:calc(100dvh - 65px)}.chat-workspace,.chat-workspace--collapsed{grid-template-columns:48px minmax(0,1fr);position:relative}.chat-sidebar{z-index:3;width:min(280px,85vw);padding:var(--space-2);box-shadow:var(--shadow-raised);position:absolute;inset:0 auto 0 0}.chat-workspace--collapsed .chat-sidebar{width:48px;box-shadow:none}.chat-workspace--collapsed .chat-sidebar>:not(.chat-sidebar__header),.chat-workspace--collapsed .chat-sidebar__header strong{display:none}.chat{grid-column:2}.chat-thread{padding:var(--space-5) var(--space-3) 0}.chat-composer{padding:var(--space-3)}}.ui-banner{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--outline-subtle);background:var(--surface-inset);color:var(--on-surface-dim);font-size:var(--font-sm)}.field{flex-direction:column;gap:6px;display:flex}.field label{font-size:var(--font-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--on-surface-faint);font-weight:700}.field input{height:34px;padding:0 var(--space-3);background:var(--surface-page);border:1px solid var(--outline-strong);border-radius:var(--radius-s);color:var(--on-surface);font:inherit;font-size:var(--font-md);width:100%}.field input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-1px}.field__hint{font-size:var(--font-sm);color:var(--on-surface-faint);text-transform:none;letter-spacing:0;font-weight:400}.ui-notice{padding:var(--space-3) var(--space-4);border-radius:var(--radius-s);border:1px solid var(--danger);color:var(--danger);font-size:var(--font-sm)}.ui-notice--info{border-color:var(--outline-strong);color:var(--on-surface-dim)}.stat-row{gap:var(--grid-gap);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));display:grid}.stat{padding:var(--space-4) var(--space-5);background:var(--surface-panel);border:1px solid var(--outline);border-radius:var(--radius-3)}.stat__label{font-size:var(--font-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--on-surface-faint);font-weight:700}.stat__value{font-variant-numeric:tabular-nums;margin-top:6px;font-size:24px;font-weight:600;line-height:28px}a.ui-btn{align-items:center;text-decoration:none;display:inline-flex}.sec-row{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-4) 0;display:flex}.sec-row:first-child{padding-top:0}.sec-row:last-child{padding-bottom:0}.sec-row+.sec-row{border-top:1px solid var(--outline-subtle)}.sec-row__info{min-width:0}.sec-row__name{align-items:center;gap:var(--space-3);font-size:var(--font-md);color:var(--on-surface);font-weight:500;display:flex}.sec-row__desc{font-size:var(--font-sm);color:var(--on-surface-faint);margin:2px 0 0}.sec-row__actions{gap:var(--space-3);flex-shrink:0;display:flex}.role-primary,.ui-table td.role-primary,.ui-table th.role-primary,.stat__value.role-primary{color:var(--data-primary)}.role-measured,.ui-table td.role-measured,.ui-table th.role-measured,.stat__value.role-measured{color:var(--on-surface)}.role-delta,.ui-table td.role-delta,.ui-table th.role-delta,.stat__value.role-delta{color:var(--warn)}.role-good,.ui-table td.role-good,.ui-table th.role-good,.stat__value.role-good{color:var(--ok)}.role-warn,.ui-table td.role-warn,.ui-table th.role-warn,.stat__value.role-warn{color:var(--warn)}.role-muted,.ui-table td.role-muted,.ui-table th.role-muted,.stat__value.role-muted{color:var(--on-surface-faint)}.ui-chip--accent{background:var(--accent-surface);color:var(--accent)}.ui-chip--danger{background:var(--danger-surface);border-color:color-mix(in srgb, var(--danger) 30%, transparent);color:var(--danger)}.stat__unit{margin-left:var(--space-2);color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:500}.chart{width:100%;height:auto;display:block}.card-panel__paired{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;display:grid}.card-panel__paired>.ui-panel{min-width:0;height:320px;margin:0}.card-panel__paired--wide{grid-template-columns:minmax(0,1fr)}.card-panel__paired .chart__axis-title{display:none}.card-panel__paired .ui-table thead th,.card-panel__paired .ui-table tbody td{padding:0 var(--space-5)}.card-panel--paired-section>.ui-panel__body{padding:var(--space-7);overflow:visible}.card-panel--paired-section>.ui-panel__body>.card-panel__sql-panel{margin:calc(-1*var(--space-7)) calc(-1*var(--space-7)) var(--space-7)}.card-panel__graph-panel>.ui-panel__body{min-height:0;padding:var(--space-3);flex:1;justify-content:center;align-items:center;display:flex}.card-panel__graph-panel .chart{max-width:none;height:100%;max-height:100%}.card-panel__readings-panel>.ui-panel__body{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}@media (width<=900px){.card-panel__paired{grid-template-columns:minmax(0,1fr)}.card-panel__paired>.card-panel__graph-panel{height:260px}}.chart__grid{stroke:var(--outline);stroke-opacity:.75}.chart__axis-label{fill:var(--on-surface-dim);font-variant-numeric:tabular-nums;font-size:10px}.chart__axis-title{fill:var(--on-surface);font-size:11px;font-weight:600}.chart__axis-title--x{fill:var(--on-surface-dim);font-size:10px;font-weight:500}.chart__line{fill:none;stroke:var(--warn);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.chart__point{fill:var(--surface-panel);stroke:var(--warn);stroke-width:1.5px}.chart--dense .chart__point{opacity:0}.chart--dense .chart__point:hover{opacity:1;fill:var(--warn)}.chart__point--hl{fill:var(--warn)}.chart__band{fill:var(--accent-strong);opacity:.25}.chart--morning .chart__line,.chart--morning .chart__point{stroke:var(--accent)}.chart--morning .chart__point--hl{fill:var(--accent)}.chart--morning .chart__point--fallback{fill:var(--warn);stroke:var(--warn);opacity:1}.ui-table tbody td.card-panel__morning-value{color:var(--data-primary)}.ui-table tbody td.card-panel__average-fallback{color:var(--warn)}.card-panel__fallback-label{text-transform:uppercase;font-size:.72em;font-weight:700}.telemetry-view__legend{gap:var(--space-3) var(--space-5);font-size:var(--font-sm);line-height:var(--font-md-lh);color:var(--on-surface-dim);flex-wrap:wrap;order:4;display:flex}.telemetry-view__legend-item{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.telemetry-view__swatch{border-radius:50%;flex:0 0 8px;width:8px;height:8px;display:inline-block}.telemetry-view__swatch--average{background:var(--warn)}.telemetry-view__swatch--morning{background:var(--accent)}.card-panel[data-card-id^=telemetry-] .ui-panel__title-aside>.ui-select{order:1}.telemetry-base-control span{font-weight:400}.telemetry-base-control strong{color:var(--data-primary);font-variant-numeric:tabular-nums}.base-elevation__proposed{align-items:center;gap:var(--space-2);font-size:var(--font-sm);display:flex}.base-elevation__proposed .ui-input{width:130px}.base-elevation__backdrop{z-index:100;background:color-mix(in srgb, var(--on-surface) 35%, transparent);padding:var(--space-5);place-items:center;display:grid;position:fixed;inset:0}.base-elevation__dialog{background:var(--surface-panel);border:1px solid var(--outline-strong);border-radius:var(--radius-3);width:min(100%,440px);box-shadow:var(--shadow);padding:var(--space-5)}.base-elevation__dialog h2{margin:0 0 var(--space-4)}.base-elevation__dialog form,.base-elevation__dialog form>label{gap:var(--space-2);flex-direction:column;display:flex}.base-elevation__dialog form{gap:var(--space-4)}.base-elevation__dialog-actions{justify-content:flex-end;gap:var(--space-3);display:flex}.chart__grid--zero{stroke:var(--outline-strong)}.chart{max-width:640px}.page-grid--calc{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr) 400px;align-items:start;max-width:1920px;display:grid}.page-grid--calc>.ui-panel{grid-column:1/-1}.calc-col{gap:var(--grid-gap);flex-direction:column;min-width:0;display:flex}.calc-col--rail .stat-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.calc-col--rail .stat{margin:0}.calc-col--rail .stat:has(.role-delta){background:color-mix(in srgb, var(--warn-surface) 45%, transparent);grid-column:1/-1}.calc-col--rail .stat:has(.role-muted) .stat__value{font-size:15px}.calc-col--main .card-panel{overflow:hidden}@media (width<=1400px){.page-grid--calc{grid-template-columns:1fr}}.ui-table tr.sel td{background:var(--accent-surface);box-shadow:inset 2px 0 0 var(--accent-strong)}.ui-table tr.sel td:not(:first-child){box-shadow:none}.mass-balance__resolving{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:11px}.trace-demo__hint{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:9.5px}.trace-tok--a{color:var(--term-a)}.trace-tok--b{color:var(--term-b)}.trace-tok--c{color:var(--term-c)}.trace-tok--d{color:var(--term-d)}.trace-tok--e{color:var(--term-e)}.trace-tok--f{color:var(--term-f)}.trace-term__dot{background:currentColor;border-radius:2px;flex-shrink:0;width:8px;height:8px;margin-right:9px;display:inline-block}.trace-stage__footnote{border-top:1px solid var(--outline-soft);color:var(--on-surface-faint);font-family:var(--font-mono);overflow-wrap:anywhere;min-width:0;padding:7px 12px;font-size:10.5px}.trace-demo__body{flex-direction:column;gap:12px;padding:14px;display:flex}.trace-stage{border:1px solid var(--outline-soft);background:var(--surface-deep);border-radius:8px;min-width:0;overflow:hidden}.trace-stage__header{background:var(--surface-inset);border-bottom:1px solid var(--outline-soft);flex-wrap:wrap;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.trace-stage__ordinal{color:var(--accent-strong);font-family:var(--font-mono);letter-spacing:.14em;font-size:10px;font-weight:700}.trace-stage__title{color:var(--on-surface-dim);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;overflow-wrap:anywhere;min-width:0;font-size:11px;font-weight:600}.trace-stage__tag{color:var(--ok);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-left:auto;font-size:9.5px}.trace-stage__body{grid-template-columns:minmax(15rem,2fr) 3fr;display:grid}@media (width<=1100px){.trace-stage__body{grid-template-columns:1fr}}.trace-side{min-width:0;padding:10px 12px}.trace-side--computed{border-left:1px solid var(--outline-soft)}@media (width<=1100px){.trace-side--computed{border-left:0;border-top:1px solid var(--outline-soft)}}.trace-side__label{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px;font-size:9px;font-weight:600}.trace-terms{flex-direction:column;gap:8px;min-width:0;margin:0;display:flex}.trace-term{grid-template-columns:minmax(0,1fr) minmax(0,auto);align-items:baseline;gap:3px 10px;min-width:0;display:grid}.trace-term__name{min-width:0;color:var(--on-surface-dim);overflow-wrap:anywhere;align-items:center;font-size:12px;display:flex}.trace-term__cell{justify-self:end;align-items:baseline;gap:8px;min-width:0;margin:0;display:flex}.trace-term__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:12.5px;font-weight:600}.trace-term__unit{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;margin-left:5px;font-size:9px;font-weight:500}.trace-term__note{color:var(--on-surface-faint);font-family:var(--font-mono);overflow-wrap:anywhere;word-break:break-word;grid-column:1/-1;min-width:0;padding-left:17px;font-size:10px}.trace-side>.trace-term__note{padding-left:0}.trace-details{min-width:0;margin-top:4px}.trace-details summary{cursor:pointer;width:max-content;max-width:100%;color:var(--on-surface-faint);letter-spacing:.08em;text-transform:uppercase;font-size:9px}.trace-details code{color:var(--on-surface-faint);font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin-top:4px;display:block}.trace-formula{flex-direction:column;gap:6px;display:flex}.trace-formula__name{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;font-size:10px;font-weight:600}.trace-formula__row{flex-wrap:wrap;align-items:flex-end;gap:7px;min-width:0;display:flex}.trace-op{flex-direction:column;align-items:center;gap:1px;display:inline-flex}.trace-op__label{color:var(--on-surface-faint);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;font-size:8.5px}.trace-op__value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.trace-op__sign{color:var(--on-surface-faint);font-family:var(--font-mono);padding-bottom:1px;font-size:13px}.trace-formula__result{font-family:var(--font-mono);font-variant-numeric:tabular-nums;padding-bottom:0;font-size:16px;font-weight:700}.base-elevation__charts{gap:var(--grid-gap);grid-template-columns:minmax(0,1fr);display:grid}.card-panel--paired-section>.ui-panel__header .ui-panel__actions{gap:var(--space-3)}.card-panel--paired-section .ui-panel__actions>.copy-feedback:empty{width:0;height:0;position:absolute;overflow:hidden}.card-panel__graph-panel .chart__grid{stroke-opacity:.4}.card-panel__graph-panel .chart__line{stroke:var(--accent);stroke-width:2px}.card-panel__graph-panel .chart__point{stroke:var(--accent)}.card-panel__graph-panel .chart__point--fallback{stroke:var(--warn)}.chart__cursor{stroke:var(--on-surface-faint);stroke-width:1px;stroke-dasharray:4 4}.chart:focus{outline:none}.chart:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.chart.chart--locked{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-3)}.chart__cursor-point{fill:var(--accent);stroke:var(--surface-panel);stroke-width:2px}.chart__tooltip{border:1px solid var(--outline-strong);border-radius:var(--radius-s);background:var(--surface-panel);max-width:100%;box-shadow:var(--shadow-raised);color:var(--on-surface);font-size:var(--font-sm);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:3px;padding:6px 10px;line-height:1.45}.chart__tooltip-single{white-space:nowrap;display:grid}.chart__tooltip-single span{color:var(--on-surface-dim)}.chart__tooltip-fallback{color:var(--warn)}.chart__tooltip-date{margin-bottom:6px;font-weight:700}.chart__tooltip-row{grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.chart__tooltip-row strong{font-variant-numeric:tabular-nums;white-space:nowrap}.chart__tooltip-note{color:var(--on-surface-faint);margin-top:6px;font-size:10px}.card-panel__graph-panel .chart__axis-label{fill:var(--on-surface-faint)}.card-panel__graph-panel .chart__line{stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.base-elevation__effective{align-items:center;gap:var(--space-2);font-size:var(--font-sm);flex-wrap:wrap;max-width:100%;display:flex}.base-elevation__effective .ui-input{flex:none;width:225px;max-width:100%}.card-panel__standalone-chart{min-width:0;height:360px;padding:var(--space-3);flex-direction:column;display:flex}.card-panel__standalone-chart .chart{flex:1;min-height:0}.chart__baseline{fill:none;stroke:var(--on-surface-faint);stroke-width:2px}.chart__depth-band{fill:var(--accent);fill-opacity:.09;stroke:none}.chart__comparison{fill:none;stroke:var(--warn);stroke-width:2px;stroke-dasharray:6 4}.chart__comparison--base{stroke-opacity:.6}.chart__legend{color:var(--on-surface-dim);flex-wrap:wrap;gap:16px;padding:8px 0 0 64px;font-size:11px;display:flex}.chart__legend span{align-items:center;gap:6px;display:inline-flex}.chart__legend-line{border-top:2px solid var(--accent);width:18px}.chart__legend-line--base{border-color:var(--on-surface-faint)}.chart__legend-line--proposed{border-color:var(--warn);border-top-style:dashed}.chart__legend-depth{background:var(--accent);opacity:.2;width:18px;height:9px}.base-elevation__edit-controls{border:1px solid var(--outline);border-radius:var(--radius-s);background:var(--surface-panel);flex-wrap:wrap;align-items:flex-start;gap:16px;padding:16px;display:flex}.base-elevation__edit-controls .base-elevation__proposed,.base-elevation__edit-controls .base-elevation__effective{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.base-elevation__edit-controls .base-elevation__proposed input{width:180px}.base-elevation__edit-actions{flex-wrap:wrap;align-self:flex-end;align-items:center;gap:8px;display:flex}.base-elevation__save[aria-disabled=true]{opacity:.55;cursor:not-allowed}.base-elevation__time-range{flex-wrap:wrap;align-items:flex-end;gap:16px;max-width:100%;margin-left:auto;display:flex}.base-elevation__time-range label{flex-direction:column;align-items:flex-start;gap:6px;font-size:12px;display:flex}.base-elevation__time-range input{width:155px}@media (width<=600px){.base-elevation__edit-controls .base-elevation__proposed,.base-elevation__edit-controls .base-elevation__effective{flex:180px}.base-elevation__edit-controls .base-elevation__proposed input,.base-elevation__edit-controls .base-elevation__effective input{width:100%;min-width:0}.base-elevation__edit-actions{flex-basis:100%}.base-elevation__time-range{flex-basis:100%;margin-left:0}}.base-elevation__date-time{flex-wrap:wrap;align-items:center;gap:8px;max-width:100%;display:flex}.base-elevation__date-field{flex-direction:column;gap:6px;max-width:100%;font-size:12px;display:flex}.ui-stepper__time{width:100px;min-width:0;height:100%;color:inherit;font:inherit;background:0 0;border:0;padding:0}.ui-stepper__time:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.chart-empty{isolation:isolate;place-items:center;width:100%;height:100%;min-height:220px;display:grid;position:relative}.chart-empty__grid{z-index:-1;border-left:1px solid var(--outline);border-bottom:1px solid var(--outline);background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),var(--outline) calc(25% - 1px),var(--outline) 25%);opacity:.5;position:absolute;inset:24px 12px 28px 36px}.chart-empty .ui-empty{padding:var(--space-3) var(--space-4);background:var(--surface-panel)}.card-panel__readings-panel:has(.ui-empty) .ui-empty{padding:88px var(--space-4)}.card-panel__loading-table{padding:var(--space-5);gap:var(--space-5);display:grid}.card-panel__loading-table span{border-radius:var(--radius-s);background:var(--outline-subtle);height:20px}.card-panel__loading-table span:first-child{background:var(--outline);height:28px}.card-panel__loading-chart{justify-content:center}.chart__reference line{stroke:var(--on-surface-dim);stroke-width:1.5px;stroke-dasharray:6 4}.chart__reference text{fill:var(--on-surface-dim);paint-order:stroke;stroke:var(--surface-panel);stroke-width:3px;stroke-linejoin:round;font-size:11px}.copy-row-count{align-items:center;gap:var(--space-2);display:inline-flex}.copy-row-count .ui-input{text-align:right;width:5rem;min-width:0}.chat-usage{color:var(--on-surface-dim);flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .4rem;font-size:.75rem;display:flex}.chat-usage button,.chat-answer-actions button,.chat-pending button{color:inherit;cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:.25rem;text-decoration:underline}.chat-usage button:disabled,.chat-answer-actions button:disabled,.chat-pending button:disabled{cursor:default;opacity:.55}.chat-answer-actions{color:var(--on-surface-dim);gap:.75rem;margin-top:.3rem;font-size:.75rem;display:flex}.chat-usage__form{border:1px solid var(--outline);border-radius:.5rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1rem;width:100%;max-height:35vh;padding:.75rem;display:grid;overflow:auto}.chat-usage__form label{gap:.25rem;min-width:0;display:grid}.chat-usage__form input{width:100%;min-width:0;color:inherit;border:1px solid var(--outline);background:0 0;border-radius:.25rem;padding:.35rem}.chat-usage__form p{grid-column:1/-1;margin:0}@media (width<=700px){.chat-usage__form{grid-template-columns:1fr}}.copy-row-count__label{color:var(--on-surface-dim);font-size:var(--font-sm)}.card-toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.card-toolbar__group{height:var(--control-sm);border:1px solid var(--outline);border-radius:var(--radius-s);background:var(--surface-panel);align-items:stretch;display:inline-flex;overflow:hidden}.card-toolbar__group>*+*{border-left:1px solid var(--outline)}.card-toolbar__group>.ui-btn{height:auto;color:var(--on-surface-dim);border:0;border-radius:0}.card-toolbar__group>*+.ui-btn{border-left:1px solid var(--outline)}.card-toolbar__group>.ui-btn--ghost:hover:not(:disabled){background:var(--surface-inset);color:var(--on-surface)}.card-toolbar__group>.ui-btn--ghost[aria-pressed=true]:not(:disabled),.card-toolbar__group>.ui-btn--ghost[aria-expanded=true]:not(:disabled){background:var(--accent-surface);color:var(--accent)}.card-toolbar__group>.ui-btn:focus-visible{outline-offset:-2px}.card-toolbar__group>.copy-row-count{padding:0 var(--space-2) 0 var(--space-4)}.card-toolbar__group>.copy-row-count .ui-input{background:var(--surface-inset);border-color:#0000;height:24px}.ui-btn{justify-content:center;align-items:center;gap:var(--space-3);white-space:nowrap;display:inline-flex;position:relative}.ui-btn__icon{opacity:0;width:0;margin-right:calc(-1 * var(--space-3));display:inline-flex;overflow:hidden}.ui-btn__icon svg,.ui-btn__status svg{flex:none;width:15px;height:15px}.ui-btn__status{place-items:center;display:grid;position:absolute;inset:0}.ui-btn[data-state] .ui-btn__label,.ui-btn[data-state] .ui-btn__icon{opacity:0}.ui-btn[data-state=done]{background:var(--ok-surface);border-color:var(--ok);color:var(--ok)}.ui-btn--ghost[data-state=done]{background:0 0}.ui-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px}.ui-unsaved-bar{left:50%;bottom:var(--space-7);z-index:20;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-3) var(--space-3) var(--space-5);background:var(--surface-panel);border:1px solid var(--outline-strong);border-radius:var(--radius-m);box-shadow:var(--shadow-raised);display:flex;position:fixed;transform:translate(-50%)}.ui-unsaved-bar[hidden]{display:none}.ui-unsaved-bar__note{align-items:center;gap:var(--space-3);margin-right:var(--space-3);color:var(--on-surface-dim);font-size:var(--font-sm);display:inline-flex}.ui-unsaved-bar__note svg{width:15px;height:15px}.ui-tag-input__field:focus-visible{outline:none}.ui-tag-input--invalid,.ui-tag-input--invalid:focus-within{border-color:var(--danger);outline-color:var(--danger)}.ui-btn[data-state]{pointer-events:none}.ui-unsaved-bar__note{white-space:nowrap}.ui-table td.card-edit{width:8.5rem;position:relative}.ui-table td.card-edit:hover{background:var(--surface-inset)}.ui-table td.card-edit:focus-visible{outline:2px solid var(--focus-ring);outline-offset:-2px}.ui-table td.card-edit--changed{background:var(--accent-surface)}.ui-table td.card-edit--active{padding:0}.card-edit__input{width:100%;height:100%;min-height:inherit;box-sizing:border-box;padding:inherit;padding:0 var(--space-4);outline:2px solid var(--accent-strong);outline-offset:-2px;background:var(--surface-panel);color:var(--on-surface);font:inherit;font-variant-numeric:tabular-nums;text-align:right;appearance:textfield;border:0}.card-edit__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.card-edit__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.recipient-list{margin:0;padding:0;list-style:none}.recipient-list li{justify-content:space-between;align-items:center;gap:var(--space-4);min-height:48px;padding:var(--space-2) var(--space-7);border-top:1px solid var(--outline);display:flex}.recipient-list li:first-child{border-top:0}.recipient-list .ui-input{height:var(--control);text-align:left;flex:0 24rem}.recipient-list li:last-child{justify-content:flex-start}.recipient-list li>span{text-overflow:ellipsis;overflow:hidden}.recipient-list li>.ui-btn{color:var(--on-surface-faint);background:0 0;border-color:#0000}.recipient-list li>.ui-btn:not(:disabled):hover{color:var(--on-surface);background:var(--surface-inset)}:root{--motion-fast:.15s;--motion-base:.24s;--motion-slow:.7s;--motion-loop:1.6s;--ease-out:cubic-bezier(.2,.7,.3,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-soft:cubic-bezier(.25,.1,.25,1)}.card-panel__loading-block{border-radius:var(--radius-s);width:100%;height:100%;min-height:200px}@keyframes card-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes card-progress{0%{transform:translate(-100%)}to{transform:translate(250%)}}@keyframes card-shimmer{0%{background-position:120% 0}to{background-position:-20% 0}}.card-panel__paired,.card-panel__standalone-chart,.card-panel .ui-table{animation:card-in var(--motion-base) var(--ease-out) both}.card-panel>.ui-panel__body{transition:opacity .2s}.card-panel{position:relative}.card-panel--refreshing>.ui-panel__body{opacity:.55}.card-panel--refreshing:after{content:"";background:linear-gradient(90deg,transparent,var(--accent),transparent);pointer-events:none;width:40%;height:2px;animation:1.1s ease-in-out infinite card-progress;position:absolute;top:0;left:0}.card-panel__loading-table span,.card-panel__loading-block{background:linear-gradient(90deg,var(--outline-subtle) 30%,var(--outline) 50%,var(--outline-subtle) 70%);background-size:300% 100%;animation:1.4s ease-in-out infinite card-shimmer}@keyframes chart-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes chart-fade{0%{opacity:0}to{opacity:1}}.chart__line{stroke-dasharray:1;animation:chart-draw var(--motion-slow) var(--ease-in-out) both;transition:d .35s var(--ease-out)}.chart__point,.chart__baseline,.chart__comparison,.chart__reference{animation:.3s .35s both chart-fade}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-pop{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.15)}to{transform:scale(1)}}@keyframes ui-rise{0%{opacity:0;transform:translate(-50%,24px)}to{opacity:1;transform:translate(-50%)}}.ui-btn,.ui-btn__label,.ui-btn__icon{transition:background var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast), opacity var(--motion-fast),width var(--motion-base) var(--ease-out),margin var(--motion-base) var(--ease-out)}.ui-btn--icon:hover:not(:disabled) .ui-btn__icon,.ui-btn--icon:focus-visible .ui-btn__icon{opacity:1;width:15px;margin-right:0}.ui-spinner{animation:.7s linear infinite ui-spin}.ui-btn[data-state=done] .ui-btn__status svg{animation:ui-pop .35s var(--ease-out) both}.ui-unsaved-bar[data-shown]{animation:ui-rise var(--motion-base) var(--ease-out) both}.ui-input,.ui-textarea,.ui-select{transition:border-color var(--motion-fast),background-color var(--motion-fast)}.ui-table td.card-edit,.ui-chip{transition:background-color var(--motion-base) var(--ease-out),color var(--motion-base) var(--ease-out),border-color var(--motion-base) var(--ease-out)}:root{interpolate-size:allow-keywords}@keyframes motion-slide-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:none}}@keyframes motion-rise-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.query-schema{animation:motion-slide-in var(--motion-base) var(--ease-out) both}.query-schema__relation::details-content{block-size:0;transition:block-size var(--motion-base) var(--ease-out),content-visibility var(--motion-base) allow-discrete;overflow:clip}.query-schema__relation[open]::details-content{block-size:auto}.ui-empty--icon,.recipient-list li{animation:motion-rise-in var(--motion-base) var(--ease-out) both}::view-transition-old(root){animation-duration:.22s}::view-transition-new(root){animation-duration:.22s}@view-transition{navigation:auto}@media (prefers-reduced-motion:reduce){.card-panel__paired,.card-panel__standalone-chart,.card-panel .ui-table,.card-panel__loading-table span,.chart__line,.chart__point,.chart__baseline,.chart__comparison,.chart__reference,.card-panel__loading-block,.ui-btn[data-state=done] .ui-btn__status svg,.ui-unsaved-bar[data-shown],.query-schema,.ui-empty--icon,.recipient-list li{animation:none}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}.chart__line,.card-panel>.ui-panel__body,.ui-btn,.ui-btn__label,.ui-btn__icon,.ui-input,.ui-textarea,.ui-select,.ui-table td.card-edit,.ui-chip{transition:none}.query-schema__relation::details-content{transition:none}.ui-spinner{animation-duration:2.4s}.card-panel--refreshing:after{opacity:.5;width:100%;animation:none}}
