@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:400;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:700;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_a5c946ce-module__ebz19q__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_a5c946ce-module__ebz19q__variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_ce929fb-module__qqrwVG__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_ce929fb-module__qqrwVG__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--paper:#fff;--paper-raised:#fff;--ink:#1b2430;--ink-soft:#5b6472;--line:#e1e4ea;--teal:#1d6fe0;--teal-deep:#134fa8;--teal-tint:#e4effd;--gold:#b8902f;--gold-soft:#f3ead3;--rose:#b3423b;--font-display:var(--font-fraunces), Georgia, serif;--font-body:var(--font-inter), -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:var(--font-inter), -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.5}a{color:inherit}.app{max-width:1190px;margin:0 auto;padding:0 32px 64px}.masthead{background:var(--ink);color:var(--paper);margin-bottom:28px;padding:28px 20px 24px}.masthead-inner{max-width:1190px;margin:0 auto}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--gold);margin:0 0 6px;font-size:.72rem}.masthead h1{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 18px;font-size:2.1rem;font-weight:600}.brand-fields{grid-template-columns:repeat(3,1fr);gap:14px;max-width:820px;display:grid}.brand-fields label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:#9aa5b1;margin-bottom:4px;font-size:.68rem;display:block}.brand-fields input{width:100%;color:var(--paper);font-family:var(--font-body);background:0 0;border:none;border-bottom:1px solid #3a4556;padding:4px 0 6px;font-size:.92rem}.brand-fields input::placeholder{color:#5c6779}.brand-fields input:focus{border-bottom-color:var(--gold);outline:none}.input-columns{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px;display:grid}@media (max-width:820px){.input-columns,.brand-fields{grid-template-columns:1fr}}.panel{background:var(--paper-raised);border:1px solid var(--line);border-radius:20px;padding:22px}.panel.loan-cur{border-top:3px solid #9aa5b1}.panel.loan-new{border-top:3px solid var(--teal)}.panel+.panel{margin-top:20px}.input-columns .panel,.tables-grid .panel{margin-top:0}.loan-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:7px;margin-bottom:2px;font-size:.7rem;display:inline-flex}.loan-cur .loan-label{color:#7b8492}.loan-new .loan-label{color:var(--teal-deep)}.panel h2{font-family:var(--font-display);align-items:flex-end;min-height:2.5rem;margin:2px 0 16px;font-size:1.3rem;font-weight:600;display:flex}.section-title{font-family:var(--font-display);margin:16px 0 2px;font-size:.95rem;font-weight:600}.section-sub{color:var(--ink-soft);margin:0 0 12px;font-size:.78rem}.field{margin-bottom:12px}.field label{color:var(--ink-soft);margin-bottom:5px;font-size:.78rem;font-weight:500;display:block}.row2{grid-template-columns:1fr 1fr;gap:10px;display:grid}.input-wrap{position:relative}.input-wrap .prefix,.input-wrap .suffix{color:var(--ink-soft);pointer-events:none;font-size:.85rem;position:absolute;top:50%;transform:translateY(-50%)}.input-wrap .prefix{left:10px}.input-wrap .suffix{right:10px}input[type=number],input[type=month],input[type=text],input[type=email],input[type=password]{border:1px solid var(--line);width:100%;font-family:var(--font-mono);color:var(--ink);background:var(--paper);border-radius:10px;padding:9px 10px;font-size:.9rem}.input-wrap.has-prefix input{padding-left:22px}.input-wrap.has-suffix input{padding-right:30px}input:focus{border-color:var(--teal);box-shadow:0 0 0 3px var(--teal-tint);outline:none}hr.divider{border:none;border-top:1px solid var(--line);margin:16px 0}.lump-row{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;margin-bottom:8px;display:grid}.lump-row .remove-btn{color:var(--rose);cursor:pointer;background:0 0;border:none;padding:6px;font-size:1.1rem;line-height:1}.add-lump-btn{border:1px dashed var(--line);width:100%;color:var(--teal-deep);font-family:var(--font-body);cursor:pointer;background:0 0;border-radius:12px;margin-top:4px;padding:9px;font-size:.8rem;font-weight:600}.add-lump-btn:hover{background:var(--teal-tint);border-color:var(--teal)}.summary-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px;display:grid}@media (max-width:600px){.summary-grid{grid-template-columns:1fr}}.schedule-card{border:1px solid var(--line);background:var(--paper-raised);border-radius:20px;padding:18px 20px}.schedule-card.new{border-color:var(--teal);background:linear-gradient(180deg, var(--teal-tint) 0%, var(--paper-raised) 60%)}.schedule-card .tag{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);font-size:.68rem}.schedule-card.new .tag{color:var(--teal-deep)}.schedule-card h3{font-family:var(--font-display);margin:4px 0 14px;font-size:1.55rem}.stat-line{border-bottom:1px dotted var(--line);justify-content:space-between;padding:6px 0;font-size:.87rem;display:flex}.stat-line:last-child{border-bottom:none}.stat-line .v{font-family:var(--font-mono);font-weight:600}.savings-banner{background:var(--ink);color:var(--paper);border-radius:20px;flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:center;gap:24px;padding:18px 22px;display:flex}.savings-banner .headline{font-family:var(--font-display);font-size:1.25rem}.savings-banner .headline b{color:var(--gold);font-weight:600}.savings-banner .sub{color:#b7c0cc;margin-top:2px;font-size:.78rem}.chart-wrap{margin-top:6px}.legend{color:var(--ink-soft);gap:18px;margin-bottom:10px;font-size:.78rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.swatch{border-radius:2px;width:14px;height:3px;display:inline-block}.tables-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}@media (max-width:880px){.tables-grid{grid-template-columns:1fr}}.table-header{cursor:pointer;justify-content:space-between;align-items:center;padding:4px 0;display:flex}.table-scroll{border:1px solid var(--line);border-radius:16px;max-height:680px;margin-top:10px;display:none;overflow-y:auto}.table-scroll.open{display:block}table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:.78rem}thead th{background:var(--paper);text-align:right;border-bottom:1px solid var(--line);color:var(--ink-soft);letter-spacing:.05em;text-transform:uppercase;padding:8px 10px;font-size:.68rem;font-weight:600;position:sticky;top:0}thead th:first-child,td:first-child{text-align:left}td{text-align:right;border-bottom:1px solid #eef0ea;padding:6px 10px}tr.lump-hit td{background:var(--gold-soft)}.toggle-caret{color:var(--ink-soft);transition:transform .2s}.toggle-caret.open{transform:rotate(180deg)}.foot-note{color:var(--ink-soft);margin-top:26px;font-size:.74rem;line-height:1.6}.print-bar{justify-content:flex-end;gap:10px;margin-bottom:14px;display:flex}.print-bar button,.btn{border:1px solid var(--line);background:var(--paper-raised);color:var(--ink);font-family:var(--font-body);cursor:pointer;border-radius:10px;padding:9px 16px;font-size:.84rem;font-weight:600}.print-bar button:hover,.btn:hover{background:var(--teal-tint);border-color:var(--teal)}.btn-primary{background:var(--teal);border-color:var(--teal);color:var(--paper)}.btn-primary:hover{background:var(--teal-deep);border-color:var(--teal-deep)}.btn:disabled{opacity:.6;cursor:default}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.print-hide{display:none!important}body{background:#fff}.app{max-width:100%;padding:0 8px 20px}.masthead{margin-bottom:18px}.brand-fields{grid-template-columns:minmax(220px,320px)}.schedule-card{break-inside:avoid}.reorder-group{flex-direction:column;display:flex}.chart-panel{order:1;padding:12px 16px}.tables-grid{order:2;grid-template-columns:1fr 1fr;margin-top:12px}.table-scroll{border:none;max-height:none!important;display:block!important;overflow:visible!important}.toggle-caret{display:none}.table-header{cursor:default}thead th{padding:3px 6px;font-size:.56rem;position:static}.tables-grid .panel{padding:10px 12px}.tables-grid table{font-size:.6rem}.tables-grid td{padding:1.5px 6px}.tables-grid tr{break-inside:avoid}}.auth-shell{background:var(--ink);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.auth-card{background:var(--paper);border-radius:20px;width:100%;max-width:400px;padding:32px 30px}.auth-card h1{font-family:var(--font-display);margin:0 0 4px;font-size:1.6rem}.auth-card .sub{color:var(--ink-soft);margin:0 0 22px;font-size:.85rem}.auth-tabs{border-bottom:1px solid var(--line);gap:8px;margin-bottom:20px;display:flex}.auth-tabs button{font-family:var(--font-body);color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 4px 10px;font-size:.85rem;font-weight:600}.auth-tabs button.active{color:var(--teal-deep);border-bottom-color:var(--teal)}.auth-error{color:var(--rose);background:#fbeceb;border-radius:10px;margin-bottom:14px;padding:10px 12px;font-size:.82rem}.dash-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.dash-header h1{font-family:var(--font-display);margin:0 0 4px;font-size:1.7rem}.dash-search{margin-bottom:18px}.client-list{border:1px solid var(--line);border-radius:20px;overflow:hidden}.client-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:10px 12px 10px 20px;display:flex}.client-row:last-child{border-bottom:none}.client-row:hover{background:var(--teal-tint)}.client-row-link{min-width:0;color:inherit;flex:1;grid-template-columns:2fr 1.4fr 1fr;align-items:center;gap:12px;padding:6px 0;text-decoration:none;display:grid}.client-row .name{font-family:var(--font-display);font-size:1.05rem;font-weight:600}.client-row .ref{font-family:var(--font-mono);color:var(--ink-soft);font-size:.8rem}.client-row .updated{color:var(--ink-soft);text-align:right;font-size:.78rem}.client-delete-btn{border:1px solid var(--line);width:36px;height:36px;color:var(--rose);cursor:pointer;background:0 0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.client-delete-btn:hover{border-color:var(--rose);background:#fbeceb}.client-delete-btn:disabled{opacity:.5;cursor:default}.empty-state{text-align:center;color:var(--ink-soft);padding:40px 20px}.header-menu{position:relative}.header-menu-button{width:42px;height:42px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #3a4556;border-radius:999px;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;display:inline-flex}.header-menu-button:hover{border-color:var(--gold);background:#ffffff14}.header-menu-dropdown{background:var(--paper);border:1px solid var(--line);z-index:20;border-radius:14px;min-width:170px;position:absolute;top:calc(100% + 10px);right:0;overflow:hidden;box-shadow:0 12px 28px #1b243038}.header-menu-item{text-align:left;width:100%;font-family:var(--font-body);color:var(--ink);cursor:pointer;background:0 0;border:none;padding:11px 16px;font-size:.86rem;font-weight:500;text-decoration:none;display:block}.header-menu-item:hover{background:var(--teal-tint);color:var(--teal-deep)}.header-menu-item+.header-menu-item{border-top:1px solid var(--line)}.save-pill{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase;background:var(--teal-tint);color:var(--teal-deep);border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:.72rem;display:inline-flex}.save-pill.error{color:var(--rose);background:#fbeceb}.client-fields{grid-template-columns:1fr 1fr;gap:14px;max-width:820px;display:grid}
