@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff) format("woff")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2) format("woff2"),url(/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff) format("woff")}:root{--font-sans: "Inter", "Segoe UI Variable Text", "Segoe UI", "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Mono", "Cascadia Code", Consolas, "Sarasa Mono SC", "Microsoft YaHei UI", monospace;--fs-2xs: 10px;--fs-xs: 11px;--fs-sm: 12px;--fs-md: 13px;--fs-lg: 15px;--fs-xl: 18px;--fs-2xl: 24px;--fs-3xl: 32px;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--lh-tight: 1.2;--lh-normal: 1.45;--sp-0: 0;--sp-1: 2px;--sp-2: 4px;--sp-3: 6px;--sp-4: 8px;--sp-5: 12px;--sp-6: 16px;--sp-7: 20px;--sp-8: 24px;--sp-9: 32px;--r-xs: 2px;--r-sm: 4px;--r-md: 6px;--r-lg: 10px;--r-pill: 999px;--focus-width: 2px;--focus-offset: 2px;--focus-style: solid;--focus-color: var(--focus-ring);--dur-fast: 80ms;--dur-normal: .16s;--ease: cubic-bezier(.2,.6,.2,1);--z-panel: 1;--z-popover: 50;--z-toast: 80;--z-modal: 100}:root,:root[data-theme=dark]{color-scheme:dark;--bg-app: #0d1116;--bg-panel: #131920;--bg-raised: #1a2129;--bg-sunken: #0a0d11;--bg-hover: #212a34;--bg-selected: #173049;--bg-overlay: #1c242d;--border-subtle: #222b35;--border-strong: #34414e;--text-primary: #e6edf3;--text-secondary: #aab5c1;--text-muted: #8590a0;--text-disabled: #566170;--accent: #4cb8e6;--accent-strong: #86d2f3;--accent-weak: #14354a;--on-accent: #06121a;--focus-ring: #9ad9ff;--canvas-bg: #0b0f14;--canvas-grid: #18202a;--canvas-component: #c3ccd6;--canvas-component-fill: #0f1820;--line-high: #f0605d;--line-low: #3fa7f5;--line-mid: #ff8f40;--line-coolant: #c084fc;--status-ok: #3ccf91;--status-warn: #f0a33a;--status-error: #ff6b57;--status-research: #c792f2;--status-stale: #e3cf4a;--status-info: #56b4e9;--status-off: #6c7786;--chart-cycle: #4cb8e6;--chart-compare: #f0a33a;--chart-dome: #aab5c1;--chart-dome-fill: #4cb8e6;--chart-isotherm: #3a4653;--chart-grid: #1f2832;--chart-axis: #566170;--zone-vap: #dde3ea;--zone-tp: #8f9aa7;--zone-liq: #566270;--shadow: 0 8px 24px rgba(0,0,0,.45), 0 0 0 1px rgba(255,255,255,.04);--brand-red: #f0605d;--brand-blue: #3fa7f5;--brand-cyan: #4cb8e6}:root[data-theme=light]{color-scheme:light;--bg-app: #e9edf1;--bg-panel: #ffffff;--bg-raised: #ffffff;--bg-sunken: #f4f6f8;--bg-hover: #e9eef3;--bg-selected: #d8e9f7;--bg-overlay: #ffffff;--border-subtle: #dce2e8;--border-strong: #b9c3cd;--text-primary: #111820;--text-secondary: #3b4652;--text-muted: #5a6673;--text-disabled: #97a2ad;--accent: #0b6aa2;--accent-strong: #08527e;--accent-weak: #dbecf8;--on-accent: #ffffff;--focus-ring: #0057b8;--canvas-bg: #fbfcfd;--canvas-grid: #e8ecf0;--canvas-component: #1f2933;--canvas-component-fill: #ffffff;--line-high: #d0312d;--line-low: #1570c2;--line-mid: #c4520a;--line-coolant: #7c3aed;--status-ok: #0a7d52;--status-warn: #a35a00;--status-error: #c3331c;--status-research: #8239b8;--status-stale: #7a6800;--status-info: #1f6fa8;--status-off: #7b8794;--chart-cycle: #0b6aa2;--chart-compare: #c06a00;--chart-dome: #3b4652;--chart-dome-fill: #0b6aa2;--chart-isotherm: #cfd6dd;--chart-grid: #e6eaee;--chart-axis: #97a2ad;--zone-vap: #b3bdc8;--zone-tp: #6f7b88;--zone-liq: #26303a;--shadow: 0 8px 24px rgba(16,24,32,.16), 0 0 0 1px rgba(16,24,32,.06);--brand-red: #d0312d;--brand-blue: #1570c2;--brand-cyan: #0b6aa2}@media(prefers-color-scheme:light){:root:not([data-theme]){color-scheme:light;--bg-app: #e9edf1;--bg-panel: #ffffff;--bg-raised: #ffffff;--bg-sunken: #f4f6f8;--bg-hover: #e9eef3;--bg-selected: #d8e9f7;--bg-overlay: #ffffff;--border-subtle: #dce2e8;--border-strong: #b9c3cd;--text-primary: #111820;--text-secondary: #3b4652;--text-muted: #5a6673;--text-disabled: #97a2ad;--accent: #0b6aa2;--accent-strong: #08527e;--accent-weak: #dbecf8;--on-accent: #ffffff;--focus-ring: #0057b8;--canvas-bg: #fbfcfd;--canvas-grid: #e8ecf0;--canvas-component: #1f2933;--canvas-component-fill: #ffffff;--line-high: #d0312d;--line-low: #1570c2;--line-mid: #c4520a;--line-coolant: #7c3aed;--status-ok: #0a7d52;--status-warn: #a35a00;--status-error: #c3331c;--status-research: #8239b8;--status-stale: #7a6800;--status-info: #1f6fa8;--status-off: #7b8794;--chart-cycle: #0b6aa2;--chart-compare: #c06a00;--chart-dome: #3b4652;--chart-dome-fill: #0b6aa2;--chart-isotherm: #cfd6dd;--chart-grid: #e6eaee;--chart-axis: #97a2ad;--zone-vap: #b3bdc8;--zone-tp: #6f7b88;--zone-liq: #26303a;--shadow: 0 8px 24px rgba(16,24,32,.16), 0 0 0 1px rgba(16,24,32,.06);--brand-red: #d0312d;--brand-blue: #1570c2;--brand-cyan: #0b6aa2}}.num,.tnum{font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}:focus-visible{outline:var(--focus-width) var(--focus-style) var(--focus-ring);outline-offset:var(--focus-offset)}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-app);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--fs-sm);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}h1,h2{margin:0;font-weight:var(--fw-semibold)}a{color:var(--accent);text-decoration:none}button,input,select{font:inherit;color:inherit}.app{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;height:100vh;min-width:0;min-height:0}.topbar{display:flex;align-items:center;gap:var(--sp-6);height:42px;padding:0 var(--sp-5);background:var(--bg-panel);border-bottom:1px solid var(--border-strong)}.brand{display:flex;align-items:center;gap:var(--sp-5);color:var(--text-primary);flex:none}.brand img{display:block;height:26px;width:auto}.slogan{color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap}.mainnav{display:flex;height:100%;flex:none}.navlink{display:flex;align-items:center;padding:0 var(--sp-6);color:var(--text-secondary);border-bottom:2px solid transparent;font-weight:var(--fw-medium);white-space:nowrap}.navlink:hover{background:var(--bg-hover);color:var(--text-primary)}.navlink.on{color:var(--text-primary);border-bottom-color:var(--accent)}.topright{margin-left:auto;display:flex;align-items:center;gap:var(--sp-4);flex:none}.chip{padding:var(--sp-2) var(--sp-4);border:1px solid var(--border-strong);background:var(--bg-sunken);color:var(--text-secondary);font-size:var(--fs-xs);white-space:nowrap}.subnav{display:flex;background:var(--bg-panel);border-bottom:1px solid var(--border-subtle);padding:0 var(--sp-5)}.tab{padding:var(--sp-3) var(--sp-6);color:var(--text-secondary);border-bottom:2px solid transparent;font-weight:var(--fw-medium)}.tab:hover{color:var(--text-primary);background:var(--bg-hover)}.tab.on{color:var(--accent-strong);border-bottom-color:var(--accent)}.work{grid-row:3;min-height:0;overflow:hidden}.sitefoot{grid-row:4;display:flex;align-items:center;justify-content:center;gap:var(--sp-6);height:22px;padding:0 var(--sp-5);background:var(--bg-panel);border-top:1px solid var(--border-strong);color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap;overflow:hidden}.sitefoot a{color:var(--text-muted)}.sitefoot a:hover{color:var(--accent-strong)}.legal{line-height:1.7}.legal p,.legal ul,.legal ol{margin:0}.legal ul,.legal ol{padding-left:var(--sp-7)}.legal-h2{font-size:var(--fs-md);margin:var(--sp-4) 0 0}.legal-h3{font-size:var(--fs-sm);margin:var(--sp-3) 0 0}.legal-draft{border:1px solid var(--status-warn);background:var(--bg-panel);padding:var(--sp-4)}.legal-table th,.legal-table td{text-align:left;vertical-align:top}.page{display:grid;grid-template-columns:300px minmax(0,1fr);height:100%;min-height:0}.page.single{grid-template-columns:minmax(0,1fr)}.side{border-right:1px solid var(--border-strong);background:var(--bg-panel);padding:var(--sp-5) var(--sp-5) var(--sp-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--sp-4)}.page-title{font-size:var(--fs-lg)}.page-sub{margin:0;color:var(--text-muted);font-size:var(--fs-xs)}.main{overflow:auto;padding:var(--sp-5);display:flex;flex-direction:column;gap:var(--sp-5);min-width:0}.page.single .main{max-width:880px}.empty{border:1px dashed var(--border-strong);color:var(--text-muted);padding:var(--sp-9);text-align:center}.field{display:flex;flex-direction:column;gap:var(--sp-2)}.field-label{color:var(--text-secondary);font-size:var(--fs-xs)}.field-row{display:flex;align-items:center;gap:var(--sp-3)}.field-unit{flex:none;min-width:56px;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs)}.field-hint{color:var(--text-muted);font-size:var(--fs-xs)}.field-error,.form-errors{color:var(--status-error);font-size:var(--fs-xs)}.form-errors{border:1px solid var(--status-error);padding:var(--sp-3) var(--sp-4)}.input{height:28px;width:100%;min-width:0;padding:0 var(--sp-4);background:var(--bg-sunken);border:1px solid var(--border-strong);border-radius:var(--r-xs);color:var(--text-primary)}.input:hover{border-color:var(--text-muted)}.input.invalid{border-color:var(--status-error)}.input.select{padding-right:var(--sp-2)}.input.compact{width:auto;height:28px}.btn{height:28px;padding:0 var(--sp-5);background:var(--bg-raised);border:1px solid var(--border-strong);border-radius:var(--r-xs);cursor:pointer;white-space:nowrap}.btn:hover:not(:disabled){background:var(--bg-hover)}.btn:disabled{color:var(--text-disabled);cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:var(--fw-medium)}.btn.primary:hover:not(:disabled){background:var(--accent-strong)}.btn.primary:disabled{background:var(--bg-raised);border-color:var(--border-strong);color:var(--text-disabled)}.btn.wide{width:100%;height:32px;margin-top:var(--sp-3)}.btn.compact{height:28px;padding:0 var(--sp-4)}.icon-btn{background:transparent;border:0;color:var(--text-muted);cursor:pointer;font-size:var(--fs-xl);line-height:1;padding:0 var(--sp-3)}.icon-btn:hover{color:var(--text-primary)}.seg{display:flex;border:1px solid var(--border-strong);border-radius:var(--r-xs);overflow:hidden}.seg-btn{flex:1;height:28px;background:var(--bg-sunken);border:0;border-right:1px solid var(--border-strong);cursor:pointer;color:var(--text-secondary)}.seg-btn:last-child{border-right:0}.seg-btn.on{background:var(--accent-weak);color:var(--accent-strong);font-weight:var(--fw-medium)}.chips{border:0;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--sp-3)}.chips legend{padding:0;margin-bottom:var(--sp-3)}.chip-check{display:inline-flex;align-items:center;gap:var(--sp-2);min-height:28px;padding:var(--sp-2) var(--sp-4);border:1px solid var(--border-strong);background:var(--bg-sunken);cursor:pointer;font-size:var(--fs-xs)}.chip-check.on{background:var(--accent-weak);border-color:var(--accent)}.chip-check input{margin:0;accent-color:var(--accent)}.panel{border:1px solid var(--border-strong);background:var(--bg-panel);min-width:0}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--border-subtle);background:var(--bg-raised)}.panel-head h2{font-size:var(--fs-sm)}.panel-body{padding:var(--sp-4) var(--sp-5)}.grid{width:100%;border-collapse:collapse}.grid th,.grid td{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--border-subtle);text-align:left;vertical-align:baseline;font-weight:var(--fw-regular)}.grid thead th{color:var(--text-muted);font-size:var(--fs-xs);border-bottom:1px solid var(--border-strong);white-space:nowrap}.grid tbody th{color:var(--text-secondary)}.grid td.num{text-align:right;white-space:nowrap}.grid.kv th{width:52%}.grid.sat td.num,.grid.states td.num,.grid.cmp td.num{text-align:right}.grid.sat thead th:not(:first-child),.grid.cmp thead th:not(:first-child){text-align:right}.grid.states thead th:nth-child(n+3):nth-child(-n+7){text-align:right}.foot{margin:var(--sp-4) 0 0;color:var(--text-muted);font-size:var(--fs-xs)}.lead{margin:0 0 var(--sp-5);color:var(--text-secondary);font-size:var(--fs-md)}.note{margin:var(--sp-4) 0 0;padding:var(--sp-3) var(--sp-5);border:1px solid var(--border-strong);background:var(--bg-sunken);color:var(--text-secondary)}.note.warn{border-color:var(--status-warn);color:var(--status-warn)}.note.info{border-color:var(--status-info)}.note.stale{margin:0;border-color:var(--status-stale);color:var(--status-stale)}.errlist{margin:var(--sp-4) 0 0;padding-left:var(--sp-7);color:var(--status-warn)}.swatch{display:inline-block;width:10px;height:10px;margin-right:var(--sp-3);vertical-align:baseline}.result-grid{display:grid;grid-template-columns:minmax(380px,1fr) minmax(320px,400px);gap:var(--sp-5);align-items:start}.chart-wrap{border:1px solid var(--border-strong);background:var(--canvas-bg);display:flex;flex-direction:column;min-width:0}.chart-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);border-bottom:1px solid var(--border-subtle);background:var(--bg-raised)}.chart-title{font-weight:var(--fw-semibold)}.chart-readout{color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap}.chart-area{position:relative;height:clamp(300px,46vh,560px)}.chart-area svg{display:block}.chart-empty{padding:var(--sp-7);color:var(--text-muted)}.chart-legend{display:flex;flex-wrap:wrap;gap:var(--sp-5);padding:var(--sp-3) var(--sp-5);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--fs-xs)}.lg:before{content:"";display:inline-block;width:18px;height:0;margin-right:var(--sp-3);vertical-align:middle;border-top:2px solid currentColor}.lg-high:before{border-color:var(--line-high)}.lg-low:before{border-color:var(--line-low)}.lg-thr:before{border-top-style:dashed;border-color:var(--text-secondary)}.lg-isen:before{border-top-style:dotted;border-color:var(--chart-compare)}.ch-grid line{stroke:var(--chart-grid);stroke-width:1}.ch-frame{fill:none;stroke:var(--chart-axis)}.ch-iso{fill:none;stroke:var(--chart-isotherm);stroke-width:1}.ch-dome{fill:none;stroke:var(--chart-dome);stroke-width:1.4}.ch-dashed{stroke-dasharray:4 3}.ch-dome-fill{fill:var(--chart-dome-fill);fill-opacity:.1;stroke:none}.ch-high,.ch-low,.ch-throttle,.ch-isen{fill:none;stroke-width:2;stroke-linejoin:round}.ch-high{stroke:var(--line-high)}.ch-low{stroke:var(--line-low)}.ch-throttle{stroke:var(--text-secondary);stroke-dasharray:6 4}.ch-isen{stroke:var(--chart-compare);stroke-width:1.2;stroke-dasharray:2 3}.ch-cross line{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:3 3}.ch-pt{fill:var(--text-primary);stroke:var(--canvas-bg);stroke-width:1.5}.ch-pt-hollow{fill:var(--canvas-bg);stroke:var(--chart-compare)}.ch-crit{fill:var(--canvas-bg);stroke:var(--chart-dome);stroke-width:1.6}.ch-label{fill:var(--text-primary);font-size:11px;font-weight:var(--fw-medium)}.ch-ticks text,.ch-axis-title{fill:var(--text-muted);font-size:11px}.bar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-5)}.bar-title{color:var(--text-muted);font-size:var(--fs-xs);margin-bottom:var(--sp-3)}.bar-area{width:100%}.bar-area svg{display:block}.bar-label{fill:var(--text-secondary);font-size:11px;font-family:var(--font-mono)}.bar-value{fill:var(--text-primary);font-size:11px}.bar-axis{stroke:var(--chart-axis)}.modal-back{position:fixed;inset:0;z-index:var(--z-modal);background:#0000008c;display:grid;place-items:center}.modal{width:380px;max-width:calc(100vw - 32px);background:var(--bg-overlay);border:1px solid var(--border-strong);box-shadow:var(--shadow)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-4) var(--sp-5);border-bottom:1px solid var(--border-subtle)}.modal-head h2{font-size:var(--fs-md)}.modal-body{padding:var(--sp-5)}.modal-actions{display:flex;gap:var(--sp-4);justify-content:flex-end;margin-top:var(--sp-5)}.login-body{display:flex;flex-direction:column;align-items:center;gap:var(--sp-5)}.qr-box{width:220px;height:220px;display:grid;place-items:center;background:var(--bg-panel);border:1px solid var(--border-strong)}.qr-img{width:200px;height:200px;image-rendering:pixelated;background:#fff;padding:8px}.qr-img.fake{outline:2px dashed var(--status-warn);outline-offset:-2px}.qr-msg{color:var(--text-muted);padding:var(--sp-5);text-align:center}.login-help,.login-fine{margin:0;text-align:center;color:var(--text-secondary)}.login-fine{color:var(--text-muted);font-size:var(--fs-xs)}.consent{display:flex;flex-direction:column;align-items:center;gap:var(--sp-4);width:100%}.consent-docs{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.consent-docs li{display:flex;flex-wrap:wrap;gap:var(--sp-3);align-items:baseline}.consent-docs a{color:var(--accent-strong);text-decoration:underline}.consent-ver{color:var(--text-muted);font-size:var(--fs-xs)}.consent-draft{margin:0;color:var(--status-warn);font-size:var(--fs-xs)}.consent-update{margin:0;font-size:var(--fs-xs);color:var(--text)}.legal-ver{margin:0 0 var(--sp-3);color:var(--text-muted);font-size:var(--fs-xs)}.consent .btn{white-space:normal;height:auto;min-height:32px;text-align:center}.linklike{background:none;border:0;padding:0;color:var(--text-muted);text-decoration:underline;cursor:pointer;font-size:inherit}.legal-notice{position:fixed;right:var(--sp-5);bottom:30px;z-index:40;width:min(360px,calc(100vw - 2 * var(--sp-5)));display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4);background:var(--bg-panel);border:1px solid var(--border-strong);box-shadow:0 4px 16px #0000004d;font-size:var(--fs-xs);color:var(--text-secondary)}.legal-notice p{margin:0}.legal-notice .btn{align-self:flex-end}@media print{.legal-notice{display:none}}.pay-terms{width:100%;padding:var(--sp-4) var(--sp-5);border:1px solid var(--status-warn);background:var(--bg-sunken);font-size:var(--fs-xs);color:var(--text-secondary)}.pay-terms p,.pay-terms ul{margin:0}.pay-terms ul{padding-left:var(--sp-6)}.dev-box{width:100%;border:1px dashed var(--status-warn);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3);align-items:center}.dev-note{color:var(--status-warn);font-size:var(--fs-xs);text-align:center}.toasts{position:fixed;top:52px;right:var(--sp-5);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--sp-3);width:320px}.toast{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);background:var(--bg-overlay);border:1px solid var(--border-strong);border-left:3px solid var(--status-info);box-shadow:var(--shadow)}.toast.warn{border-left-color:var(--status-warn)}.toast.error{border-left-color:var(--status-error)}.note.fail{border-color:var(--status-error);color:var(--text-primary);background:var(--bg-sunken)}.note.fail strong{color:var(--status-error)}.note p{margin:var(--sp-2) 0 0}.note .btn{margin-left:var(--sp-4)}.btn.danger{color:var(--status-error);border-color:var(--status-error)}.btn.primary.danger{background:var(--status-error);color:var(--on-accent)}.muted{color:var(--text-muted)}.plain{margin:var(--sp-3) 0 0;padding-left:var(--sp-7)}.modal.wide{width:520px}.modal.xl{width:780px}.empty.small{padding:var(--sp-5)}.compact-seg{width:150px}.compact-seg .seg-btn{height:24px;font-size:var(--fs-xs)}.reset-btn{background:transparent;border:0;padding:0;color:var(--accent);cursor:pointer;font-size:var(--fs-xs)}.reset-btn:disabled{color:var(--text-disabled);cursor:default}.pro-tag{color:var(--status-warn);font-size:var(--fs-xs)}pre.diag{max-height:160px;overflow:auto;margin:var(--sp-2) 0 0;padding:var(--sp-3);background:var(--bg-app);border:1px solid var(--border-subtle);font-size:var(--fs-xs);white-space:pre-wrap}.page.sim{grid-template-columns:330px minmax(0,1fr)}.page.sim .side{gap:var(--sp-3)}.picker{display:flex;flex-direction:column;gap:var(--sp-3)}.fluid-chip{font:inherit;color:var(--text-primary)}.fluid-chip.off{color:var(--text-disabled);background:transparent;border-style:dashed;cursor:not-allowed;text-decoration:line-through}.reasons,.findings{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--text-secondary)}.reasons li{border-left:2px solid var(--text-disabled);padding-left:var(--sp-3)}.finding{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-3);padding-left:var(--sp-3);border-left:2px solid var(--status-info)}.finding.warn{border-left-color:var(--status-warn)}.finding.prohibit{border-left-color:var(--status-error)}.finding .lvl{font-weight:var(--fw-medium);white-space:nowrap}.finding.warn .lvl{color:var(--status-warn)}.finding.prohibit .lvl{color:var(--status-error)}.unverified{color:var(--text-muted);border:1px solid var(--border-strong);padding:0 var(--sp-2);font-size:var(--fs-xs);white-space:nowrap}.runbox{display:flex;flex-direction:column;gap:var(--sp-2)}.runbox .btn.wide{margin-top:var(--sp-2)}.params-head{display:flex;align-items:baseline;justify-content:space-between;margin-top:var(--sp-3)}.params-head h2{font-size:var(--fs-md)}.pgroup{border-top:1px solid var(--border-subtle);padding-top:var(--sp-3)}.pgroup summary{cursor:pointer;color:var(--text-secondary);font-weight:var(--fw-medium);margin-bottom:var(--sp-3)}.pgroup .field{margin-bottom:var(--sp-4)}.param-head{display:flex;justify-content:space-between;align-items:baseline}.param.changed .input{border-color:var(--accent)}.param .field-row .input{width:120px;flex:none}.grid.ro th{width:55%}.grid.ro tr.changed td,.grid.ro tr.changed th{color:var(--accent-strong)}.was{color:var(--text-muted);font-size:var(--fs-xs);margin-left:var(--sp-2)}.simmain{overflow:hidden;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5)}.simbar{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-4);flex:none}.tabseg{width:260px}.simbar-right{display:flex;align-items:center;gap:var(--sp-3)}.simpane{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3);overflow:auto}.simpane>.note{margin:0;flex:none}.simresult{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--sp-3)}.simresult.stale .kpi-value,.simresult.stale .states td{color:var(--text-muted)}.simresult.stale .kpis{opacity:.7}.indicators{display:flex;flex-wrap:wrap;gap:var(--sp-2) var(--sp-6);margin:0;padding:0;list-style:none;flex:none;font-size:var(--fs-xs)}.ind{display:inline-flex;align-items:baseline;gap:var(--sp-2)}.ind-glyph{font-size:var(--fs-md)}.ind-name{color:var(--text-muted)}.ind-word{font-weight:var(--fw-medium)}.ind.ok .ind-glyph{color:var(--status-ok)}.ind.warn .ind-glyph,.ind.warn .ind-word{color:var(--status-stale)}.ind.fail .ind-glyph,.ind.fail .ind-word{color:var(--status-error)}.ind.off .ind-glyph,.ind.off .ind-word{color:var(--text-muted)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:var(--sp-3);flex:none}.kpi{border:1px solid var(--border-strong);background:var(--bg-panel);padding:var(--sp-2) var(--sp-4);min-width:0}.kpi-label{color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap}.kpi-value{font-size:var(--fs-sm);font-weight:var(--fw-medium);white-space:nowrap}.kpi-sub{color:var(--text-muted);font-size:var(--fs-xs);white-space:nowrap}.simgrid{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);grid-template-rows:minmax(0,1fr);gap:var(--sp-3)}.simgrid>.panel{display:flex;flex-direction:column;min-height:0}.simgrid>.panel>.panel-body{flex:1;min-height:0;padding:0;position:relative}.simright{display:grid;grid-template-rows:minmax(170px,1.1fr) minmax(110px,1fr);gap:var(--sp-3);min-height:0;min-width:0}.simright>.panel{display:flex;flex-direction:column;min-height:0}.simright>.panel>.panel-body{flex:1;min-height:0;overflow:auto;padding:var(--sp-2) var(--sp-3)}.simright>.chart-wrap,.simright>.empty{min-height:0}.simright .chart-area{flex:1;height:auto;min-height:0}.simright .chart-legend{padding:var(--sp-1) var(--sp-4);gap:var(--sp-4);flex-wrap:nowrap;white-space:nowrap;font-size:var(--fs-xs)}.grid.states.sim{font-size:var(--fs-xs)}.grid.states.sim th,.grid.states.sim td{padding:2px var(--sp-3)}.grid.states.sim thead th{position:sticky;top:0;background:var(--bg-panel)}.grid.states.sim tbody tr{cursor:pointer}.grid.states.sim tr.is-hover td,.grid.states.sim tr.is-hover th,.grid.states.sim tr.is-sel td,.grid.states.sim tr.is-sel th{background:var(--accent-weak)}.grid.states.sim thead th:nth-child(n+2):nth-child(-n+6){text-align:right}.ch-pt.is-hl{fill:var(--accent);stroke:var(--accent-strong);stroke-width:2px}.cvwrap{position:absolute;inset:0;display:flex;flex-direction:column}.cv-stage{position:relative;flex:1 1 auto;min-height:0}.cvwrap svg{position:absolute;inset:0;width:100%;height:100%}.cv-bar{flex:none;flex-wrap:wrap;display:flex;align-items:center;gap:var(--sp-5);min-height:30px;padding:0 var(--sp-4) var(--sp-1)}.cv-note{flex:1 1 100%;margin:0;font-size:var(--fs-xs);color:var(--status-warn)}.cv-readout{flex:1 1 auto;min-width:0;display:flex;gap:var(--sp-5);justify-content:center;font-size:12px;color:var(--accent-strong);white-space:nowrap}.cv-readout .mono{color:var(--text-primary)}.cv-bg{fill:var(--canvas-bg)}.cv-grid-dot{fill:var(--canvas-grid)}.cv *{vector-effect:non-scaling-stroke}.cv text,.cv tspan{vector-effect:none}.cv-route{fill:none;stroke-width:var(--lw-pipe, 1.75px);stroke-linejoin:round}.cv-route.coolant{stroke-width:var(--lw-coolant, 1.5px)}.cv-route.bridge{stroke-dasharray:none;stroke-linecap:round}.cv-bridge-bg{fill:none;stroke:var(--canvas-bg);stroke-width:calc(var(--lw-pipe, 1.75px) + 2px);stroke-linecap:round}.cv-leader{stroke:var(--text-muted);stroke-width:1px;stroke-dasharray:3 2}.cv-route.high{stroke:var(--cv-line-high);stroke-dasharray:var(--cv-dash-high)}.cv-arrow.high{fill:var(--cv-line-high)}.cv-route.low{stroke:var(--cv-line-low);stroke-dasharray:var(--cv-dash-low)}.cv-arrow.low{fill:var(--cv-line-low)}.cv-route.mid{stroke:var(--cv-line-mid);stroke-dasharray:var(--cv-dash-mid)}.cv-arrow.mid{fill:var(--cv-line-mid)}.cv-route.neutral{stroke:var(--cv-line-neutral);stroke-dasharray:var(--cv-dash-neutral)}.cv-arrow.neutral{fill:var(--cv-line-neutral)}.cv-route.coolant{stroke:var(--cv-line-coolant);stroke-dasharray:var(--cv-dash-coolant)}.cv-arrow.coolant{fill:var(--cv-line-coolant)}.cv-comp .body{fill:var(--canvas-component-fill);stroke:var(--cv-component);stroke-width:var(--lw-outline, 1.25px)}.cv-comp .sym-b{fill:var(--canvas-component-fill);stroke:var(--cv-component);stroke-width:var(--lw-outline, 1.25px);stroke-linecap:round;stroke-linejoin:round}.cv-comp .sym-f{fill:none;stroke:var(--cv-component);stroke-width:var(--lw-detail, 1px);stroke-linecap:round;stroke-linejoin:round}.cv-comp .sym-f.soft{opacity:.5}.cv-comp .sym-txt{fill:var(--cv-component);font-family:var(--font-sans);font-weight:600;stroke:none}.cv-comp .sym-dot{fill:var(--line-mid);stroke:none}.cv-comp .sym-lead{fill:none;stroke:var(--cv-component);stroke-width:var(--lw-detail, 1px)}.cv-comp .sym-lead.mid{stroke:var(--line-mid);stroke-dasharray:6 4}.cv-comp .sym-lead.coolant{stroke:var(--line-coolant)}.cv-comp .sym-lead.oil{stroke:var(--line-oil, #0f766e);stroke-dasharray:12 3}.cv-comp .sym-lead.air{stroke:var(--text-muted);stroke-dasharray:5 4}.cv-comp .sym-lead.tap{stroke-width:var(--lw-hair, .75px)}.cv-label{fill:var(--text-primary)}.cv-sublabel{fill:var(--text-muted)}.cv-pt{cursor:pointer}.cv-pt circle,.cv-pt .pm-dia{fill:var(--canvas-bg);stroke:var(--cv-component);stroke-width:var(--lw-outline, 1.25px)}.cv-pt .pm.sc,.cv-pt .pm.dot,.cv-pt .pm-half{fill:var(--canvas-component)}.cv-pt .pm-half,.cv-pt .pm.dot{stroke:none}.cv-pt .pm.dot.coolant{fill:var(--line-coolant)}.cv-pt .pm.sup{fill:none;stroke:none}.cv-pt .junction{fill:var(--canvas-component);stroke:none}.cv-pt .ring{fill:none;stroke:none}.cv-pt text{fill:var(--text-secondary)}.cv .cv-label,.cv .cv-sublabel,.cv .cv-pt text,.cv .cv-air text{paint-order:stroke;stroke:var(--bg-panel);stroke-width:var(--halo);stroke-linejoin:round}.cv-pt:hover .pm,.cv-pt.is-hover .pm,.cv-pt:hover .pm-dia,.cv-pt.is-hover .pm-dia{stroke:var(--accent-strong)}.cv-pt:hover .pm.sup,.cv-pt.is-hover .pm.sup,.cv-pt:hover .pm.dot,.cv-pt.is-hover .pm.dot{stroke:none}.cv-pt:hover .pm.sc,.cv-pt.is-hover .pm.sc,.cv-pt:hover .pm.dot,.cv-pt.is-hover .pm.dot,.cv-pt:hover .pm-half,.cv-pt.is-hover .pm-half{fill:var(--accent-strong)}.cv-pt.is-sel .pm,.cv-pt.is-sel .pm-dia{stroke:var(--accent-strong)}.cv-pt.is-sel .pm.sup,.cv-pt.is-sel .pm.dot{stroke:none}.cv-pt.is-sel .pm.sc,.cv-pt.is-sel .pm.dot,.cv-pt.is-sel .pm-half{fill:var(--accent-strong)}.cv-pt.is-sel .ring{stroke:var(--accent);stroke-width:var(--lw-outline, 1.25px)}.cv-pt.is-sel text,.cv-pt.is-hover text{fill:var(--accent-strong);font-weight:700}.cv-tag{pointer-events:none}.cv-tag rect{fill:var(--bg-overlay);stroke:var(--border-strong);stroke-width:1px}.cv-tag text{fill:var(--text-secondary)}.cv-tag .v{fill:var(--text-primary)}.cv-ptag text{fill:var(--text-muted);paint-order:stroke;stroke:var(--bg-panel);stroke-linejoin:round}.cv-ptag.is-sel text,.cv-ptag.is-hover text{fill:var(--accent-strong)}[data-folded]{display:none}.cv-air path{fill:none;stroke:var(--cv-line-air);stroke-width:var(--lw-air, 1.25px);stroke-dasharray:var(--cv-dash-air)}.cv-air path.head{fill:var(--cv-line-air);stroke:none;stroke-dasharray:none}.cv-air text{fill:var(--cv-line-air)}.cvwrap.is-stale .cv-tag text,.cvwrap.is-stale .cv-ptag text,.cvwrap.is-stale .cv-tag .v{fill:var(--text-muted)}.cvwrap.is-stale .cv-tag,.cvwrap.is-stale .cv-ptag{opacity:.55}.cvwrap.is-stale .cv-tag rect{stroke-dasharray:3 2;stroke:var(--status-stale)}.cv-legend{display:flex;gap:var(--sp-5);font-size:var(--fs-xs);color:var(--text-muted);pointer-events:none}.cv-legend .lg:before{border-top-color:var(--lg-color)}.cv-legend .lg.dashed:before{border-top-style:dashed}.cv-folded{pointer-events:auto;cursor:help}.sweep{display:flex;flex-direction:column;gap:var(--sp-3)}.sweep-controls{display:grid;grid-template-columns:minmax(200px,2fr) minmax(90px,1fr) minmax(90px,1fr) minmax(90px,.8fr) auto;gap:var(--sp-4);align-items:end}.sweep-info{display:flex;gap:var(--sp-5);flex-wrap:wrap}.sweep-info .field-hint,.sweep-info .field-error{font-size:var(--fs-xs)}.sweep-charts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}.sweep-charts.dim,.grid.sweep-table.dim{opacity:.55}.linechart{border:1px solid var(--border-strong);background:var(--canvas-bg);display:flex;flex-direction:column}.linechart-title{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--border-subtle);background:var(--bg-raised);font-size:var(--fs-xs);font-weight:var(--fw-medium)}.linechart-area{height:clamp(110px,18vh,200px)}.linechart-area svg{display:block}.lc-line{fill:none;stroke:var(--chart-cycle);stroke-width:2px}.lc-pt{fill:var(--chart-cycle);stroke:var(--canvas-bg);stroke-width:1.5px}.lc-pt.hollow{fill:var(--canvas-bg);stroke:var(--status-warn);stroke-width:2px}.lc-gap line{stroke:var(--status-error);stroke-width:1px;stroke-dasharray:3 3}.lc-gap path{fill:none;stroke:var(--status-error);stroke-width:1.8px}.grid.sweep-table td.why{white-space:normal;color:var(--text-secondary);font-size:var(--fs-xs)}.grid.sweep-table tr.gap td,.grid.sweep-table tr.gap th{color:var(--status-error)}.grid.sweep-table tr.gap td.why{color:var(--text-secondary)}.page.single.wide .main{max-width:1100px}.grid.cases td.actions{display:flex;gap:var(--sp-3);flex-wrap:wrap}.grid.cases .case-name{color:var(--text-primary);font-weight:var(--fw-medium)}.grid.pricing th,.grid.pricing td{padding:var(--sp-3) var(--sp-4);vertical-align:top}.grid.pricing thead th.me{color:var(--accent-strong);border-bottom-color:var(--accent)}.grid.pricing .here{font-size:var(--fs-xs)}.pricing-notes{color:var(--text-secondary);margin-bottom:var(--sp-5)}.main.fit{overflow:hidden;gap:var(--sp-3);padding:var(--sp-4) var(--sp-5)}.main.fit>.note{flex:none;margin:0}.result-fit{flex:1;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:var(--sp-3)}.result-fit .result-grid{min-height:0;align-items:stretch;grid-template-columns:minmax(0,1fr) minmax(320px,400px);gap:var(--sp-3)}.result-fit .chart-wrap{height:100%;min-height:0}.result-fit .chart-area{flex:1;height:auto;min-height:0}.result-fit .result-grid>.panel{min-height:0;display:flex;flex-direction:column}.result-fit .result-grid>.panel>.panel-body{flex:1;min-height:0;overflow:auto}.result-fit .panel-body{padding:var(--sp-2) var(--sp-4)}.result-fit .grid th,.result-fit .grid td{padding:2px var(--sp-4)}.result-fit .foot{margin:var(--sp-2) 0 0}.result-fit .chart-legend{padding:var(--sp-2) var(--sp-4)}.cv-zoom{margin-left:auto;display:flex;align-items:center;gap:var(--sp-2);font-size:var(--fs-xs)}.cv-zoom .btn{height:24px;padding:0 var(--sp-3)}.cv-zl{min-width:34px;text-align:center;color:var(--text-secondary)}.grid.states.sim th,.grid.states.sim td{white-space:nowrap}.legend-note{margin:0}.kpi.wide{grid-column:span 2}.kpi-label{white-space:nowrap}.info-mark{margin-left:var(--sp-2);color:var(--accent);cursor:help;font-size:var(--fs-xs);font-style:normal}.ph{white-space:nowrap}.ph-glyph{display:inline-block;width:1.2em;margin-right:var(--sp-1);text-align:center;color:var(--text-secondary)}.phase-legend{white-space:nowrap}.more{position:relative}.more-menu{position:absolute;right:0;top:calc(100% + var(--sp-3));z-index:var(--z-popover);display:flex;flex-direction:column;gap:var(--sp-3);min-width:250px;padding:var(--sp-4);background:var(--bg-overlay);border:1px solid var(--border-strong);box-shadow:var(--shadow)}.more-row{display:flex;align-items:center;gap:var(--sp-3)}.restabs{flex:none;width:min(100%,360px)}.restab-panels{position:relative;flex:1;min-height:180px}.restab-panel{position:absolute;inset:0;visibility:hidden;border:1px solid var(--border-strong);background:var(--bg-panel);min-width:0}.restab-panel.on{visibility:visible}.restab-panel.scroll{overflow:auto;padding:var(--sp-2) var(--sp-4)}.restab-panel>.chart-wrap{height:100%;border:0}.restab-panel>.chart-wrap .chart-area{flex:1;height:auto;min-height:0}.restab-panel>.empty{border:0;height:100%}.restab-panel .panel{border:0}.restab-panel .panel-head{display:none}.restab-panel .panel-body{padding:0}.cyclekpis{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));flex:none;display:grid;gap:var(--sp-3)}@media(max-width:1200px){.topbar{gap:var(--sp-5);padding:0 var(--sp-4)}.slogan{display:none}.navlink{padding:0 var(--sp-5)}.topright{gap:var(--sp-3);min-width:0}.chip{overflow:hidden;text-overflow:ellipsis}.page,.page.sim{grid-template-columns:280px minmax(0,1fr)}.main{padding:var(--sp-4)}.toasts{width:280px}.page.sim.compact{--simbar-h: 40px;grid-template-columns:minmax(0,1fr);position:relative}.page.sim.compact .simmain{padding:5px var(--sp-4) var(--sp-3);gap:var(--sp-3)}.page.sim.compact .simbar{height:30px;gap:var(--sp-3);justify-content:flex-start}.page.sim.compact .simbar-right{margin-left:auto;min-width:0}.page.sim.compact .tabseg{width:190px;flex:none}.page.sim.compact .tabseg .seg-btn{white-space:nowrap;padding:0 var(--sp-2)}.page.sim.compact .runbox.inbar{flex-direction:row;align-items:center;gap:var(--sp-3);min-width:0}.page.sim.compact .runbox.inbar .field-hint{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.page.sim.compact .runerrors:empty{display:none}.page.sim.compact .runerrors{flex:none}.page.sim.compact .side.drawer{position:absolute;left:0;top:var(--simbar-h);bottom:0;width:340px;max-width:92%;z-index:30;visibility:hidden;border-right:1px solid var(--border-strong);box-shadow:var(--shadow)}.page.sim.compact .side.drawer.open{visibility:visible}.drawer-scrim{position:absolute;left:0;right:0;top:var(--simbar-h);bottom:0;z-index:29;background:#00000059}.params-toggle.on{border-color:var(--accent);color:var(--accent-strong)}.simresult.compact{gap:var(--sp-3)}.simresult.compact .indicators{gap:var(--sp-1) var(--sp-5)}.simresult.compact .kpis{grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:var(--sp-2)}.simresult.compact .kpi{padding:var(--sp-1) var(--sp-3)}.main.fit{padding:var(--sp-3) var(--sp-4)}}@media(max-width:1200px){.resbar{display:flex;flex:none;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-5)}.resbar .restabs{width:340px;flex:none}.resbar .indicators{flex:1;min-width:0}}@media(max-width:1200px){.simresult.compact .kpi-sub{display:none}.simresult.compact .kpi.wide .kpi-sub{display:block}}@media(max-width:1200px){.simresult.compact .kpi.wide{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"l s" "v v";column-gap:var(--sp-4);align-content:start}.simresult.compact .kpi.wide .kpi-label{grid-area:l}.simresult.compact .kpi.wide .kpi-sub{grid-area:s;overflow:hidden;text-overflow:ellipsis}.simresult.compact .kpi.wide .kpi-value{grid-area:v}}@media(max-width:1200px){.simresult.compact .kpi[data-testid=kpi-phigh]{grid-column:auto}.simresult.compact .kpi-label{white-space:normal}}.notes-fold summary{cursor:pointer;min-height:20px}.notes-fold[open] summary{margin-bottom:var(--sp-2)}.simresult.compact>.note{margin:0;flex:none}.toolresult.stale .num,.toolresult.stale .kpi-value,.toolresult.stale td{color:var(--text-muted)}.toolresult.stale .bar-grid,.toolresult.stale .chart-area,.toolresult.stale .cvwrap{opacity:.7}.note.stale.toolnote{margin-bottom:var(--sp-4)}.buy{margin:var(--sp-4) 0;border:1px solid var(--border-strong);background:var(--bg-sunken);padding:var(--sp-4) var(--sp-5)}.buy-head{font-weight:600;margin-bottom:var(--sp-3)}.buy-now{font-weight:400;color:var(--text-secondary)}.buy-row{display:flex;gap:var(--sp-5);flex-wrap:wrap}.buy-card{display:grid;grid-template-columns:auto auto auto auto;align-items:center;gap:var(--sp-4);border:1px solid var(--border-subtle);background:var(--bg-panel);padding:var(--sp-3) var(--sp-4)}.buy-title{font-weight:600}.buy-price{font-size:var(--fs-md)}.buy-days{color:var(--text-muted);font-size:var(--fs-xs)}.buy-fine{margin:var(--sp-3) 0 0;color:var(--text-secondary);font-size:var(--fs-xs)}.pay-body{display:grid;grid-template-columns:minmax(0,1fr) 236px;align-items:start;gap:var(--sp-4) var(--sp-5)}.pay-body>.pay-amount,.pay-body>.pay-done{grid-column:1 / -1;text-align:center;justify-self:center}@media(max-width:720px){.pay-body{grid-template-columns:minmax(0,1fr)}}.pay-side{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3)}.pay-amount{font-size:var(--fs-md)}.pay-days{color:var(--text-muted);font-size:var(--fs-xs)}.pay-qr{width:196px;height:196px;background:#fff}.qr-svg{display:block}.pay-done{display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center}.pay-done-title{font-size:var(--fs-md);color:var(--status-ok);font-weight:600}.pay-fine{color:var(--text-muted);font-size:var(--fs-xs)}.modal{max-height:calc(100vh - 24px);overflow-y:auto}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.export-group{position:relative;display:inline-flex;align-items:center;gap:var(--sp-3)}.export-group .btn.is-blocked{opacity:.55;cursor:not-allowed}.export-pop{position:absolute;right:0;top:calc(100% + 4px);z-index:var(--z-popover);width:320px;margin:0;display:flex;flex-direction:column;gap:var(--sp-3);align-items:flex-start;background:var(--bg-overlay);box-shadow:var(--shadow);white-space:normal}.report-page{height:100%;overflow:auto;padding:var(--sp-5);display:flex;flex-direction:column;align-items:center;gap:var(--sp-5)}.report-toolbar{width:min(100%,210mm);display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap}.report-sheet{width:min(100%,210mm);flex:none;background:var(--bg-panel);border:1px solid var(--border-strong);padding:12mm 15mm;font-size:13px;line-height:1.5;display:flex;flex-direction:column;gap:10px}.report-sheet .rhead{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;border-bottom:2px solid var(--accent);padding-bottom:8px}.rbrand-light{display:none}:root[data-theme=light] .rbrand-dark{display:none}:root[data-theme=light] .rbrand-light{display:inline}.sweep-export{display:flex;justify-content:flex-end;min-height:0}.report-sheet .rhead-title{text-align:right}.report-sheet .rhead h1{font-size:20px;line-height:1.2;margin:0}.report-sheet .rid{color:var(--text-secondary);font-size:13px}.rsec{break-inside:avoid}.rsec h2{font-size:15px;margin:6px 0;border-bottom:1px solid var(--border-strong);padding-bottom:3px}.rsec-n{display:inline-block;min-width:1.4em;color:var(--accent-strong);font-family:var(--font-mono)}.report-sheet .grid th,.report-sheet .grid td{padding:2px 6px;font-size:12px}.report-sheet .grid thead th,.report-sheet .foot{font-size:12px}.report-sheet .rkv th{width:26%}.report-sheet .rkv td{text-align:left}.report-sheet .brk{word-break:break-all;font-size:11px}.report-sheet .rinputs .rgroup th{background:var(--bg-sunken);color:var(--text-secondary);font-weight:var(--fw-semibold)}.report-sheet .rinputs tr.changed th,.report-sheet .rinputs tr.changed td{background:var(--accent-weak);font-weight:var(--fw-semibold)}.report-sheet .chg{color:var(--accent-strong);font-weight:var(--fw-semibold);white-space:nowrap}.report-sheet td.bad{color:var(--status-error);font-weight:var(--fw-semibold)}.report-sheet .note-cell{color:var(--text-secondary);font-size:12px}.rsweep-axis{margin:6px 0 0}.rsweep .why{font-size:12px;color:var(--text-secondary)}.rsweep tr.gap td{background:var(--bg-sunken)}.rbanners{display:flex;flex-direction:column;gap:6px;break-inside:avoid}.rbanner{display:flex;gap:10px;align-items:baseline;padding:8px 10px;border:3px solid var(--status-error);background:var(--bg-panel);font-size:14px;font-weight:var(--fw-semibold)}.rbanner.warn{border-color:var(--status-warn)}.rbanner-tag{flex:none;color:var(--status-error);white-space:nowrap}.rbanner.warn .rbanner-tag{color:var(--status-warn)}.rbanner-foot{font-size:12px;color:var(--text-secondary)}.rfig{position:relative;width:100%;break-inside:avoid}.rfig-diagram{height:400px;border:1px solid var(--border-strong)}.rfig-ph .chart-area{height:340px}.report-sheet .cv-zoom{display:none}.report-sheet .cv-legend,.report-sheet .cv-legend span{font-size:12px}.report-sheet .ch-label,.report-sheet .ch-ticks text,.report-sheet .ch-axis-title{font-size:12px}.rcharts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rcharts .linechart-area{height:150px}.report-sheet .ind-name,.report-sheet .ind-word{font-size:12px}@media print{@page{size:A4 portrait;margin:12mm}:root,:root[data-theme=dark],:root[data-theme=light]{color-scheme:light;--bg-app: #ffffff;--bg-panel: #ffffff;--bg-raised: #ffffff;--bg-sunken: #f4f6f8;--bg-hover: #e9eef3;--bg-selected: #d8e9f7;--bg-overlay: #ffffff;--border-subtle: #dce2e8;--border-strong: #b9c3cd;--text-primary: #111820;--text-secondary: #3b4652;--text-muted: #5a6673;--text-disabled: #97a2ad;--accent: #0b6aa2;--accent-strong: #08527e;--accent-weak: #dbecf8;--on-accent: #ffffff;--focus-ring: #0057b8;--canvas-bg: #fbfcfd;--canvas-grid: #e8ecf0;--canvas-component: #1f2933;--canvas-component-fill: #ffffff;--line-high: #d0312d;--line-low: #1570c2;--line-mid: #c4520a;--line-coolant: #7c3aed;--status-ok: #0a7d52;--status-warn: #a35a00;--status-error: #c3331c;--status-research: #8239b8;--status-stale: #7a6800;--status-info: #1f6fa8;--status-off: #7b8794;--chart-cycle: #0b6aa2;--chart-compare: #c06a00;--chart-dome: #3b4652;--chart-dome-fill: #0b6aa2;--chart-isotherm: #cfd6dd;--chart-grid: #e6eaee;--chart-axis: #97a2ad;--zone-vap: #b3bdc8;--zone-tp: #6f7b88;--zone-liq: #26303a;--shadow: none}html,body,#root{height:auto;background:#fff}.app{display:block;height:auto}.topbar,.subnav,.sitefoot,.toasts,.modal-back,.no-print{display:none!important}.work{overflow:visible;height:auto}.report-page{height:auto;overflow:visible;padding:0;display:block}.report-sheet{width:100%;border:0;padding:0;font-size:12px;-webkit-print-color-adjust:exact;print-color-adjust:exact}.rbanner,.rinputs tr.changed th,.rinputs tr.changed td,.rinputs .rgroup th,.ch-dome-fill,.rfig{-webkit-print-color-adjust:exact;print-color-adjust:exact}.rbrand-dark{display:none!important}.rbrand-light{display:inline!important}.rsec h2{break-after:avoid}table,tr,.rfig,.rbanner{break-inside:avoid}}
