.main-container{max-width:960px;margin:0 auto;padding:1.5rem 1.5rem 3rem}.breadcrumb{color:var(--calc-text-faded);flex-wrap:wrap;align-items:center;gap:.4rem;margin-bottom:1rem;font-size:.8rem;display:flex}.breadcrumb a{color:var(--calc-text-faded);text-decoration:none;transition:color .15s}.breadcrumb a:hover{color:var(--calc-pink)}.page-title{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin:0 0 .5rem;font-size:clamp(1.6rem,4vw,2.4rem)}.page-subtitle{color:var(--calc-text-faded);margin:0 0 1.5rem;line-height:1.5}.calc-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.25rem;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.input-card,.result-card{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);padding:1.25rem 1.5rem}.card-title{font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.06em;color:var(--calc-text-faded);margin:0 0 1rem;font-size:.85rem}.form-group{flex-direction:column;gap:.35rem;margin-bottom:.9rem;display:flex}.form-group:last-child{margin-bottom:0}.form-group label{color:var(--calc-text-faded);font-size:.82rem;font-weight:500}.form-group input,.form-group select{background:var(--calc-bg-input);border:1px solid var(--calc-border-strong);border-radius:var(--calc-radius-md);color:var(--calc-text-primary);font-family:var(--calc-font-mono);box-sizing:border-box;width:100%;padding:.6rem .8rem;font-size:1rem;transition:border-color .15s}.form-group select{font-family:var(--calc-font-headline);cursor:pointer;font-size:.875rem}.form-group input:focus,.form-group select:focus{border-color:var(--calc-pink);outline:none}.input-hint{color:var(--calc-text-dim);font-size:.75rem;line-height:1.4}.preset-chips{flex-wrap:wrap;gap:.45rem;margin-bottom:.75rem;display:flex}.preset-chip{color:var(--calc-text-faded);cursor:pointer;background:#f472b614;border:1px solid #f472b638;border-radius:999px;padding:.3rem .85rem;font-size:.78rem;transition:background .15s,border-color .15s,color .15s}.preset-chip:hover,.preset-chip.active{border-color:var(--calc-pink);color:var(--calc-pink);background:#f472b62e}.action-bar{flex-wrap:wrap;gap:.45rem;margin-bottom:1rem;display:flex}.action-btn{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);color:var(--calc-text-faded);cursor:pointer;padding:.35rem .8rem;font-size:.78rem;transition:background .15s,border-color .15s,color .15s}.action-btn:hover{border-color:var(--calc-pink);color:var(--calc-pink)}.action-btn--reset:hover{border-color:var(--calc-rose);color:var(--calc-rose)}.sai-hero{border-radius:var(--calc-radius-md);border:1px solid var(--calc-border-default);text-align:center;margin-bottom:.9rem;padding:1rem 1.25rem;transition:border-color .25s,background .25s}.sai-label{font-size:.7rem;font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.08em;color:var(--calc-text-faded);margin-bottom:.3rem}.sai-value{font-family:var(--calc-font-mono);color:var(--calc-text-primary);margin-bottom:.3rem;font-size:clamp(1.5rem,3.5vw,2rem);font-weight:700;line-height:1.15}.sai-sub{color:var(--calc-text-faded);font-size:.75rem;line-height:1.4}.sai-hero.sai-low{background:#34d39912;border-color:#34d39952}.sai-hero.sai-low .sai-value{color:var(--calc-emerald)}.sai-hero.sai-mid{background:#fbbf2412;border-color:#fbbf2447}.sai-hero.sai-mid .sai-value{color:var(--calc-gold)}.sai-hero.sai-high{background:#f472b60d;border-color:#f472b633}.sai-hero.sai-high .sai-value{color:var(--calc-pink)}.stat-row{grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:.9rem;display:grid}.stat-box{border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);text-align:center;background:#ffffff08;padding:.8rem .9rem;transition:border-color .2s,background .2s}.stat-box.stat-eligible{border-color:#34d39952}.stat-box.stat-ineligible{border-color:#fb718540}.stat-label{font-size:.68rem;font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.06em;color:var(--calc-text-faded);margin-bottom:.28rem}.stat-value{font-family:var(--calc-font-mono);color:var(--calc-text-primary);margin-bottom:.2rem;font-size:1.1rem;font-weight:700;line-height:1.2}.stat-box.stat-eligible .stat-value{color:var(--calc-emerald)}.stat-box.stat-ineligible .stat-value{color:var(--calc-text-faded)}.stat-sub{color:var(--calc-text-dim);font-size:.68rem;line-height:1.3}.contrib-breakdown{border:1px solid var(--calc-border-subtle);border-radius:var(--calc-radius-md);background:#ffffff06;margin-bottom:.75rem;padding:.65rem .9rem}.contrib-row{justify-content:space-between;align-items:center;padding:.28rem 0;font-size:.82rem;display:flex}.contrib-row+.contrib-row{border-top:1px solid #ffffff09}.contrib-label{color:var(--calc-text-faded)}.contrib-val{font-family:var(--calc-font-mono);color:var(--calc-text-primary);font-size:.88rem}.disclaimer-note{color:var(--calc-text-dim);border-left:2px solid var(--calc-border-strong);border-radius:0 var(--calc-radius-md) var(--calc-radius-md) 0;background:#ffffff05;padding:.5rem .7rem;font-size:.72rem;line-height:1.55}.elig-container{max-width:820px;margin:0 auto;padding:1.25rem 0 0}.section-heading{font-family:var(--calc-font-headline);color:var(--calc-text-primary);margin:0 0 .4rem;font-size:1.15rem}.section-intro-text{color:var(--calc-text-faded);margin:0 0 1.25rem;font-size:.82rem;line-height:1.55}.aid-loading{text-align:center;color:var(--calc-text-dim);padding:2rem 0;font-size:.9rem}.aid-table-wrap{border-radius:var(--calc-radius-md);border:1px solid var(--calc-border-default);margin-bottom:1rem;overflow-x:auto}.aid-table{border-collapse:collapse;width:100%;font-size:.875rem}.aid-table th{text-align:left;font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.05em;color:var(--calc-text-faded);border-bottom:1px solid var(--calc-border-default);background:#ffffff05;padding:.55rem .85rem;font-size:.68rem}.aid-table td{vertical-align:top;color:var(--calc-text-primary);border-bottom:1px solid #ffffff0a;padding:.75rem .85rem}.aid-table tr:last-child td{border-bottom:none}.aid-table tr:hover td{background:#ffffff05}.aid-name{min-width:170px}.aid-name-text{margin-bottom:.15rem;font-weight:500;display:block}.aid-note{color:var(--calc-text-dim);font-size:.72rem;display:block}.aid-amt{font-family:var(--calc-font-mono);white-space:nowrap;min-width:90px}.aid-status{white-space:nowrap;font-size:.8rem;font-weight:600}.status-eligible{color:var(--calc-emerald)}.status-ineligible{color:var(--calc-text-dim)}.elig-summary{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);margin-bottom:1rem;padding:.75rem 1rem}.elig-total-row{color:var(--calc-text-faded);justify-content:space-between;align-items:center;padding:.3rem 0;font-size:.875rem;display:flex}.elig-total-row+.elig-total-row{border-top:1px solid #ffffff0d;margin-top:.25rem;padding-top:.55rem}.elig-total-val{font-family:var(--calc-font-mono);color:var(--calc-emerald);font-weight:700}.elig-oop-row .elig-total-val{color:var(--calc-pink)}.elig-note{color:var(--calc-text-dim);border-left:2px solid var(--calc-border-strong);border-radius:0 var(--calc-radius-md) var(--calc-radius-md) 0;background:#ffffff05;padding:.55rem .75rem;font-size:.75rem;line-height:1.55}.school-cost-container{max-width:820px;margin:0 auto;padding:1.25rem 0 0}.coa-presets{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.coa-preset-label{color:var(--calc-text-faded);white-space:nowrap;margin-right:.15rem;font-size:.8rem}.coa-btn{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-md);color:var(--calc-text-faded);cursor:pointer;text-align:left;padding:.4rem .9rem;font-size:.8rem;line-height:1.4;transition:background .15s,border-color .15s,color .15s}.coa-btn:hover{border-color:var(--calc-pink);color:var(--calc-text-primary)}.coa-btn.active{border-color:var(--calc-pink);color:var(--calc-pink);background:#f472b61a}.coa-avg{font-family:var(--calc-font-mono);opacity:.8;font-size:.75rem;display:block}.coa-custom-group{margin-bottom:1.5rem}.coa-custom-group label{color:var(--calc-text-faded);margin-bottom:.4rem;font-size:.82rem;display:block}.coa-input-wrap{background:var(--calc-bg-input);border:1px solid var(--calc-border-strong);border-radius:var(--calc-radius-md);align-items:center;max-width:200px;transition:border-color .15s;display:flex;overflow:hidden}.coa-input-wrap:focus-within{border-color:var(--calc-pink)}.coa-dollar,.coa-per-yr{color:var(--calc-text-dim);font-family:var(--calc-font-mono);white-space:nowrap;background:#ffffff0a;flex-shrink:0;padding:.55rem;font-size:.875rem}.coa-input-wrap input{color:var(--calc-text-primary);font-family:var(--calc-font-mono);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:.55rem .35rem;font-size:1rem}.chart-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.5rem;margin-bottom:1rem;display:grid}.chart-box{background:var(--calc-bg-card);border:1px solid var(--calc-border-default);border-radius:var(--calc-radius-lg);padding:1rem 1.25rem}.chart-title{font-family:var(--calc-font-headline);text-transform:uppercase;letter-spacing:.05em;color:var(--calc-text-faded);margin:0 0 .75rem;font-size:.78rem}.chart-breakdown{flex-direction:column;gap:.5rem;padding-top:.25rem;display:flex}.breakdown-title{font-family:var(--calc-font-headline);color:var(--calc-text-faded);margin-bottom:.4rem;font-size:.85rem;font-weight:600}.breakdown-row{align-items:center;gap:.55rem;font-size:.85rem;display:flex}.breakdown-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.breakdown-lbl{color:var(--calc-text-faded);flex:1}.breakdown-val{font-family:var(--calc-font-mono);color:var(--calc-text-primary)}.breakdown-oop .breakdown-lbl,.breakdown-oop .breakdown-val{color:var(--calc-text-primary);font-weight:700}.gap-callout{margin-top:.25rem}.gap-good{border-radius:var(--calc-radius-md);color:var(--calc-emerald);text-align:center;background:#34d39914;border:1px solid #34d39947;padding:.8rem 1rem;font-size:.875rem;font-weight:600}.gap-info{border-radius:var(--calc-radius-md);color:var(--calc-text-primary);background:#60a5fa0f;border:1px solid #60a5fa38;padding:.8rem 1rem;font-size:.85rem;line-height:1.6}@media (width<=768px){.calc-grid,.chart-grid{grid-template-columns:1fr}.coa-presets{gap:.4rem}.coa-btn{padding:.35rem .65rem;font-size:.75rem}}@media (width<=480px){.main-container{padding:1rem 1rem 2.5rem}.form-row,.stat-row{grid-template-columns:1fr}.preset-chips{gap:.35rem}.preset-chip{padding:.28rem .7rem;font-size:.72rem}}[data-theme=light] .breadcrumb a:hover{color:#be185d}[data-theme=light] .input-card,[data-theme=light] .result-card,[data-theme=light] .chart-box{background:#fff;border-color:#0000001f;box-shadow:0 1px 4px #0000000f}[data-theme=light] .form-group input,[data-theme=light] .form-group select{color:#0f172a;background:#f0f4f9;border-color:#00000026}[data-theme=light] .form-group input:focus,[data-theme=light] .form-group select:focus{border-color:#be185d}[data-theme=light] .sai-hero{background:#f8fafc;border-color:#0000001f}[data-theme=light] .sai-value{color:#0f172a}[data-theme=light] .sai-hero.sai-low{background:#f0fdf4;border-color:#16a34a52}[data-theme=light] .sai-hero.sai-low .sai-value{color:#047857}[data-theme=light] .sai-hero.sai-mid{background:#fffbeb;border-color:#d9770652}[data-theme=light] .sai-hero.sai-mid .sai-value{color:#b45309}[data-theme=light] .sai-hero.sai-high{background:#fdf2f8;border-color:#be185d38}[data-theme=light] .sai-hero.sai-high .sai-value{color:#be185d}[data-theme=light] .stat-box{background:#f8fafc;border-color:#0000001a;box-shadow:0 1px 3px #0000000a}[data-theme=light] .stat-box.stat-eligible{background:#f0fdf4;border-color:#16a34a47}[data-theme=light] .stat-box.stat-ineligible{background:#fff5f7;border-color:#ef44442e}[data-theme=light] .stat-value{color:#0f172a}[data-theme=light] .stat-box.stat-eligible .stat-value{color:#047857}[data-theme=light] .stat-box.stat-ineligible .stat-value{color:#94a3b8}[data-theme=light] .contrib-breakdown{background:#f8fafc;border-color:#0000001a}[data-theme=light] .contrib-row+.contrib-row{border-top-color:#0000000f}[data-theme=light] .contrib-val{color:#0f172a}[data-theme=light] .disclaimer-note{background:#f8fafc;border-left-color:#00000024}[data-theme=light] .preset-chip{color:#475569;background:#be185d0d;border-color:#be185d2e}[data-theme=light] .preset-chip:hover,[data-theme=light] .preset-chip.active{color:#be185d;background:#be185d1a;border-color:#be185d}[data-theme=light] .action-btn{color:#64748b;background:#fff;border-color:#0000001f}[data-theme=light] .action-btn:hover{color:#be185d;border-color:#be185d}[data-theme=light] .action-btn--reset:hover{color:#e11d48;border-color:#e11d48}[data-theme=light] .aid-table-wrap{border-color:#0000001a}[data-theme=light] .aid-table th{color:#64748b;background:#f8fafc;border-bottom-color:#0000001a}[data-theme=light] .aid-table td{color:#0f172a;border-bottom-color:#0000000f}[data-theme=light] .aid-table tr:hover td{background:#f8fafc}[data-theme=light] .aid-note{color:#64748b}[data-theme=light] .status-eligible{color:#047857}[data-theme=light] .status-ineligible{color:#94a3b8}[data-theme=light] .elig-summary{background:#fff;border-color:#0000001f;box-shadow:0 1px 4px #0000000d}[data-theme=light] .elig-total-row{color:#475569}[data-theme=light] .elig-total-row+.elig-total-row{border-top-color:#0000000f}[data-theme=light] .elig-total-val{color:#047857}[data-theme=light] .elig-oop-row .elig-total-val{color:#be185d}[data-theme=light] .elig-note{background:#f8fafc;border-left-color:#00000024}[data-theme=light] .coa-btn{color:#64748b;background:#fff;border-color:#0000001f}[data-theme=light] .coa-btn:hover{color:#0f172a;border-color:#be185d}[data-theme=light] .coa-btn.active{color:#be185d;background:#be185d12;border-color:#be185d}[data-theme=light] .coa-input-wrap{background:#f0f4f9;border-color:#00000026}[data-theme=light] .coa-input-wrap:focus-within{border-color:#be185d}[data-theme=light] .coa-dollar,[data-theme=light] .coa-per-yr{color:#64748b;background:#e8edf5}[data-theme=light] .coa-input-wrap input{color:#0f172a}[data-theme=light] .chart-title{color:#64748b}[data-theme=light] .breakdown-title,[data-theme=light] .breakdown-lbl{color:#475569}[data-theme=light] .breakdown-val,[data-theme=light] .breakdown-oop .breakdown-lbl,[data-theme=light] .breakdown-oop .breakdown-val{color:#0f172a}[data-theme=light] .gap-good{color:#047857;background:#f0fdf4;border-color:#16a34a47}[data-theme=light] .gap-info{color:#1e3a5f;background:#eff6ff;border-color:#3b82f638}[data-theme=light] .section-heading{color:#0f172a}[data-theme=light] .section-intro-text{color:#475569}[data-theme=light] .aid-loading{color:#94a3b8}