/* TrueStep HR calculator share row. Pairs with tshr-calc-share.js.
   Uses the site tokens from site.css (--ink, --teal, --line, --muted, --sans). */

.tshr-calc-share{margin:14px 0 22px}
.tshr-calc-share__row{display:flex;flex-wrap:wrap;gap:8px}
.legacy-page .tshr-calc-share__btn,
.tshr-calc-share__btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:9px 14px;
  border:1px solid #99a7ac;border-radius:2px;
  background:#fff;color:var(--ink,#102638);
  font:800 .8rem/1.2 var(--sans,"Public Sans",Arial,sans-serif);
  cursor:pointer;transition:background .18s,border-color .18s,color .18s
}
.tshr-calc-share__btn:hover{background:#edf4f2;border-color:var(--teal,#117E6F)}
.tshr-calc-share__btn:focus-visible{outline:3px solid #f2b94b;outline-offset:3px;border-radius:2px}
.tshr-calc-share__btn.is-done{border-color:var(--teal,#117E6F);color:var(--teal-dark,#0C5A4F)}
.tshr-calc-share__help{margin:9px 0 0;font-size:.8rem;line-height:1.5;color:var(--muted,#5d6a73)}

@media (max-width:520px){
  .tshr-calc-share__row{gap:8px}
  .tshr-calc-share__btn{flex:1 1 auto;padding:9px 12px}
  .tshr-calc-share__btn[data-calc-share="link"]{flex-basis:100%}
}

@media (prefers-reduced-motion:reduce){
  .tshr-calc-share__btn{transition:none}
}

/* ==========================================================================
   Calculator components.
   Every free calculator is built from these names. Tokens come from site.css.
   ========================================================================== */

/* ---- the "what you will need" line ---- */
.legacy-page .prestart{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 18px;align-items:baseline;margin:0 0 24px;padding:15px 20px;border:1px solid var(--line);border-left:3px solid var(--teal);background:#fff;font-size:.9rem;line-height:1.55;color:var(--ink)}
.legacy-page .prestart b{font:800 .72rem/1.5 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--teal-dark)}

/* ---- the two columns ---- */
.legacy-page .toolgrid--calc .grid{align-items:start}
.legacy-page .toolgrid--calc .card+.card{margin-top:24px}
.legacy-page .toolgrid--calc .card h2{margin:0 0 18px;font:500 clamp(1.4rem,2.1vw,1.75rem)/1.15 var(--serif);letter-spacing:-.005em;color:var(--ink)}
.legacy-page .toolgrid--calc .card h2:not(:first-child){margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}
.legacy-page .toolgrid--calc .card .sep+h2{margin-top:0;padding-top:0;border-top:0}
.legacy-page .toolgrid--calc .csub,
.legacy-page .toolgrid--calc h2+p.hint{margin:-8px 0 20px;font-size:.9rem;line-height:1.55;color:var(--muted)}
.legacy-page .toolgrid--calc .sec-label{margin:28px 0 16px;padding-top:22px;border-top:1px solid var(--line);font:800 .72rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--teal-dark)}
.legacy-page .toolgrid--calc .inner>.sec-label:first-child{margin-top:0;padding-top:0;border-top:0}

/* ---- fields ---- */
.legacy-page .toolgrid--calc .field{margin:0 0 18px}
.legacy-page .toolgrid--calc .card>.field:last-child,
.legacy-page .toolgrid--calc .inner>.field:last-child{margin-bottom:0}
.legacy-page .toolgrid--calc .field>label{display:block;margin:0 0 7px;font-size:.82rem;font-weight:800;line-height:1.35;color:var(--ink)}
.legacy-page .toolgrid--calc .hint{margin:7px 0 0;font-size:.8rem;line-height:1.5;color:var(--muted)}
.legacy-page .toolgrid--calc .card>.hint,
.legacy-page .toolgrid--calc .inner>.hint{margin:-6px 0 18px}
.legacy-page .toolgrid--calc .inner>.hint:last-child,
.legacy-page .toolgrid--calc .card>.hint:last-child{margin-bottom:0}
.legacy-page .toolgrid--calc .inner>p.hint{margin:0 0 12px}
.legacy-page .toolgrid--calc .inner>p.hint:last-child{margin-bottom:0}
.legacy-page .toolgrid--calc input[type=number],
.legacy-page .toolgrid--calc input[type=text],
.legacy-page .toolgrid--calc select{width:100%;font-variant-numeric:tabular-nums;color:var(--ink)}
.legacy-page .toolgrid--calc input:focus-visible,
.legacy-page .toolgrid--calc select:focus-visible{outline:3px solid #f2b94b;outline-offset:2px;border-color:var(--ink)}

/* two and three across */
.legacy-page .toolgrid--calc .row2,
.legacy-page .toolgrid--calc .two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:0}
.legacy-page .toolgrid--calc .three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px;row-gap:0}
.legacy-page .toolgrid--calc .row2>.field:only-child,
.legacy-page .toolgrid--calc .two>.field:only-child{grid-column:1/-1}
@supports (grid-template-rows:subgrid){
  /* label, control and help text line up across a row even when one label wraps */
  .legacy-page .toolgrid--calc .row2>.field,
  .legacy-page .toolgrid--calc .two>.field,
  .legacy-page .toolgrid--calc .three>.field{display:grid;grid-template-rows:subgrid;grid-row:span 3;align-content:start}
  .legacy-page .toolgrid--calc .row2>.field>label,
  .legacy-page .toolgrid--calc .two>.field>label,
  .legacy-page .toolgrid--calc .three>.field>label{align-self:end}
}

/* two controls under one label */
.legacy-page .toolgrid--calc .field>.two{row-gap:10px}

/* a unit in front of or behind the number */
.legacy-page .toolgrid--calc .inp{position:relative;display:flex;align-items:center}
.legacy-page .toolgrid--calc .inp .adorn,
.legacy-page .toolgrid--calc .inp .pre,
.legacy-page .toolgrid--calc .inp .suf{position:absolute;top:50%;transform:translateY(-50%);font-size:.84rem;font-weight:700;line-height:1;color:var(--muted);pointer-events:none}
.legacy-page .toolgrid--calc .inp .adorn.l,
.legacy-page .toolgrid--calc .inp .pre{left:13px}
.legacy-page .toolgrid--calc .inp .adorn.r,
.legacy-page .toolgrid--calc .inp .suf{right:13px}
.legacy-page .toolgrid--calc .inp.has-l>input,
.legacy-page .toolgrid--calc .inp.pad-l>input{padding-left:28px}
.legacy-page .toolgrid--calc .inp.has-r>input{padding-right:48px}
.legacy-page .toolgrid--calc .inp.pad-r>input{padding-right:78px}
.legacy-page .toolgrid--calc .comp-row .inp>input{padding-right:44px}

/* a number with a unit switch beside it */
.legacy-page .toolgrid--calc .pair{display:flex;align-items:stretch;gap:8px}
.legacy-page .toolgrid--calc .pair>.inp,
.legacy-page .toolgrid--calc .pair>input{flex:1 1 auto;min-width:0}
.legacy-page .toolgrid--calc .pair>.seg{flex:none;flex-wrap:nowrap;margin:0}

/* segmented choice */
.legacy-page .toolgrid--calc .seg{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 20px}
.legacy-page .toolgrid--calc .seg button{flex:0 1 auto;min-height:46px;padding:10px 16px;border:1px solid #99a7ac;border-radius:0;background:#fff;color:var(--ink);font:800 .82rem/1.2 var(--sans);cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.legacy-page .toolgrid--calc .seg button:hover{border-color:var(--teal);background:#edf4f2}
.legacy-page .toolgrid--calc .seg button.on,
.legacy-page .toolgrid--calc .seg button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:#fff}

/* rows of label plus one or two small number boxes */
.legacy-page .toolgrid--calc .prow,
.legacy-page .toolgrid--calc .brow{display:grid;grid-template-columns:minmax(0,1fr) 96px 96px;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}
.legacy-page .toolgrid--calc .brow{grid-template-columns:minmax(0,1fr) 96px 116px}
.legacy-page .toolgrid--calc .prow--one{grid-template-columns:minmax(0,1fr) 132px}
.legacy-page .toolgrid--calc .prow>label,
.legacy-page .toolgrid--calc .brow>label{font-size:.86rem;font-weight:700;line-height:1.35;color:var(--ink)}
.legacy-page .toolgrid--calc .prow.head,
.legacy-page .toolgrid--calc .brow.head{align-items:end;padding:0 0 8px;font:800 .68rem/1.3 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.legacy-page .toolgrid--calc .prow+.hint,
.legacy-page .toolgrid--calc .brow+.hint{margin:12px 0 0}
.legacy-page .toolgrid--calc .brow+.field{margin-top:22px}
.legacy-page .toolgrid--calc .thgrid{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:10px 16px;align-items:center}
.legacy-page .toolgrid--calc .card>.thgrid{margin-top:0}
.legacy-page .toolgrid--calc .thgrid>label{font-size:.86rem;font-weight:700;line-height:1.35;color:var(--ink)}
.legacy-page .toolgrid--calc label small,
.legacy-page .toolgrid--calc .comp-label small{display:block;margin-top:2px;font-size:.76rem;font-weight:500;line-height:1.4;color:var(--muted)}
.legacy-page .toolgrid--calc .thgrid>.suf,
.legacy-page .toolgrid--calc .thgrid>.pct,
.legacy-page .toolgrid--calc .thgrid>.pre,
.legacy-page .toolgrid--calc .thgrid>.plain{position:relative;display:block;min-width:0}
.legacy-page .toolgrid--calc .thgrid>.suf>span,
.legacy-page .toolgrid--calc .thgrid>.pct>span,
.legacy-page .toolgrid--calc .thgrid>.pre>span{position:absolute;top:50%;right:12px;transform:translateY(-50%);font-size:.84rem;font-weight:700;line-height:1;color:var(--muted);pointer-events:none}
.legacy-page .toolgrid--calc .thgrid>.pre>span{right:auto;left:12px}
.legacy-page .toolgrid--calc .thgrid>.suf>input,
.legacy-page .toolgrid--calc .thgrid>.pct>input{padding-right:42px}
.legacy-page .toolgrid--calc .thgrid>.pre>input{padding-left:26px}
.legacy-page .toolgrid--calc .note{font-size:.8rem;line-height:1.5;color:var(--muted)}
.legacy-page .toolgrid--calc .thgrid>.note{grid-column:1/-1;margin-top:6px}
.legacy-page .toolgrid--calc .comp-row{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:14px;align-items:center;padding:9px 0;border-bottom:1px solid var(--line)}
.legacy-page .toolgrid--calc .comp-row:last-child{border-bottom:0;padding-bottom:0}
.legacy-page .toolgrid--calc .sec-label+.comp-row{padding-top:0}
.legacy-page .toolgrid--calc .comp-label{font-size:.86rem;font-weight:700;line-height:1.35;color:var(--ink)}

/* the running equation under a pair of inputs */
.legacy-page .toolgrid--calc .eq{overflow-wrap:anywhere;margin:0 0 20px;padding:11px 14px;background:var(--mist);font-size:.88rem;line-height:1.5;color:var(--ink);font-variant-numeric:tabular-nums}

/* rows that the visitor adds (adverse impact groups) */
.legacy-page .toolgrid--calc .grow{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr);gap:0 12px;align-items:end;margin:0!important;padding:16px 0 0!important;border-top:1px solid var(--line)!important}
.legacy-page .toolgrid--calc .grow:first-child{border-top:0!important;padding-top:0!important}
.legacy-page .toolgrid--calc .grow .field{margin-bottom:16px}
.legacy-page .toolgrid--calc .grow .grem{grid-column:1/-1;justify-self:start;min-height:44px;margin:-10px 0 6px!important;padding:0!important;border:0!important;background:none!important;color:var(--teal-dark)!important;font:700 .82rem/1.2 var(--sans)!important;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.legacy-page .toolgrid--calc .grow .grem:hover{color:var(--ink)!important}

/* secondary and print buttons inside the tool */
.legacy-page .toolgrid--calc .btn.ghost,
.legacy-page .toolgrid--calc .printbtn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 18px;border:1px solid #99a7ac;border-radius:0;background:#fff;color:var(--ink)!important;font:800 .84rem/1.2 var(--sans);cursor:pointer;transition:background .18s,border-color .18s}
.legacy-page .toolgrid--calc .btn.ghost:hover,
.legacy-page .toolgrid--calc .printbtn:hover{border-color:var(--teal);background:#edf4f2;transform:none}
.legacy-page .toolgrid--calc .printbtn{border-color:var(--teal);background:var(--teal);color:#fff!important}
.legacy-page .toolgrid--calc .printbtn:hover{border-color:var(--teal-dark);background:var(--teal-dark)}
.legacy-page .toolgrid--calc .printbtn+.hint{margin-top:10px}

/* ---- collapsible sections ---- */
.legacy-page .toolgrid--calc details{margin:22px 0 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.legacy-page .toolgrid--calc details+details{margin-top:0;border-top:0}
.legacy-page .toolgrid--calc details>summary{min-height:48px;padding:14px 0 13px;font-size:.86rem;font-weight:800;line-height:1.3;color:var(--teal-dark);cursor:pointer}
.legacy-page .toolgrid--calc details>summary:hover{color:var(--ink)}
.legacy-page .toolgrid--calc details>.inner,
.legacy-page .toolgrid--calc details>.thgrid{padding:6px 0 22px}
.legacy-page .toolgrid--calc .card>details:last-child{border-bottom:0}
.legacy-page .toolgrid--calc .card>details:last-child>.inner,
.legacy-page .toolgrid--calc .card>details:last-child>.thgrid{padding-bottom:0}

/* ---- result panel ---- */
.legacy-page .toolgrid--calc .card.result .pad>h2{margin:0 0 12px;padding:0;border:0;font:800 .74rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--teal-dark)}
.legacy-page .toolgrid--calc .big{margin:0;font-variant-numeric:tabular-nums lining-nums;letter-spacing:-.01em;overflow-wrap:anywhere}
.legacy-page .toolgrid--calc .big .u{display:inline-block;margin-left:8px;font:700 .95rem/1.2 var(--sans);letter-spacing:0;color:var(--muted)}
.legacy-page .toolgrid--calc .mult{display:inline-block;max-width:100%;overflow-wrap:anywhere;margin-top:14px;padding:6px 12px;border:1px solid var(--teal);background:#fff;font:800 .78rem/1.35 var(--sans);color:var(--teal-dark)}
.legacy-page .toolgrid--calc .mult:empty{display:none}
.legacy-page .toolgrid--calc .mult.ok{border-color:var(--teal);color:var(--teal-dark)}
.legacy-page .toolgrid--calc .mult.warn{border-color:var(--brass);color:var(--ink)}
.legacy-page .toolgrid--calc .mult.high{border-color:var(--ink);background:var(--ink);color:#fff}
.legacy-page .toolgrid--calc .mult.clear{border-color:var(--line);color:var(--muted)}
.legacy-page .toolgrid--calc .twocol{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:18px 22px;margin-top:22px;padding-top:18px;border-top:1px solid #cfc9bc}
.legacy-page .toolgrid--calc .twocol+.mult{margin-top:18px}
.legacy-page .toolgrid--calc .twocol .k{margin-bottom:5px;font:800 .68rem/1.3 var(--sans);letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.legacy-page .toolgrid--calc .twocol .v{font:500 1.45rem/1.15 var(--serif);color:var(--ink);font-variant-numeric:tabular-nums lining-nums;overflow-wrap:anywhere}
.legacy-page .toolgrid--calc .sentence{margin-top:20px;padding-top:18px;border-top:1px solid #cfc9bc;font-size:.95rem;line-height:1.6;color:var(--ink);overflow-wrap:anywhere}
.legacy-page .toolgrid--calc .sentence:empty{display:none}
.legacy-page .toolgrid--calc .fy{overflow-wrap:anywhere;margin-top:12px;font-size:.9rem;line-height:1.5;color:var(--ink)}

.legacy-page .toolgrid--calc #res_verdict,
.legacy-page .toolgrid--calc #vVerdict{font-size:clamp(1.7rem,2.9vw,2.4rem);line-height:1.08;letter-spacing:-.01em}
.legacy-page .toolgrid--calc .card p{margin:0;font-size:.95rem;line-height:1.6;color:var(--ink)}
.legacy-page .toolgrid--calc .facts>.note{grid-column:1/-1;padding:10px 0 0}

/* ---- "how it adds up" rows: label left, figure right ---- */
.legacy-page .toolgrid--calc .facts{display:grid;grid-template-columns:minmax(42%,1fr) minmax(0,auto);column-gap:0;margin:0}
.legacy-page .toolgrid--calc .facts>.k,
.legacy-page .toolgrid--calc .facts>.v{padding:11px 0;border-bottom:1px solid var(--line);font-size:.93rem;line-height:1.4;color:var(--ink)}
.legacy-page .toolgrid--calc .facts>.k{min-width:0;overflow-wrap:break-word}
.legacy-page .toolgrid--calc .facts>.v{min-width:0;padding-left:20px;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.legacy-page .toolgrid--calc .facts>.v b{font-weight:800}
.legacy-page .toolgrid--calc .facts>.sep{grid-column:1/-1;height:0;margin-top:-1px;border-top:2px solid var(--ink)}
.legacy-page .toolgrid--calc .facts>.grp{grid-column:1/-1;padding:20px 0 8px;border-bottom:1px solid var(--line);font:800 .7rem/1.3 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--teal-dark)}
.legacy-page .toolgrid--calc .facts>.grp:first-child{padding-top:0}
.legacy-page .toolgrid--calc .facts>.k.sub{padding-left:16px;color:var(--muted)}
.legacy-page .toolgrid--calc .facts>.v.sub{font-weight:500;color:var(--muted)}
.legacy-page .toolgrid--calc .facts>.k.mut,
.legacy-page .toolgrid--calc .facts>.v.mut{color:var(--muted)}
.legacy-page .toolgrid--calc .facts>.k.tot,
.legacy-page .toolgrid--calc .facts>.v.tot{padding:14px 0;font:500 1.2rem/1.25 var(--serif);color:var(--ink)}
.legacy-page .toolgrid--calc .facts>.v.tot{padding-left:20px;color:var(--teal-dark)}
.legacy-page .toolgrid--calc .facts>.k:nth-last-child(2),
.legacy-page .toolgrid--calc .facts>.v:last-child{border-bottom:0;padding-bottom:0}
.legacy-page .toolgrid--calc .card>.sep,
.legacy-page .toolgrid--calc .pad>.sep{height:0;margin:24px 0;border-top:1px solid var(--line)}

/* ---- share of cost bar and its legend ---- */
.legacy-page .toolgrid--calc .bar{display:flex;height:14px;margin:4px 0 18px;overflow:hidden;border:1px solid var(--line);background:var(--mist)}
.legacy-page .toolgrid--calc .bar>span{display:block;height:100%}
.legacy-page .toolgrid--calc .legend{display:grid;grid-template-columns:minmax(34%,1fr) minmax(0,auto) auto;gap:0;font-size:.9rem}
.legacy-page .toolgrid--calc .legend>*{padding:10px 0 10px 18px;border-bottom:1px solid var(--line)}
.legacy-page .toolgrid--calc .legend .lab{display:flex;align-items:center;gap:10px;padding-left:0;line-height:1.35;color:var(--ink)}
.legacy-page .toolgrid--calc .legend .dot{flex:none;width:11px;height:11px}
.legacy-page .toolgrid--calc .legend .amt{min-width:0;overflow-wrap:anywhere;text-align:right;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink)}
.legacy-page .toolgrid--calc .legend .pct{min-width:46px;text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}
.legacy-page .toolgrid--calc .legend .tot{margin-top:-1px;padding-top:13px;padding-bottom:0;border-top:2px solid var(--ink);border-bottom:0;font:500 1.12rem/1.3 var(--serif);color:var(--ink)}
.legacy-page .toolgrid--calc .legend .amt.tot{color:var(--teal-dark)}
.legacy-page .toolgrid--calc .legend .pct.tot{color:var(--muted)}

/* ---- progressive discipline ladder ---- */
.legacy-page .toolgrid--calc .ladder{display:grid;gap:0}
.legacy-page .toolgrid--calc .lrow{display:grid;grid-template-columns:14px minmax(40%,1fr) minmax(0,auto);gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--muted)}
.legacy-page .toolgrid--calc .lrow:last-child{border-bottom:0;padding-bottom:0}
.legacy-page .toolgrid--calc .lrow .dot{width:11px;height:11px;border:2px solid #8a999d;background:#fff}
.legacy-page .toolgrid--calc .lrow .pt{min-width:0;overflow-wrap:anywhere;text-align:right;font-variant-numeric:tabular-nums}
.legacy-page .toolgrid--calc .lrow.reached{color:var(--ink)}
.legacy-page .toolgrid--calc .lrow.reached .dot{border-color:var(--teal);background:var(--teal)}
.legacy-page .toolgrid--calc .lrow.current{color:var(--ink);font-weight:800}
.legacy-page .toolgrid--calc .lrow.current .dot{border-color:var(--ink);background:var(--ink)}

/* ---- the planning note under the tool ---- */
.legacy-page .statenote{margin-top:24px;padding:18px 22px;border-left:3px solid var(--brass);background:var(--paper);font-size:.88rem;line-height:1.6;color:var(--ink)}
.legacy-page .statenote>div+div{margin-top:10px}

/* the attendance builder keeps a policy sheet for the printer only */
.legacy-page #printsheet{display:none}
.tshr-print{display:none}

/* ---- email the result ---- */
.legacy-page .toolcapture{margin-top:28px;padding-top:0;border-top:0}
.legacy-page .capmini{padding:26px 28px 24px;border:1px solid var(--line);border-top:3px solid var(--ink);background:#fff}
.legacy-page .capmini-row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px 40px;align-items:start}
.legacy-page .capmini .capmini-t{display:block;margin:0 0 6px;font:500 1.4rem/1.2 var(--serif);letter-spacing:0;color:var(--ink)}
.legacy-page .capmini .capmini-s{display:block;margin:0;font-size:.9rem;line-height:1.5;color:var(--muted)}
.legacy-page .capmini .resform{display:block}
.legacy-page .capmini-field{display:flex;flex-wrap:nowrap;gap:0}
.legacy-page .capmini .resform input[type=email]{flex:1 1 auto;width:auto;min-width:0;height:50px;border-right:0;color:var(--ink)}
.legacy-page .capmini .resform input[type=email]::placeholder{color:var(--muted);opacity:1}
.legacy-page .capmini .resform button{flex:none;height:50px;padding:0 22px;border:1px solid var(--teal);background:var(--teal);color:#fff;font:800 .86rem/1 var(--sans);white-space:nowrap;cursor:pointer;transition:background .18s,border-color .18s}
.legacy-page .capmini .resform button:hover{border-color:var(--teal-dark);background:var(--teal-dark)}
.legacy-page .capmini .resform button:disabled{border-color:var(--muted);background:var(--muted);color:#fff;cursor:default}
.legacy-page .capmini-optin{display:flex;align-items:center;gap:12px;min-height:44px;margin:10px 0 0}
.legacy-page .capmini .resform .capmini-optin input{flex:none;width:20px;min-width:0;height:20px;min-height:0;margin:0;padding:0;accent-color:var(--teal);cursor:pointer}
.legacy-page .capmini form.resform .capmini-optin label{display:block;margin:0;padding:8px 0;font-size:.88rem;font-weight:500;line-height:1.45;color:var(--ink);cursor:pointer}
.legacy-page .capmini-consent{margin:4px 0 0;font-size:.78rem;line-height:1.5;color:var(--muted)}
.legacy-page .capmini-done{display:block;max-width:720px;padding:2px 0 4px}
.legacy-page .capmini-done-h{display:block;margin:0 0 8px;font:500 1.4rem/1.2 var(--serif);color:var(--ink)}
.legacy-page .capmini-done-s{display:block;font-size:.92rem;line-height:1.6;color:var(--ink);overflow-wrap:anywhere}

/* ---- related tools and notes ---- */
.legacy-page .calc-related__head{margin:0 0 34px}
.legacy-page .calc-related__head h2{margin:0}
.legacy-page .calc-related__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none}
.legacy-page .calc-related__item{position:relative;display:flex;flex-direction:column;margin:0;padding:22px 24px 24px;border:1px solid var(--line);background:#fff;transition:border-color .18s}
.legacy-page .calc-related__item:hover{border-color:var(--teal)}
.legacy-page .calc-related__item:focus-within{outline:3px solid #f2b94b;outline-offset:3px}
.legacy-page .calc-related__kind{margin:0 0 12px;font:800 .7rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--teal-dark)}
.legacy-page .calc-related__name{margin:0 0 10px;font:500 1.22rem/1.25 var(--serif);color:var(--ink);text-decoration:none}
.legacy-page .calc-related__name::after{content:"";position:absolute;inset:0}
.legacy-page .calc-related__name:focus-visible{outline:0}
.legacy-page .calc-related__item:hover .calc-related__name{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.legacy-page .calc-related__desc{font-size:.9rem;line-height:1.55;color:var(--muted)}
.legacy-page .calc-related__all{margin:28px 0 0;padding-top:22px;border-top:1px solid var(--line)}
.legacy-page .calc-related__all a{display:inline-block;padding:13px 0;font:800 .92rem/1.3 var(--sans);color:var(--teal-dark);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.legacy-page .calc-related__all a:hover{color:var(--ink)}
.legacy-page .calc-related__all a span{display:inline-block;margin-left:6px;text-decoration:none}

@media (max-width:1000px){
  .legacy-page .calc-related__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .legacy-page .capmini-row{grid-template-columns:1fr;gap:16px}
}
@media (max-width:720px){
  .legacy-page .prestart{grid-template-columns:1fr}
  .legacy-page .calc-related__grid{grid-template-columns:1fr;gap:14px}
  .legacy-page .calc-related__head{margin-bottom:26px}
  .legacy-page .capmini{padding:22px 18px 20px}
  .legacy-page .toolgrid--calc .prow{grid-template-columns:minmax(0,1fr) 76px 76px}
  .legacy-page .toolgrid--calc .prow--one{grid-template-columns:minmax(0,1fr) 112px}
  .legacy-page .toolgrid--calc .brow{grid-template-columns:minmax(0,1fr) 72px 92px}
  .legacy-page .toolgrid--calc .comp-row{grid-template-columns:minmax(0,1fr) 112px}
  .legacy-page .toolgrid--calc .thgrid{grid-template-columns:minmax(0,1fr) 112px}
}
@media (max-width:520px){
  .legacy-page .capmini-field{flex-wrap:wrap;gap:8px}
  .legacy-page .capmini .resform input[type=email]{flex-basis:100%;border-right:1px solid #9aa8ac}
  .legacy-page .capmini .resform button{width:100%}
  .legacy-page .toolgrid--calc .three{grid-template-columns:1fr}
  .legacy-page .toolgrid--calc .grow{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legacy-page .toolgrid--calc .grow .field:first-child{grid-column:1/-1}
  .legacy-page .toolgrid--calc .seg button{flex:1 1 auto}
  .legacy-page .toolgrid--calc .pair>.seg button{flex:none;padding:10px 12px}
}
@media (max-width:440px){
  .legacy-page .toolgrid--calc .row2,
  .legacy-page .toolgrid--calc .two{grid-template-columns:1fr}
  .legacy-page .toolgrid--calc .row2>.field,
  .legacy-page .toolgrid--calc .two>.field,
  .legacy-page .toolgrid--calc .three>.field{display:block}
}

/* figures the scripts mark as a gain or a gap */
.legacy-page .toolgrid--calc .facts>.v.pos,
.legacy-page .toolgrid--calc .facts>.v.save,
.legacy-page .toolgrid--calc .facts>.v.gap-pos{color:var(--teal-dark)}
.legacy-page .toolgrid--calc .twocol .v.over,
.legacy-page .toolgrid--calc .facts>.v.neg,
.legacy-page .toolgrid--calc .facts>.v.gap-neg{color:var(--ink)}

/* ==========================================================================
   Print: one page. Brand, title, the inputs as a list, the result, the
   breakdown, the planning note, and a line with the address and the date.
   tshr-calc-share.js builds the .tshr-print blocks from the live inputs.
   ========================================================================== */
@media print{
  @page{margin:13mm 14mm 13mm}
  html{font-size:11px}
  html,body{background:#fff!important}
  body{color:#000}

  .skip-link,.site-signal,.site-header,.primary-nav,.mobile-menu,.context-nav,.site-footer,.back-to-top,
  .tshr-calc-noprint,.resource-next,.calc-related,
  .legacy-page>section.hero,.legacy-page>#method,
  .legacy-page .prestart,.legacy-page .toolcapture,.legacy-page .tshr-calc-share,
  .legacy-page .toolgrid--calc .grid>.card,
  .legacy-page .toolgrid--calc button,
  .legacy-page .toolgrid--calc .printbtn+.hint{display:none!important}

  .legacy-page>section:not(:has(.toolgrid)){display:none!important}
  .legacy-page .band{padding:0!important;border:0!important;background:none!important}
  .legacy-page .wrap,.legacy-page .container{width:100%!important;max-width:none!important;margin:0!important}
  .legacy-page .toolgrid--calc .grid{display:block}
  .legacy-page .toolgrid--calc .grid>*{grid-column:auto}

  .tshr-print{display:block}
  .tshr-print-head{margin:0 0 11pt;padding:0 0 8pt;border-bottom:1.5pt solid #102638}
  .tshr-print-brandrow{display:flex;align-items:center;justify-content:space-between;margin:0 0 10pt}
  .tshr-print-logo{display:block;width:auto;height:24pt}
  .tshr-print-brand{font:600 15pt/1 var(--serif,Georgia,serif);color:#102638}
  .tshr-print-site{font:700 8pt/1 var(--sans,Arial,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#444}
  .tshr-print-kicker{margin:0 0 3pt;font:800 7pt/1.2 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#0C5A4F}
  .tshr-print-title{margin:0;font:500 19pt/1.1 var(--serif,Georgia,serif);letter-spacing:-.01em;color:#102638}

  .tshr-print-label{margin:0 0 5pt;font:800 7pt/1.2 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#0C5A4F}
  .tshr-print-inputs{margin:0 0 11pt;break-inside:avoid;page-break-inside:avoid}
  .tshr-print-list{margin:0;columns:2;column-gap:22pt;border-top:.75pt solid #999}
  .tshr-print-list>div{display:flex;align-items:baseline;justify-content:space-between;gap:10pt;padding:2.6pt 0;border-bottom:.5pt solid #c8c8c8;break-inside:avoid;page-break-inside:avoid}
  .tshr-print-list dt{flex:1 1 auto;min-width:0;margin:0;font:400 8.4pt/1.3 var(--sans,Arial,sans-serif);color:#222}
  .tshr-print-list dt small{font-size:7.4pt;color:#555}
  .tshr-print-list dd{flex:none;margin:0;text-align:right;font:700 8.4pt/1.3 var(--sans,Arial,sans-serif);font-variant-numeric:tabular-nums;color:#000;overflow-wrap:anywhere;max-width:60%}

  .legacy-page .toolgrid--calc .card{margin:0 0 10pt!important;border:0;background:none!important;break-inside:avoid;page-break-inside:avoid}
  .legacy-page .toolgrid--calc .card.pad,.legacy-page .toolgrid--calc .card .pad{padding:0}
  .legacy-page .toolgrid--calc .card.result{padding:8pt 0 9pt;border-top:1.5pt solid #102638;border-bottom:.75pt solid #999}
  .legacy-page .toolgrid--calc .card.result .pad{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:22pt;align-items:start}
  .legacy-page .toolgrid--calc .card.result .pad>*{grid-column:1}
  .legacy-page .toolgrid--calc .card.result .pad>.mult{justify-self:start}
  .legacy-page .toolgrid--calc .card.result .pad>.twocol{grid-column:2;grid-row:1/span 3;align-self:start;margin:0;padding:0;border:0;gap:7pt 16pt}
  .legacy-page .toolgrid--calc .card.result .pad>.sentence,
  .legacy-page .toolgrid--calc .card.result .pad>.fy{grid-column:1/-1;margin:8pt 0 0;padding:6pt 0 0;border-top:.5pt solid #c8c8c8;font-size:8.6pt;line-height:1.45;color:#000}
  .legacy-page .toolgrid--calc .card.result .pad>.sentence+.fy{margin-top:3pt;padding-top:0;border-top:0}
  .legacy-page .toolgrid--calc .card.result .pad>h2{margin:0 0 4pt;font:800 7pt/1.2 var(--sans,Arial,sans-serif);letter-spacing:.12em;color:#0C5A4F}
  .legacy-page .toolgrid--calc .big{font-size:25pt;line-height:1;color:#102638}
  .legacy-page .toolgrid--calc #res_verdict,.legacy-page .toolgrid--calc #vVerdict{font-size:17pt;line-height:1.1}
  .legacy-page .toolgrid--calc .big .u{font-size:9pt;color:#444}
  .legacy-page .toolgrid--calc .mult{margin-top:6pt;padding:2.5pt 7pt;border:.75pt solid #102638!important;background:none!important;font-size:7.6pt;color:#102638!important}
  .legacy-page .toolgrid--calc .twocol .k{margin-bottom:2pt;font-size:6.6pt;color:#444}
  .legacy-page .toolgrid--calc .twocol .v{font-size:13pt;color:#000}

  .legacy-page .toolgrid--calc .card h2{margin:0 0 5pt;padding:0;border:0;font:800 7pt/1.2 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#0C5A4F}
  .legacy-page .toolgrid--calc .card h2:not(:first-child){margin-top:10pt;padding-top:0;border-top:0}
  .legacy-page .toolgrid--calc .facts{border-top:.75pt solid #999}
  .legacy-page .toolgrid--calc .facts>.k,
  .legacy-page .toolgrid--calc .facts>.v{padding:2.8pt 0;border-bottom:.5pt solid #c8c8c8;font-size:8.6pt;line-height:1.3;color:#000}
  .legacy-page .toolgrid--calc .facts>.v{padding-left:14pt;max-width:none!important;color:#000!important}
  .legacy-page .toolgrid--calc .facts>.k.sub,.legacy-page .toolgrid--calc .facts>.v.sub,
  .legacy-page .toolgrid--calc .facts>.k.mut,.legacy-page .toolgrid--calc .facts>.v.mut{color:#444}
  .legacy-page .toolgrid--calc .facts>.sep{border-top:1.25pt solid #102638}
  .legacy-page .toolgrid--calc .facts>.grp{padding:8pt 0 3pt;font-size:6.6pt;color:#0C5A4F;border-bottom:.5pt solid #c8c8c8}
  .legacy-page .toolgrid--calc .facts>.k.tot,
  .legacy-page .toolgrid--calc .facts>.v.tot{padding:4pt 0;font-size:11pt;line-height:1.2;color:#000}
  .legacy-page .toolgrid--calc .facts>.v.tot{padding-left:14pt}
  .legacy-page .toolgrid--calc .facts>.k:nth-last-child(2),
  .legacy-page .toolgrid--calc .facts>.v:last-child{padding-bottom:2.8pt;border-bottom:.5pt solid #c8c8c8}
  .legacy-page .toolgrid--calc .facts>.k.tot:nth-last-child(2),
  .legacy-page .toolgrid--calc .facts>.v.tot:last-child{padding-bottom:4pt}
  .legacy-page .toolgrid--calc .card p{font-size:8.6pt;line-height:1.45;color:#000}
  .legacy-page .toolgrid--calc .card>.sep,.legacy-page .toolgrid--calc .pad>.sep{margin:0;border:0}

  .legacy-page .toolgrid--calc .bar{height:7pt;margin:0 0 5pt;border:.5pt solid #999;background:none}
  .legacy-page .toolgrid--calc .bar>span,
  .legacy-page .toolgrid--calc .legend .dot,
  .legacy-page .toolgrid--calc .lrow .dot{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .legacy-page .toolgrid--calc .legend{font-size:8.6pt;line-height:1.3;border-top:.75pt solid #999}
  .legacy-page .toolgrid--calc .legend>*{padding:2.8pt 0 2.8pt 12pt;border-bottom:.5pt solid #c8c8c8;color:#000}
  .legacy-page .toolgrid--calc .legend .lab{padding-left:0;gap:6pt}
  .legacy-page .toolgrid--calc .legend .dot{width:6pt;height:6pt}
  .legacy-page .toolgrid--calc .legend .pct{min-width:28pt;color:#444}
  .legacy-page .toolgrid--calc .legend .tot{padding-top:4pt;padding-bottom:0;border-top:1.25pt solid #102638;border-bottom:0;font-size:11pt;line-height:1.2}
  .legacy-page .toolgrid--calc .legend .amt.tot{color:#000}
  .legacy-page .toolgrid--calc .ladder{border-top:.75pt solid #999}
  .legacy-page .toolgrid--calc .lrow{padding:2.8pt 0;border-bottom:.5pt solid #c8c8c8;font-size:8.6pt;line-height:1.3;color:#444;gap:7pt;grid-template-columns:8pt minmax(0,1fr) auto}
  .legacy-page .toolgrid--calc .lrow:last-child{padding-bottom:2.8pt;border-bottom:.5pt solid #c8c8c8}
  .legacy-page .toolgrid--calc .lrow .dot{width:6pt;height:6pt;border-width:1pt}
  .legacy-page .toolgrid--calc .lrow.reached,.legacy-page .toolgrid--calc .lrow.current{color:#000}
  .legacy-page .toolgrid--calc .hint,.legacy-page .toolgrid--calc .note{font-size:7.6pt;color:#444}
  .legacy-page .toolgrid--calc .facts>.note{padding:4pt 0 0;font-size:8.2pt;line-height:1.4;color:#000}

  .legacy-page .statenote{margin:0 0 9pt;padding:0 0 0 9pt;border-left:1.5pt solid #117E6F;background:none!important;font-size:7.8pt;line-height:1.42;color:#000;break-inside:avoid;page-break-inside:avoid}
  .legacy-page .statenote>div+div{margin-top:4pt}

  .tshr-print-foot{margin-top:4pt;break-inside:avoid;page-break-inside:avoid}
  .tshr-print-disc{margin:0 0 7pt;font:400 7.4pt/1.4 var(--sans,Arial,sans-serif);color:#444}
  .tshr-print-meta{display:flex;justify-content:space-between;gap:16pt;margin:0;padding-top:6pt;border-top:.75pt solid #102638;font:700 7.4pt/1.3 var(--sans,Arial,sans-serif);letter-spacing:.02em;color:#222}

  /* the attendance builder prints its policy sheet in place of the summary */
  .tshr-policy-print .grid,
  .tshr-policy-print .statenote,
  .tshr-policy-print .tshr-print-inputs,
  .tshr-policy-print .tshr-print-kicker,
  .tshr-policy-print .tshr-print-title,
  .tshr-policy-print .tshr-print-disc{display:none!important}
  .tshr-policy-print .tshr-print-head{margin-bottom:16pt;padding-bottom:9pt}
  .tshr-policy-print .tshr-print-brandrow{margin:0}
  .legacy-page #printsheet{display:block;color:#000;font:400 10pt/1.5 var(--sans,Arial,sans-serif)}
  .legacy-page #printsheet h2{margin:16pt 0 5pt;font:800 7.6pt/1.2 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;color:#0C5A4F}
  .legacy-page #printsheet h2:first-child{margin:0 0 5pt;font:500 22pt/1.1 var(--serif,Georgia,serif);letter-spacing:-.01em;text-transform:none;color:#102638}
  .legacy-page #printsheet p{margin:0 0 6pt}
  .legacy-page #printsheet .ps-sub{margin-bottom:4pt;font-size:9.4pt;color:#222}
  .legacy-page #printsheet .ps-note{margin-top:5pt;font-size:8.4pt;color:#444}
  .legacy-page #printsheet table{width:100%;border-collapse:collapse;border-top:.75pt solid #999;break-inside:avoid;page-break-inside:avoid}
  .legacy-page #printsheet th,.legacy-page #printsheet td{padding:4.2pt 0;border:0;border-bottom:.5pt solid #c8c8c8;font-size:10pt;text-align:left}
  .legacy-page #printsheet th{font:800 7pt/1.3 var(--sans,Arial,sans-serif);letter-spacing:.08em;text-transform:uppercase;color:#444}
  .legacy-page #printsheet th:last-child,.legacy-page #printsheet td.n,.legacy-page #printsheet td:last-child{text-align:right;font-weight:700;font-variant-numeric:tabular-nums}
  .legacy-page #printsheet .ps-sig{display:grid;grid-template-columns:1fr 1fr;gap:28pt;margin:34pt 0 14pt;break-inside:avoid;page-break-inside:avoid}
  .legacy-page #printsheet .ps-sig>div{padding-top:5pt;border-top:.75pt solid #000;font-size:8.4pt;color:#222}
  .legacy-page #printsheet .ps-foot{margin:0 0 10pt;font-size:7.6pt;color:#444}
}

/* ==========================================================================
   Phase 3 (2026-10-07): method block, first screen, matched tool, shared
   scenario, input guard. Scoped to calculator pages (body.is-calculator).
   ========================================================================== */

/* ---- C1: the tool inside the first screen ---- */
.is-calculator .legacy-page>section.hero{padding:28px 0 24px}
.is-calculator .legacy-page .hero .eyebrow{margin-bottom:10px}
.is-calculator .legacy-page .hero h1{margin:0 0 12px;font-size:clamp(2rem,3.6vw,2.9rem);line-height:1.06;text-wrap:balance}
.is-calculator .legacy-page .hero__lede{max-width:62ch;margin:0}
.is-calculator .legacy-page .hero .grid12{row-gap:0;align-items:end}
.is-calculator .legacy-page>section.hero+.band.tight{padding-top:20px}
.is-calculator .legacy-page .prestart{margin-bottom:20px;padding:12px 18px}
.is-calculator .hero__more{display:none}

/* ---- T4: how this calculator is governed (hero aside and foot) ---- */
.is-calculator .legacy-page .hero__aside{align-self:end;padding-top:12px;border-top:2px solid var(--ink)}
.is-calculator .hero__aside .eyebrow,
.is-calculator .railrow__gov .eyebrow{margin:0 0 6px;font-size:.72rem;letter-spacing:.09em}
.is-calculator .hero__aside .meta,
.is-calculator .railrow__gov .meta{margin:0 0 10px;font-size:.86rem;line-height:1.45;color:#33444f}
.is-calculator .hero__aside .dates,
.is-calculator .railrow__gov .dates{margin:0;font-size:.82rem;line-height:1.4;color:var(--muted)}
.is-calculator .hero__aside .dates span,
.is-calculator .railrow__gov .dates span{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:6px 0;border-top:1px solid #cfcfc6}
.is-calculator .hero__aside .dates span,
.is-calculator .railrow__gov .dates span{white-space:nowrap}
.is-calculator .hero__aside .dates span>*,
.is-calculator .railrow__gov .dates span>*{white-space:normal}
.is-calculator .hero__aside .dates a,
.is-calculator .hero__aside .dates time,
.is-calculator .railrow__gov .dates a,
.is-calculator .railrow__gov .dates time{color:var(--ink);font-weight:700;text-align:right;font-variant-numeric:tabular-nums}
.is-calculator .hero__aside .dates a:hover,
.is-calculator .railrow__gov .dates a:hover,
.is-calculator .hero__aside .byline a:hover,
.is-calculator .railrow__gov .byline a:hover{color:var(--teal-dark)}
.is-calculator .hero__aside .byline,
.is-calculator .railrow__gov .byline{margin:0;padding:7px 0 0;border-top:1px solid #cfcfc6;font-size:.82rem;line-height:1.45;color:var(--muted)}
.is-calculator .hero__aside .byline a,
.is-calculator .railrow__gov .byline a{color:var(--ink);font-weight:700}
.is-calculator .legacy-page .railrow{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:24px 56px;align-items:start}
.is-calculator .railrow__gov{padding-top:14px;border-top:2px solid var(--ink)}
.is-calculator .legacy-page .railrow .disclaimer{margin:0}

/* ---- C2: the matched tool beside the result ---- */
.legacy-page .calc-next{margin:0 0 24px;padding:14px 16px;background:var(--paper);border-left:3px solid var(--brass)}
.legacy-page .calc-next .eyebrow{margin:0;font-size:.72rem;letter-spacing:.09em}
.legacy-page .toolgrid--calc .calc-next p.calc-next__t{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin:6px 0 4px;font:500 1.15rem/1.3 var(--serif);color:var(--ink)}
.legacy-page .calc-next__t a{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.legacy-page .calc-next__t a:hover{color:var(--teal-dark)}
.legacy-page .calc-next__t a:focus-visible{outline:3px solid #f2b94b;outline-offset:3px}
.legacy-page .calc-next__t span{flex:none;font-variant-numeric:tabular-nums lining-nums}
.legacy-page .toolgrid--calc .calc-next p.calc-next__d{margin:0;font:400 .88rem/1.5 var(--sans);color:var(--muted)}
/* the block follows the share row; without the script it follows the result card */
.legacy-page .toolgrid--calc .card.result+.calc-next{margin-top:16px}
.legacy-page .toolgrid--calc .tshr-calc-share{margin:14px 0 16px}
.legacy-page .toolgrid--calc .calc-next+.card{margin-top:0}

/* ---- S6: shared scenario notice and the email link ---- */
.legacy-page .tshr-calc-shared{margin:0 0 12px;padding:10px 14px;background:var(--paper);border-left:3px solid var(--brass);font:400 .88rem/1.5 var(--sans);color:var(--ink)}
.legacy-page a.tshr-calc-share__btn,.legacy-page a.tshr-calc-share__btn:hover{color:var(--ink);text-decoration:none}

/* ---- input guard: a plain message in place of a result that cannot be shown ---- */
.legacy-page .tshr-calc-guard{display:none;margin:0 0 24px;padding:22px 24px;border:1px solid var(--line);border-top:3px solid var(--ink);background:#fff}
.legacy-page .tshr-calc-guard__t{margin:0 0 8px;font:800 .74rem/1.3 var(--sans);letter-spacing:.09em;text-transform:uppercase;color:var(--teal-dark)}
.legacy-page .toolgrid--calc .tshr-calc-guard p.tshr-calc-guard__d{margin:0;font-size:.95rem;line-height:1.6;color:var(--ink)}
.legacy-page .tshr-calc-blocked>.tshr-calc-guard{display:block}
.legacy-page .tshr-calc-blocked>:not(.tshr-calc-guard):not(.tshr-print){display:none!important}
.legacy-page .toolgrid--calc .input-range-error{margin:6px 0 0;font-size:.8rem;font-weight:700;line-height:1.4;color:var(--ink)}

/* ---- result email: message shown when the figures are out of range ---- */
.legacy-page .capmini .capmini-msg{margin:10px 0 0;padding:8px 12px;border-left:3px solid var(--brass);background:var(--paper);font:700 .88rem/1.45 var(--sans);color:var(--ink)}

@media (max-width:1000px){
  .is-calculator .legacy-page .hero__aside{margin-top:18px}
}
@media (max-width:760px){
  .is-calculator .legacy-page>section.hero{padding:20px 0 16px}
  /* the governed block repeats in full in the rail row lower on the page */
  .is-calculator .legacy-page .hero__aside{display:none}
  .is-calculator .legacy-page>section.hero+.band.tight{padding-top:14px}
  .is-calculator .legacy-page .prestart{display:block;margin-bottom:14px;padding:10px 14px;font-size:.86rem;line-height:1.5}
  .is-calculator .legacy-page .prestart b{margin-right:8px}
  .is-calculator .legacy-page .railrow{grid-template-columns:1fr;gap:20px}
  /* standalone links get a full height tap area */
  .is-calculator .railrow__gov .dates a,
  .legacy-page .calc-next__t a{display:inline-block;margin:-10px 0;padding:10px 0}
  .is-calculator .railrow__gov .dates a{min-height:44px;margin:-13px 0;padding:13px 0}
}
@media (max-width:520px){
  .is-calculator .legacy-page>section.hero{padding:18px 0 14px}
  .is-calculator .legacy-page .hero .eyebrow{margin-bottom:8px}
  .is-calculator .legacy-page .hero h1{margin-bottom:10px}
  .is-calculator .legacy-page>section.hero+.band.tight{padding-top:12px}
  .is-calculator .legacy-page .prestart{margin-bottom:12px;padding:9px 14px}
  .is-calculator .legacy-page .toolgrid--calc .card>h2:first-child{margin-bottom:16px}
  .is-calculator .legacy-page .toolgrid--calc .card>h2:first-child+.csub{margin-bottom:16px}
  /* three lines of the introduction ending in an ellipsis, then "More" on its own line. The full text stays in the page and opens on tap. */
  .is-calculator .legacy-page .hero__lede{line-height:1.55;cursor:pointer}
  .is-calculator .legacy-page .hero__lede.is-open{cursor:auto}
  .is-calculator .hero__head:has(>.hero__lede:not(.is-open)){position:relative;padding-bottom:44px}
  .is-calculator .hero__lede:not(.is-open){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
  .is-calculator .hero__lede:not(.is-open) .hero__more{display:flex;align-items:center;position:absolute;left:0;bottom:0;min-height:44px;margin:0;padding:0 12px 0 0;border:0;background:none;color:var(--teal-dark);font:inherit;font-weight:700;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}
  .is-calculator .hero__more:focus-visible{outline:3px solid #f2b94b;outline-offset:2px}
}

@media print{
  .legacy-page .calc-next,.legacy-page .tshr-calc-shared,.legacy-page .tshr-calc-guard,.is-calculator .hero__more{display:none!important}
  /* the scenario link can be long: let it break anywhere and never push past the page edge */
  .tshr-print-meta{flex-wrap:wrap;align-items:baseline}
  .tshr-print-meta span{min-width:0}
  .tshr-print-link{flex:1 1 100%;min-width:0;margin:0 0 4pt;font-weight:400;letter-spacing:0;overflow-wrap:anywhere;word-break:break-all;color:#222}
  .tshr-print-link b{font-weight:700;margin-right:4pt;word-break:normal}
  .tshr-print-link a{color:inherit;text-decoration:none}
}

/* ==========================================================================
   Phase 5 (2026-10-08, calcnotes builder). Appended by build_css.py.
   1. Share row buttons take the .pshare look used on products and notes (crawl P4-12):
      white, 1px ink border, square corners, 600 .9rem Public Sans, mist hover,
      2px teal focus ring, teal border when done. Labels stay calculator specific.
   2. Small print on phones (buyer phone S3-13): help line, consent line and
      disclaimer at .875rem on screen. Print sizes are unchanged.
   ========================================================================== */
.tshr-calc-share .tshr-calc-share__btn,
.legacy-page .tshr-calc-share .tshr-calc-share__btn,
.legacy-page .tshr-calc-share a.tshr-calc-share__btn{
  min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;
  background:#fff;border:1px solid var(--ink);border-radius:0;color:var(--ink);
  font:600 .9rem/1 var(--sans);letter-spacing:0;text-transform:none;text-decoration:none;text-align:center;
  cursor:pointer;box-shadow:none;-webkit-appearance:none;appearance:none;transition:none
}
.tshr-calc-share .tshr-calc-share__btn:hover,
.legacy-page .tshr-calc-share .tshr-calc-share__btn:hover,
.legacy-page .tshr-calc-share a.tshr-calc-share__btn:hover{background:var(--mist);border-color:var(--ink);color:var(--ink);text-decoration:none}
.tshr-calc-share .tshr-calc-share__btn:focus-visible,
.legacy-page .tshr-calc-share .tshr-calc-share__btn:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:0}
.tshr-calc-share .tshr-calc-share__btn.is-done,
.legacy-page .tshr-calc-share .tshr-calc-share__btn.is-done{border-color:var(--teal);color:var(--teal-dark)}
.legacy-page .tshr-calc-share .tshr-calc-share__help{margin:8px 0 0;color:var(--muted);line-height:1.5}
@media (max-width:520px){
  .tshr-calc-share .tshr-calc-share__btn,
  .legacy-page .tshr-calc-share .tshr-calc-share__btn{flex:1 1 auto;line-height:1.2;padding:0 12px}
}
@media screen{
  .legacy-page .tshr-calc-share .tshr-calc-share__help,
  .legacy-page .capmini-consent,
  .is-calculator .legacy-page .railrow .disclaimer{font-size:.875rem;line-height:1.5}
}

/* 2026-10-09c: related tools grid never ends on a stranded row.
   Four items sit in one row of four; five sit 3 + 2 centered on a six track grid;
   a lone last item in the two column band spans the row. */
@media (min-width:1001px){
  .legacy-page .calc-related__grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .legacy-page .calc-related__grid>.calc-related__item{grid-column:span 2}
  .legacy-page .calc-related__grid>.calc-related__item:nth-child(3n+1):nth-last-child(2){grid-column:2/span 2}
  .legacy-page .calc-related__grid>.calc-related__item:nth-child(3n+1):last-child{grid-column:3/span 2}
  .legacy-page .calc-related__grid:has(>.calc-related__item:nth-child(4):last-child){grid-template-columns:repeat(4,minmax(0,1fr))}
  .legacy-page .calc-related__grid:has(>.calc-related__item:nth-child(4):last-child)>.calc-related__item{grid-column:auto}
}
@media (min-width:721px) and (max-width:1000px){
  .legacy-page .calc-related__grid>.calc-related__item:nth-child(odd):last-child{grid-column:1/-1}
}

/* ==========================================================================
   2026-10-09 Share result card. Pairs with buildCardShare() in tshr-calc-share.js.
   A "Share result" button leads the share row and opens an inline panel under it:
   live preview of the 1200 x 627 card, Share on LinkedIn, Download image, Copy caption.
   ========================================================================== */
.tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card,
.legacy-page .tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card{background:var(--teal,#117E6F);border-color:var(--teal,#117E6F);color:#fff}
.tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card:hover,
.legacy-page .tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card:hover,
.tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card.is-open,
.legacy-page .tshr-calc-share .tshr-calc-share__btn.tshr-calc-share__btn--card.is-open{background:var(--teal-dark,#0C5A4F);border-color:var(--teal-dark,#0C5A4F);color:#fff}

.tshr-card-panel{margin:12px 0 4px;padding:20px;border:1px solid var(--line,#d9d4c7);border-top:3px solid var(--teal,#117E6F);background:#fff}
.tshr-card-panel[hidden]{display:none}
.tshr-card-panel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px}
.legacy-page .tshr-card-panel .tshr-card-panel__t,
.tshr-card-panel__t{margin:0;font:500 1.2rem/1.25 var(--serif,Newsreader,Georgia,serif);color:var(--navy,#14253B)}
.tshr-card-panel__t:focus{outline:none}
.tshr-card-panel__t:focus-visible{outline:2px solid var(--teal,#117E6F);outline-offset:4px}
.tshr-card-panel__close{flex:0 0 auto;min-height:44px;min-width:44px;padding:0 12px;border:1px solid transparent;border-radius:0;background:transparent;color:var(--navy,#14253B);font:600 .875rem/1 var(--sans,"Public Sans",Arial,sans-serif);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tshr-card-panel__close:hover{border-color:var(--line,#d9d4c7);text-decoration:none}
.tshr-card-panel__close:focus-visible{outline:2px solid var(--teal,#117E6F);outline-offset:2px}
.tshr-card-panel__frame{position:relative;aspect-ratio:1200/627;background:#0A1D2C;overflow:hidden}
.tshr-card-panel__img{display:block;width:100%;height:auto;max-width:100%}
.tshr-card-panel__img[hidden]{display:none}
.tshr-card-panel__wait{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;margin:0;padding:24px;text-align:center;font:500 .9rem/1.5 var(--sans,"Public Sans",Arial,sans-serif);color:#F5F1E9}
.tshr-card-panel__wait[hidden]{display:none}
.legacy-page .tshr-card-panel .tshr-card-panel__note,
.tshr-card-panel__note{margin:10px 0 0;font:400 .8rem/1.5 var(--sans,"Public Sans",Arial,sans-serif);color:var(--muted,#5d6a73)}
.tshr-card-panel__acts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:16px 0 0}
.tshr-card-panel .tshr-card-panel__acts .tshr-calc-share__btn{width:100%;padding:0 10px}
.tshr-card-panel .tshr-card-panel__acts .tshr-calc-share__btn:disabled{opacity:.5;cursor:default;background:#fff}
.tshr-card-panel .tshr-card-panel__acts .tshr-card-panel__primary,
.legacy-page .tshr-card-panel .tshr-card-panel__acts .tshr-card-panel__primary{background:var(--navy,#14253B);border-color:var(--navy,#14253B);color:#fff}
.tshr-card-panel .tshr-card-panel__acts .tshr-card-panel__primary:hover,
.legacy-page .tshr-card-panel .tshr-card-panel__acts .tshr-card-panel__primary:hover{background:#0A1D2C;border-color:#0A1D2C;color:#fff}
.tshr-card-panel .tshr-card-panel__acts .tshr-card-panel__primary:disabled{background:var(--navy,#14253B)}
.legacy-page .tshr-card-panel .tshr-card-panel__hint,
.tshr-card-panel__hint{margin:12px 0 0;padding:10px 14px;border-left:3px solid var(--teal,#117E6F);background:var(--paper,#F5F1E9);font:500 .875rem/1.5 var(--sans,"Public Sans",Arial,sans-serif);color:var(--navy,#14253B)}
.tshr-card-panel__hint[hidden]{display:none}
.tshr-card-panel__hint a{color:var(--teal-text,#087C72);font-weight:700}
/* With the Share result button the row is a grid, so no button sits alone on a
   ragged last line: Share result spans the top, the four others share one row
   (two by two on phones). */
.tshr-calc-share .tshr-calc-share__row--card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.tshr-calc-share .tshr-calc-share__row--card>.tshr-calc-share__btn{width:100%;min-width:0;padding:0 10px}
.tshr-calc-share .tshr-calc-share__row--card>[data-calc-share="card"]{grid-column:1/-1}
@media (max-width:520px){
  .tshr-calc-share .tshr-calc-share__row--card{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tshr-card-panel{padding:16px}
  .tshr-card-panel__acts{grid-template-columns:minmax(0,1fr)}
}
@media print{.tshr-card-panel{display:none!important}}
