html,body,#root{min-height:100%;margin:0;padding:0}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--bg:#f5f7fa;--card:#fff;--ink:#1c2433;--muted:#6a7587;--accent:#00b5b7;--accent-soft:#e0f6f6;--highlight:#fff5d6;--border:#e3e8ef;--bumped:#fff1f1;--badge:#c0392b;--warn-bg:#fff8e1;--warn-border:#f1d97a;--warn-ink:#6b5400;--compare-inner:#fffdf5;--input-bg:#fff;--stat-bg:#fafbfd;--highlight-border:#ead8a0;--modal-backdrop:#1418248c;--tooltip-bg:#1c2433;--tooltip-ink:#fff;--floor-neutral-bg:#f1f5fb;--floor-neutral-ink:#2a3754;--floor-neutral-border:#d8e1f0;--floor-warn-bg:#fff5e6;--floor-warn-ink:#7a4400;--floor-warn-border:#f5cd86}:root[data-theme=dark]{--bg:#0f1419;--card:#1a1f27;--ink:#e6ebf2;--muted:#8a93a3;--accent:#2dd5d7;--accent-soft:#133537;--highlight:#3a2f0d;--border:#2a313d;--bumped:#3a1f1f;--badge:#ff6b5e;--warn-bg:#2a2410;--warn-border:#7a6420;--warn-ink:#fde9a0;--compare-inner:#1f1d18;--input-bg:#232a35;--stat-bg:#232a35;--highlight-border:#6a541f;--modal-backdrop:#000000b3;--tooltip-bg:#e6ebf2;--tooltip-ink:#1a1f27;--floor-neutral-bg:#1f2a3d;--floor-neutral-ink:#c5d6ee;--floor-neutral-border:#2e3e58;--floor-warn-bg:#3a2a14;--floor-warn-ink:#f5c98a;--floor-warn-border:#7a5520}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,sans-serif;line-height:1.45}.page{max-width:960px;margin:0 auto;padding:32px 20px 80px}.site-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;padding:6px 0 20px;display:flex}.theme-toggle{border:1px solid var(--border);background:var(--card);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:background .15s,transform .15s;display:inline-flex}.theme-toggle:hover{background:var(--accent-soft);transform:rotate(15deg)}.brand{align-items:center;gap:16px;display:flex}.brand-logo-link{border-radius:8px;flex-shrink:0;transition:opacity .15s;display:inline-flex}.brand-logo-link:hover{opacity:.8}.brand-logo{width:64px;height:64px;display:block}.brand-text .sub a{color:var(--accent)}.brand-text h1{color:var(--accent);letter-spacing:-.01em;margin:0;font-size:26px}.brand-text .sub{color:var(--muted);margin:4px 0 0}.brand-text .testing-notice{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-ink);border-radius:8px;margin:10px 0 0;padding:10px 12px;font-size:13px;line-height:1.5}.disclaimer-banner{background:var(--warn-bg);border:1px solid var(--warn-border);color:var(--warn-ink);border-radius:10px;margin-bottom:20px;padding:16px 18px;font-size:13px;line-height:1.55}.disclaimer-banner p{margin:0 0 10px}.disclaimer-banner p:last-of-type{margin-bottom:0}.banner-actions{gap:8px;margin-top:12px;display:flex}.print-btn{background:var(--card);border:1px solid var(--warn-border);color:var(--warn-ink);cursor:pointer;border-radius:6px;padding:6px 12px;font-size:13px}.print-btn:hover{background:var(--compare-inner)}.assumptions h3{color:var(--ink);margin:12px 0 8px;font-size:14px}.assumptions h3:first-of-type{margin-top:0}.info-tip{background:var(--accent-soft);width:16px;height:16px;color:var(--accent);cursor:pointer;vertical-align:middle;border:1px solid var(--accent);border-radius:50%;outline:none;justify-content:center;align-items:center;margin-left:6px;font-family:Georgia,Times New Roman,serif;font-size:11px;font-style:italic;font-weight:600;display:inline-flex;position:relative}.info-tip:focus-visible{box-shadow:0 0 0 2px var(--accent)}.info-tip-mark{margin-top:-1px;line-height:1}.info-tip-bubble{background:var(--tooltip-bg);color:var(--tooltip-ink);text-align:left;letter-spacing:0;opacity:0;pointer-events:none;z-index:50;border-radius:6px;width:260px;padding:8px 10px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.45;transition:opacity .12s;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 6px 16px #0003}.info-tip-bubble:after{content:"";border:6px solid #0000;border-top-color:var(--tooltip-bg);position:absolute;top:100%;left:50%;transform:translate(-50%)}.info-tip:hover .info-tip-bubble,.info-tip.open .info-tip-bubble,.info-tip:focus-visible .info-tip-bubble{opacity:1}.stat-label,.field span{align-items:center;display:flex}.modal-backdrop{background:var(--modal-backdrop);z-index:100;justify-content:center;align-items:center;padding:20px;animation:.12s fade-in;display:flex;position:fixed;inset:0}.modal{background:var(--card);color:var(--ink);border-radius:10px;width:100%;max-width:560px;max-height:80vh;overflow:auto;box-shadow:0 20px 40px #0000004d}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.modal-header h3{margin:0;font-size:16px}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:22px;line-height:1}.modal-close:hover{color:var(--ink)}.modal-body{padding:16px 20px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.link-btn{color:var(--accent);cursor:pointer;font:inherit;background:0 0;border:none;padding:0;text-decoration:underline}.link-btn:hover{opacity:.8}.floor-msg{border-radius:8px;margin:16px 0 0;padding:10px 14px;font-size:13px;line-height:1.5}.floor-msg.neutral{background:var(--floor-neutral-bg);color:var(--floor-neutral-ink);border:1px solid var(--floor-neutral-border)}.floor-msg.warn{background:var(--floor-warn-bg);color:var(--floor-warn-ink);border:1px solid var(--floor-warn-border)}.bracket-wrap{overflow-x:auto}.bracket-table{min-width:640px}.bracket-table th.group-new,.bracket-table td.group-new{background:color-mix(in srgb, var(--accent) 6%, transparent)}.bracket-table th.group-old,.bracket-table td.group-old{background:color-mix(in srgb, var(--muted) 4%, transparent)}.bracket-table thead tr:first-child th.group-new{background:color-mix(in srgb, var(--accent) 14%, transparent);color:var(--ink);font-weight:600}.bracket-table thead tr:first-child th.group-old{background:color-mix(in srgb, var(--muted) 10%, transparent);color:var(--ink);font-weight:600}.bracket-table tbody.summary td{padding-top:10px;padding-bottom:10px;font-size:14px}.bracket-table tbody.summary .discount-row td.group-new,.bracket-table tbody.summary .discount-row td.group-old{background:color-mix(in srgb, var(--accent) 8%, transparent)}.bracket-table tbody.summary .taxable-row td{background:var(--highlight);border-top:1px solid var(--highlight-border);border-bottom:1px solid var(--highlight-border)}.bracket-table tbody.summary .row-sub{color:var(--muted);text-transform:none;letter-spacing:0;margin-top:2px;font-size:11px;font-weight:400}.bracket-table tbody.summary .section-spacer td{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;background:0 0;border-bottom:none;padding-top:18px;padding-bottom:4px;font-size:12px}@media print{body{background:#fff}.card.compare{animation:none;background:#fff!important;border:1px solid #888!important}.banner-actions{display:none}.disclaimer-banner{color:#000;background:#fff;border:1px solid #888}footer{page-break-inside:avoid}}.assumptions ul{color:var(--ink);margin:0;padding-left:18px;font-size:13px}.assumptions li{margin-bottom:8px;line-height:1.5}.assumptions a{color:var(--accent)}.card{background:var(--card);border:1px solid var(--border);border-radius:10px;margin-bottom:20px;padding:20px 24px}.card.compare{background:linear-gradient(var(--compare-inner), var(--compare-inner)) padding-box, linear-gradient(135deg, #ff3b30, #ff9500, #fc0, #34c759, #00c7be, #007aff, #af52de, #ff2d92, #ff3b30) border-box;background-size:100% 100%,300% 300%;border:3px solid #0000;animation:12s linear infinite rainbow-shift;position:relative;box-shadow:inset 0 0 0 1px #ffffff80}@keyframes rainbow-shift{0%{background-position:0 0,0%}to{background-position:0 0,300%}}@media (prefers-reduced-motion:reduce){.card.compare{animation:none}}.card h2{margin:0 0 16px;font-size:18px}.inputs{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;display:grid}.field{flex-direction:column;gap:4px;font-size:14px;display:flex}.field span{color:var(--muted)}.field input{border:1px solid var(--border);background:var(--input-bg);color:var(--ink);border-radius:6px;padding:8px 10px;font-size:16px}.field input:focus{outline:2px solid var(--accent);outline-offset:-1px}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:8px 10px}th{color:var(--muted);font-size:13px;font-weight:500}.num{text-align:right;font-variant-numeric:tabular-nums}tfoot td{border-bottom:none;padding-top:12px}tr.bumped{background:var(--bumped)}.badge{background:var(--badge);color:#fff;border-radius:4px;margin-left:6px;padding:1px 6px;font-size:11px;display:inline-block}.stats{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.stat{background:var(--stat-bg);border:1px solid var(--border);border-radius:8px;padding:12px 14px}.stat.highlight{background:var(--highlight);border-color:var(--highlight-border)}.stat-label{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.stat-value{font-variant-numeric:tabular-nums;margin-top:4px;font-size:22px;font-weight:600}.stat-sub{color:var(--muted);margin-top:2px;font-size:12px}.note{color:var(--muted);margin:0 0 12px;font-size:13px}.muted{color:var(--muted);font-weight:400}footer{color:var(--muted);border-top:1px solid var(--border);margin-top:24px;padding-top:16px;font-size:12px;line-height:1.55}footer p{margin:0 0 8px}footer p:last-child{margin-bottom:0}
