:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f5f1;--surface:#fcfcfb;--surface-2:#f0efec;--ink:#0b0b0b;--ink-dim:#52514e;--ink-mute:#7c7b76;--rule:#dddcd6;--accent:#2a78d6;--warn:#b3261e;--warn-bg:#fdecea;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--font:"Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", "Roboto Mono", "D2Coding", monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121211;--surface:#1a1a19;--surface-2:#232321;--ink:#fff;--ink-dim:#c3c2b7;--ink-mute:#8f8e86;--rule:#34342f;--accent:#3987e5;--warn:#f2867d;--warn-bg:#3a1d1a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#121211;--surface:#1a1a19;--surface-2:#232321;--ink:#fff;--ink-dim:#c3c2b7;--ink-mute:#8f8e86;--rule:#34342f;--accent:#3987e5;--warn:#f2867d;--warn-bg:#3a1d1a;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font);font-variant-numeric:tabular-nums;margin:0;line-height:1.5}.wrap{max-width:960px;margin:0 auto;padding:28px 16px 80px}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--accent);word-break:break-all}.masthead{border-bottom:2px solid var(--ink);margin-bottom:18px;padding-bottom:16px}.eyebrow{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);font-size:11px}.masthead h1{letter-spacing:-.02em;margin:4px 0 6px;font-size:clamp(24px,5vw,34px)}.masthead p{color:var(--ink-dim);margin:0;font-size:14px}.panel{background:var(--surface);border:1px solid var(--rule);border-radius:10px;margin-bottom:14px;padding:16px}h2{margin:0 0 12px;font-size:17px}input,select,button,output{font:inherit;color:var(--ink);border:1px solid var(--rule);background:var(--surface);border-radius:7px;min-width:0;padding:8px 10px;font-size:15px}input[inputmode]{font-family:var(--mono)}output{background:var(--surface-2);color:var(--ink-dim);display:block}button{background:var(--ink);color:var(--surface);border-color:var(--ink);cursor:pointer;white-space:nowrap}button:disabled{opacity:.4;cursor:default}button.ghost{color:var(--ink);border-color:var(--rule);background:0 0}button.link{color:var(--accent);background:0 0;border:0;padding:0 0 0 6px;font-size:12px;text-decoration:underline}.scenario{gap:10px;display:grid}.row{gap:8px;display:flex}.row>input,.row>select{flex:1}.field{flex-direction:column;gap:4px;display:flex}.field>span{color:var(--ink-dim);font-size:12px}.field.inline{flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.field.inline input{width:110px}.cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:14px;margin-bottom:14px;display:grid}.card{flex-direction:column;gap:10px;margin:0;display:flex}.card.off .grid,.card.off .ratenote{opacity:.4}.toggle{cursor:pointer;align-items:center;gap:10px;display:flex}.toggle input{width:18px;height:18px}.toggle span{flex-direction:column;line-height:1.25;display:flex}.toggle small{color:var(--ink-mute);font-size:12px}.toggle b{font-size:17px}.swatch{border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.grid .wide{grid-column:1/-1}.ratenote{color:var(--ink-mute);margin:-4px 0 0;font-size:12px}.warn{background:var(--warn-bg);color:var(--warn);border-radius:7px;margin:0;padding:8px 12px;font-size:13px;list-style:none}.mini{border-top:1px dashed var(--rule);flex-wrap:wrap;gap:6px 18px;margin:0;padding-top:10px;display:flex}.mini div{align-items:baseline;gap:6px;display:flex}.mini dt{color:var(--ink-mute);font-size:12px}.mini dd{font-family:var(--mono);margin:0;font-weight:600}.notes{color:var(--ink-dim);font-size:13px}.notes summary{cursor:pointer;color:var(--ink-mute)}.notes ul{margin:6px 0;padding-left:18px}.notes p{margin:0}.kpis{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:18px;display:grid}.kpi{background:var(--surface-2);border-radius:8px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.kpi span{color:var(--ink-dim);font-size:12px}.kpi b{font-family:var(--mono);white-space:nowrap;letter-spacing:-.02em;font-size:clamp(14px,3.8vw,18px)}.chart{margin:0 0 14px}.chart figcaption{font-size:14px;font-weight:600}.legend{color:var(--ink-dim);flex-wrap:wrap;gap:4px 14px;margin:6px 0 10px;padding:0;font-size:13px;list-style:none;display:flex}.legend li{align-items:center;gap:6px;display:flex}.plot{grid-template-columns:auto 1fr;gap:8px;display:grid;position:relative}.yaxis{color:var(--ink-mute);text-align:right;flex-direction:column;justify-content:space-between;height:220px;margin-top:-6px;margin-bottom:-6px;font-size:11px;display:flex}.plot svg{touch-action:pan-y;width:100%;height:220px;display:block}.plot .grid{stroke:var(--rule);stroke-width:1px;vector-effect:non-scaling-stroke}.plot .base{stroke:var(--ink-mute);stroke-width:1px;vector-effect:non-scaling-stroke}.tip{pointer-events:none;z-index:2;background:var(--surface);border:1px solid var(--rule);white-space:nowrap;border-radius:8px;flex-direction:column;gap:2px;padding:8px 10px;font-size:12px;display:flex;position:absolute;top:0;transform:translate(-50%);box-shadow:0 4px 14px #0000001f}.tip span{align-items:center;gap:6px;display:flex}.tip .sum{border-top:1px solid var(--rule);margin-top:2px;padding-top:3px;font-weight:700}.xaxis{color:var(--ink-mute);justify-content:space-between;margin-top:4px;margin-left:48px;font-size:11px;display:flex}.schedule summary{cursor:pointer;font-size:14px;font-weight:600}.tablewrap{border:1px solid var(--rule);border-radius:8px;max-height:480px;margin-top:8px;overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px;font-family:var(--mono)}th,td{text-align:right;border-bottom:1px solid var(--rule);white-space:nowrap;padding:5px 8px}th{background:var(--surface-2);font-family:var(--font);font-weight:600;position:sticky;top:0}.disclaimer{color:var(--ink-mute);font-size:12px}@media (max-width:480px){.grid{grid-template-columns:1fr}.grid .field>span{font-size:12px}.row{flex-wrap:wrap}.tip{top:auto;bottom:100%}}.grid.three{grid-template-columns:repeat(3,1fr)}.grid .full,.grid.three .full{grid-column:1/-1}.ltv{background:var(--surface-2);border-radius:8px;flex-direction:column;gap:10px;padding:10px;display:flex}.seg{border:1px solid var(--rule);border-radius:7px;align-self:flex-start;display:inline-flex;overflow:hidden}.seg button{color:var(--ink-dim);background:0 0;border:0;border-radius:0;padding:6px 12px;font-size:13px}.seg button.on{background:var(--ink);color:var(--surface)}input[readonly]{background:var(--surface-2);color:var(--ink-dim)}.hint{color:var(--ink-mute);margin:0;font-size:12px}.hint b{color:var(--ink);font-family:var(--mono)}.advanced{border-top:1px dashed var(--rule);padding-top:8px;font-size:13px}.advanced summary{cursor:pointer;color:var(--ink-dim);font-weight:600}.advanced h3{margin:12px 0 4px;font-size:13px}.advanced .grid.three{margin-top:10px}.pair{grid-template-columns:1fr 1fr auto;align-items:end;gap:8px;margin:6px 0;display:grid}.pair button{padding:8px 10px}.add{margin-top:6px;padding:6px 10px;font-size:13px}table.stress td:first-child,table.stress th:first-child{text-align:left}@media (max-width:480px){.grid.three{grid-template-columns:1fr 1fr}}.grid>*,.pair>*{min-width:0}.field input,.field select,.field output{width:100%}.purchase .grid.three{margin-bottom:14px}.checks{flex-wrap:wrap;grid-column:1/-1;gap:6px 18px;font-size:14px;display:flex}.checks label{cursor:pointer;align-items:center;gap:6px;display:flex}table.costs{font-family:var(--font);margin-bottom:8px;font-size:14px}table.costs th{text-align:left;color:var(--ink-dim);background:0 0;font-weight:400;position:static}table.costs td{font-family:var(--mono)}table.costs tr.sub th,table.costs tr.sub td{color:var(--ink);border-bottom:2px solid var(--rule);font-weight:600}table.costs tr.total th,table.costs tr.total td{color:var(--ink);border-bottom:0;padding-top:10px;font-size:17px;font-weight:700}.login{flex-direction:column;gap:12px;max-width:320px;display:flex}.login input{letter-spacing:.3em;text-align:center;font-size:20px}
