:root{color-scheme:dark;--bg:#07101e;--panel:#0c1828;--panel2:#101f33;--text:#f5f7fb;--muted:#a7b2c3;--line:#23344b;--accent:#b8f25b;--danger:#ff939f;--blue:#7bb4ff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 8% 0%,#17365e80,transparent 48rem),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px),var(--bg);background-size:auto,32px 32px,32px 32px,auto;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.55}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}a{color:inherit}button,a{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}[hidden]{display:none!important}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}.skip{position:absolute;top:-80px;left:16px;padding:10px;background:var(--accent);color:var(--bg);z-index:10}.skip:focus{top:12px}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:98px;border-bottom:1px solid #23344b99}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-weight:800;font-size:23px;letter-spacing:-.8px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;color:var(--accent);background:#b8f25b0c;border:1px solid #b8f25b50;border-radius:12px;font-size:24px;font-weight:500}.brand-sub{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;color:var(--muted);font-weight:500}.site-nav{display:flex;align-items:center;gap:28px;font-size:14px}.site-nav a{text-decoration:none;color:var(--muted);padding:8px 0}.site-nav a:hover,.site-nav a[aria-current]{color:var(--text)}.free-tag{display:flex;align-items:center;gap:8px;color:#c9d6c3;font-size:12px;border:1px solid #30413c;padding:7px 11px;border-radius:99px}.free-tag:before{content:"";width:6px;height:6px;background:var(--accent);border-radius:50%}.eyebrow{display:block;font-size:11px;font-weight:750;letter-spacing:1.8px;text-transform:uppercase;color:var(--accent);margin:0 0 14px}.home-hero{display:grid;grid-template-columns:1fr 300px;gap:48px;align-items:center;padding:46px 0 34px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(34px,4vw,52px);line-height:1.13;letter-spacing:-1.8px;margin-bottom:18px;font-weight:760}.accent{color:var(--accent)}.hero-copy{font-size:16px;max-width:620px;color:var(--muted);line-height:1.7;margin:0}.hero-orbit{height:210px;position:relative;display:grid;place-items:center;isolation:isolate}.orbit-ring{position:absolute;width:182px;height:182px;border:1px solid #587eae33;border-radius:50%;transform:rotate(-18deg)}.orbit-ring:after{content:"";position:absolute;inset:24px;border:1px dashed #b8f25b28;border-radius:50%}.orbit-center{display:grid;place-items:center;width:90px;height:90px;border:1px solid #b8f25b50;border-radius:27px;background:linear-gradient(145deg,#273b3d,#132738);box-shadow:0 0 70px #b8f25b0d;color:var(--accent);font-size:56px;line-height:1}.orbit-symbol{position:absolute;display:grid;place-items:center;width:42px;height:42px;background:#112239;border:1px solid #2a4564;border-radius:12px;font-weight:550;font-size:23px;color:var(--blue)}.orbit-symbol:nth-of-type(1){top:8px;left:73px}.orbit-symbol:nth-of-type(2){right:25px;top:81px;color:var(--accent)}.orbit-symbol:nth-of-type(3){bottom:0;left:86px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:12px 0 19px}.section-heading h2{font-size:18px;letter-spacing:-.4px;margin:0}.section-heading span{font-size:12px;color:var(--muted)}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.tool-card{position:relative;display:flex;flex-direction:column;min-height:226px;padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(140deg,#10213af0,#0b1728f0);text-decoration:none;transition:transform .18s,border-color .18s,background .18s;overflow:hidden}.tool-card:hover{transform:translateY(-4px);border-color:#91bd68;background:linear-gradient(140deg,#162b42,#0e2032)}.tool-card:first-child{border-color:#b8f25b52;background:linear-gradient(140deg,#1a3036,#0c1b2b)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.tool-icon{display:grid;place-items:center;width:40px;height:40px;background:#17314e;border:1px solid #2c486a;border-radius:11px;color:var(--blue)}.tool-icon svg{width:23px;height:23px}.tool-card:first-child .tool-icon{color:var(--accent);background:#b8f25b0c;border-color:#b8f25b35}.tool-num{font:12px ui-monospace,monospace;color:#7690ad}.tool-card h3{font-size:19px;letter-spacing:-.45px;line-height:1.3;margin:0 0 9px;padding-right:20px}.tool-card p{font-size:13px;line-height:1.65;color:var(--muted);margin:0 0 22px;max-width:290px}.card-link{display:flex;align-items:center;justify-content:space-between;color:var(--accent);font-size:12px;font-weight:650;gap:16px;margin-top:auto}.card-link b{font-size:20px;font-weight:400;line-height:1}.home-bottom{display:flex;justify-content:space-between;gap:28px;padding:26px 0 10px;font-size:12px;color:var(--muted)}.home-bottom a{color:var(--text);text-underline-offset:4px}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;color:#8294ab;font-size:11px;border-top:1px solid var(--line);padding:23px 0;margin-top:24px}.site-footer a{text-underline-offset:3px}.crumbs{display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted);padding:28px 0 22px}.crumbs a{text-decoration:none;color:#c4d1df}.calc-intro{max-width:810px;margin-bottom:30px}.calc-intro h1{font-size:clamp(30px,3.6vw,43px);margin-bottom:12px}.calc-intro p{color:var(--muted);max-width:720px;font-size:15px;margin-bottom:0}.calculator-layout{display:grid;grid-template-columns:400px 1fr;gap:22px;align-items:start}.input-panel{padding:28px;border:1px solid var(--line);border-radius:20px;background:#0c1828f2}.panel-kicker{font-size:11px;letter-spacing:1.5px;font-weight:700;color:var(--muted);text-transform:uppercase;margin:0 0 24px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px;min-width:0}.field>label,.field>.field-label{font-size:13px;font-weight:650;color:#d6dfeb}.field small{color:var(--muted);font-size:11px;line-height:1.5}.input-wrap{position:relative}.input-wrap input{padding-right:55px}.unit{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:12px;color:var(--muted);pointer-events:none}input,select{display:block;width:100%;min-height:48px;background:#07111f;color:var(--text);border:1px solid #2b3f59;border-radius:10px;padding:11px 13px;font-size:16px;font-variant-numeric:tabular-nums}select{font-size:14px;padding-right:24px}input[aria-invalid=true],select[aria-invalid=true]{border:2px solid var(--danger)}.field-error{font-size:11px;color:var(--danger);margin:0}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}.options{border:0;padding:0;margin:0 0 20px}.options legend{font-size:13px;font-weight:650;color:#d6dfeb;padding:0;margin-bottom:9px}.choice{display:flex;gap:10px;align-items:flex-start;border:1px solid #29415c;background:#0a1626;padding:12px;border-radius:11px;margin:0 0 8px;cursor:pointer}.choice:has(input:checked){border-color:#b8f25b80;background:#b8f25b09}.choice input{width:15px;height:15px;min-height:0;flex-shrink:0;accent-color:var(--accent);margin:4px 0 0;padding:0}.choice span{font-size:13px;font-weight:650}.choice small{display:block;font-size:11px;line-height:1.5;color:var(--muted);font-weight:400;margin-top:2px}.extra-options{margin:0 0 22px;border-top:1px solid var(--line);padding-top:13px}.extra-options summary{color:#b9cbdf;font-size:12px;cursor:pointer;padding:5px 0}.extra-options>div{padding-top:16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;min-height:48px;border-radius:11px;text-decoration:none;border:1px solid transparent;font-weight:750;font-size:14px;background:var(--accent);color:#10200e}.button:hover{background:#c8ff72}.button.primary{width:100%}.button.secondary{background:#13253b;color:var(--text);border-color:#2a415f;min-height:38px;font-size:12px;padding:8px 13px}.button.secondary:hover{border-color:var(--blue)}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:12px}.text-button{background:transparent;border:0;color:var(--muted);font-size:12px;padding:8px}.text-button:hover{color:var(--text)}.form-error{color:var(--danger);font-size:12px;line-height:1.55;margin:12px 0 0}.privacy-note{display:flex;gap:7px;align-items:center;margin:20px 0 0;color:#8196b1;font-size:11px}.privacy-note svg{width:13px;height:13px;flex-shrink:0}.result-stack{min-width:0}.result-card{border:1px solid #31527a;border-radius:20px;padding:30px;background:radial-gradient(ellipse at 100% 0%,#38649555,transparent 80%),linear-gradient(135deg,#152b47,#102036);min-height:350px;position:relative;overflow:hidden}.result-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;text-transform:uppercase;letter-spacing:1.3px;color:#c0cfe1;margin-bottom:27px}.result-badge{display:inline-flex;align-items:center;gap:6px;font-size:10px;letter-spacing:0;text-transform:none;padding:4px 8px;border:1px solid #56708f;border-radius:99px;color:#c4d6ec}.result-badge:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.result-caption{font-size:13px;color:#b4c5db;margin-bottom:6px}.result-value{font-size:clamp(30px,3.7vw,48px);font-weight:750;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;line-height:1.18;overflow-wrap:anywhere;margin-bottom:8px}.result-value .currency{font-size:17px;font-weight:500;letter-spacing:0;color:#afc5df;margin-left:5px}.result-sub{font-size:12px;line-height:1.6;color:#b4c5db;max-width:540px;margin-bottom:25px}.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:22px}.metric{border:1px solid #35506e;background:#07152666;border-radius:12px;padding:14px;min-width:0}.metric span{display:block;color:#b3c5dc;font-size:11px;margin-bottom:4px}.metric strong{font-size:17px;letter-spacing:-.4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.result-state{font-size:12px;color:#d6e5bd;margin:16px 0 0}.empty-result{color:#a9bad1;font-size:14px;line-height:1.8}.empty-result svg{width:60px;height:60px;color:#7a98bc;display:block;margin:12px 0 28px}.result-card[data-stale=true] .result-content{opacity:.5}.result-card[data-stale=true] .result-state{color:#ffdb9b}.explanation{margin-top:18px;padding:20px 23px;border:1px solid var(--line);border-radius:15px;background:#0c1929}.explanation h2{font-size:14px;margin-bottom:8px}.explanation p,.explanation li{font-size:12px;color:var(--muted);line-height:1.75;margin-bottom:8px}.explanation p:last-child{margin-bottom:0}.explanation code{font:12px ui-monospace,monospace;color:#d0dfef;overflow-wrap:anywhere}.chart-section{border-top:1px solid #35506e;margin-top:22px;padding-top:20px}.chart-title{font-size:12px;color:#bfd0e5;margin-bottom:12px}.chart{width:100%;height:auto;display:block;overflow:visible}.chart text{font-family:inherit;fill:#afc1d9;font-size:11px}.chart .axis{stroke:#3b5472;stroke-width:1}.chart .main-line{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart .second-line{fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round}.legend{display:flex;gap:18px;flex-wrap:wrap;font-size:10px;color:#c4d2e5;margin-top:10px}.legend span{display:flex;gap:6px;align-items:center}.legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent)}.legend i.blue{background:var(--blue)}.distribution{margin:24px 0 0}.distribution-bar{display:flex;height:9px;border-radius:99px;overflow:hidden;background:#3b5068}.distribution-bar i{display:block;background:var(--accent);min-width:0}.distribution-bar i:nth-child(2){background:var(--blue)}.distribution-bar i:nth-child(3){background:#e8ba6f}.schedule{margin:25px 0 0;border:1px solid var(--line);border-radius:17px;background:#0c1828;overflow:hidden}.schedule summary{padding:19px 22px;cursor:pointer;font-size:14px;font-weight:650}.schedule-tools{padding:0 20px 15px;display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px;color:var(--muted)}.table-wrap{overflow-x:auto;max-height:450px;scrollbar-color:#3e5676 #101e31}table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap;font-variant-numeric:tabular-nums}th,td{text-align:right;padding:11px 16px;border-top:1px solid #23344b}th:first-child,td:first-child{text-align:left}th{color:#b8c8dd;font-weight:600;position:sticky;top:0;background:#13243a;z-index:1}td{color:#d5dfec}.comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.compare-item{padding:16px;border-radius:12px;border:1px solid #34516e;background:#0c1b2d}.compare-item h3{font-size:12px;margin:0 0 8px;color:#c1d4ec}.compare-item strong{font-size:19px;color:var(--text);display:block}.compare-item small{font-size:11px;color:var(--muted)}.method{margin:32px 0 0;padding:25px 28px;border:1px solid var(--line);border-radius:18px;background:#0b1727}.method h2{font-size:18px;letter-spacing:-.3px;margin-bottom:12px}.method p,.method li{font-size:13px;color:var(--muted);line-height:1.8}.method ul{padding-left:20px}.method details{border-top:1px solid var(--line);padding-top:13px;margin-top:15px}.method summary{font-size:13px;font-weight:650;cursor:pointer}.method details p{margin:10px 0 0}.method a{color:#bddcaa;text-underline-offset:3px}.notice{font-size:11px;color:#8397b1;margin:22px 0}.all-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:30px;padding:20px 0;border-top:1px solid var(--line)}.all-tools p{margin:0;font-size:13px;color:var(--muted)}.all-tools a{color:var(--accent);font-size:13px;text-decoration:none}.form-switch{margin-bottom:22px}.form-switch select{background:#12243a}.tagline{font-size:11px;color:var(--muted);margin:0}.amount-sign{color:var(--accent)}
@media(min-width:1450px){.home-hero{padding-top:58px;padding-bottom:45px}.tool-card{min-height:238px}}
@media(max-width:1000px){.calculator-layout{grid-template-columns:350px 1fr;gap:16px}.input-panel{padding:22px}.result-card{padding:24px}.tool-card{padding:21px}.hero-orbit{display:none}.home-hero{grid-template-columns:1fr;padding:35px 0}.home-hero h1{font-size:45px}.hero-copy{max-width:700px}}
@media(max-width:760px){.wrap{width:min(100% - 32px,600px)}.site-header{min-height:84px;gap:12px}.site-nav{gap:18px}.free-tag{display:none}.brand{font-size:21px}.brand-sub{font-size:8px;letter-spacing:1.1px}.brand-mark{width:36px;height:36px}.home-hero{padding:34px 0 28px}.home-hero h1{font-size:39px;letter-spacing:-1.3px}.hero-copy{font-size:14px}.tool-grid{grid-template-columns:repeat(2,1fr);gap:12px}.tool-card{min-height:225px;padding:18px}.tool-card h3{font-size:17px;padding:0}.tool-card p{font-size:12px}.card-top{margin-bottom:16px}.tool-icon{width:35px;height:35px}.home-bottom{flex-direction:column;gap:10px;padding-top:20px}.calculator-layout{grid-template-columns:1fr}.input-panel{padding:23px}.result-card{padding:24px;min-height:0}.result-value{font-size:40px}.crumbs{padding:23px 0 20px;font-size:11px}.calc-intro{margin-bottom:23px}.calc-intro h1{font-size:33px;letter-spacing:-1px}.calc-intro p{font-size:14px}.section-heading span{display:none}.site-footer{align-items:flex-start;font-size:10px;gap:18px}.method{padding:22px}.all-tools p{font-size:12px}}
@media(max-width:420px){.tool-grid{grid-template-columns:1fr}.tool-card{min-height:192px}.tool-card p{max-width:100%;margin-bottom:17px}.card-top{margin-bottom:13px}.tool-card h3{font-size:19px}.brand-sub{display:none}.site-nav{gap:16px;font-size:12px}.home-hero h1{font-size:35px}.metrics{gap:8px}.metric{padding:12px}.metric strong{font-size:16px}.comparison{grid-template-columns:1fr}.section-heading h2{font-size:17px}.result-value{font-size:35px}.form-actions{gap:5px}.button.secondary{font-size:11px}.field-pair{gap:10px}.site-footer{flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{body{background:white;color:#111}.site-header,.input-panel,.site-footer,.all-tools,.schedule-tools,.crumbs{display:none}.wrap{width:100%}.calculator-layout{display:block}.result-card,.explanation,.method,.schedule{background:white;color:#111;border-color:#bbb;box-shadow:none}.metric,.compare-item{background:white;border-color:#bbb}.result-card *,.method *,.explanation *,.metric *,.compare-item *{color:#111}.chart text{fill:#333}th{background:#eee;color:#111}td{color:#111}.table-wrap{max-height:none}}

.comparison-toggle{margin-top:24px}

.loan-fees{margin:24px 0;padding-top:22px;border-top:1px solid var(--line)}.loan-fees h2{font-size:16px;line-height:1.4;letter-spacing:-.2px;margin-bottom:18px}.fee-entry{margin-bottom:24px}.fee-entry>.field{margin-bottom:10px}.fee-units{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}.fee-units legend{font-size:11px;color:var(--muted);margin-bottom:8px}.fee-units .choice{margin:0;padding:10px 12px}.fee-units .choice small{font-size:10px}.fee-entry:has(input:disabled){opacity:.55}
