.purchase-page{max-width:1160px;padding-top:36px;padding-bottom:56px;font-variant-numeric:tabular-nums}.purchase-header{margin-bottom:28px}.purchase-kicker{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--color-text-secondary);margin:0 0 12px}.purchase-header h1{font-size:clamp(32px,5vw,46px);letter-spacing:-.035em;line-height:1.15;margin:0 0 12px}.purchase-header>p:last-child{font-size:17px;color:var(--color-text-secondary);margin:0}.purchase-layout{display:grid;grid-template-columns:minmax(280px,380px) minmax(0,1fr);gap:40px;align-items:start}.purchase-form{border:1px solid var(--color-border);border-radius:3px;padding:26px;background:#fff}.purchase-form h2{font-size:20px;margin:0 0 18px}.purchase-field{margin-bottom:12px}.purchase-field label{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:600;margin-bottom:7px}.purchase-field label span{color:var(--color-text-secondary);font-weight:400}.purchase-field input,.purchase-field select{box-sizing:border-box;width:100%;height:42px;padding:8px 12px;border:1px solid #bcbcbc;border-radius:3px;background:white;color:var(--color-text);font:inherit;font-size:17px;min-width:0}.purchase-field input:focus,.purchase-field select:focus{border-color:var(--color-accent);outline:2px solid color-mix(in srgb,var(--color-accent) 20%,transparent);outline-offset:1px}.purchase-field small,.purchase-help{display:block;font-size:12px;line-height:1.6;color:var(--color-text-secondary);margin:6px 0 0}.purchase-field-pair{display:grid;grid-template-columns:100px minmax(0,1fr);gap:16px}.purchase-assumption{border-top:1px solid var(--color-border);padding-top:20px;margin-top:4px}.purchase-assumption .purchase-field{margin-bottom:6px}.purchase-assumption p,.purchase-assumption small{font-size:12px;line-height:1.6;margin:5px 0;color:var(--color-text-secondary)}.purchase-assumption strong{font-weight:500;color:var(--color-text)}.purchase-invest-toggle{border-top:1px solid var(--color-border);padding-top:16px;margin:16px 0}.purchase-invest-toggle label{display:flex;gap:10px;align-items:flex-start;cursor:pointer;font-size:14px;font-weight:600}.purchase-invest-toggle input{width:18px;height:18px;accent-color:var(--color-accent);margin:1px 0 0;flex-shrink:0}.purchase-invest-toggle small{display:block;font-size:12px;font-weight:400;color:var(--color-text-secondary);margin-top:5px}.purchase-submit{width:100%;background:var(--color-accent);border:1px solid var(--color-accent);color:#fff;border-radius:3px;font:inherit;font-weight:600;padding:13px 16px;display:flex;justify-content:space-between;cursor:pointer;margin-top:24px}.purchase-submit:hover{filter:brightness(.92)}.purchase-form-status{font-size:12px;color:var(--color-text-secondary);margin:10px 0 0}.purchase-form-status:empty,.purchase-error:empty{display:none}.purchase-error{font-size:12px;color:#b51c28;margin:6px 0 0}.purchase-field [aria-invalid=true]{border-color:#b51c28}.purchase-output,.purchase-result{display:contents}.purchase-summary,.purchase-empty{grid-column:2;grid-row:1;min-width:0;padding-top:4px}.purchase-option-grid,.purchase-empty-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:12px}.purchase-option{padding:22px 18px;border:1px solid #eed8da;border-top:3px solid #e52b38;background:#fff3f3;border-radius:3px;min-width:0}.purchase-option h2{font-size:15px;font-weight:500;margin:0 0 20px}.purchase-option>strong{display:block;font-size:clamp(21px,2.25vw,29px);letter-spacing:-.04em;color:#b51d2b;overflow-wrap:anywhere}.purchase-option-badge{display:block;font-size:11px;margin-top:16px;color:#8d2730}.purchase-option.is-best{border-color:#b7ddc3;border-top-color:#00a744;background:#effaf2}.purchase-option.is-best>strong,.purchase-option.is-best .purchase-option-badge{color:#08732f}.purchase-option.is-tie{border-color:#e9dc97;border-top-color:#f7d51d;background:#fffce5}.purchase-option.is-tie>strong,.purchase-option.is-tie .purchase-option-badge{color:#62551c}.purchase-summary>.purchase-help{margin-top:14px}.purchase-payment-facts{display:flex;justify-content:space-between;gap:16px;margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border);font-size:13px}.purchase-invest-detail{margin-top:30px;padding:24px;background:#f7f7f7;border-radius:3px}.purchase-invest-detail h3{font-size:16px;margin:0 0 20px}.purchase-invest-detail>div{display:flex;justify-content:space-between;gap:20px;margin:14px 0;font-size:13px}.purchase-invest-detail .purchase-contribution,.purchase-invest-detail .purchase-remainder{padding-top:14px;border-top:1px solid #ddd}.purchase-contribution strong{color:#b51d2b}.purchase-remainder strong{color:#08732f}.purchase-rate-reference{font-size:11px;line-height:1.6;color:var(--color-text-secondary);margin-top:8px}.purchase-empty-options>div{border:1px solid var(--color-border);padding:22px;border-radius:3px;background:#fafafa}.purchase-empty-options span{font-size:14px;display:block}.purchase-empty-options b{font-size:32px;color:#b8b8b8;display:block;margin-top:18px;font-weight:400}.purchase-empty>p:last-child{font-size:13px;color:var(--color-text-secondary);margin-top:16px}.purchase-schedule{grid-column:1/-1;border:1px solid var(--color-border);border-radius:3px;overflow:hidden;min-width:0}.purchase-schedule>header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:26px 28px;border-bottom:1px solid var(--color-border)}.purchase-schedule h2{font-size:24px;letter-spacing:-.02em;margin:0 0 8px}.purchase-schedule header p:last-child{font-size:13px;color:var(--color-text-secondary);margin:0}.purchase-schedule header>span{font-size:12px;white-space:nowrap;color:var(--color-text-secondary);border:1px solid var(--color-border);padding:7px 12px;border-radius:20px}.purchase-table-scroll{overflow:auto;max-height:600px}.purchase-schedule table{border-collapse:separate;border-spacing:0;width:100%;font-size:13px;white-space:nowrap}.purchase-schedule caption{text-align:left;color:var(--color-text-secondary);font-size:11px;padding:12px 28px}.purchase-schedule td,.purchase-schedule th{padding:16px 22px;border-bottom:1px solid #eee;text-align:right}.purchase-schedule tr>:first-child{text-align:left;position:sticky;left:0;background:white;z-index:1}.purchase-schedule thead th{background:#f6f6f6;font-size:12px;font-weight:500;position:sticky;top:0;z-index:2}.purchase-schedule thead th:first-child{z-index:3;background:#f6f6f6}.purchase-schedule tbody th{font-weight:500}.purchase-schedule tbody tr:nth-child(even) td,.purchase-schedule tbody tr:nth-child(even) th{background:#fcfcfc}.purchase-month-dot{display:inline-grid;place-items:center;min-width:25px;height:25px;font-size:11px;background:#f0f0f0;color:#777;border-radius:50%;margin-right:12px}.purchase-schedule .schedule-gain{color:#08732f}.purchase-schedule .schedule-balance{font-weight:650;background:#f6f8f7}.purchase-schedule .needs-contribution td,.purchase-schedule .needs-contribution th{background:#fff6f5!important}.purchase-schedule .needs-contribution .schedule-contribution{color:#b51d2b;font-weight:600}.purchase-schedule tfoot td,.purchase-schedule tfoot th{font-weight:650;background:#f3f3f3!important;border-top:2px solid #ddd;border-bottom:0}.purchase-schedule-note{font-size:12px;color:var(--color-text-secondary);padding:16px 28px;margin:0;border-top:1px solid var(--color-border)}.purchase-method{border-top:1px solid var(--color-border);padding-top:20px;margin-top:36px;max-width:800px;font-size:13px}.purchase-method summary{cursor:pointer;font-weight:500}.purchase-method p{line-height:1.7;color:var(--color-text-secondary)}.purchase-page [hidden]{display:none!important}.purchase-page :focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.purchase-output[aria-busy=true] .purchase-summary,.purchase-output[aria-busy=true] .purchase-schedule{opacity:.5}@media(max-width:800px){.purchase-layout{grid-template-columns:1fr;gap:24px}.purchase-summary,.purchase-empty{grid-column:1;grid-row:auto}.purchase-header{margin-bottom:22px}.purchase-form{padding:20px}.purchase-page{padding-top:24px}.purchase-option-grid{grid-template-columns:1fr}.purchase-option{display:grid;grid-template-columns:1fr auto;align-items:center;padding:18px;gap:6px 16px;border-top-width:1px;border-left-width:3px}.purchase-option h2{margin:0}.purchase-option>strong{font-size:24px}.purchase-option-badge{grid-column:1/-1;margin-top:2px}.purchase-schedule>header{padding:20px}.purchase-schedule td,.purchase-schedule th{padding:14px 16px}.purchase-schedule caption{padding:12px 20px}.purchase-month-dot{display:none}.purchase-payment-facts,.purchase-invest-detail>div{flex-wrap:wrap}.purchase-schedule-note{padding:16px 20px}}

/* Results and both schedules share the right-hand column. */
.purchase-output,.purchase-result{display:block;min-width:0}.purchase-output{grid-column:2;grid-row:1}.purchase-summary{padding-top:4px}.purchase-schedule{margin-top:22px}.purchase-schedule>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px;cursor:pointer;font-size:17px;font-weight:600}.purchase-schedule>summary small{display:block;font-size:12px;font-weight:400;color:var(--color-text-secondary);margin-top:7px}.schedule-chevron{font-size:22px}.purchase-schedule[open] .schedule-chevron{transform:rotate(180deg)}.purchase-schedule td,.purchase-schedule th{padding:14px 12px;font-size:12px}.purchase-example{font-size:12px;line-height:1.5;color:var(--color-text-secondary);margin:-8px 0 20px}#investment-settings{border-top:1px solid var(--color-border);padding-top:18px;margin-top:18px}@media(max-width:800px){.purchase-output{grid-column:1;grid-row:auto}}
.purchase-back{display:inline-block;color:var(--color-text-secondary);font-size:13px;text-decoration:none;margin-bottom:24px}.calculator-entry{display:flex;align-items:flex-start;gap:24px;border:1px solid var(--color-border);border-radius:3px;padding:30px;text-decoration:none;color:var(--color-text);max-width:780px}.calculator-entry:hover{border-color:var(--color-accent);background:#fafafa}.calculator-entry h2{font-size:23px;margin:0 0 10px;letter-spacing:-.02em}.calculator-entry p{font-size:15px;line-height:1.6;margin:0 0 16px;color:var(--color-text-secondary)}.calculator-entry div>span{font-size:12px;color:var(--color-text-secondary)}.calculator-symbol{font-size:30px;display:grid;place-items:center;min-width:52px;height:52px;color:var(--color-accent);background:#fff1f2;border-radius:3px}.calculator-arrow{font-size:24px;margin-left:auto;color:var(--color-accent)}@media(max-width:600px){.calculator-entry{padding:22px;gap:16px}.calculator-symbol{min-width:36px;height:36px;font-size:23px}.calculator-entry h2{font-size:20px}}

/* Selectable results retain value colors independently of selection. */
button.purchase-option{font:inherit;text-align:left;cursor:pointer;position:relative;width:100%;color:var(--color-text);transition:box-shadow .15s,border-color .15s}
.purchase-option.is-selected{outline:none;border-color:#292929;box-shadow:none}
.purchase-option:not(.is-selected):hover{border-color:#888}
.purchase-option:focus-visible{outline:2px solid #555;outline-offset:3px}
.purchase-option-title{display:block;font-size:15px;font-weight:500;margin-bottom:20px}
.purchase-value-unit{display:block;font-size:11px;color:var(--color-text-secondary);margin-top:5px}
.purchase-selection{display:block;margin-top:16px;font-size:11px;font-weight:600;color:#171717}
.purchase-comparison-intro{font-size:13px;line-height:1.6;color:var(--color-text-secondary);margin:0 0 20px}
.purchase-cost-bridge{display:block!important;border-top:1px solid #ddd;padding-top:18px;margin-top:22px!important}
.purchase-cost-bridge h4{font-size:14px;margin:0 0 16px}
.purchase-cost-bridge>div{display:flex;justify-content:space-between;gap:16px;margin:12px 0;font-size:13px}
.purchase-cost-total{border-top:1px solid #ccc;padding-top:14px;font-weight:600}
.purchase-invest-detail strong{white-space:nowrap}
.purchase-table-title{font-size:17px;margin:0;padding:20px}
@media(max-width:800px){.purchase-option-title{margin:0}.purchase-value-unit{grid-column:2;text-align:right;margin:0}.purchase-selection{grid-column:1/-1;margin-top:6px}}

/* A compact dark selection marker, separate from the cost verdict. */
.purchase-option.is-selected{border-color:#262626;box-shadow:inset 0 0 0 1px #262626}
.purchase-selection{display:inline-flex;align-items:center;justify-content:center;justify-self:start;width:fit-content;min-height:25px;padding:4px 9px;border-radius:3px;box-sizing:border-box}
.purchase-option.is-selected .purchase-selection{background:#262626;color:#fff}

.purchase-verdict{font-size:18px;line-height:1.45;letter-spacing:-.015em;margin:0 0 8px;color:var(--color-text)}.purchase-verdict strong{font-weight:650}
