:root{--bg-deep: #0A0807;--bg-layer-1: #15110F;--bg-layer-2: #1F1A16;--bg-elevated: #28211B;--text-primary: #E8DCC4;--text-secondary: #B5A88E;--text-muted: #8A7B6A;--text-faint: #4F463B;--accent-gold: #D4B05A;--accent-gold-dim: #8C7340;--accent-rust: #8C3A1A;--accent-moon: #C8C2B5;--border-subtle: #2A201A;--border-strong: #4A3C2E;--font-display: "Newsreader", "Source Serif Pro", "Georgia", "Songti SC", serif;--font-body: "Inter Tight", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", "Cascadia Code", "Fira Code", ui-monospace, "Menlo", monospace;--fs-display: 44px;--fs-h2: 24px;--fs-h3: 16px;--fs-body: 14px;--fs-small: 12px;--fs-tiny: 11px;--fs-number: 32px;--fs-number-sm: 18px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 64px;--sp-9: 96px;font-family:var(--font-body);font-size:var(--fs-body);line-height:1.55;color:var(--text-primary);background:var(--bg-deep);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg-deep);color:var(--text-primary)}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-deep);background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(212,176,90,.05),transparent),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(140,58,26,.04),transparent)}.app-header{border-bottom:1px solid var(--border-subtle);position:relative;flex-shrink:0}.app-header__panel{width:100%}.app-header__panel[open]{padding-bottom:var(--sp-4)}.app-header__panel>summary{list-style:none;cursor:pointer;padding:14px var(--sp-8);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;column-gap:var(--sp-5);row-gap:4px;transition:background-color .15s}.app-header__panel>summary::-webkit-details-marker{display:none}.app-header__panel>summary::marker{content:""}.app-header__panel>summary:hover{background:#d4b05a05}.app-header__eyebrow-inline{grid-column:1;grid-row:1;display:flex;align-items:center;gap:var(--sp-3);font-family:var(--font-mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-gold-dim);line-height:1}.app-header__eyebrow-line{display:inline-block;width:24px;height:1px;background:var(--accent-gold-dim)}.app-header__panel h1{grid-column:1;grid-row:2;font-family:var(--font-display);font-style:italic;font-weight:500;font-size:26px;color:var(--accent-gold);margin:0;letter-spacing:-.01em;line-height:1.1}.app-header__toggle{grid-column:2;grid-row:1 / span 2;align-self:center;font-family:var(--font-mono);font-size:16px;color:var(--text-faint);transition:transform .25s,color .15s;-webkit-user-select:none;user-select:none;padding:0 var(--sp-2)}.app-header__panel[open] .app-header__toggle{transform:rotate(180deg);color:var(--accent-gold)}.app-header__detail{padding:0 var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-3);border-top:1px solid var(--border-subtle);padding-top:var(--sp-4);margin-top:4px;animation:slide-down .25s ease-out}@keyframes slide-down{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.app-header .subtitle{font-family:var(--font-display);font-size:15px;color:var(--text-secondary);font-style:italic;margin:0;max-width:720px;line-height:1.5}.app-header .subtitle strong{font-weight:500;font-style:normal;color:var(--text-primary)}.app-header__meta{display:flex;gap:var(--sp-5);font-family:var(--font-mono);font-size:10px;color:var(--text-muted);letter-spacing:.08em}.app-header__meta span span:first-child{color:var(--text-faint);margin-right:var(--sp-2)}.app-main{display:grid;grid-template-columns:320px 1fr 320px;flex:1;min-height:0;overflow:hidden}.panel{background:var(--bg-layer-1);padding:var(--sp-6) var(--sp-5);border-right:1px solid var(--border-subtle);overflow-y:auto;overscroll-behavior:contain;position:relative;min-height:0}.quantile-panel{border-right:none;border-left:1px solid var(--border-subtle)}.panel__eyebrow{font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-gold-dim);margin:0 0 var(--sp-5) 0;padding-bottom:var(--sp-3);border-bottom:1px solid var(--border-subtle);display:flex;justify-content:space-between;align-items:baseline}.panel__eyebrow span:last-child{color:var(--text-faint);letter-spacing:.1em}.panel h2{font-family:var(--font-display);font-style:italic;color:var(--accent-gold);font-size:var(--fs-h2);font-weight:500;margin:0 0 var(--sp-5) 0;letter-spacing:-.005em}.field{margin-bottom:var(--sp-5)}.field-label{display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--text-muted);margin-bottom:var(--sp-2);letter-spacing:.1em;text-transform:uppercase}.field-label__hint{color:var(--text-faint);font-size:10px;letter-spacing:.05em;text-transform:none;font-style:italic;font-family:var(--font-display)}.field-control input[type=number],.field-control input[type=range]{width:100%;background:var(--bg-deep);border:1px solid var(--border-subtle);border-top:1px solid var(--border-strong);color:var(--text-primary);padding:10px 12px;font-family:var(--font-mono);font-size:15px;border-radius:0;outline:none;transition:border-color .15s}.field-control input[type=number]:focus,.field-control input[type=range]:focus{border-color:var(--accent-gold);border-top-color:var(--accent-gold)}.field-control input[type=number]{font-variant-numeric:tabular-nums;-webkit-appearance:none;appearance:none;-moz-appearance:textfield}.field-control input[type=number]::-webkit-inner-spin-button,.field-control input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.field-control--number{position:relative}.field-control--number .number-spinner{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:0;pointer-events:none}.field-control--number .number-spinner span{display:block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent}.field-control--number .number-spinner .up{border-bottom:5px solid var(--text-muted);margin-bottom:2px}.field-control--number .number-spinner .down{border-top:5px solid var(--text-muted)}.field-control input[type=range]{padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;height:24px}.field-control input[type=range]::-webkit-slider-runnable-track{height:1px;background:var(--text-faint)}.field-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:12px;height:12px;background:var(--accent-gold);margin-top:-6px;cursor:pointer;border-radius:0;transform:rotate(45deg)}.field-control input[type=range]::-moz-range-track{height:1px;background:var(--text-faint)}.field-control input[type=range]::-moz-range-thumb{width:12px;height:12px;background:var(--accent-gold);border:none;border-radius:0;cursor:pointer;transform:rotate(45deg)}.hint{display:inline-block;font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--text-muted);margin-top:var(--sp-2);letter-spacing:.05em}.advanced{margin-top:var(--sp-5);padding-top:var(--sp-4);border-top:1px solid var(--border-subtle)}.advanced summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--text-muted);margin-bottom:var(--sp-3);letter-spacing:.15em;text-transform:uppercase;list-style:none}.advanced summary:before{content:"▸ ";color:var(--accent-gold-dim)}.advanced[open] summary:before{content:"▾ "}.coeff-array{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.coeff-item{display:flex;align-items:center;gap:var(--sp-2);background:var(--bg-deep);border:1px solid var(--border-subtle);padding:4px 8px}.coeff-idx{font-family:var(--font-mono);font-size:10px;color:var(--text-faint);letter-spacing:.05em}.coeff-item input{width:56px;background:transparent;border:none;color:var(--accent-gold);padding:2px 0;font-family:var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;border-radius:0;outline:none}.coeff-item input:focus{background:var(--bg-elevated)}.stepper{display:flex;align-items:center;gap:0;background:var(--bg-deep);border:1px solid var(--border-subtle);border-top:1px solid var(--border-strong)}.stepper__btn{flex:0 0 36px;height:44px;background:transparent;border:none;color:var(--text-muted);font-size:22px;font-family:var(--font-display);cursor:pointer;padding:0;transition:color .15s,background-color .15s;-webkit-user-select:none;user-select:none}.stepper__btn:hover:not(:disabled){color:var(--accent-gold);background:#d4b05a14}.stepper__btn:active:not(:disabled){background:#d4b05a29}.stepper__btn:disabled{color:var(--text-faint);cursor:not-allowed}.stepper__value{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--border-subtle);border-right:1px solid var(--border-subtle);padding:4px 8px}.stepper__num{font-family:var(--font-mono);font-size:22px;color:var(--accent-gold);font-variant-numeric:tabular-nums;line-height:1.1}.stepper__caption{font-family:var(--font-display);font-style:italic;font-size:10px;color:var(--text-faint);margin-top:2px}.jukebox{display:flex;flex-direction:column;gap:8px;margin-top:4px}.jukebox__track{position:relative;height:40px;cursor:ew-resize;-webkit-user-select:none;user-select:none;outline:none}.jukebox__track:focus-visible{outline:1px solid var(--accent-gold);outline-offset:4px}.jukebox__groove{position:absolute;left:0;right:0;top:50%;height:2px;background:var(--border-subtle);transform:translateY(-50%);border-top:1px solid var(--bg-elevated);border-bottom:1px solid var(--bg-elevated)}.jukebox__tick{position:absolute;top:50%;transform:translate(-50%,-50%);width:1px;height:12px;background:var(--text-faint)}.jukebox__tick-label{position:absolute;top:22px;left:50%;transform:translate(-50%);font-family:var(--font-mono);font-size:9px;color:var(--text-faint);letter-spacing:.05em;white-space:nowrap}.jukebox__needle{position:absolute;top:50%;transform:translate(-50%,-50%);pointer-events:none;transition:left .05s linear}.jukebox--dragging .jukebox__needle{transition:none}.jukebox__needle-head{width:16px;height:16px;background:var(--accent-gold);border-radius:50%;box-shadow:0 0 0 2px var(--bg-deep),0 0 0 3px var(--accent-gold),0 2px 4px #0006;position:relative;z-index:2}.jukebox__needle-head:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border-radius:50%;background:var(--bg-deep);border:1px solid var(--accent-gold)}.jukebox__needle-line{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:1px;height:22px;background:var(--accent-gold);opacity:.4;z-index:1}.jukebox__hover{position:absolute;top:0;bottom:0;width:1px;background:var(--text-muted);pointer-events:none;opacity:.3}.jukebox__value{display:flex;align-items:baseline;gap:4px;font-family:var(--font-mono)}.jukebox__value-num{font-size:17px;color:var(--accent-gold);font-variant-numeric:tabular-nums}.jukebox__value-suffix{font-size:11px;color:var(--accent-gold-dim)}.placeholder-warn{font-family:var(--font-display);font-style:italic;font-size:13px;color:var(--text-muted);margin-top:var(--sp-6);line-height:1.6;padding:var(--sp-3) 0;border-top:1px solid var(--border-subtle)}.field-control input[type=checkbox]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;background:var(--bg-deep);border:1px solid var(--text-faint);border-radius:0;margin-right:var(--sp-2);position:relative;cursor:pointer;vertical-align:middle}.field-control input[type=checkbox]:checked{background:var(--accent-gold);border-color:var(--accent-gold)}.field-control input[type=checkbox]:checked:after{content:"✓";position:absolute;top:-2px;right:0;bottom:0;left:1px;color:var(--bg-deep);font-size:12px;font-weight:700;line-height:1}.field-control label{font-family:var(--font-mono);font-size:var(--fs-small);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em}.center-col{display:flex;flex-direction:column;background:var(--bg-deep);min-width:0;min-height:0;position:relative;overflow:hidden}.chart-row{display:grid;grid-template-columns:1fr 1fr;flex:1;min-height:0;overflow:hidden}.chart-cell{border-right:1px solid var(--border-subtle);position:relative;min-height:0;display:flex;flex-direction:column}.chart-cell:last-child{border-right:none}.chart-cell__eyebrow{font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-gold-dim);padding:var(--sp-4) var(--sp-5) 0;display:flex;justify-content:space-between;align-items:baseline}.chart-cell__eyebrow span:last-child{color:var(--text-faint)}.chart-cell__title{font-family:var(--font-display);font-style:italic;font-size:22px;color:var(--text-primary);padding:var(--sp-2) var(--sp-5) 0;font-weight:500}.chart-cell__title em{color:var(--accent-gold);font-style:italic}.chart-wrap{flex:1;width:100%;min-height:0;position:relative}.chart-placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-family:var(--font-display);font-style:italic;font-size:14px}.mc-controls{padding:var(--sp-3) var(--sp-5);border-top:1px solid var(--border-subtle);display:flex;align-items:center;gap:var(--sp-5);font-family:var(--font-mono);font-size:var(--fs-tiny);color:var(--text-muted);letter-spacing:.05em}.progress-bar{position:relative;width:240px;height:1px;background:var(--text-faint);overflow:hidden}.progress-fill{height:100%;background:var(--accent-gold);transition:width .2s}.progress-bar span{position:absolute;top:6px;left:0;font-size:10px;color:var(--accent-gold);font-family:var(--font-mono);letter-spacing:.1em}.error{color:var(--accent-rust);font-family:var(--font-mono);letter-spacing:.05em}.chart-footnote{font-family:var(--font-display);font-style:italic;font-size:12px;color:var(--text-muted);padding:0 var(--sp-5) var(--sp-3);text-align:center;letter-spacing:.02em}.quantile-panel table{width:100%;border-collapse:collapse;margin-bottom:var(--sp-5)}.quantile-panel tr{border-bottom:1px solid var(--border-subtle)}.quantile-panel th,.quantile-panel td{padding:var(--sp-3) 0;font-size:13px;border:none}.quantile-panel th{text-align:left;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);font-weight:400;letter-spacing:.15em;text-transform:uppercase}.quantile-panel td{text-align:right;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--accent-gold);font-size:14px;font-weight:500}.quantile-panel .expected{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-5) 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);margin-bottom:var(--sp-4)}.quantile-panel .expected__label{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);letter-spacing:.2em;text-transform:uppercase}.quantile-panel .expected__value{font-family:var(--font-display);font-style:italic;font-size:var(--fs-number);color:var(--accent-gold);font-weight:500;line-height:1;letter-spacing:-.01em}.quantile-panel .expected__currency{font-family:var(--font-mono);font-size:16px;color:var(--accent-gold-dim);margin-right:4px;font-style:normal}.quantile-panel .success-rate{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:var(--fs-small);color:var(--text-muted);letter-spacing:.05em}.quantile-panel .success-rate__value{color:var(--accent-moon);font-weight:500}.quantile-hint{color:var(--text-faint);text-transform:none;letter-spacing:0;font-size:10px;font-style:italic;font-family:var(--font-display)}.plan{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--border-subtle)}.plan__eyebrow{font-family:var(--font-mono);font-size:var(--fs-tiny);letter-spacing:.2em;text-transform:uppercase;color:var(--accent-gold-dim);margin-bottom:var(--sp-1)}.plan__caption{font-family:var(--font-display);font-style:italic;font-size:12px;color:var(--text-muted);margin-bottom:var(--sp-4)}.plan__list{display:flex;flex-direction:column;gap:var(--sp-3)}.plan__group{display:flex;flex-direction:column;gap:var(--sp-2)}.plan__group-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-faint);margin-top:var(--sp-2)}.plan__item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:var(--bg-deep);border-left:2px solid var(--text-faint);gap:var(--sp-2)}.plan__item--monthly{border-left-color:var(--accent-moon)}.plan__item--first{border-left-color:var(--accent-gold)}.plan__item--pack{border-left-color:var(--accent-rust)}.plan__item--direct{border-left-color:var(--text-muted)}.plan__item-name{display:flex;flex-direction:column;gap:2px;font-family:var(--font-body);font-size:12px;color:var(--text-secondary)}.plan__item-meta{font-family:var(--font-display);font-style:italic;font-size:10px;color:var(--text-faint)}.plan__item-meta--free{color:var(--accent-gold-dim);font-family:var(--font-mono);font-style:normal;letter-spacing:.05em;margin-left:4px}.plan__item-figures{display:flex;flex-direction:column;align-items:flex-end;gap:2px;text-align:right}.plan__item-cost{font-family:var(--font-mono);font-size:13px;color:var(--accent-gold);font-variant-numeric:tabular-nums}.plan__item-astralite{font-family:var(--font-mono);font-size:10px;color:var(--text-muted);font-variant-numeric:tabular-nums}.plan__total{display:flex;justify-content:space-between;align-items:baseline;margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--border-subtle)}.plan__total>span:first-child{font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted)}.plan__total-value{font-family:var(--font-display);font-style:italic;font-size:26px;color:var(--accent-gold);font-weight:500;letter-spacing:-.01em}.plan__surplus{font-family:var(--font-display);font-style:italic;font-size:11px;color:var(--text-faint);text-align:right;margin-top:var(--sp-1)}.app-footer{padding:var(--sp-5) var(--sp-8);border-top:1px solid var(--border-subtle);background:var(--bg-layer-1);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:11px;color:var(--text-muted);letter-spacing:.08em}.app-footer p{margin:0;line-height:1.6}.app-footer em{font-family:var(--font-display);font-style:italic;color:var(--text-secondary);letter-spacing:.02em;text-transform:none}.js-plotly-plot .plotly text{font-family:var(--font-display)!important;fill:var(--text-secondary)!important}
