.sim{--sim-own:#5b5bff;--sim-div:#9d9dff;--sim-emit:#c59dff;--sim-lane:#e8c86a;--sim-ref:#2fd67b;--sim-intro:#7fd8cc;--sim-track:#ffffff0f;--sim-glow:#3f3ff533;--sim-accent-text:#9d9dff;--sim-pad:20px;--sim-radius:16px;--sim-gap:16px;gap:var(--sim-gap);flex-direction:column;max-width:1180px;display:flex}[data-theme=light] .sim{--sim-track:#14151d12;--sim-glow:#3f3ff51a;--sim-lane:#c9a23a;--sim-ref:#1aa85f;--sim-intro:#3fae9f;--sim-accent-text:var(--accent)}.sim-head{margin:4px 0}.sim-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--sim-accent-text);margin-bottom:8px;font-size:11px;font-weight:800}.sim-head h2{letter-spacing:-.015em;text-wrap:balance;margin:0 0 8px;font-size:clamp(22px,3.2vw,32px);font-weight:800;line-height:1.15}.sim-head p{color:var(--text-muted);margin:0;font-size:14px;line-height:1.55}.sim-lbl{letter-spacing:.09em;text-transform:uppercase;min-height:16px;color:var(--text-faint);align-items:center;gap:4px;margin:0 0 8px;font-size:10.5px;font-weight:800;display:flex}.sim-lbl-gap{margin-top:20px}.sim-gap{margin-top:16px}.sim-panel{background:var(--card);border:1px solid var(--border);border-radius:var(--sim-radius);padding:var(--sim-pad);min-width:0}.sim-seg{background:var(--input);border-radius:11px;flex-wrap:wrap;gap:2px;max-width:100%;padding:3px;display:inline-flex}.sim-seg button{font:inherit;height:32px;color:var(--text-muted);white-space:nowrap;cursor:pointer;font-variant-numeric:tabular-nums;background:0 0;border:none;border-radius:8px;padding:0 14px;font-size:12.5px;font-weight:700}.sim-seg button:hover:not(:disabled){color:var(--text)}.sim-seg button.on{background:var(--card);color:var(--text);box-shadow:0 1px 2px #00000040, inset 0 0 0 1px var(--accent)}.sim-seg button:disabled{opacity:.4;cursor:not-allowed}.sim-seg.sm button{height:28px;padding:0 11px;font-size:12px}.sim-seg.xs{border-radius:9px;padding:2px}.sim-seg.xs button{border-radius:7px;height:24px;padding:0 9px;font-size:11.5px}.sim-seg.lg{border-radius:13px;padding:4px}.sim-seg.lg button{border-radius:10px;height:38px;padding:0 18px;font-size:13.5px;font-weight:800}.sim-seg button:focus-visible,.sim-goal-chip:focus-visible,.sim-switch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sim-num{font-variant-numeric:tabular-nums;align-items:center;gap:4px;min-width:0;display:flex}.sim-num i{color:var(--text-faint);flex:none;font-style:normal;font-weight:700}.sim-num input{font:inherit;color:var(--text);font-variant-numeric:tabular-nums;background:0 0;border:none;outline:none;flex:auto;width:100%;min-width:0;padding:0}.sim-num.box{background:var(--input);border:1px solid #0000;border-radius:10px;height:42px;padding:0 12px;font-size:17px;font-weight:800;transition:border-color .15s}.sim-num.box:focus-within{border-color:var(--accent)}.sim-num.box i{font-size:14px}.sim-num.mini{background:var(--input);border:1px solid #0000;border-radius:8px;flex:none;width:92px;height:30px;padding:0 9px;font-size:13px;font-weight:800}.sim-num.mini input{text-align:right}.sim-num.mini:focus-within{border-color:var(--accent)}.sim-num.big{border-bottom:1.5px dashed var(--accent);letter-spacing:-.01em;height:40px;padding:0 2px;font-size:24px;font-weight:800}.sim-num.big:focus-within{border-bottom-style:solid}.sim-scenario{border:1px solid var(--border);border-radius:var(--sim-radius);padding:var(--sim-pad);background:radial-gradient(120% 140% at 0% 0%, var(--sim-glow), transparent 55%), var(--card)}.sim-scenario-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.sim-scenario-head .sim-lbl{margin:0}.sim-fields{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.sim-field{cursor:text;flex-direction:column;gap:6px;min-width:0;display:flex}.sim-field-lbl{height:18px;color:var(--text-muted);white-space:nowrap;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.sim-field-hint{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.sim-field-lbl .infotip{margin-left:0}.sim-fieldtip{display:inline-flex}.sim-pill{color:var(--sim-accent-text);background:var(--accent-soft);font-variant-numeric:tabular-nums;border-radius:5px;margin-right:2px;padding:1px 6px;font-style:normal;font-weight:800}.sim-live{letter-spacing:.06em;text-transform:uppercase;color:var(--success);background:#06d54a1f;border-radius:5px;padding:3px 5px;font-size:9.5px;font-style:normal;font-weight:800;line-height:1}.sim-live.mine{color:var(--sim-accent-text);background:var(--accent-soft)}.sim-facts{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px 28px;margin-top:16px;padding-top:14px;display:flex}.sim-fact{color:var(--text-faint);align-items:center;gap:8px;font-size:12.5px;display:flex}.sim-fact>span{align-items:center;gap:3px;display:inline-flex}.sim-fact b{color:var(--text);font-variant-numeric:tabular-nums}.sim-tabs{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:4px;display:flex}.sim-tab-link{color:var(--text-faint);white-space:nowrap;font-size:12.5px;font-weight:700;text-decoration:none}.sim-tab-link:hover{color:var(--text)}.sim-goal{gap:var(--sim-gap);grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:stretch;display:grid}.sim-goal-chips{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.sim-goal-chip,.sim-goal-custom{letter-spacing:-.01em;font-variant-numeric:tabular-nums;border-radius:12px;min-width:0;height:52px;font-size:17px;font-weight:800}.sim-goal-chip{border:1px solid var(--border);background:var(--input);color:var(--text-muted);cursor:pointer;padding:0 6px;font-family:inherit;transition:border-color .15s,color .15s}.sim-goal-chip:hover{color:var(--text)}.sim-goal-chip.on{color:var(--text);border-color:var(--accent);background:linear-gradient(180deg, var(--accent-soft), transparent 140%);box-shadow:0 6px 22px -12px var(--accent)}.sim-goal-custom{border:1px dashed var(--border);color:var(--text-faint);cursor:text;align-items:center;gap:2px;padding:0 10px;display:flex}.sim-goal-custom.on{border:1px solid var(--accent);color:var(--text);background:var(--accent-soft)}.sim-goal-custom input{font:inherit;color:var(--text);background:0 0;border:none;outline:none;width:100%;min-width:0;height:100%;padding:0}.sim-mix{flex-direction:column;gap:12px;margin-top:16px;display:flex}.sim-mix-bar{gap:3px;height:10px;display:flex}.sim-mix-bar i{border-radius:999px;flex-basis:0;transition:flex-grow .3s}.sim-mix-split{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sim-mix-split span{color:var(--text-muted);background:var(--input);border-radius:999px;align-items:center;gap:4px;padding:4px 10px 4px 8px;font-size:12px;display:inline-flex}.sim-mix-split span>i{border-radius:2px;width:8px;height:8px;margin-right:2px}.sim-mix-split b{color:var(--text);font-variant-numeric:tabular-nums}.sim-bar{background:var(--sim-track);border-radius:999px;height:4px;display:block;overflow:hidden}.sim-bar i{border-radius:inherit;background:var(--sim-tone,var(--accent));height:100%;transition:width .35s;display:block}.sim-result{grid-template-columns:180px minmax(0,1fr);align-items:center;gap:24px;display:grid}.sim-ring{width:100%;max-width:180px;height:auto;margin:0 auto;display:block}.sim-ring circle{transition:stroke-dasharray .45s,stroke-dashoffset .45s}.sim-ring-lbl{fill:var(--text-faint);letter-spacing:.04em;font-size:12px;font-weight:700}.sim-ring-sub{fill:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.sim-ring-val{fill:var(--text);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:30px;font-weight:800}.sim-legend{flex-direction:column;min-width:0;display:flex}.sim-legend-row{color:var(--text-muted);border-bottom:1px solid var(--border);grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:6px 10px;padding:8px 0;font-size:13px;display:grid}.sim-legend-row>i{border-radius:3px;width:10px;height:10px}.sim-legend-row .sim-bar{grid-column:2/-1;height:3px}.sim-legend-row span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.sim-legend-row b{color:var(--text);font-variant-numeric:tabular-nums}.sim-capital{color:var(--text-faint);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:2px 10px;padding-top:12px;font-size:12.5px;display:grid}.sim-capital>b{color:var(--text);text-align:right;font-variant-numeric:tabular-nums;font-size:18px}.sim-capital-split{grid-column:1/-1;gap:8px;margin-top:8px;display:flex}.sim-capital-split>span{background:var(--input);min-width:0;box-shadow:inset 3px 0 0 var(--sim-tone,var(--accent));border-radius:10px;flex-direction:column;flex:1 1 0;gap:2px;padding:8px 10px;display:flex}.sim-capital-split b{color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:14px;overflow:hidden}.sim-capital-split small{color:var(--text-faint);font-size:11px}.sim-warn{color:var(--text);background:#e5484d1a;border:1px solid #e5484d59;border-radius:10px;margin-top:10px;padding:9px 12px;font-size:12.5px;line-height:1.55}.sim-empty{color:var(--text-faint);padding:10px 0;font-size:13px}.sim-steps{grid-template-rows:auto auto auto auto 1fr auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 12px;margin:0;padding:0;list-style:none;display:grid}.sim-step{grid-row:span 6;grid-template-rows:subgrid;background:var(--card);border:1px solid var(--border);border-radius:var(--sim-radius);min-width:0;padding:16px 18px 18px;display:grid}.sim-step:not(.off){background:radial-gradient(140% 70% at 0% 0%, color-mix(in srgb, var(--sim-tone,var(--accent)) 10%, transparent), transparent 60%), var(--card)}.sim-step.off{background:0 0;border-style:dashed}.sim-step-top{align-items:center;gap:10px;height:32px;margin-bottom:12px;display:flex}.sim-step-ico{width:32px;height:32px;color:var(--sim-tone,var(--accent));background:color-mix(in srgb, var(--sim-tone,var(--accent)) 16%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--sim-tone,var(--accent)) 35%, transparent);border-radius:10px;flex:none;place-items:center;display:grid}.sim-step.off .sim-step-ico{color:var(--text-faint);box-shadow:inset 0 0 0 1px var(--border);background:0 0}.sim-step-n{color:var(--text-faint);font-variant-numeric:tabular-nums}.sim-step-n:after{content:"·";margin:0 5px}.sim-step-kind{letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:800}.sim-step h3{text-wrap:balance;align-self:end;margin:0 0 10px;font-size:15px;font-weight:800;line-height:1.3}.sim-step-size{letter-spacing:-.015em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1.1}.sim-step-note{color:var(--text-faint);font-variant-numeric:tabular-nums;margin:4px 0 14px;font-size:12px}.sim-step-body{border-top:1px solid var(--border);flex-direction:column;gap:12px;min-width:0;padding-top:14px;display:flex}.sim-step-note .infotip{vertical-align:-2px}.sim-stat{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 10px;display:grid}.sim-stat-lbl{min-width:0;color:var(--text-muted);flex-wrap:wrap;align-items:center;font-size:12.5px;line-height:1.3;display:flex}.sim-stat-lbl small{color:var(--text-faint);flex-basis:100%;margin-top:2px;font-size:11.5px}.sim-stat-val{color:var(--text);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:15px;font-weight:800}.sim-stat-val small{color:var(--text-faint);margin-left:1px;font-size:11px;font-weight:700}.sim-stat .sim-bar{grid-column:1/-1}.sim-step-action{padding-top:16px}.sim-step-cta{height:36px;color:var(--text);background:var(--input);border:1px solid var(--border);white-space:nowrap;border-radius:10px;align-items:center;padding:0 14px;font-size:12.5px;font-weight:800;text-decoration:none;display:inline-flex}.sim-step-cta:hover{border-color:var(--accent)}.sim-step-cta.primary{background:var(--accent);border-color:var(--accent);color:#fff}.sim-step-offnote{color:var(--text-faint);grid-row:span 5;margin:0;font-size:12.5px;line-height:1.55}.sim-assume{background:var(--input);border-radius:12px;flex-direction:column;gap:6px;padding:10px;display:flex}.sim-assume .sim-num.mini,.sim-assume .sim-seg{background:var(--card)}.sim-assume .sim-seg button.on{background:var(--input)}.sim-assume-row{min-height:30px;color:var(--text-muted);justify-content:space-between;align-items:center;gap:8px;font-size:12px;display:flex}.sim-assume-row>span{min-width:0;line-height:1.3}.sim-switch{background:var(--input);cursor:pointer;width:34px;height:20px;box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:999px;flex:none;margin-left:auto;padding:0;position:relative}.sim-switch span{background:var(--text-faint);border-radius:50%;width:14px;height:14px;transition:transform .18s,background .18s;position:absolute;top:3px;left:3px}.sim-switch.on{background:var(--accent);box-shadow:none}.sim-switch.on span{background:#fff;transform:translate(14px)}.sim-xyz-head{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:20px;display:flex}.sim-xyz-head .sim-lbl{margin:0}.sim-eq{grid-template-columns:minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr) 20px minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.sim-op{color:var(--text-faint);place-items:center;font-size:20px;font-weight:700;display:grid}.sim-var{border:1px solid var(--border);background:var(--input);border-radius:14px;flex-direction:column;gap:10px;min-width:0;padding:14px;display:flex;position:relative}.sim-var.solved{border-color:var(--accent);background:radial-gradient(120% 120% at 100% 0%, var(--sim-glow), transparent 60%), var(--card);box-shadow:0 10px 30px -18px var(--accent)}.sim-var-top{align-items:center;gap:8px;min-height:20px;display:flex}.sim-var.solved .sim-var-top{padding-right:56px}.sim-var.solved:after{content:"solved";letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--accent);border-radius:5px;place-items:center;height:18px;padding:0 6px;font-size:9.5px;font-weight:800;display:grid;position:absolute;top:15px;right:14px}.sim-var-sym{width:20px;height:20px;color:var(--sim-accent-text);background:var(--accent-soft);border-radius:6px;flex:none;place-items:center;font-size:12px;font-weight:800;display:grid}.sim-var-name{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.sim-var-val{letter-spacing:-.01em;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;height:40px;font-size:24px;font-weight:800;display:flex;overflow:hidden}.sim-var-val .sim-num{width:100%}.sim-var-sub{color:var(--text-faint);margin-top:auto;font-size:11.5px;line-height:1.45}.sim-var.income .sim-var-val{color:var(--success)}.sim-xyz-controls{flex-wrap:wrap;gap:16px 32px;margin-top:20px;display:flex}.sim-xyz-controls>div{min-width:0;max-width:100%}@media (max-width:640px){.sim-xyz-controls>div{flex:100%}}.sim-weight{margin-top:20px}.sim-weight-top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;display:flex}.sim-weight-top .sim-lbl{margin:0}.sim-weight-top b{font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.sim-weight .sim-bar{height:8px}.sim-formula{border-top:1px solid var(--border);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-top:16px;padding-top:8px;font-size:12.5px;line-height:1.55}.sim-formula>div{margin-top:6px}.sim-formula b{color:var(--text)}.sim-formula>summary,.sim-disclaimer>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:0 4px;min-height:32px;list-style:none;display:flex}.sim-formula>summary{color:var(--text-muted);font-weight:700}.sim-formula>summary::-webkit-details-marker{display:none}.sim-disclaimer>summary::-webkit-details-marker{display:none}.sim-formula>summary:after,.sim-disclaimer>summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;width:6px;height:6px;margin-left:6px;transition:transform .15s;transform:translateY(-2px)rotate(45deg)}.sim-formula[open]>summary:after,.sim-disclaimer[open]>summary:after{transform:translateY(1px)rotate(-135deg)}.sim-formula>summary:hover,.sim-disclaimer>summary:hover{color:var(--text)}.sim-formula>summary:focus-visible,.sim-disclaimer>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.sim-disclaimer{color:var(--text-faint);border-left:2px solid var(--border);padding:0 0 0 12px;font-size:12px;line-height:1.6}.sim-disclaimer b{color:var(--text-muted)}.sim-disclaimer p{margin:2px 0 6px}@media (max-width:1240px){.sim-goal{grid-template-columns:1fr}.sim-fields{grid-template-columns:repeat(6,minmax(0,1fr))}.sim-fields .sim-field{grid-column:span 2}.sim-fields .sim-field:nth-child(n+4){grid-column:span 3}}@media (max-width:1100px){.sim-steps{grid-template-rows:auto auto auto auto 1fr auto 12px auto auto auto auto 1fr auto;grid-template-columns:repeat(2,minmax(0,1fr))}.sim-step:nth-child(n+3){grid-row:8/span 6}.sim-eq{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sim-op{display:none}}@media (max-width:640px){.sim{--sim-pad:16px;--sim-gap:12px}.sim-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-fields .sim-field,.sim-fields .sim-field:nth-child(n+4){grid-column:auto}.sim-fields .sim-field:first-child{grid-column:1/-1}.sim-scenario-head{flex-direction:column;align-items:stretch}.sim-scenario .sim-seg,.sim-xyz .sim-seg,.sim-goal-pick .sim-seg{flex-wrap:nowrap;width:100%;display:flex}.sim-scenario .sim-seg button,.sim-xyz .sim-seg button,.sim-goal-pick .sim-seg button{text-overflow:ellipsis;flex:1 1 0;min-width:0;padding:0 4px;overflow:hidden}.sim-fact:first-child{flex-direction:column;align-items:stretch;gap:6px;width:100%}.sim-facts{gap:10px 20px}.sim-result{grid-template-columns:1fr;gap:16px}.sim-ring{max-width:170px}.sim-steps{flex-direction:column;gap:12px;display:flex}.sim-step,.sim-step:nth-child(n+3){flex-direction:column;grid-row:auto;display:flex}.sim-step-action{margin-top:auto}.sim-eq{grid-template-columns:1fr}.sim-goal-chips{grid-template-columns:repeat(2,minmax(0,1fr))}.sim-goal-custom{grid-column:1/-1}.sim-tab-link{display:none}.sim-tabs .sim-seg{width:100%}.sim-tabs .sim-seg button{flex:1}}@media (prefers-reduced-motion:reduce){.sim-ring circle,.sim-goal-chip,.sim-switch span,.sim-num.box,.sim-bar i,.sim-mix-bar i,.sim-formula>summary:after,.sim-disclaimer>summary:after{transition:none}}@media (max-width:640px){.sim-fact:has(.sim-seg){flex-wrap:wrap;row-gap:6px}.sim-fact .sim-seg.xs{width:100%;display:flex}.sim-fact .sim-seg.xs button{flex:1 1 0;min-width:0;height:32px}.sim-step h3{align-self:stretch}.sim-mix-split{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:6px;display:grid}.sim-mix-split span{white-space:nowrap;justify-content:center;padding:4px 6px;font-size:11.5px}.sim-assume .sim-seg.xs button{min-width:34px;height:30px}.sim-switch{position:relative}.sim-switch:after{content:"";position:absolute;inset:-8px -6px}}@media (min-width:641px) and (max-width:1100px){.sim-facts{grid-template-columns:repeat(2,max-content);column-gap:28px;display:grid}.sim-facts>:first-child{grid-column:1/-1}}@media (min-width:641px) and (max-width:1024px){.sim-fact .sim-seg.xs button,.sim-assume .sim-seg.xs button{min-width:34px;height:32px}.sim-switch{position:relative}.sim-switch:after{content:"";position:absolute;inset:-8px -6px}}
