/*! tailwindcss v4.3.2 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--font-weight-semibold:600;--radius-sm:.25rem;--radius-md:.375rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.static{position:static}.m-0{margin:0}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.h-9{height:calc(var(--spacing) * 9)}.h-11{height:calc(var(--spacing) * 11)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-w-0{min-width:0}.shrink-0{flex-shrink:0}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-y-1{row-gap:var(--spacing)}.rounded{border-radius:.25rem}.rounded-control{border-radius:var(--radius-sm)}.border{border-style:var(--tw-border-style);border-width:1px}.border-border-subtle{border-color:var(--color-border)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--color-bg)}.bg-primary{background-color:var(--color-charcoal)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-destructive{color:var(--color-danger-text)}.text-foreground{color:var(--color-text)}.text-muted-foreground{color:var(--color-text-sub)}.text-primary-foreground{color:var(--color-text-inverse)}.text-success{color:var(--color-success-text)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.outline-none{--tw-outline-style:none;outline-style:none}@media (hover:hover){.hover\:bg-muted:hover{background-color:var(--color-bg-soft)}.hover\:bg-primary-hover:hover{background-color:oklch(37% .012 260)}}.focus-visible\:border-ring:focus-visible{border-color:var(--color-brand)}.focus-visible\:ring-3:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:var(--color-brand)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/30:focus-visible{--tw-ring-color:color-mix(in oklab, var(--color-brand) 30%, transparent)}}.active\:bg-primary-active:active{background-color:oklch(32% .012 260)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-45:disabled{opacity:.45}@media (width>=40rem){.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}}}:root{--color-text:oklch(27% .006 260);--color-text-sub:oklch(45% .005 260);--color-text-muted:oklch(60% .004 260);--color-text-link:oklch(35% .12 261);--color-text-inverse:oklch(97% .003 260);--color-bg:oklch(98.8% .001 260);--color-bg-soft:oklch(97.2% .002 260);--color-bg-canvas:oklch(97.8% .001 260);--color-bg-raised:oklch(99.2% .001 260);--color-bg-tint:oklch(96% .018 25);--color-border:oklch(87% .004 260);--color-border-strong:oklch(76% .005 260);--color-brand:oklch(58% .23 25);--color-brand-deep:oklch(38% .17 25);--color-brand-soft:oklch(93% .045 25);--color-accent-blue:oklch(36% .13 261);--color-charcoal:oklch(43% .012 260);--color-warning-bg:oklch(95% .035 78);--color-warning-text:oklch(42% .095 64);--color-success-bg:oklch(96% .035 145);--color-success-text:oklch(38% .105 145);--color-danger-bg:oklch(95% .04 25);--color-danger-text:oklch(36% .14 25);--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:36px;--space-7:56px;--radius-sm:4px;--radius-md:8px;--control-height:44px;--page-max:1480px;--workbench-sidebar:300px;--shadow-sm:none;--shadow-md:0 10px 26px oklch(19% .004 260/.08);--focus-ring:0 0 0 3px oklch(58% .23 25/.18);--motion-fast:.14s cubic-bezier(.22, 1, .36, 1);color:var(--color-text);background:var(--color-bg-canvas);font-feature-settings:"palt";font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Noto Sans JP,Hiragino Sans,Yu Gothic,Meiryo,sans-serif}*{box-sizing:border-box}body{background:var(--color-bg-canvas);min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}a{color:var(--color-text-link)}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}::selection{background:oklch(58% .23 25/.18)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}.page{min-height:100vh;padding:var(--space-6) var(--space-5) var(--space-7);background:var(--color-bg-canvas);color:var(--color-text);position:relative}.page:before{content:"";background:var(--color-brand);z-index:100;height:3px;position:fixed;top:0;left:0;right:0}.page-header{max-width:var(--page-max);margin:0 auto var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border)}.page-header-main{justify-content:space-between;align-items:flex-end;gap:var(--space-5);display:flex}.brand{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);display:inline-flex}.brand-mark{border-radius:var(--radius-sm);background:var(--color-brand);width:10px;height:10px;display:inline-block}.brand-text{color:var(--color-text-sub);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:600}.page-header h1{letter-spacing:0;color:var(--color-text);margin:0;font-size:24px;font-weight:600;line-height:1.35}.journey-board{max-width:var(--page-max);margin:0 auto var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);grid-template-columns:repeat(2,minmax(0,1fr));padding:0;list-style:none;display:grid;overflow:hidden}.journey-board li{gap:var(--space-3);min-width:0;padding:var(--space-3) var(--space-4);border-inline-start:1px solid var(--color-border);background:var(--color-bg);color:var(--color-text-sub);text-align:left;grid-template-columns:28px minmax(0,1fr);align-items:center;margin:0;display:grid}.journey-board li:first-child{border-inline-start:0}.journey-board li.completed{background:var(--color-bg-soft)}.journey-board li.active{background:var(--color-brand-soft);color:var(--color-brand-deep)}.journey-board span{border:1px solid var(--color-border-strong);background:var(--color-bg);width:24px;height:24px;color:var(--color-text-sub);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.journey-board li.active span{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-text-inverse)}.journey-board strong{color:var(--color-text);margin:0;font-size:13px;font-weight:700;line-height:1.45}.journey-board li.active strong{color:var(--color-brand-deep)}.simulator-workbench,.workbench{grid-template-columns:var(--workbench-sidebar) minmax(0, 1fr);gap:var(--space-5);max-width:var(--page-max);align-items:start;margin:0 auto;display:grid}.simulator-workbench-result{grid-template-columns:minmax(var(--workbench-sidebar), 340px) minmax(0, 1fr)}.workbench-sidebar{gap:var(--space-4);overflow-anchor:none;min-width:0;top:var(--space-5);display:grid;position:sticky}.workbench-main{gap:var(--space-5);min-width:0;display:grid}.panel,.chart-card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md)}.panel{padding:var(--space-5)}@media (width>=1280px){.panel{padding:var(--space-6) var(--space-5)}}.flow-actions{justify-content:space-between;gap:var(--space-3);max-width:var(--page-max);margin:var(--space-5) auto 0;padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.flow-actions button{min-height:var(--control-height);min-width:160px;padding:0 var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-size:13px;font-weight:700}.flow-actions button.primary{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-text-inverse)}.flow-actions button:disabled{border-color:var(--color-border);background:var(--color-bg-soft);color:var(--color-text-muted);cursor:not-allowed}.section-head{margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.section-head h2{color:var(--color-text);letter-spacing:0;margin:0;font-size:18px;font-weight:600;line-height:1.4}.field-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.field-grid-single{grid-template-columns:1fr}.input-progress{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);margin:0;list-style:none;display:grid}.input-progress li{align-items:center;gap:var(--space-3);min-height:36px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-sub);transition:background var(--motion-fast);grid-template-columns:24px minmax(0,1fr);font-size:12px;font-weight:600;line-height:1.3;display:grid}.input-progress span{border:1px solid var(--color-border-strong);background:var(--color-bg);width:22px;height:22px;color:var(--color-text-muted);font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;font-size:11px;display:inline-flex}.input-progress li.completed{color:var(--color-text)}.input-progress li.completed span{border-color:var(--color-border-strong);background:var(--color-bg-soft);color:var(--color-text)}.input-progress li.active{background:var(--color-brand-soft);color:var(--color-brand-deep)}.input-progress li.active span{border-color:var(--color-brand);background:var(--color-brand);color:var(--color-text-inverse)}.input-stage-actions{justify-content:space-between;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.input-stage-actions button{min-height:var(--control-height);min-width:140px;padding:0 var(--space-5);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text);transition:var(--motion-fast);font-size:13px;font-weight:700}.input-stage-actions button:hover:not(:disabled){background:var(--color-bg-soft)}.input-stage-actions button.primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-text-inverse)}.input-stage-actions button.primary:hover:not(:disabled){background:var(--color-brand-deep);border-color:var(--color-brand-deep)}.input-stage-actions button:disabled,.input-stage-actions button.primary:disabled{border-color:var(--color-border);background:var(--color-bg-soft);color:var(--color-text-muted);opacity:1;cursor:not-allowed}.mode-switch{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.mode-switch button{gap:var(--space-1);min-width:0;min-height:64px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text-sub);text-align:left;transition:border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);display:grid}.mode-switch button:hover,.mode-switch button:focus-visible{border-color:var(--color-brand);color:var(--color-brand-deep)}.mode-switch button:focus-visible{box-shadow:var(--focus-ring);outline:none}.mode-switch .active,.mode-switch .active:hover,.mode-switch .active:focus-visible{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-deep)}.mode-switch span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;font-weight:700;overflow:hidden}.mode-switch small{min-width:0;color:inherit;opacity:.78;text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.35;overflow:hidden}.field-grid label,.form-block,.market-adjustment-field,.select-field{gap:var(--space-1);display:grid}.field-grid label span,.block-label,.market-adjustment-label,.select-field-label{min-width:0;color:var(--color-text-sub);letter-spacing:.02em;font-size:12px;font-weight:600}.field-grid input,.market-adjustment-control input,.month-fixed-price input,.fixed-rate-comparison-selects select,.select-field select{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;transition:border-color var(--motion-fast), box-shadow var(--motion-fast);font-size:14px}.field-grid input::placeholder,.market-adjustment-control input::placeholder,.month-fixed-price input::placeholder,.annual-curve-input input::placeholder,.admin-defaults-grid input::placeholder,.admin-default-month-grid input::placeholder{color:var(--color-text-muted);opacity:.8}.field-grid input:hover,.market-adjustment-control input:hover,.month-fixed-price input:hover,.fixed-rate-comparison-selects select:hover,.select-field select:hover{border-color:var(--color-text-muted)}.field-grid input:focus,.market-adjustment-control input:focus,.month-fixed-price input:focus,.fixed-rate-comparison-selects select:focus,.select-field select:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.select-field select:disabled{cursor:not-allowed;color:var(--color-text-sub);background:var(--color-bg-soft)}.form-block{margin-top:0}.legacy-comparison-controls{gap:var(--space-3);display:grid}.toggle-field{align-items:center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);cursor:pointer;grid-template-columns:minmax(0,1fr) auto;display:grid}.toggle-field input{opacity:0;pointer-events:none;position:absolute}.toggle-field-text{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.toggle-switch{background:var(--color-border-strong);width:42px;height:24px;transition:background var(--motion-fast);border-radius:999px;position:relative}.toggle-switch:after{background:var(--color-bg-raised);content:"";width:18px;height:18px;transition:transform var(--motion-fast);border-radius:999px;position:absolute;top:3px;left:3px}.toggle-field input:checked+.toggle-switch{background:var(--color-brand)}.toggle-field input:checked+.toggle-switch:after{transform:translate(18px)}.toggle-field:has(input:focus-visible){border-color:var(--color-brand);box-shadow:var(--focus-ring)}.market-adjustment-control{align-items:center;gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;display:grid}.market-adjustment-control span{color:var(--color-text-sub);font-size:13px;font-weight:600}.market-adjustment-warning{color:var(--color-warning-text);font-size:12px;line-height:1.45}.fixed-rate-comparison-controls{gap:var(--space-2);display:grid}.fixed-rate-comparison-controls p{margin:var(--space-1) 0 0;color:var(--color-text-sub);font-size:12px;line-height:1.45}.fixed-rate-comparison-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.fixed-rate-comparison-count{color:var(--color-text-sub);font-size:12px;font-weight:600}.fixed-rate-comparison-selects{gap:var(--space-2);display:grid}.fixed-rate-comparison-select-row{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto;align-items:end;display:grid}.fixed-rate-comparison-selects label{gap:var(--space-1);min-width:0;display:grid}.fixed-rate-comparison-selects span{color:var(--color-text-sub);font-size:12px;font-weight:600}.fixed-rate-comparison-add,.fixed-rate-comparison-remove{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);height:40px;color:var(--color-text);cursor:pointer;white-space:nowrap;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex}.fixed-rate-comparison-add{padding:0 var(--space-3)}.fixed-rate-comparison-remove{min-width:56px;padding:0 var(--space-3)}.fixed-rate-comparison-add:disabled,.fixed-rate-comparison-remove:disabled{cursor:not-allowed;color:var(--color-text-muted);background:var(--color-bg-soft)}.starter-defaults{gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin:0;display:grid}.starter-defaults>div{justify-content:space-between;align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.starter-defaults dt{color:var(--color-text-sub);font-size:12px;font-weight:500}.starter-defaults dd{color:var(--color-text);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:13px;font-weight:600}.starter-wizard{gap:var(--space-4);display:grid}.starter-area-grid button,.starter-contract-grid button,.starter-industry-grid button,.starter-band-grid button,.starter-plan-grid button,.starter-plan-grid .fixed-rate-option-row,.starter-plan-grid label,.starter-scale-grid button,.starter-unknown-toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);min-width:0;color:var(--color-text);font:inherit;cursor:pointer;transition:border-color var(--motion-fast), background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);font-weight:600}.starter-step,.starter-advanced-settings,.starter-result-settings{gap:var(--space-2);display:grid}.starter-advanced-details,.result-advanced-details{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft)}.starter-advanced-details summary,.result-advanced-details summary{min-height:40px;padding:var(--space-2) var(--space-3);color:var(--color-text);cursor:pointer;font-size:13px;font-weight:700;line-height:1.35}.starter-advanced-details[open] summary,.result-advanced-details[open] summary{border-bottom:1px solid var(--color-border)}.starter-advanced-details>.form-block,.result-advanced-details>.form-block{padding:var(--space-3)}.starter-advanced-details label{gap:var(--space-1);display:grid}.starter-advanced-details label span{color:var(--color-text-sub);font-size:12px;font-weight:600}.starter-advanced-details input{width:100%;height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:14px}.starter-advanced-details input:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.starter-area-grid,.starter-contract-grid,.starter-industry-grid,.starter-plan-grid{gap:var(--space-2);display:grid}.starter-area-grid,.starter-contract-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.starter-industry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.starter-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.starter-plan-checklist{overscroll-behavior:contain;scrollbar-gutter:stable;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;max-height:min(46vh,460px);padding-right:2px;overflow-y:auto}.starter-plan-checklist .fixed-rate-option-row,.starter-plan-checklist .fixed-rate-option-label{min-height:58px}.starter-area-grid button,.starter-contract-grid button,.starter-industry-grid button,.starter-plan-grid button,.starter-plan-grid .fixed-rate-option-row,.starter-plan-grid label{align-content:center;gap:var(--space-1);min-height:58px;padding:var(--space-2) var(--space-3);color:var(--color-text-sub);text-align:left;font-size:12px;line-height:1.35;display:grid}.starter-plan-grid button,.starter-plan-grid .fixed-rate-option-row,.starter-plan-grid label{min-height:68px}.starter-area-grid button span,.starter-contract-grid button span,.starter-industry-grid button span,.starter-plan-grid button span,.starter-plan-grid .fixed-rate-option-row span,.starter-plan-grid label span{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700;overflow:hidden}.starter-plan-grid button span,.starter-plan-grid .fixed-rate-option-row span,.starter-plan-grid label span{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.starter-plan-grid button small,.starter-plan-grid .fixed-rate-option-row small,.starter-plan-grid label small{min-width:0;color:inherit;opacity:.78;overflow-wrap:anywhere;white-space:normal;font-size:11px;line-height:1.35;overflow:visible}.starter-area-grid .active,.starter-contract-grid .active,.starter-industry-grid .active,.starter-band-grid .active,.starter-plan-grid .active,.starter-scale-grid .active{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-deep)}.starter-bill-direct.active,.starter-unknown-card.active{border-color:var(--color-border-strong);background:var(--color-bg-raised)}.starter-unknown-card.active .starter-unknown-toggle{border-color:var(--color-brand);background:var(--color-brand-soft);color:var(--color-brand-deep)}.starter-bill-direct.active>span{color:var(--color-brand-deep)}.starter-bill-grid{gap:var(--space-2);display:grid}.starter-bill-direct,.starter-unknown-card,.starter-estimate-strip{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);display:grid}.starter-bill-direct span,.starter-measure-field span,.starter-estimate-strip span{color:var(--color-text-sub);font-size:11px;font-weight:600}.starter-bill-direct input,.starter-measure-field input{width:100%;height:40px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:14px}.starter-band-grid,.starter-scale-grid{gap:var(--space-2);border:0;grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;margin:0;padding:0;display:grid}.starter-band-grid legend,.starter-scale-grid legend{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.starter-band-grid button,.starter-scale-grid button,.starter-unknown-toggle{min-height:38px;padding:var(--space-2) var(--space-3);font-size:12px}.starter-unknown-toggle{background:var(--color-bg);color:var(--color-text)}.starter-measure-field{gap:var(--space-1);display:grid}.starter-estimate-strip{background:var(--color-bg);grid-template-columns:minmax(0,1fr) auto;align-items:center}.starter-estimate-strip strong{font-variant-numeric:tabular-nums;font-size:18px}.starter-area-grid button:hover,.starter-contract-grid button:hover,.starter-industry-grid button:hover,.starter-band-grid button:hover,.starter-plan-grid button:hover,.starter-plan-grid .fixed-rate-option-row:hover,.starter-plan-grid label:hover,.starter-scale-grid button:hover,.starter-unknown-toggle:hover{border-color:var(--color-text-muted)}.starter-plan-checklist .fixed-rate-option-label{align-items:start;column-gap:var(--space-2);min-height:0;color:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);padding:0;display:grid;position:relative}.starter-plan-checklist input{width:16px;height:16px;accent-color:var(--color-brand);margin:1px 0 0}.starter-plan-checklist .fixed-rate-option-label .fixed-rate-option-text{overflow-wrap:normal;text-overflow:clip;white-space:normal;word-break:keep-all;grid-column:2;font-size:14px;line-height:1.32;overflow:visible}.starter-plan-checklist input:disabled{cursor:not-allowed}.fixed-rate-checklist{gap:var(--space-2);display:grid}.fixed-rate-checklist-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.starter-plan-grid .fixed-rate-option-row{align-content:stretch;align-items:center;column-gap:var(--space-2);padding-right:var(--space-2);padding-left:var(--space-2);grid-template-columns:minmax(0,1fr) auto}.starter-plan-grid .custom-fixed-rate-option{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;min-height:52px}.starter-plan-grid .custom-fixed-rate-option .fixed-rate-option-label{align-items:center}.starter-plan-grid .custom-fixed-rate-option input{margin-top:0}.starter-plan-grid .custom-fixed-rate-option .fixed-rate-option-label span{white-space:nowrap}.fixed-rate-option-actions{justify-content:flex-end;align-items:center;gap:var(--space-1);display:inline-flex}.starter-plan-grid .fixed-rate-option-settings,.starter-plan-grid .fixed-rate-option-delete{border-color:var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-raised);width:40px;min-width:40px;height:40px;min-height:40px;color:var(--color-text);text-align:center;white-space:nowrap;justify-content:center;align-items:center;padding:0;font-size:12px;font-weight:700;line-height:1;display:inline-flex}.starter-plan-grid .fixed-rate-option-settings:hover,.starter-plan-grid .fixed-rate-option-settings:focus-visible,.starter-plan-grid .fixed-rate-option-delete:hover,.starter-plan-grid .fixed-rate-option-delete:focus-visible{border-color:var(--color-brand);color:var(--color-brand-deep)}.starter-plan-grid .fixed-rate-option-settings:focus-visible,.starter-plan-grid .fixed-rate-option-delete:focus-visible{box-shadow:var(--focus-ring);outline:none}.graph-settings-block{gap:var(--space-2);display:grid}.graph-settings-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.graph-settings-count{color:var(--color-text-muted);font-variant-numeric:tabular-nums;flex:none;font-size:11px;font-weight:600}.graph-settings-fieldset{gap:var(--space-2);min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);margin:0;display:grid}.graph-settings-fieldset legend{padding:0 var(--space-1);color:var(--color-text-sub);font-size:11px;font-weight:600}.graph-settings-options{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.checkbox-field{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-text);font-size:12px;font-weight:600;display:flex}.checkbox-field input{width:15px;height:15px;accent-color:var(--color-brand)}.checkbox-field span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.segmented{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);grid-template-columns:repeat(auto-fit,minmax(118px,1fr));padding:3px;display:grid}.segmented button{min-width:0;min-height:var(--control-height);color:var(--color-text-sub);letter-spacing:.02em;transition:background var(--motion-fast), color var(--motion-fast), box-shadow var(--motion-fast);background:0 0;border:0;border-radius:3px;align-content:center;gap:2px;font-size:13px;font-weight:600;display:grid}.scenario-option-year{min-width:0;color:inherit;opacity:.72;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:600;overflow:hidden}.segmented button span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.segmented button:hover{color:var(--color-brand-deep)}.segmented button:focus-visible{background:var(--color-bg-raised);color:var(--color-brand-deep);box-shadow:var(--focus-ring);outline:none}.segmented .active{background:var(--color-brand);color:var(--color-text-inverse)}.segmented .active:hover,.segmented .active:focus-visible{background:var(--color-brand-deep);color:var(--color-text-inverse);box-shadow:var(--focus-ring)}.csv-import{gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);align-items:center;display:grid}.usage-input-group{gap:var(--space-3);display:grid}.usage-method-field{margin-bottom:0}.usage-mode-card{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);display:grid}.usage-mode-card strong{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.usage-mode-note{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.55;overflow:hidden}.usage-mode-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.csv-import-actions{gap:var(--space-2);display:inline-flex}.csv-import-button,.csv-reset-button,.csv-sample-button{height:34px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:inline-flex}.csv-import-button:hover,.csv-reset-button:hover,.csv-sample-button:hover{border-color:var(--color-text-muted)}.csv-import-button input{display:none}.csv-reset-button{background:var(--color-bg-soft);color:var(--color-text-sub)}.csv-sample-action{gap:var(--space-2);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;display:grid}.csv-sample-button{background:var(--color-charcoal);color:var(--color-text-inverse)}.csv-sample-select{height:34px;padding:0 28px 0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-size:12px;font-weight:600}.csv-sample-button:disabled{cursor:not-allowed;opacity:.5}.csv-import-status{min-width:0;color:var(--color-text-sub);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.45;overflow:hidden}.csv-error-message{min-width:0;color:var(--color-brand-deep);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.annual-usage-field{gap:var(--space-1);display:grid}.annual-usage-label{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.annual-usage-field input{width:100%;height:40px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:13px}.annual-usage-field input:hover{border-color:var(--color-text-muted)}.annual-usage-field input:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.annual-curve-input{gap:var(--space-2);grid-template-columns:minmax(0,1fr) auto auto;align-items:end;display:grid}.annual-curve-input label:first-child{gap:var(--space-1);grid-column:1/-1;display:grid}.annual-curve-input .csv-import-button{min-width:0}.annual-curve-input label span{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.annual-curve-input input{width:100%;height:34px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:13px}.annual-curve-input input:hover{border-color:var(--color-text-muted)}.annual-curve-input input:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.starter-wizard-actions{justify-content:flex-end;margin-top:0;display:flex}.starter-advance-button{min-height:var(--control-height);padding:0 var(--space-5);border:1px solid var(--color-brand);border-radius:var(--radius-sm);background:var(--color-brand);color:var(--color-text-inverse);transition:var(--motion-fast);font-size:14px;font-weight:700}.starter-advance-button:hover:not(:disabled){background:var(--color-brand-deep);border-color:var(--color-brand-deep)}.starter-advance-button:disabled{border-color:var(--color-border);background:var(--color-bg-soft);color:var(--color-text-muted);cursor:not-allowed}.input-panel{gap:var(--space-4);display:grid}.input-panel>.section-head{margin-bottom:0}.sample-modal-backdrop{z-index:200;background:oklch(21% .01 24/.32);place-items:center;padding:20px;display:grid;position:fixed;inset:0}.sample-modal{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:min(460px,100%);box-shadow:var(--shadow-md);padding:18px}.sample-modal-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.sample-modal h2{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:16px;font-weight:600;overflow:hidden}.sample-modal p{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;margin:12px 0;font-size:13px;line-height:1.6;overflow:hidden}.sample-modal-close{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);width:30px;height:30px;color:var(--color-text-sub);justify-content:center;align-items:center;font-size:18px;line-height:1;display:inline-flex}.sample-option-list{gap:8px;display:grid}.sample-option{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);cursor:pointer;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.sample-option input{accent-color:var(--color-brand);margin:2px 0 0}.sample-option-copy{gap:3px;display:grid}.sample-option-copy strong{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sample-option-copy small{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.45;overflow:hidden}.sample-option-active{border-color:var(--color-brand);background:var(--color-brand-soft)}.sample-modal-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.sample-modal-primary,.sample-modal-secondary{border-radius:var(--radius-sm);min-height:34px;padding:0 14px;font-size:12px;font-weight:600}.sample-modal-primary{border:1px solid var(--color-charcoal);background:var(--color-charcoal);color:var(--color-text-inverse)}.sample-modal-secondary{border:1px solid var(--color-border-strong);background:var(--color-bg);color:var(--color-text)}.slider-head{grid-template-columns:76px minmax(0,1fr) 104px;align-items:end;gap:12px;display:grid}.slider-rate-heading{grid-column:1/span 2}.slider-price-heading{grid-column:3}.slider-list{gap:6px;display:grid}.month-slider{color:var(--color-text);grid-template-columns:76px minmax(0,1fr) 104px;align-items:center;gap:12px;font-size:13px;font-weight:600;display:grid}.month-slider>span{white-space:nowrap}.month-slider input[type=range]{appearance:none;background:0 0;width:100%;height:22px}.month-slider input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--color-brand) 0, var(--color-brand) var(--fill,0%), var(--color-border) var(--fill,0%), var(--color-border) 100%);border-radius:2px;height:4px}.month-slider input[type=range]::-moz-range-track{background:var(--color-border);border-radius:2px;height:4px}.month-slider input[type=range]::-moz-range-progress{background:var(--color-brand);border-radius:2px;height:4px}.month-slider input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--color-bg-raised);border:2px solid var(--color-brand);cursor:grab;border-radius:50%;width:14px;height:14px;margin-top:-5px;box-shadow:0 1px 2px oklch(21% .01 24/.1)}.month-slider input[type=range]::-moz-range-thumb{background:var(--color-bg-raised);border:2px solid var(--color-brand);cursor:grab;border-radius:50%;width:12px;height:12px;box-shadow:0 1px 2px oklch(21% .01 24/.1)}.month-fixed-price{grid-template-columns:56px 42px;align-items:center;gap:4px;display:grid}.month-fixed-price input{text-align:right;width:100%;height:30px;padding:0 8px;font-size:13px}.month-slider .fixed-price-unit{color:var(--color-text-sub);white-space:nowrap;font-size:11px;font-weight:600}.result-panel{gap:var(--space-5);display:grid}.result-panel .section-head{margin-bottom:0}.result-section-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.result-condition-select{width:min(280px,100%);min-width:0;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font:inherit;font-size:13px}.result-headline{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-brand-soft);border:1px solid oklch(82% .055 25);display:grid}.result-headline-display{gap:var(--space-2);display:grid}.result-headline-label{color:var(--color-brand-deep);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:700}.result-headline-value{color:var(--color-brand-deep);font-variant-numeric:tabular-nums;letter-spacing:-.005em;font-size:32px;font-weight:600;line-height:1.15}.result-secondary-metrics{padding:var(--space-3) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.result-secondary-metrics>div{gap:var(--space-1);padding:0 var(--space-4);min-width:0;display:grid}.result-secondary-metrics>div+div{border-inline-start:1px solid var(--color-border)}.result-secondary-metrics dt{color:var(--color-text-sub);letter-spacing:.04em;font-size:11px;font-weight:600}.result-secondary-metrics dd{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:18px;font-weight:600}.starter-result-note{gap:var(--space-1);color:var(--color-text-sub);font-size:12px;line-height:1.55;display:grid}.simulation-summary{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg)}.simulation-summary-head{margin-bottom:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.simulation-summary-head h3{color:var(--color-text);letter-spacing:.02em;margin:0;font-size:13px;font-weight:700}.simulation-summary-list{gap:var(--space-2);margin:0;display:grid}.simulation-summary-list div{justify-content:space-between;align-items:baseline;gap:var(--space-3);display:flex}.simulation-summary-list dt{color:var(--color-text-sub);font-size:12px;font-weight:500}.simulation-summary-list dd{color:var(--color-text);font-variant-numeric:tabular-nums;text-align:right;margin:0;font-size:13px;font-weight:600}.result-comparison-settings{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);display:grid}.result-comparison-settings-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);display:flex}.result-comparison-settings-head h3{color:var(--color-text);letter-spacing:.02em;margin:0;font-size:13px;font-weight:700}.result-comparison-settings-head .result-comparison-settings-count{color:var(--color-text-sub);font-variant-numeric:tabular-nums;font-size:11px;font-weight:600}.result-comparison-grid{gap:var(--space-4);display:grid}.result-comparison-column,.market-adjustment-field{gap:var(--space-3);display:grid}.fixed-rate-modal-backdrop{z-index:200;padding:var(--space-4);background:oklch(16% .02 260/.42);place-items:center;display:grid;position:fixed;inset:0}.fixed-rate-modal-dismiss{cursor:default;background:0 0;border:0;position:absolute;inset:0}.fixed-rate-modal{z-index:1;gap:var(--space-4);width:min(860px,100%);height:min(820px,100dvh - 32px);max-height:calc(100dvh - 32px);padding:var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-bg);grid-template-rows:auto auto minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden;box-shadow:0 24px 60px oklch(16% .02 260/.22)}.fixed-rate-modal-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.fixed-rate-modal-head h4{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.fixed-rate-modal-head p{margin:var(--space-1) 0 0;color:var(--color-text-sub);font-size:12px;line-height:1.5}.fixed-rate-modal-close{height:36px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-raised);color:var(--color-text);flex:none;font-size:12px;font-weight:700}.fixed-rate-modal-close:hover,.fixed-rate-modal-close:focus-visible{border-color:var(--color-brand);color:var(--color-brand-deep)}.fixed-rate-modal-close:focus-visible{box-shadow:var(--focus-ring);outline:none}.fixed-rate-modal-name-field{align-items:center;gap:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);grid-template-columns:72px minmax(0,1fr);display:grid}.fixed-rate-modal-name-field span{color:var(--color-text);font-size:12px;font-weight:700}.fixed-rate-modal-name-field input{width:100%;height:36px;padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-size:13px}.fixed-rate-modal-name-field input:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.fixed-rate-modal-list{gap:var(--space-2);scrollbar-gutter:stable;min-height:0;display:grid;overflow-y:auto}.fixed-rate-modal-row{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);grid-template-columns:minmax(92px,1fr) minmax(140px,2fr) 82px auto;display:grid}.fixed-rate-modal-row span{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.fixed-rate-modal-row input[type=range]{width:100%;accent-color:var(--color-brand)}.fixed-rate-modal-row input[type=number]{width:100%;height:36px;padding:0 var(--space-2);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);color:var(--color-text);font-variant-numeric:tabular-nums;font-size:13px}.fixed-rate-modal-row input[type=number]:focus{border-color:var(--color-text);box-shadow:var(--focus-ring);outline:none}.fixed-rate-modal-row b{color:var(--color-text-sub);font-size:12px}.fixed-rate-modal-actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:flex}.fixed-rate-modal-primary,.fixed-rate-modal-secondary{min-width:120px;height:38px;padding:0 var(--space-3);border-radius:var(--radius-sm);font-size:12px;font-weight:700}.fixed-rate-modal-primary{border:1px solid var(--color-brand);background:var(--color-brand);color:var(--color-text-inverse)}.fixed-rate-modal-secondary{border:1px solid var(--color-border-strong);background:var(--color-bg-raised);color:var(--color-text)}.fixed-rate-modal-primary:hover,.fixed-rate-modal-primary:focus-visible{background:var(--color-brand-deep)}.fixed-rate-modal-secondary:hover,.fixed-rate-modal-secondary:focus-visible{border-color:var(--color-brand);color:var(--color-brand-deep)}.fixed-rate-modal-primary:focus-visible,.fixed-rate-modal-secondary:focus-visible{box-shadow:var(--focus-ring);outline:none}@media (width<=640px){.fixed-rate-modal{height:calc(100dvh - 24px);max-height:calc(100dvh - 24px);padding:var(--space-3)}.fixed-rate-modal-head{display:grid}.fixed-rate-modal-close{justify-self:start}.fixed-rate-modal-row{grid-template-columns:minmax(0,1fr) 72px auto}.fixed-rate-modal-name-field{grid-template-columns:1fr}.fixed-rate-modal-row span,.fixed-rate-modal-row input[type=range]{grid-column:1/-1}.fixed-rate-modal-actions{display:grid}.fixed-rate-modal-primary,.fixed-rate-modal-secondary{width:100%}}.legacy-comparison{gap:var(--space-3);display:grid}.legacy-comparison-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);display:flex}.legacy-comparison-head span{color:var(--color-text-sub);font-size:12px;font-weight:600}.legacy-comparison-head strong{min-width:0;color:var(--color-text);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.legacy-comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.legacy-comparison-grid>div{gap:var(--space-1);padding:0 var(--space-4);min-width:0;display:grid}.legacy-comparison-grid>div+div{border-inline-start:1px solid var(--color-border)}.legacy-comparison-grid dt{color:var(--color-text-sub);font-size:11px;font-weight:600}.legacy-comparison-grid dd{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:16px;font-weight:600}.legacy-comparison-note{gap:var(--space-1);color:var(--color-text-sub);margin:0;font-size:11px;line-height:1.5;display:grid}.fixed-rate-comparison-summary{gap:var(--space-3);display:grid}.fixed-rate-comparison-summary-head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border);display:flex}.fixed-rate-comparison-summary-head h3{color:var(--color-text);margin:0;font-size:14px;font-weight:600}.fixed-rate-comparison-summary-head span,.fixed-rate-comparison-summary-note{color:var(--color-text-sub);font-size:12px;font-weight:500}.fixed-rate-comparison-summary-table{min-width:0;overflow-x:auto}.fixed-rate-comparison-summary-table table{border-collapse:collapse;width:100%;min-width:680px}.fixed-rate-comparison-summary-table th,.fixed-rate-comparison-summary-table td{padding:var(--space-2) var(--space-2);border-top:1px solid var(--color-border);color:var(--color-text);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap;font-size:12px;font-weight:600}.fixed-rate-comparison-summary-table thead th{color:var(--color-text-sub);letter-spacing:.03em;border-top:0;font-size:11px;font-weight:600}.fixed-rate-comparison-summary-table th:first-child{text-align:left}.fixed-rate-comparison-summary-table tbody th{font-weight:600}.fixed-rate-comparison-summary-table i{width:8px;height:8px;margin-right:var(--space-2);border-radius:2px;display:inline-block}.starter-breakdown{padding:var(--space-3) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.starter-breakdown div{gap:var(--space-1);padding:0 var(--space-4);min-width:0;display:grid}.starter-breakdown div+div{border-inline-start:1px solid var(--color-border)}.starter-breakdown span{color:var(--color-text-sub);font-size:11px;font-weight:600}.starter-breakdown strong{min-width:0;color:var(--color-text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:600;overflow:hidden}.chart-card{padding:var(--space-4)}.chart-card h3{margin:0 0 var(--space-3);min-width:0;color:var(--color-text);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.chart-card-stack{gap:var(--space-5);display:grid}.chart-section{gap:var(--space-2);display:grid}.chart-subtitle{color:var(--color-text-sub);margin:0;font-size:12px;font-weight:600}.recharts-monthly-fee,.recharts-monthly-fee-comparison,.recharts-unit-price-comparison{width:100%;min-width:0}.recharts-monthly-fee,.recharts-monthly-fee-comparison{height:220px}.recharts-unit-price-comparison{height:440px}.chart-with-bottom-tooltip{gap:var(--space-2);min-width:0;display:grid}.chart-tooltip-slot{overflow-anchor:none;min-width:0;min-height:172px}.recharts-monthly-fee-comparison+.chart-tooltip-slot{min-height:224px}.chart-tooltip-slot .recharts-tooltip-wrapper{pointer-events:auto;width:100%}.recharts-monthly-fee .recharts-cartesian-axis-tick-value,.recharts-monthly-fee-comparison .recharts-cartesian-axis-tick-value,.recharts-unit-price-comparison .recharts-cartesian-axis-tick-value{fill:var(--color-text-muted);font-size:11px;font-weight:500}.recharts-monthly-bar{transition:none}.recharts-monthly-bar-active{transition:y .16s cubic-bezier(.22,1,.36,1),height .16s cubic-bezier(.22,1,.36,1)}.chart-tooltip{min-width:190px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg)}.chart-tooltip strong{margin-bottom:var(--space-2);color:var(--color-text);font-size:13px;font-weight:600;display:block}.chart-tooltip dl{gap:var(--space-1);margin:0;display:grid}.chart-tooltip div{justify-content:space-between;gap:var(--space-4);display:flex}.chart-tooltip .chart-tooltip-group{gap:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--color-border);display:grid}.chart-tooltip .chart-tooltip-group:first-child{border-top:0;padding-top:0}.chart-tooltip .chart-tooltip-subitem{padding-left:var(--space-2)}.chart-tooltip dt{color:var(--color-text-sub);font-size:12px;font-weight:500}.chart-tooltip dd{color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:12px;font-weight:600}.chart-tooltip-total{padding-top:var(--space-2);border-top:1px solid var(--color-border)}.chart-tooltip-compact{min-width:180px}.chart-tooltip-matrix{max-width:min(620px,100vw - 48px)}.chart-tooltip-wide{width:100%;max-width:none}.chart-tooltip-scroll{max-width:100%;display:block;overflow-x:auto}.chart-tooltip-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;font-size:12px}.chart-tooltip-wide .chart-tooltip-table{table-layout:fixed;min-width:760px}.chart-tooltip-wide .chart-tooltip-condition-col{width:17%}.chart-tooltip-table th,.chart-tooltip-table td{padding:var(--space-1) var(--space-2);border-top:1px solid var(--color-border);text-align:right;white-space:nowrap}.chart-tooltip-table tr:first-child th,.chart-tooltip-table tr:first-child td,.chart-tooltip-table thead tr:first-child th{border-top:0}.chart-tooltip-table th{color:var(--color-text-sub);font-weight:600}.chart-tooltip-table td{color:var(--color-text);font-weight:600}.chart-tooltip-table th:first-child{text-align:left}.chart-tooltip-table th i{width:8px;height:8px;margin-right:var(--space-1);vertical-align:middle;border-radius:2px;display:inline-block}.chart-tooltip-table .spot{background:repeating-linear-gradient(90deg,oklch(45% .09 178) 0 4px,#0000 4px 7px);border-radius:0;width:14px;height:2px}.chart-tooltip-table .fixed-price{background:repeating-linear-gradient(90deg, var(--color-charcoal) 0 4px, transparent 4px 7px);border-radius:0;width:14px;height:2px}.chart-tooltip-total-row th,.chart-tooltip-total-row td{color:var(--color-text)}.legend{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-3);color:var(--color-text-sub);flex-wrap:wrap;font-size:12px;display:flex}.legend-item{align-items:center;gap:var(--space-1);white-space:nowrap;flex:none;font-weight:500;display:inline-flex}.legend i{border-radius:2px;width:10px;height:10px;display:inline-block}.legend .condition{border:2px solid var(--color-text-muted);background:0 0}.legend .base{background:oklch(50% .04 250)}.legend .fixed{background:var(--color-accent-blue)}.legend .variable{background:var(--color-brand)}.legend .renewable{background:oklch(57% .13 145)}.legend .spot{background:repeating-linear-gradient(90deg,oklch(45% .09 178) 0 5px,#0000 5px 8px);border-radius:0;width:18px;height:2px}.legend .fixed-price{background:repeating-linear-gradient(90deg, var(--color-charcoal) 0 5px, transparent 5px 8px);border-radius:0;width:18px;height:2px}.error-message,.loading-message,.empty-message{border-radius:var(--radius-sm);min-width:0;padding:var(--space-3) var(--space-4);font-size:13px;font-weight:500;line-height:1.5}.error-message{background:var(--color-danger-bg);color:var(--color-danger-text);border:1px solid oklch(84% .06 25)}.loading-message,.empty-message{background:var(--color-bg-soft);color:var(--color-text-sub);border:1px solid var(--color-border)}.monthly-table{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);overflow:hidden}.monthly-table-note{color:var(--color-text-muted);margin:6px 0 0;font-size:.75rem}.table-row{gap:var(--space-3);padding:var(--space-2) var(--space-4);border-top:1px solid var(--color-border);color:var(--color-text);font-variant-numeric:tabular-nums;grid-template-columns:82px 1fr 1fr 1fr 1fr;font-size:13px;display:grid}.table-row-with-comparison{grid-template-columns:82px 1fr 1fr 1fr 1fr 1fr}.table-row span{white-space:nowrap}.table-row:first-child{border-top:0}.table-row:not(.table-head):hover{background:var(--color-bg-soft)}.table-head{background:var(--color-bg-soft);color:var(--color-text-sub);letter-spacing:.04em;font-size:11px;font-weight:600}.table-row span:not(:first-child){text-align:right}.admin-page{background:var(--color-bg-canvas);min-height:100vh;color:var(--color-text);padding:32px}.admin-page:before{content:"";background:var(--color-charcoal);z-index:100;height:3px;position:fixed;top:0;left:0;right:0}.admin-header{max-width:var(--page-max);border-bottom:1px solid var(--color-border);margin:0 auto 24px;padding:8px 0 20px}.admin-status-row{justify-content:flex-end;align-items:center;gap:10px;margin-top:8px;display:flex}.admin-header h1{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:24px;font-weight:600;line-height:1.4;overflow:hidden}.admin-status{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);min-height:28px;color:var(--color-text-sub);white-space:nowrap;align-items:center;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.admin-status-online{background:var(--color-success-bg);color:var(--color-success-text);border-color:oklch(82% .08 145)}.admin-status-offline{background:var(--color-danger-bg);color:var(--color-danger-text);border-color:oklch(84% .06 25)}.admin-logout-button,.admin-primary-button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-charcoal);min-height:36px;color:var(--color-bg);font:inherit;cursor:pointer;font-size:13px;font-weight:600}.admin-logout-button{background:var(--color-bg);color:var(--color-text);padding:0 12px}.admin-primary-button{width:100%;padding:0 14px}.admin-logout-button:disabled,.admin-primary-button:disabled{cursor:not-allowed;opacity:.55}.admin-login-page{flex-direction:column;min-height:100vh;display:flex}.admin-login-panel{width:min(100%,420px);margin:24px auto 0;padding:0 20px}.admin-login-form{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-raised);box-shadow:var(--shadow-sm);gap:16px;padding:22px;display:grid}.admin-login-form h2{color:var(--color-text);margin:0;font-size:18px;font-weight:600}.admin-field{min-width:0;color:var(--color-text);gap:6px;font-size:13px;font-weight:600;display:grid}.admin-field input{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;min-width:0;min-height:40px;color:var(--color-text);font:inherit;padding:0 10px;font-weight:400}.admin-grid{max-width:var(--page-max);grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 auto;display:grid}.admin-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-raised);min-width:0;box-shadow:var(--shadow-sm);padding:20px}.admin-card-wide{grid-column:1/-1}.admin-card-compact{padding-bottom:18px}.admin-card h2{border-bottom:1px solid var(--color-border);min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0 0 14px;padding-bottom:12px;font-size:15px;font-weight:600;overflow:hidden}.admin-list{gap:12px;margin:0;display:grid}.admin-card-horizontal .admin-list{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-list div{grid-template-columns:120px minmax(0,1fr);gap:14px;display:grid}.admin-list dt{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.admin-list dd{overflow-wrap:anywhere;min-width:0;color:var(--color-text);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.admin-public-settings{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.admin-public-url{gap:6px;min-width:0;display:grid}.admin-public-label,.admin-public-meta dt{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;overflow:hidden}.admin-public-url code{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);min-width:0;color:var(--color-text);font-variant-numeric:tabular-nums;white-space:nowrap;padding:9px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.4;display:block;overflow-x:auto}.admin-public-meta{grid-template-columns:auto auto;gap:10px;margin:0;display:grid}.admin-public-meta div{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);min-width:132px;padding:9px 10px}.admin-public-meta dd{color:var(--color-text);white-space:nowrap;margin:4px 0 0;font-size:13px}.admin-chip-list{flex-wrap:wrap;gap:8px;display:flex}.admin-chip{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);min-width:0;max-width:100%;min-height:30px;color:var(--color-text);white-space:nowrap;align-items:center;gap:8px;padding:0 10px;font-size:13px;font-weight:600;display:inline-flex}.admin-chip-key{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;font-size:11px;font-weight:600;overflow:hidden}.admin-empty{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.admin-settings-groups{gap:18px;display:grid}.admin-settings-section{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);gap:14px;min-width:0;padding:16px;display:grid}.admin-settings-section-header{justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.admin-settings-section-header h3{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:600;overflow:hidden}.admin-wheeling-area-controls{flex-wrap:wrap;flex:auto;justify-content:flex-end;gap:12px;min-width:0;display:flex}.admin-wheeling-area-control{flex:0 280px;gap:6px;min-width:260px;display:grid}.admin-wheeling-area-control select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;min-height:44px;color:var(--color-text);font-variant-numeric:tabular-nums;padding:0 12px;font-size:1rem;font-weight:600}.admin-defaults-form{gap:14px;display:grid}.admin-defaults-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-defaults-grid label,.admin-default-scenario-setting label,.admin-default-fee-settings,.admin-default-fixed-prices,.admin-default-month-grid label{gap:5px;min-width:0;display:grid}.admin-area-dependent-section,.admin-area-independent-section{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);gap:12px;min-width:0;padding:14px;display:grid}.admin-defaults-subsection-header{justify-content:space-between;align-items:flex-start;gap:16px;min-width:0;display:flex}.admin-area-fee-groups{gap:12px;min-width:0;display:grid}.admin-area-fee-group{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);gap:10px;min-width:0;padding:12px;display:grid}.admin-area-fee-group-header{justify-content:space-between;align-items:flex-start;gap:12px;min-width:0;display:flex}.admin-area-fee-table-scroll{min-width:0;overflow-x:auto}.admin-area-fee-input-table{border-collapse:collapse;width:100%;min-width:420px;font-size:12px}.admin-area-fee-input-table th,.admin-area-fee-input-table td{border-bottom:1px solid var(--color-border);text-align:left;padding:8px}.admin-area-fee-input-table thead th{background:var(--color-bg);color:var(--color-text-sub);font-weight:700}.admin-area-fee-input-table tbody th{color:var(--color-text);font-weight:700}.admin-area-fee-input-table input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;min-height:34px;color:var(--color-text);font:inherit;font-variant-numeric:tabular-nums;padding:0 10px}.admin-area-dependent-section h4,.admin-area-independent-section h4,.admin-area-fee-group h5{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;font-weight:700;overflow:hidden}.admin-default-month-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.admin-monthly-fee-block{gap:10px;display:grid}.admin-default-month-grid label span{color:var(--color-text-sub);font-size:11px;font-weight:600}.admin-default-actions{justify-content:flex-start;align-items:center;gap:12px;display:flex}.admin-default-scenario-setting{grid-template-columns:minmax(220px,1fr);align-items:end;gap:12px;display:grid}.admin-scenario-toolbar{color:var(--color-text-sub);white-space:nowrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;font-size:12px;font-weight:600;display:flex}.admin-add-button,.admin-save-button,.admin-remove-button{border:1px solid var(--color-charcoal);border-radius:var(--radius-sm);background:var(--color-charcoal);min-height:36px;color:var(--color-text-inverse);white-space:nowrap;flex:none;padding:0 14px;font-size:12px;font-weight:600}.admin-add-button{border-color:var(--color-border-strong);background:var(--color-bg);color:var(--color-text);margin-left:auto}.admin-remove-button{border-color:var(--color-border-strong);background:var(--color-bg-soft);color:var(--color-text-sub)}.admin-add-button:disabled,.admin-save-button:disabled{cursor:not-allowed;opacity:.45}.admin-scenario-list{gap:8px;display:grid}.admin-scenario-actions{justify-content:flex-start;align-items:center;display:flex}.admin-scenario-actions .admin-add-button{min-width:96px;margin-left:0}.admin-scenario-row{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);grid-template-columns:76px minmax(180px,1.2fr) minmax(140px,.85fr) minmax(220px,1.2fr) auto;align-items:end;gap:12px;padding:10px 12px;display:grid}.admin-scenario-row>*{min-width:0}.admin-scenario-row input{accent-color:var(--color-brand)}.admin-visibility-toggle{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg-soft);width:76px;height:34px;color:var(--color-text-sub);white-space:nowrap;justify-content:center;align-items:center;gap:7px;margin:0;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.admin-visibility-toggle[aria-checked=true]{border-color:var(--color-charcoal);background:var(--color-bg);color:var(--color-text)}.admin-visibility-toggle-track{background:var(--color-border-strong);border-radius:999px;flex:none;width:24px;height:14px;position:relative}.admin-visibility-toggle-thumb{background:var(--color-bg-raised);border-radius:999px;width:10px;height:10px;transition:transform .12s;position:absolute;top:2px;left:2px}.admin-visibility-toggle[aria-checked=true] .admin-visibility-toggle-track{background:var(--color-charcoal)}.admin-visibility-toggle[aria-checked=true] .admin-visibility-toggle-thumb{transform:translate(10px)}.admin-visibility-toggle-label{text-align:left;min-width:33px}.admin-scenario-main,.admin-scenario-type,.admin-scenario-year,.admin-scenario-range label{gap:5px;min-width:0;display:grid}.admin-scenario-range{grid-template-columns:1fr 1fr;gap:8px;min-width:0;display:grid}.admin-scenario-field-label{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.admin-scenario-main input,.admin-scenario-type select,.admin-scenario-year select,.admin-default-scenario-setting select,.admin-defaults-grid input,.admin-defaults-grid select,.admin-default-month-grid input,.admin-scenario-range select{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;height:34px;color:var(--color-text);padding:0 10px;font-size:12px}.admin-defaults-grid input,.admin-defaults-grid select,.admin-default-month-grid input{height:40px;font-size:13px}.admin-scenario-type select,.admin-scenario-year select,.admin-default-scenario-setting select,.admin-defaults-grid select,.admin-scenario-range select{font-variant-numeric:tabular-nums}.admin-save-message{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-size:12px;font-weight:600;overflow:hidden}.admin-spot-sync{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-spot-sync-copy{gap:5px;min-width:0;display:grid}.admin-spot-sync-copy strong{min-width:0;color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}.admin-spot-sync-note{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.55;overflow:hidden}.admin-spot-sync-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.admin-spot-sync-year{color:var(--color-text);white-space:nowrap;align-items:center;gap:8px;font-size:12px;font-weight:600;display:inline-flex}.admin-spot-sync-year select{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-width:112px;min-height:34px;color:var(--color-text);font:inherit;padding:0 30px 0 10px}.admin-sync-button{border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;border:1px solid var(--color-charcoal);background:var(--color-charcoal);min-height:34px;color:var(--color-text-inverse);justify-content:center;align-items:center;padding:0 14px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.admin-sync-button:disabled{cursor:wait;opacity:.72}.estimate-defaults-section{gap:10px;min-width:0;display:grid}.estimate-defaults-section h4{color:var(--color-text);margin:0;font-size:13px;font-weight:700}.estimate-field-group{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);min-width:0}.estimate-field-group summary{min-height:38px;color:var(--color-text);cursor:pointer;align-items:center;padding:0 12px;font-size:12px;font-weight:700;list-style:none;display:flex}.estimate-field-group summary::-webkit-details-marker{display:none}.estimate-field-group summary:before{width:14px;color:var(--color-text-sub);content:">";margin-right:6px;font-size:16px;line-height:1;transition:transform .12s;transform:rotate(0)}.estimate-field-group[open] summary{border-bottom:1px solid var(--color-border)}.estimate-field-group[open] summary:before{transform:rotate(90deg)}.estimate-field-group-body{gap:12px;min-width:0;padding:12px;display:grid}.estimate-field-group-body .estimate-field-group{background:var(--color-bg-soft)}.estimate-reference-period{margin-bottom:12px}.estimate-defaults-grid,.estimate-defaults-rate-groups,.estimate-default-month-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.estimate-defaults-field,.estimate-defaults-textarea-field,.estimate-default-month-grid label{gap:5px;min-width:0;display:grid}.estimate-defaults-section .estimate-defaults-field span,.estimate-defaults-section .estimate-defaults-textarea-field span,.estimate-defaults-section .estimate-rate-list-header span,.estimate-defaults-section .estimate-monthly-fee-block>span,.estimate-defaults-section .estimate-default-month-grid label span{min-width:0;color:var(--color-text-sub);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.estimate-defaults-field input,.estimate-defaults-field select,.estimate-defaults-readonly-field output,.estimate-rate-row input,.estimate-default-month-grid input,.estimate-defaults-textarea-field textarea{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);width:100%;color:var(--color-text);font-size:13px}.estimate-defaults-field input,.estimate-defaults-field select,.estimate-defaults-readonly-field output,.estimate-rate-row input,.estimate-default-month-grid input{height:36px;padding:0 10px}.estimate-defaults-readonly-field output{background:var(--color-bg-soft);color:var(--color-text);font-variant-numeric:tabular-nums;align-items:center;font-weight:600;display:flex}.estimate-defaults-textarea-field textarea{resize:vertical;min-height:76px;padding:8px 10px;line-height:1.45}.estimate-rate-list,.estimate-monthly-fee-block{gap:8px;min-width:0;display:grid}.estimate-monthly-tables{gap:12px;min-width:0;display:grid}.estimate-monthly-table-section{gap:6px;min-width:0;display:grid}.estimate-monthly-table-section h5{color:var(--color-text);margin:0;font-size:12px;font-weight:700}.estimate-monthly-table-scroll{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg);min-width:0;overflow-x:auto}.estimate-monthly-display-table,.estimate-monthly-input-table{border-collapse:collapse;width:100%;min-width:960px;color:var(--color-text);font-size:12px}.estimate-monthly-display-table th,.estimate-monthly-display-table td,.estimate-monthly-input-table th,.estimate-monthly-input-table td{border-bottom:1px solid var(--color-border);border-left:1px solid var(--color-border);text-align:right;white-space:nowrap;padding:8px 10px}.estimate-monthly-display-table th:first-child,.estimate-monthly-display-table td:first-child,.estimate-monthly-input-table th:first-child,.estimate-monthly-input-table td:first-child{border-left:0}.estimate-monthly-display-table thead th,.estimate-monthly-input-table thead th{background:var(--color-bg-soft);color:var(--color-text-sub);font-weight:700}.estimate-monthly-display-table tbody th,.estimate-monthly-input-table tbody th{background:var(--color-bg-soft);text-align:left;font-weight:700}.estimate-monthly-display-table th:first-child,.estimate-monthly-display-table td:last-child,.estimate-monthly-display-table th:last-child,.estimate-monthly-input-table th:first-child{text-align:left}.estimate-monthly-display-table tbody tr:last-child th,.estimate-monthly-display-table tbody tr:last-child td,.estimate-monthly-input-table tbody tr:last-child th,.estimate-monthly-input-table tbody tr:last-child td{border-bottom:0}.estimate-monthly-input-table td:not(:first-child){height:40px;padding:0}.estimate-monthly-input-table input,.estimate-monthly-input-table output{box-sizing:border-box;width:100%;min-width:88px;height:40px;color:var(--color-text);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:0;border-radius:0;font-size:12px;line-height:40px}.estimate-monthly-input-table input{appearance:textfield;padding:0 10px;font-family:inherit;font-weight:500}.estimate-monthly-input-table input::-webkit-inner-spin-button{appearance:none;margin:0}.estimate-monthly-input-table input::-webkit-outer-spin-button{appearance:none;margin:0}.estimate-monthly-input-table output{background:var(--color-bg-soft);color:var(--color-text-sub);cursor:default;padding:0 10px;font-weight:600;display:block}.estimate-monthly-input-table input:focus{outline:2px solid var(--color-brand);outline-offset:-2px}.estimate-rate-list-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.estimate-rate-row{grid-template-columns:minmax(0,1fr) minmax(96px,.45fr) auto;align-items:center;gap:8px;display:grid}.estimate-rate-list button,.estimate-rate-row button{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-bg);height:32px;color:var(--color-text);cursor:pointer;white-space:nowrap;padding:0 10px;font-size:12px;font-weight:600}.estimate-defaults-textareas{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.terms-page{place-items:center;display:grid}.terms-shell{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:min(880px,100%);box-shadow:var(--shadow-md);padding:28px}.terms-header{border-bottom:1px solid var(--color-border);margin-bottom:20px;padding-bottom:18px}.terms-kicker{color:var(--color-brand-deep);margin:0 0 8px;font-size:12px;font-weight:700}.terms-header h1{color:var(--color-text);margin:0;font-size:24px;font-weight:600;line-height:1.4}.terms-header p{color:var(--color-text-sub);margin:10px 0 0;font-size:13px;line-height:1.7}.terms-body{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-soft);max-height:min(46vh,440px);padding:18px;overflow:auto}.terms-body pre{color:var(--color-text);font:inherit;overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.8}.terms-actions{justify-content:space-between;align-items:center;gap:16px;margin-top:20px;display:flex}.terms-confirmation{min-width:0;color:var(--color-text);align-items:center;gap:9px;font-size:13px;line-height:1.6;display:inline-flex}.terms-confirmation input{width:16px;height:16px;accent-color:var(--color-brand);flex:none}.terms-accept-button{border:1px solid var(--color-brand-deep);border-radius:var(--radius-sm);background:var(--color-brand);min-height:40px;color:var(--color-text-inverse);white-space:nowrap;padding:0 18px;font-size:13px;font-weight:700}.terms-accept-button:hover:not(:disabled),.terms-accept-button:focus-visible:not(:disabled){background:var(--color-brand-deep)}.terms-accept-button:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.terms-accept-button:disabled{border-color:var(--color-border-strong);background:var(--color-border-strong);color:var(--color-text-sub);cursor:not-allowed}@media (width<=720px){.terms-page{place-items:stretch stretch}.terms-shell{padding:22px}.terms-actions{flex-direction:column;align-items:stretch}.terms-accept-button{width:100%}}@media (width<=1100px){.simulator-workbench,.workbench{grid-template-columns:1fr}.workbench-sidebar{position:static}.input-progress{gap:var(--space-1);grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.input-progress li{grid-template-columns:22px minmax(0,1fr)}.result-secondary-metrics,.legacy-comparison-grid,.starter-breakdown{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-grid{grid-template-columns:1fr}}@media (width<=720px){.page{padding:var(--space-4) var(--space-4) var(--space-6)}.panel{padding:var(--space-4)}.journey-board{grid-template-columns:1fr}.journey-board li{border-inline-start:0;border-top:1px solid var(--color-border)}.journey-board li:first-child{border-top:0}.input-progress{grid-template-columns:1fr}.page-header-main{flex-direction:column;align-items:flex-start}.flow-actions{flex-direction:column;align-items:stretch}.flow-actions button{width:100%}.input-stage-actions{flex-direction:column;align-items:stretch}.input-stage-actions button{width:100%}.field-grid,.mode-switch,.csv-import,.annual-curve-input,.starter-defaults,.starter-area-grid,.starter-band-grid,.starter-industry-grid,.starter-plan-grid,.starter-scale-grid,.graph-settings-options,.fixed-rate-comparison-selects,.result-secondary-metrics,.starter-breakdown,.legacy-comparison-grid{grid-template-columns:1fr}.csv-sample-action{justify-content:stretch}.usage-mode-actions{grid-template-columns:1fr;display:grid}.usage-mode-actions .csv-import-button,.usage-mode-actions .csv-reset-button,.usage-mode-actions .csv-sample-button,.csv-sample-select{width:100%}.monthly-table{overflow-x:auto}.table-row{min-width:700px}.table-row-with-comparison{min-width:820px}.recharts-monthly-fee,.recharts-monthly-fee-comparison{height:240px}.recharts-unit-price-comparison{height:480px}.result-headline-value{font-size:26px}.result-section-head{flex-direction:column;align-items:stretch}.result-condition-select{width:100%}.sample-modal-backdrop{padding:var(--space-3);align-items:end}.sample-modal-actions{grid-template-columns:1fr;display:grid}.admin-page{padding:var(--space-4)}.admin-header{margin-bottom:var(--space-5)}.admin-status-row{justify-content:flex-start}.admin-settings-section-header{flex-direction:column;align-items:stretch}.admin-defaults-subsection-header,.admin-area-fee-group-header{flex-direction:column}.admin-wheeling-area-controls{justify-content:stretch}.admin-wheeling-area-control{flex-basis:auto;min-width:0}.admin-list div{gap:var(--space-1);grid-template-columns:1fr}.result-secondary-metrics>div+div,.legacy-comparison-grid>div+div,.starter-breakdown>div+div{border-inline-start:0;border-top:1px solid var(--color-border);padding-top:var(--space-2);margin-top:var(--space-2)}.admin-public-settings,.admin-public-meta{grid-template-columns:1fr}.admin-public-meta dd{white-space:normal}.admin-card-horizontal .admin-list,.admin-defaults-grid,.estimate-defaults-grid,.estimate-defaults-rate-groups,.estimate-defaults-textareas,.estimate-default-month-grid,.admin-default-scenario-setting,.admin-default-month-grid,.estimate-rate-row{grid-template-columns:1fr}.admin-default-actions{flex-direction:column;align-items:stretch}.admin-scenario-row{grid-template-columns:76px minmax(0,1fr)}.admin-scenario-main,.admin-scenario-type,.admin-scenario-year{grid-column:2}.admin-scenario-range{grid-column:2;grid-template-columns:1fr}.admin-remove-button{grid-column:2}.admin-spot-sync{flex-direction:column;align-items:stretch}.admin-spot-sync-actions{grid-template-columns:1fr;display:grid}.admin-spot-sync-year{justify-content:space-between}.admin-sync-button{width:100%}}
