:root{--bg: #0a0f18;--bg-gradient: linear-gradient(180deg, rgba(8, 12, 20, .88), rgba(8, 11, 18, .94));--bg-panel: linear-gradient(180deg, rgba(16, 20, 33, .56), rgba(10, 13, 22, .7));--bg-panel-strong: linear-gradient(180deg, rgba(13, 17, 29, .46), rgba(10, 12, 20, .68));--bg-card: rgba(15, 18, 30, .42);--bg-card-strong: linear-gradient(180deg, rgba(123, 188, 255, .24), rgba(14, 18, 30, .48)), radial-gradient(circle at top right, rgba(97, 210, 255, .2), transparent 34%);--bg-input: linear-gradient(180deg, rgba(10, 13, 23, .84), rgba(10, 12, 20, .9));--border: rgba(79, 79, 102, .48);--border-strong: rgba(123, 188, 255, .44);--text: #ebe7e1;--text-strong: rgba(235, 231, 225, .92);--text-soft: #a3a0af;--text-faint: #7f7a8d;--accent: #7bbcff;--accent-2: #61d2ff;--accent-warn: #f0a06e;--accent-danger: #ff8d85;--shadow: 0 28px 80px rgba(0, 0, 0, .34);--shadow-soft: 0 14px 36px rgba(0, 0, 0, .22);--serif: "Instrument Serif", Georgia, serif;--sans: "DM Sans", sans-serif;--mono: "JetBrains Mono", monospace;--radius: 0px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{background:radial-gradient(circle at 14% 10%,rgba(83,163,255,.24),transparent 30%),radial-gradient(circle at 82% 14%,rgba(92,221,255,.18),transparent 24%),radial-gradient(circle at 50% 84%,rgba(67,112,255,.14),transparent 34%),var(--bg-gradient);color:var(--text);font-family:var(--sans);overflow-x:hidden;color-scheme:dark}body[data-theme=dark]{background:radial-gradient(circle at 18% 12%,rgba(61,122,205,.18),transparent 28%),radial-gradient(circle at 78% 20%,rgba(61,156,205,.12),transparent 24%),linear-gradient(180deg,#08101a,#090d15 68%,#080c13)}body[data-theme=light]{--bg: #f4efe6;--bg-panel: linear-gradient(180deg, rgba(255, 252, 247, .9), rgba(244, 236, 224, .82));--bg-panel-strong: linear-gradient(180deg, rgba(255, 252, 247, .92), rgba(246, 238, 226, .84));--bg-card: linear-gradient(180deg, rgba(255, 255, 255, .76), rgba(248, 242, 233, .68));--bg-card-strong: linear-gradient(180deg, rgba(87, 140, 255, .2), rgba(255, 255, 255, .76)), radial-gradient(circle at top right, rgba(74, 168, 255, .16), transparent 34%);--bg-input: linear-gradient(180deg, rgba(255, 255, 255, .86), rgba(245, 238, 228, .86));--border: rgba(107, 137, 189, .24);--border-strong: rgba(87, 140, 255, .32);--text: #202634;--text-strong: rgba(27, 34, 47, .92);--text-soft: #5a6274;--text-faint: #768196;--accent: #4b81e6;--accent-2: #248fc4;--shadow: 0 18px 54px rgba(78, 96, 128, .14);--shadow-soft: 0 10px 24px rgba(78, 96, 128, .1);background:radial-gradient(circle at 14% 10%,rgba(91,142,255,.1),transparent 24%),radial-gradient(circle at 80% 14%,rgba(87,173,255,.1),transparent 22%),linear-gradient(180deg,#fdfaf5,#f2ebdf 70%,#efe7da);color-scheme:light}a{color:var(--accent);text-decoration:none}button,input,select{font:inherit;color:inherit}button{border:0;background:none}#bg-canvas-v2{position:fixed;inset:0;width:100vw;height:100vh;opacity:.64;pointer-events:none;z-index:0;transition:opacity .3s ease}#bg-canvas-v2[data-active=false]{opacity:0}.app-shell{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-columns:minmax(560px,1.02fr) minmax(460px,.98fr);gap:clamp(18px,2vw,28px);padding:clamp(16px,2vw,28px)}.panel,.field-card,.control-block,.advanced-panel,.advanced-card,.metric-card,.warning-card{border:1px solid var(--border);border-radius:var(--radius)}.panel{min-width:0;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;padding:clamp(12px,1.4vw,20px);background:var(--bg-panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.panel-inputs{gap:6px;padding-top:10px}.panel-results{gap:6px;background:var(--bg-panel-strong)}.hero-block{position:relative;display:block;margin-top:0;margin-bottom:6px;padding-top:2px;padding-left:2px;padding-right:min(34vw,320px)}.hero-top-row{position:absolute;top:0;right:0;display:flex;justify-content:flex-end;align-items:flex-start;min-height:0;gap:14px;margin-bottom:0}.theme-dock{display:grid;gap:5px;justify-items:end;align-content:start}.theme-label,.eyebrow,.block-label,.metric-label,.field-label,.warning-title,.chart-axis-label,.chart-callout-kicker{font-family:var(--mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase}.theme-label,.eyebrow{color:var(--accent)}.eyebrow-soft{color:var(--accent-2)}.theme-switch{display:inline-flex;flex-wrap:wrap;gap:6px;padding:6px;background:linear-gradient(180deg,#1219286b,#0a0d1799);border:1px solid rgba(104,149,214,.34);box-shadow:var(--shadow-soft)}.theme-chip,.advanced-toggle,.segment,.custom-select-trigger,.custom-select-option{cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,transform .18s ease}.theme-chip{padding:7px 11px;border:1px solid transparent;color:var(--text-soft);font-size:12px;font-weight:600;letter-spacing:.04em}.theme-chip.is-active,.segment.is-active,.custom-select-option.is-active{border-color:var(--border-strong);background:linear-gradient(180deg,#7bbcff33,#61d2ff14);color:var(--text)}.theme-chip:hover,.segment:hover,.custom-select-option:hover,.advanced-toggle:hover{transform:translateY(-1px)}h1{font-family:var(--serif);font-size:clamp(40px,4vw,60px);font-weight:400;line-height:1;letter-spacing:-.03em;white-space:nowrap;padding-top:0;transform:none}.title-accent{color:var(--accent)}.results-copy,.field-preview,.field-error,.metric-sub,.warning-copy,.segment-meta{color:var(--text-soft)}.results-copy,.warning-copy,.field-preview,.metric-sub{font-size:14px;line-height:1.4}.field-preview:empty,.field-error:empty,.metric-sub:empty{display:none}.controls,.advanced-panel{display:grid;gap:6px}.advanced-controls-bar{display:flex;justify-content:flex-start;margin-top:0}.advanced-toggle{padding:8px 12px;border:1px solid var(--border-strong);background:linear-gradient(180deg,#0f131f80,#0a0c15b3);color:var(--text-strong);font-weight:600}.advanced-toggle.is-active{background:linear-gradient(180deg,#7bbcff29,#0f131fad)}.calculator-mode-block,.control-block,.advanced-panel,.advanced-card,.field-card,.metric-card,.warning-card{background:var(--bg-card);box-shadow:var(--shadow-soft)}.calculator-mode-block{padding-top:16px;padding-bottom:12px}.control-block,.advanced-panel,.field-card{padding:9px 11px 10px}.advanced-card{display:grid;align-content:start;gap:8px;padding:11px 14px 12px}.block-header,.mini-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.block-header{padding-top:2px;padding-left:1px}.calculator-mode-block>.block-header{padding-top:1px;padding-left:2px;margin-bottom:6px}.advanced-card>.mini-header{padding-top:1px;padding-left:1px}.field-grid{display:grid;gap:8px}.field-grid-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);align-items:start;justify-content:start}.top-left-stack{display:grid;gap:6px}.field-grid-reverse{grid-template-columns:minmax(320px,560px) minmax(280px,460px);align-items:start;justify-content:start}.field-grid-reverse .control-block{grid-column:1 / 2}.field-grid-top>.top-left-stack,.field-grid-top>.field-card{width:100%;max-width:390px;justify-self:start}.field-grid-reverse>.field-card,.field-grid-reverse>.control-block{width:100%;justify-self:start}.field-grid-top>.gpu-panel-card,.field-grid-reverse>.gpu-panel-card{width:100%;max-width:none;justify-self:stretch;grid-column:1 / -1}.field-card{display:grid;gap:5px}.field-card>.field-label{display:block;padding-top:2px;padding-left:1px}.gpu-panel-card{gap:8px;padding-bottom:12px}.gpu-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.gpu-panel-option{display:grid;gap:10px;min-height:94px;padding:10px 12px 11px;border:1px solid rgba(95,128,176,.32);background:linear-gradient(180deg,#0c101cb3,#0a0c14db),radial-gradient(circle at top right,rgba(123,188,255,.06),transparent 38%);color:var(--text);text-align:left;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.gpu-panel-option:hover{transform:translateY(-1px);border-color:#7bbcff47}.gpu-panel-option.is-active{border-color:var(--border-strong);background:linear-gradient(180deg,#7bbcff38,#61d2ff14),linear-gradient(180deg,#0c101cad,#0a0c14d6);box-shadow:inset 0 0 0 1px #7bbcff14}.gpu-panel-option-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.gpu-panel-title{font-size:18px;font-weight:600;line-height:1}.gpu-panel-series{color:var(--text-faint);font-size:11px;line-height:1;letter-spacing:.08em;text-transform:uppercase}.gpu-panel-chip-row{display:flex;flex-wrap:wrap;gap:6px}.gpu-panel-chip{display:inline-flex;align-items:center;min-height:22px;padding:0 7px;border:1px solid rgba(95,128,176,.24);background:#080c166b;color:var(--text-soft);font-size:11px;font-weight:600;line-height:1;letter-spacing:.03em;white-space:nowrap}.gpu-panel-foot{color:var(--text-soft);font-size:12px;line-height:1.2}.field-card input:not([type=range]),.custom-select-trigger{min-height:44px;width:100%;padding:9px 11px;border:1px solid rgba(95,128,176,.32);background:var(--bg-input);color:var(--text);font-size:16px;font-weight:500;outline:none}.field-card input:not([type=range]):focus,.mini-value-input:focus,.custom-select-trigger:focus{border-color:var(--border-strong)}.field-card input::placeholder,.mini-value-input::placeholder{color:var(--text-faint)}.field-error{min-height:18px;color:var(--accent-danger)}.custom-select{position:relative}.custom-select-trigger{position:relative;padding-right:44px;text-align:left}.custom-select-trigger:after{content:"⌄";position:absolute;right:14px;top:50%;transform:translateY(-50%);color:var(--accent);font-size:18px;line-height:1}.custom-select-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:20;display:grid;gap:4px;padding:6px;border:1px solid var(--border-strong);background:linear-gradient(180deg,#0a0d17f5,#0a0c14fa);box-shadow:var(--shadow-soft)}.custom-select-menu[hidden]{display:none}.custom-select-option{display:grid;gap:4px;padding:10px 12px;border:1px solid transparent;text-align:left}.custom-select-option-title{font-size:16px;font-weight:600}.custom-select-option-meta{color:var(--text-soft);font-size:12px;line-height:1.35}.segment{display:grid;gap:4px;min-height:52px;padding:8px 10px;border:1px solid var(--border);background:linear-gradient(180deg,#0c0f198c,#0a0c14b8);color:var(--text);text-align:left}.segment:disabled{opacity:.55;cursor:not-allowed;transform:none}.segment-title{font-size:14px;font-weight:600;line-height:1.25;display:block;max-width:22ch}.segment-meta{font-size:12px;line-height:1.3}.segmented-grid{display:grid;gap:6px}.calculator-mode-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calculator-mode-grid .segment{min-height:48px;padding:6px 14px;display:flex;align-items:center}.calculator-mode-grid .segment-title{font-size:13px;line-height:1.12;max-width:none;white-space:nowrap}.precision-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mode-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.advanced-layout{display:grid;grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:6px;align-items:start}.reverse-advanced-layout{grid-template-columns:minmax(240px,440px) minmax(320px,720px);align-items:start;justify-content:start}.advanced-stack,.reverse-assumptions-stack{display:grid;gap:6px;align-content:start;align-items:start}.reverse-assumptions-card{align-content:start}.reverse-assumptions-card .field-card{gap:6px}.expected-multiplier-card{width:min(100%,340px);justify-self:start}.advanced-card-slider{gap:12px}.advanced-card .block-label{color:var(--text-strong)}.advanced-card-slider .block-label,.constraint-card .block-label{font-size:13px;letter-spacing:.14em}.mini-value,.inline-mini-value{font-size:clamp(18px,2vw,26px);color:var(--accent)}.mini-value-input{width:72px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:right;outline:none}.inline-mini-value .mini-value-input{width:80px}.util-target-card .inline-mini-value{justify-self:end;display:inline-flex;align-items:baseline;gap:4px;margin-bottom:-2px}.util-target-card{grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:12px;row-gap:6px}.util-target-card .field-label{grid-column:1 / 2}.util-target-card .inline-mini-value .mini-value-input{width:56px}.util-target-card>input[type=range]{grid-column:1 / -1}.util-target-card .field-preview,.util-target-card .field-error{grid-column:1 / -1}.expected-multiplier-card input[type=text]{width:min(100%,220px)}input[type=range]{width:100%;accent-color:var(--accent);background:transparent}.constraint-input,.reverse-time-input{display:grid;grid-template-columns:minmax(0,1fr) minmax(128px,.58fr);gap:6px;align-items:end}.reverse-time-card .reverse-time-input{grid-template-columns:minmax(110px,190px) minmax(150px,190px)}.reverse-gpu-count-card .field-preview{max-width:30ch}.reverse-gpu-count-card{max-width:460px}.constraint-input-single{grid-template-columns:minmax(0,1fr)}.constraint-card{display:grid;align-content:start;gap:10px}.constraint-card .mode-grid{gap:8px}.constraint-card .segment{min-height:66px;padding:11px 12px;align-content:start}.results-header{display:grid;gap:2px}.primary-grid,.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.primary-grid{gap:8px}.detail-grid{gap:6px}.metric-card{display:grid;gap:7px;padding:11px 13px 12px}.calculator-mode-block .segment{text-align:left}.advanced-stack>.advanced-card,.reverse-assumptions-stack>.field-card,.reverse-assumptions-stack>.advanced-card{height:auto}.metric-card-primary{background:var(--bg-card-strong);border-color:#7bbcff4d}.metric-label{color:var(--text-strong)}.metric-value{font-family:var(--sans);font-size:clamp(26px,2.5vw,38px);font-weight:500;line-height:1;letter-spacing:-.03em;font-variant-numeric:tabular-nums lining-nums}.metric-value-small{font-size:clamp(18px,1.6vw,24px)}.warning-stack{display:grid;gap:8px}.warning-card{padding:14px 16px;background:linear-gradient(180deg,#20191475,#1712118f);border-color:#f0a06e59}.warning-card.is-danger{background:linear-gradient(180deg,#2412127a,#1a0e109e);border-color:#ff8d855c}.warning-title{color:var(--text-strong);margin-bottom:4px}.chart-card{flex:1 1 auto;min-height:260px;gap:8px;overflow:hidden;grid-template-rows:auto minmax(0,1fr)}.chart-header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.chart-legend{display:inline-flex;flex-wrap:wrap;gap:8px}.chart-legend-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid rgba(95,128,176,.32);background:linear-gradient(180deg,#1219286b,#0a0d1799);color:var(--text-soft)}.chart-legend-dot{width:10px;height:10px;background:var(--accent)}.chart-legend-pill-muted .chart-legend-dot{background:transparent;border:1px dashed var(--text-soft)}.chart-shell,.schedule-chart{min-height:0;height:100%}.schedule-chart{min-height:190px;position:relative}.schedule-chart-caption{position:absolute;z-index:1;color:var(--text-soft);font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;pointer-events:none}.schedule-chart-caption-y{top:2px;left:2px}.schedule-chart-caption-x{right:6px;bottom:4px;text-align:right}.schedule-chart-empty{height:100%;display:grid;place-items:center;color:var(--text-soft);font-size:15px}.schedule-chart-svg{display:block;width:100%;height:100%}.chart-grid,.chart-axis,.chart-floor,.chart-line,.chart-line-glow,.chart-area,.chart-marker,.chart-marker-core,.chart-callout{vector-effect:non-scaling-stroke}.chart-grid{stroke:#818ca429;stroke-width:1}.chart-grid-vertical{opacity:.65}.chart-axis{stroke:#c4ccdb80;stroke-width:1.3}.chart-floor{stroke:#f0f5ff80;stroke-width:1.2;stroke-dasharray:6 6}.chart-floor-tag{fill:#0a0e18e0;stroke:#5f80b047}.chart-floor-label,.chart-axis-value{fill:var(--text-soft);font-family:var(--mono);font-size:11px;letter-spacing:.01em}.chart-line-glow{fill:none;stroke:#7bbcff42;stroke-width:10}.chart-line{fill:none;stroke:var(--accent);stroke-width:3.2}.chart-marker{fill:#070c14eb;stroke:var(--accent);stroke-width:3}.chart-marker-core{fill:var(--accent)}.chart-callout{fill:#070c14f0;stroke:#5f80b075}.chart-callout-kicker{fill:var(--accent)}.chart-callout-text{fill:var(--text);font-family:var(--sans);font-size:12px;font-weight:600}.schedule-chart.is-interactive{cursor:grab}.schedule-chart.is-dragging{cursor:grabbing}.schedule-chart.is-hovering .chart-marker,.schedule-chart.is-dragging .chart-marker{stroke:var(--accent-2)}body[data-theme=light] .theme-switch,body[data-theme=light] .chart-legend-pill,body[data-theme=light] .custom-select-menu{background:linear-gradient(180deg,#ffffffe6,#f5eee4eb)}body[data-theme=light] .chart-callout,body[data-theme=light] .chart-floor-tag{fill:#fffbf4f5}body[data-fit-mode=tight] .panel{padding:12px}body[data-fit-mode=tight] .field-grid,body[data-fit-mode=tight] .primary-grid,body[data-fit-mode=tight] .detail-grid,body[data-fit-mode=tight] .advanced-layout,body[data-fit-mode=tight] .advanced-stack,body[data-fit-mode=tight] .segmented-grid{gap:8px}body[data-fit-mode=tight] .field-grid-reverse{grid-template-columns:minmax(300px,500px) minmax(260px,420px)}body[data-fit-mode=tight] .field-card,body[data-fit-mode=tight] .control-block,body[data-fit-mode=tight] .advanced-panel,body[data-fit-mode=tight] .advanced-card,body[data-fit-mode=tight] .metric-card{padding:9px 10px 10px}body[data-fit-mode=tight] .chart-card{min-height:220px}body[data-fit-mode=ultra]{overflow-y:auto}body[data-fit-mode=ultra] .panel{padding:10px}body[data-fit-mode=ultra] .field-grid,body[data-fit-mode=ultra] .primary-grid,body[data-fit-mode=ultra] .detail-grid,body[data-fit-mode=ultra] .advanced-layout,body[data-fit-mode=ultra] .advanced-stack,body[data-fit-mode=ultra] .segmented-grid{gap:7px}body[data-fit-mode=ultra] .field-grid-reverse{grid-template-columns:minmax(280px,460px) minmax(240px,380px)}body[data-fit-mode=ultra] .chart-card{min-height:190px}@media(max-width:1500px)and (min-width:981px){.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1180px){.app-shell{grid-template-columns:1fr}}@media(max-width:980px){.app-shell{padding:14px}.hero-block{display:grid;gap:6px;padding-right:0}.hero-top-row{position:static;margin-bottom:0}h1{white-space:normal}.field-grid,.calculator-mode-grid,.primary-grid,.detail-grid,.advanced-layout,.mode-grid,.precision-grid,.field-grid-reverse,.field-grid-top{grid-template-columns:1fr}.field-grid-reverse .control-block{grid-column:auto}.gpu-panel-grid,.reverse-gpu-panel-card,.expected-multiplier-card{width:100%}.gpu-panel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.constraint-input,.reverse-time-input{grid-template-columns:1fr}.chart-header{flex-direction:column}}@media(max-width:720px){.metric-value{font-size:clamp(22px,8vw,32px)}.metric-value-small{font-size:clamp(18px,6vw,22px)}.chart-card{min-height:320px}.schedule-chart{min-height:240px}.schedule-chart-caption{font-size:10px;letter-spacing:.12em}.gpu-panel-grid{grid-template-columns:1fr}}
