/* TallyRun free tools — shared styles (tool-led SEO pages) */
:root{
  --navy:#1E293B;--navy-900:#0F172A;--navy-600:#334155;--navy-500:#475569;
  --slate-500:#64748B;--slate-300:#CBD5E1;--slate-200:#E2E8F0;--slate-100:#F1F5F9;
  --mint:#10B981;--mint-700:#047857;--mint-50:#ECFDF5;--bg:#F8FAFC;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--bg);color:var(--navy-600);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.6;-webkit-font-smoothing:antialiased;}
a{color:var(--mint-700);}
.wrap{max-width:680px;margin:0 auto;padding:28px 22px 80px;}

/* header */
.top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;}
.brand-name{font-weight:700;font-size:19px;color:var(--navy);letter-spacing:-0.3px;}
.topcta{font-size:14px;font-weight:600;color:var(--mint-700);text-decoration:none;white-space:nowrap;}

/* hero */
h1{color:var(--navy);font-size:30px;line-height:1.15;letter-spacing:-0.6px;margin:0 0 10px;}
.sub{color:var(--slate-500);font-size:16px;margin:0 0 26px;}

/* calculator card */
.calc{background:#fff;border:1px solid var(--slate-100);border-radius:18px;
  padding:24px;box-shadow:0 10px 30px rgba(15,23,42,0.05);margin-bottom:28px;}
.row{display:flex;gap:14px;flex-wrap:wrap;}
.field{flex:1;min-width:140px;margin-bottom:16px;}
label{display:block;font-weight:600;color:var(--navy);font-size:14px;margin-bottom:7px;}
.hint{font-weight:400;color:var(--slate-500);font-size:12.5px;}
.inputwrap{position:relative;}
.inputwrap .pre{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--slate-500);font-size:15px;}
input[type=number],input[type=text],select{width:100%;border:1px solid var(--slate-200);border-radius:11px;
  padding:13px 14px;font-size:16px;font-family:inherit;color:var(--navy);background:#fff;}
.inputwrap.has-pre input{padding-left:28px;}
input:focus,select:focus{outline:none;border-color:var(--navy);}
.seg{display:flex;gap:8px;}
.seg input{position:absolute;opacity:0;pointer-events:none;}
.seg label{flex:1;text-align:center;margin:0;padding:11px 8px;border:1px solid var(--slate-200);
  border-radius:10px;font-weight:600;cursor:pointer;transition:all .12s;}
.seg input:checked + label{background:var(--navy);border-color:var(--navy);color:#fff;}

/* results */
.results{margin-top:6px;border-top:1px solid var(--slate-100);padding-top:18px;}
.result{display:flex;align-items:baseline;justify-content:space-between;padding:9px 0;}
.result .k{color:var(--navy-500);font-size:14px;}
.result .v{font-size:22px;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;}
.result.hero{background:var(--mint-50);margin:10px -12px 0;padding:14px 16px;border-radius:12px;border:1px solid #D1FAE5;}
.result.hero .v{color:var(--mint-700);font-size:28px;}

/* CTA */
.cta{background:radial-gradient(900px 500px at 30% 0%,#26354b,var(--navy) 60%,var(--navy-900));
  color:#fff;border-radius:18px;padding:26px 24px;text-align:center;margin:0 0 36px;}
.cta h2{color:#fff;font-size:20px;margin:0 0 8px;letter-spacing:-0.3px;}
.cta p{color:#cbd5e1;font-size:14.5px;margin:0 0 18px;}
.btn{display:inline-block;background:var(--mint);color:#fff;font-weight:700;font-size:16px;
  text-decoration:none;padding:14px 26px;border-radius:12px;transition:opacity .12s;}
.btn:hover{opacity:.92;}

/* SEO content */
.content{font-size:15.5px;}
.content h2{color:var(--navy);font-size:21px;margin:30px 0 10px;letter-spacing:-0.3px;}
.content h3{color:var(--navy);font-size:17px;margin:22px 0 6px;}
.content p{margin:0 0 12px;}
.content ul{margin:0 0 14px;padding-left:20px;}
.content li{margin:5px 0;}
.formula{background:#fff;border:1px solid var(--slate-200);border-radius:12px;padding:14px 16px;
  font-size:15px;color:var(--navy);margin:0 0 14px;}
.related{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 0;}
.related a{background:#fff;border:1px solid var(--slate-200);border-radius:999px;padding:8px 14px;
  font-size:13.5px;font-weight:600;text-decoration:none;color:var(--navy);}

footer{margin-top:40px;color:var(--slate-500);font-size:13px;text-align:center;border-top:1px solid var(--slate-100);padding-top:22px;}
footer a{color:var(--slate-500);margin:0 8px;}
@media(max-width:520px){h1{font-size:25px;}.wrap{padding:22px 16px 64px;}}
