/* TRIR and DART calculator. Logincident, 30 Sep 2026; 3 Oct 2026 adds the OSHA and MSHA tabs; version 20261003d.
   Loaded only on the two pages that carry div#rate-calc. Colours come from the theme tokens,
   so it follows the site's light and dark modes; the fallbacks are the light values. */
#rate-calc{margin:1.4rem 0 2.4rem;background:var(--surface,#fff);border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:var(--radius-sm,12px);padding:1.35rem 1.4rem 1.2rem;color:var(--text,#0e1320)}
#rate-calc *{box-sizing:border-box}
#rate-calc .rc-step{display:flex;align-items:baseline;gap:.6rem;margin:0 0 .7rem;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3,#5b657f)}
#rate-calc .rc-step b{color:var(--teal-2,#0c7563);font-weight:700}
#rate-calc .rc-section + .rc-section{margin-top:1.4rem}
#rate-calc label{display:grid;gap:.35rem;align-content:start;font-size:.9rem;line-height:1.35;color:var(--text,#0e1320)}
#rate-calc .rc-hint{font-size:.8rem;color:var(--text-3,#5b657f);line-height:1.4}
#rate-calc input{font:inherit;font-size:1.05rem;font-variant-numeric:tabular-nums;width:100%;padding:.55rem .7rem;border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:8px;background:var(--surface-2,#f6f8fc);color:var(--text,#0e1320)}
#rate-calc input:hover{border-color:var(--text-3,#5b657f)}
#rate-calc input:focus{outline:2px solid var(--rc-ring,#0c7563);outline-offset:1px;border-color:transparent}
#rate-calc input[aria-invalid="true"]{border-color:var(--red,#e24a2d)}
#rate-calc .rc-hours{max-width:22rem}
#rate-calc details{margin-top:.7rem;font-size:.88rem}
#rate-calc summary{cursor:pointer;color:var(--teal-2,#0c7563);width:max-content;max-width:100%}
#rate-calc details[open] summary{margin-bottom:.7rem}
#rate-calc .rc-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:.8rem 1.2rem}
#rate-calc .rc-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:10px;overflow:hidden}
#rate-calc .rc-col{display:grid;grid-template-rows:auto 1fr auto;gap:.35rem;padding:.7rem .75rem .8rem;border-left:1px solid var(--border-strong,rgba(12,18,34,.16))}
#rate-calc .rc-col:first-child{border-left:0}
#rate-calc .rc-col .rc-letter{font-size:.78rem;font-weight:700;color:var(--teal-2,#0c7563)}
#rate-calc .rc-col .rc-name{font-size:.84rem;line-height:1.3}
#rate-calc .rc-col input{text-align:center;font-size:1.25rem;font-weight:600;padding:.45rem .3rem}
#rate-calc .rc-dartcols{grid-column:2/4;background:var(--surface-3,#eef1f8);border-left:1px solid var(--border-strong,rgba(12,18,34,.16));display:grid;grid-template-columns:1fr 1fr}
#rate-calc .rc-dartcols .rc-col:first-child{border-left:0}
#rate-calc .rc-key{margin:.55rem 0 0;font-size:.82rem;color:var(--text-3,#5b657f)}
#rate-calc .rc-results{margin-top:1.5rem;padding-top:1.3rem;border-top:1px solid var(--border,rgba(12,18,34,.1))}
#rate-calc .rc-results > .rc-step{margin-bottom:.9rem}
#rate-calc .rc-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.4rem}
#rate-calc .rc-rate small{display:block;font-size:.84rem;color:var(--text-2,#46506a)}
#rate-calc .rc-rate strong{display:block;font-size:2.6rem;line-height:1.05;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:.2rem 0 .15rem}
#rate-calc .rc-rate .rc-unit{font-size:.8rem;color:var(--text-3,#5b657f)}
#rate-calc .rc-bar{position:relative;height:8px;border-radius:99px;background:var(--surface-3,#eef1f8);margin:1rem 0 .35rem}
#rate-calc .rc-fill{position:absolute;left:0;top:0;bottom:0;border-radius:99px;background:var(--teal,#25b59a);transition:width .25s ease}
#rate-calc .rc-ref{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--text,#0e1320);transform:translateX(-1px)}
#rate-calc .rc-reflabel{display:flex;align-items:center;gap:.45rem;font-size:.8rem;color:var(--text-3,#5b657f)}
#rate-calc .rc-tick{display:inline-block;width:2px;height:.95rem;background:var(--text,#0e1320)}
#rate-calc .rc-work{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.82rem;line-height:1.7;color:var(--text-2,#46506a);margin:1.3rem 0 0;padding:.75rem .9rem;border-radius:8px;background:var(--surface-2,#f6f8fc);border:1px solid var(--border,rgba(12,18,34,.1))}
#rate-calc .rc-work div + div{margin-top:.25rem}
#rate-calc .rc-work span{white-space:nowrap}
#rate-calc .rc-work b{font-weight:700;color:var(--text,#0e1320)}
#rate-calc .rc-notes{margin:1rem 0 0;padding-left:1.1rem;display:grid;gap:.5rem;font-size:.92rem;line-height:1.55;color:var(--text-2,#46506a)}
#rate-calc .rc-notes li{font-size:.9rem;line-height:1.55;margin:0;color:var(--text-2,#46506a)}
#rate-calc .rc-notes b{color:var(--text,#0e1320);font-weight:600}
#rate-calc .rc-msg{margin:0;padding:.85rem 1rem;border-radius:8px;background:var(--surface-2,#f6f8fc);font-size:.93rem;color:var(--text-2,#46506a)}
#rate-calc .rc-msg.rc-bad{color:var(--text,#0e1320);border-left:3px solid var(--red,#e24a2d)}
#rate-calc .rc-actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.2rem}
#rate-calc button{font:inherit;font-size:.88rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--border-strong,rgba(12,18,34,.16));background:transparent;color:var(--text,#0e1320);cursor:pointer}
#rate-calc button:hover{border-color:var(--teal,#25b59a)}
#rate-calc button:focus-visible{outline:2px solid var(--rc-ring,#0c7563);outline-offset:2px}
#rate-calc button.rc-primary{background:var(--teal,#25b59a);border-color:var(--teal,#25b59a);color:#05060d;font-weight:600}
#rate-calc [hidden]{display:none!important}
@media (max-width:560px){
  #rate-calc{padding:1.1rem 1rem 1rem}
  #rate-calc .rc-form{grid-template-columns:1fr}
  #rate-calc .rc-dartcols{grid-column:auto;grid-template-columns:1fr;border-left:0}
  #rate-calc .rc-col{grid-template-columns:1.6rem 1fr 5.5rem;grid-template-rows:auto;align-items:center;gap:.6rem;border-left:0;border-top:1px solid var(--border-strong,rgba(12,18,34,.16));padding:.55rem .75rem}
  #rate-calc .rc-form > .rc-col:first-child{border-top:0}
  #rate-calc .rc-col input{font-size:1.1rem;padding:.4rem .3rem}
  #rate-calc .rc-rate strong{font-size:2.2rem}
}
@media (prefers-reduced-motion:reduce){#rate-calc .rc-fill{transition:none}}
/* 30 Sep QA: 44px tap targets; the working wraps on small phones instead of being clipped */
#rate-calc input{min-height:44px}
#rate-calc button{min-height:44px}
@media (max-width:480px){#rate-calc .rc-work span{white-space:normal}#rate-calc .rc-work{overflow-wrap:anywhere}}
/* 3 Oct 2026: OSHA and MSHA rulebook tabs, benchmark selector, MSHA panel */
#rate-calc .rc-modes{margin:0 0 1.3rem}
#rate-calc .rc-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .7rem}
#rate-calc button.rc-tab{font-size:.9rem;font-weight:500;padding:.5rem 1.05rem;min-height:44px}
#rate-calc button.rc-tab[aria-selected="true"]{background:var(--text,#0e1320);color:var(--surface,#fff);border-color:var(--text,#0e1320)}
#rate-calc button.rc-tab:focus-visible{outline:2px solid var(--rc-ring,#0c7563);outline-offset:2px}
#rate-calc .rc-modehelp{margin:0;font-size:.88rem;line-height:1.5;color:var(--text-2,#46506a)}
#rate-calc .rc-compare{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .7rem;margin:0 0 1.1rem}
#rate-calc .rc-compare label{display:grid;grid-template-columns:minmax(0,1fr);gap:.4rem;min-width:0;max-width:100%;font-size:.9rem}
#rate-calc select{font:inherit;font-size:.95rem;height:44px;min-height:44px;width:100%;max-width:34rem;text-overflow:ellipsis;padding:.45rem 2rem .45rem .7rem;border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:8px;background-color:var(--surface-2,#f6f8fc);color:var(--text,#0e1320)}
#rate-calc select:focus{outline:2px solid var(--rc-ring,#0c7563);outline-offset:1px}
#rate-calc .rc-basis{flex-basis:100%;font-size:.8rem;color:var(--text-3,#5b657f)}
#rate-calc .rc-three{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1.4rem}
#rate-calc .rc-sev small{display:block;font-size:.84rem;color:var(--text-2,#46506a)}
#rate-calc .rc-sev strong{display:block;font-size:2.6rem;line-height:1.05;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin:.2rem 0 .15rem}
#rate-calc .rc-sev p{margin:.2rem 0 0;font-size:.8rem;line-height:1.45;color:var(--text-3,#5b657f)}
#rate-calc .rc-trapshead{margin:1.3rem 0 0;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3,#5b657f)}
#rate-calc .rc-traps{margin:.5rem 0 0;padding-left:1.1rem;display:grid;gap:.4rem;font-size:.84rem;line-height:1.5;color:var(--text-3,#5b657f)}
#rate-calc .rc-traps li{margin:0;font-size:.84rem;line-height:1.5;color:var(--text-3,#5b657f)}
#rate-calc .rc-traps b{color:var(--text-2,#46506a);font-weight:600}
#rate-calc .rc-warn{color:var(--text,#0e1320)}
@media (max-width:560px){
  #rate-calc .rc-tabs{display:grid;grid-template-columns:1fr}
  #rate-calc button.rc-tab{text-align:left;border-radius:12px}
  #rate-calc .rc-sev strong{font-size:2.2rem}
  #rate-calc select{width:100%}
}
#rate-calc .rc-sev .rc-unit{display:block;font-size:.8rem;color:var(--text-3,#5b657f)}
/* 3 Oct 2026 (20261003b): four tabs, three-year table, international rates, warnings, example chip, badges, tap targets */
#rate-calc{--text-3:var(--text-2,#46506a)} /* small grey text meets 4.5:1 in both themes */
#rate-calc .rc-sr,.rc-sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
#rate-calc button.rc-tab{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.1rem;text-align:left;line-height:1.25}
#rate-calc .rc-tabname{font-weight:600}
#rate-calc .rc-tabsub{font-size:.76rem;font-weight:400;opacity:.85}
#rate-calc .rc-tabs{gap:.5rem}
#rate-calc a.rc-link,#rate-calc a{color:var(--teal-2,#0c7563);text-decoration:underline;text-underline-offset:2px}
#rate-calc a.rc-link{display:inline-flex;align-items:center;min-height:44px;margin-top:.1rem}
#rate-calc a:focus-visible{outline:2px solid var(--rc-ring,#0c7563);outline-offset:2px;border-radius:3px}
#rate-calc summary{display:flex;align-items:center;min-height:44px}
#rate-calc button:disabled{opacity:1;color:var(--text-2,#46506a);border-style:dashed;cursor:not-allowed}
#rate-calc button.rc-primary:disabled{background:var(--surface-3,#eef1f8);border-color:var(--border-strong,rgba(12,18,34,.16));color:var(--text-2,#46506a)}
#rate-calc .rc-chip{display:inline-block;margin:0 0 1rem;padding:.35rem .8rem;border-radius:999px;border:1px solid var(--amber,#f3a51e);background:var(--surface-2,#f6f8fc);color:var(--text,#0e1320);font-size:.84rem;font-weight:600}
#rate-calc .rc-plaus{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.5rem}
#rate-calc .rc-plaus li{margin:0;padding:.7rem .9rem;border-radius:8px;background:var(--surface-2,#f6f8fc);border-left:3px solid var(--amber,#f3a51e);font-size:.9rem;line-height:1.5;color:var(--text,#0e1320)}
#rate-calc .rc-badge{display:inline-block;padding:.2rem .65rem;border-radius:999px;border:1px solid var(--border-strong,rgba(12,18,34,.16));background:var(--surface-3,#eef1f8);color:var(--text,#0e1320);font-size:.76rem;font-weight:600;white-space:nowrap}
#rate-calc .rc-yrs{display:grid;grid-template-columns:1fr;gap:1rem}
#rate-calc fieldset.rc-yr{margin:0;padding:.8rem .9rem 1rem;border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:10px;display:grid;gap:.7rem;min-width:0}
#rate-calc fieldset.rc-yr legend{padding:0 .4rem;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2,#46506a)}
#rate-calc .rc-yrcols{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
#rate-calc .rc-yr .rc-letter{font-weight:700;color:var(--teal-2,#0c7563)}
#rate-calc .rc-yr details{margin:0}
#rate-calc .rc-yr details label{margin-bottom:.6rem}
#rate-calc label.rc-check{display:flex;align-items:center;gap:.7rem;min-height:44px;margin-top:.8rem;cursor:pointer}
#rate-calc label.rc-check input{width:24px;height:24px;min-height:24px;flex:none;accent-color:var(--teal,#25b59a)}
#rate-calc .rc-selects{margin-top:.9rem}
#rate-calc .rc-selects select{max-width:100%}
#rate-calc .rc-tablewrap{overflow-x:auto;margin:0 0 1.2rem;border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:10px;-webkit-overflow-scrolling:touch}
#rate-calc .rc-table{width:100%;border-collapse:collapse;font-size:.9rem;font-variant-numeric:tabular-nums}
#rate-calc .rc-table th,#rate-calc .rc-table td{padding:.6rem .7rem;text-align:right;white-space:nowrap;border-top:1px solid var(--border,rgba(12,18,34,.1))}
#rate-calc .rc-table thead th{border-top:0;background:var(--surface-3,#eef1f8);font-size:.76rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2,#46506a)}
#rate-calc .rc-table th:first-child,#rate-calc .rc-table td:first-child{text-align:left}
#rate-calc .rc-table tbody th{font-weight:600}
#rate-calc .rc-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:1.2rem}
#rate-calc .rc-meth{padding:1rem 1.1rem;border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:10px;background:var(--surface-2,#f6f8fc)}
#rate-calc .rc-meth small{font-weight:600;color:var(--text,#0e1320)}
#rate-calc .rc-meth dl{margin:.7rem 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}
#rate-calc .rc-meth dl div{min-width:0}
#rate-calc .rc-meth dt{font-size:.76rem;font-weight:600;letter-spacing:.06em;color:var(--text-2,#46506a)}
#rate-calc .rc-meth dd{margin:0;font-size:1.7rem;line-height:1.1;font-weight:700;font-variant-numeric:tabular-nums}
#rate-calc .rc-diff{margin:1rem 0 0;padding:.7rem .9rem;border-radius:8px;border-left:3px solid var(--amber,#f3a51e);background:var(--surface-2,#f6f8fc);font-size:.9rem;line-height:1.5}
#rate-calc .rc-methnote{margin:.9rem 0 1.1rem;font-size:.88rem;line-height:1.5;color:var(--text-2,#46506a)}
#rate-calc .rc-workwrap{margin-top:1rem}
#rate-calc .rc-workwrap .rc-work{margin-top:0}
#rate-calc .rc-modehelp[hidden]{display:none}
#rate-calc .rc-out .rc-rate[hidden]{display:none}
@media (min-width:700px){
  #rate-calc .rc-yrs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:560px){
  #rate-calc .rc-tabs{grid-template-columns:1fr 1fr;gap:.45rem}
  #rate-calc button.rc-tab{padding:.45rem .7rem;border-radius:12px;font-size:.88rem}
  #rate-calc .rc-tabsub{font-size:.72rem}
  #rate-calc .rc-meth dl{grid-template-columns:repeat(3,1fr)}
  #rate-calc .rc-meth dd{font-size:1.45rem}
}
/* Rules card and sources list: split into short paragraphs, links get a 44px target */
.ltp-rules .src-list{list-style:none;margin:.4rem 0 .8rem;padding:0;display:grid;gap:0}
.ltp-rules .src-list li{margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;column-gap:.8rem}
.ltp-rules .src-list a{display:flex;align-items:center;min-height:44px;padding:.2rem 0;overflow-wrap:anywhere}
.ltp-rules .src-list .d{font-size:.78rem;color:var(--text-2,#46506a)}
.ltp-rules p.src{margin-top:.6rem}
.ltp-rules a.btn-link{display:inline-flex;align-items:center;min-height:44px}
.ltp-rules .rules-links{list-style:none;margin:.3rem 0 .8rem;padding:0}
.ltp-rules .rules-links a{display:inline-flex;align-items:center;min-height:44px}
/* Light mode: the theme's lighter teal is too pale on white for text, so the tool and the rules card use the deep teal */
[data-theme="light"] #rate-calc,[data-theme="light"] .ltp-rules{--teal-2:#0c7563}
/* Closing call-to-action button: the theme's white text on its teal gradient is about 2.5:1; dark text is about 8:1 in both themes */
.cta-band .btn-primary{color:#05060d}
.cta-band .btn-primary svg{stroke:currentColor}

/* ===== 20261003c: start blank, verdict line, one results layout, stacked cards, focus ring, contrast, no-script ===== */
#rate-calc,.ltp{--rc-ring:var(--teal,#25b59a)}
[data-theme="light"] #rate-calc,[data-theme="light"] .ltp,[data-theme="light"] .ltp-rules{--rc-ring:#0c7563}
#rate-calc :is(input,select,button,summary,a,[tabindex]):focus-visible,.ltp :is(summary,a,button,[tabindex]):focus-visible,.ltp-rules a:focus-visible{outline:2px solid var(--rc-ring,var(--teal,#25b59a));outline-offset:2px}
#rate-calc input:focus-visible,#rate-calc select:focus-visible{outline:2px solid var(--rc-ring,var(--teal,#25b59a));outline-offset:1px}
#rate-calc input:focus:not(:focus-visible),#rate-calc select:focus:not(:focus-visible){outline:0}
.lt .lt-title span,.ltp-rules p.src{color:var(--text-2,#46506a)}
[data-theme="light"] .ltp a.ltp-all{color:#0c7563}
#rate-calc:not(.rc-js) :is(.rc-modes,.rc-actions,[role="tabpanel"]){display:none}
#rate-calc .rc-nojs{margin:0 0 1rem;padding:.9rem 1rem;border-left:3px solid var(--amber,#f3a51e);background:var(--surface-2,#f6f8fc);font-size:.93rem;line-height:1.5}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* fields: label, input, one line hint, More */
#rate-calc .rc-f{display:grid;gap:.35rem;align-content:start;min-width:0}
#rate-calc .rc-f > label{font-size:.9rem;line-height:1.35}
#rate-calc .rc-hint{display:block;font-size:.84rem;line-height:1.4;color:var(--text-2,#46506a);margin:0}
#rate-calc .rc-more{margin:0;font-size:.84rem}
#rate-calc .rc-more summary{min-height:44px;font-size:.84rem;padding-right:.5rem}
#rate-calc .rc-more[open] summary{margin-bottom:.1rem}
#rate-calc .rc-more p{margin:0 0 .6rem;font-size:.84rem;line-height:1.5;color:var(--text-2,#46506a)}
#rate-calc .rc-hours{max-width:26rem}
#rate-calc .rc-form .rc-col{align-content:start}
#rate-calc input::placeholder{color:var(--text-2,#46506a);opacity:.65}
#rate-calc .rc-check + .rc-hint{margin:-.2rem 0 0 2.2rem}
#rate-calc .rc-more-check{margin-left:2.2rem}
#rate-calc .rc-selects .rc-f{align-content:start}
/* tab bar and setup row */
#rate-calc button.rc-tab{justify-content:flex-start;min-height:64px}
#rate-calc button.rc-tab[aria-selected="true"]{background:var(--surface-3,#eef1f8);background:color-mix(in srgb,var(--teal,#25b59a) 16%,var(--surface,#fff));color:var(--text,#0e1320);border-color:var(--teal-2,#0c7563);box-shadow:inset 0 0 0 1px var(--teal-2,#0c7563)}
#rate-calc .rc-tabsub{opacity:1;color:var(--text-2,#46506a)}
#rate-calc .rc-setup{display:flex;flex-wrap:wrap;gap:.5rem;margin:.9rem 0 0}
#rate-calc .rc-setup button{font-size:.86rem;padding:.4rem .95rem}
/* results head and the actions slot */
#rate-calc .rc-results-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:.6rem 1rem;margin:0 0 .9rem}
#rate-calc .rc-results-head > .rc-step{margin:0;padding-top:.6rem}
#rate-calc .rc-slot{flex:1 1 20rem;display:flex;justify-content:flex-end;min-width:0}
#rate-calc .rc-actions{display:grid;gap:.5rem;justify-items:end;width:100%;max-width:36rem;margin:0}
#rate-calc .rc-btns{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}
#rate-calc .rc-pdfopts{margin:0;width:100%;justify-self:end}
#rate-calc .rc-pdfopts summary{margin-left:auto}
#rate-calc .rc-pdfopts .rc-pair{grid-template-columns:repeat(auto-fit,minmax(10rem,1fr))}
#rate-calc button[aria-disabled="true"]{opacity:.55;cursor:not-allowed;border-style:dashed}
#rate-calc button[aria-disabled="true"]:hover{border-color:var(--border-strong,rgba(12,18,34,.16))}
#rate-calc .rc-msg:not(.rc-bad){border:1px dashed var(--border-strong,rgba(12,18,34,.16))}
/* verdict, one results grid, bars with a You label and a scale */
#rate-calc .rc-verdict{margin:0 0 1.2rem;font-size:1.12rem;line-height:1.5;font-weight:600;color:var(--text,#0e1320)}
#rate-calc .rc-verdict:empty{display:none}
#rate-calc .rc-out{grid-template-columns:minmax(0,1fr);gap:1.6rem 1.6rem;align-items:start}
#rate-calc .rc-out .rc-rate > .rc-unit{display:block;min-height:2.7em}
#rate-calc .rc-out .rc-rate{display:flex;flex-direction:column;min-width:0}
#rate-calc .rc-out .rc-rate > small{display:flex;align-items:flex-end;min-height:2.7em;font-weight:600}
#rate-calc .rc-rate strong,#rate-calc .rc-sev strong{font-size:clamp(2rem,6.5vw,2.8rem);overflow-wrap:anywhere}
#rate-calc .rc-barwrap{position:relative;padding-top:1.4rem;margin-top:.5rem}
#rate-calc .rc-you{position:absolute;top:0;left:0;font-size:.8rem;font-weight:700;white-space:nowrap;color:var(--text,#0e1320)}
#rate-calc .rc-barwrap .rc-bar{margin:.4rem 0 .25rem}
#rate-calc .rc-scale{display:flex;justify-content:space-between;font-size:.74rem;color:var(--text-2,#46506a);margin-bottom:.35rem}
#rate-calc .rc-tick{display:inline-block;flex:none;width:.65rem;height:.65rem;background:var(--text,#0e1320)}
@media (min-width:560px){#rate-calc .rc-out{grid-template-columns:repeat(2,minmax(0,1fr))}#rate-calc .rc-out[data-n="1"]{grid-template-columns:minmax(0,1fr)}}
@media (min-width:880px){#rate-calc .rc-out[data-n="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}}
#rate-calc .rc-compare{margin:0 0 1.2rem}
#rate-calc .rc-compare select{flex:1 1 16rem;width:auto;min-width:0}
#rate-calc .rc-compare > label{flex:none}
/* three-year: stacked year cards on phones, table elsewhere */
#rate-calc .rc-cards{display:none}
#rate-calc .rc-card{border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:10px;padding:.8rem .9rem;background:var(--surface-2,#f6f8fc)}
#rate-calc .rc-card-h{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem;margin-bottom:.5rem}
#rate-calc .rc-card-h b{font-size:1.05rem}
#rate-calc .rc-card-h span{font-size:.84rem;color:var(--text-2,#46506a)}
#rate-calc .rc-card dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}
#rate-calc .rc-card dt{font-size:.76rem;font-weight:600;letter-spacing:.06em;color:var(--text-2,#46506a)}
#rate-calc .rc-card dd{margin:0;font-size:1.5rem;line-height:1.15;font-weight:700;font-variant-numeric:tabular-nums}
#rate-calc .rc-card p{margin:.5rem 0 0;font-size:.84rem;color:var(--text-2,#46506a)}
@media (max-width:640px){
  #rate-calc .rc-tablewrap{display:none}
  #rate-calc .rc-cards{display:grid;gap:.8rem;margin:0 0 1.2rem}
}
/* phone tabs: titles aligned to the top, short subtitles */
@media (max-width:560px){
  #rate-calc .rc-tabs{grid-template-columns:1fr 1fr}
  #rate-calc button.rc-tab{justify-content:flex-start;align-items:flex-start;min-height:68px}
  #rate-calc .rc-chip{border-radius:12px}
  #rate-calc .rc-slot{flex-basis:100%;justify-content:stretch}
  #rate-calc .rc-actions{justify-items:stretch;max-width:none}
  #rate-calc .rc-btns{justify-content:stretch}
  #rate-calc .rc-btns > button{flex:1 1 100%}
  #rate-calc .rc-pdfopts summary{margin-left:0}
}
#rate-calc .rc-step{display:flex;flex-wrap:nowrap;gap:.6rem;letter-spacing:.06em}
#rate-calc .rc-step b{flex:none}
#rate-calc .rc-traps-wrap{margin-top:1rem}

/* ===== 20261003d: messages under the box, plain labels, sticky result strip, which-tab line ===== */
#rate-calc .rc-err{display:grid;gap:.35rem;margin:0;padding:.55rem .75rem;border-radius:8px;border-left:3px solid var(--amber,#f3a51e);background:var(--surface-2,#f6f8fc);font-size:.9rem;line-height:1.45;color:var(--text,#0e1320)}
#rate-calc .rc-err.rc-bad{border-left-color:var(--red,#e24a2d);font-weight:500}
#rate-calc .rc-err-l{display:block}
#rate-calc .rc-confirm{justify-self:start;margin-top:.15rem;min-height:44px;font-size:.88rem;padding:.45rem 1rem}
#rate-calc .rc-which{margin:.1rem 0 .5rem;font-size:.95rem;font-weight:600;line-height:1.45;color:var(--text,#0e1320)}
#rate-calc .rc-intro{margin:0 0 .9rem;font-size:.88rem;line-height:1.5;color:var(--text-2,#46506a)}
#rate-calc .rc-terms{margin:1rem 0 0;font-size:.84rem;line-height:1.5;color:var(--text-2,#46506a)}
#rate-calc .rc-slot{margin-top:1.2rem}
#rate-calc[data-ok="0"] .rc-actions{display:none}
#rate-calc .rc-f > label .rc-letter{margin-right:.25rem}
#rate-calc .rc-selects .rc-f{max-width:34rem}
#rate-calc button.rc-tab{height:auto}
.rc-strip{display:none}
@media (max-width:900px){
  .rc-strip:not([hidden]){display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;align-items:center;justify-content:space-between;gap:.8rem;padding:.55rem 1rem calc(.55rem + env(safe-area-inset-bottom,0px));background:var(--surface,#fff);border-top:2px solid var(--teal-2,#0c7563);box-shadow:0 -6px 18px rgba(0,0,0,.2);color:var(--text,#0e1320)}
  .rc-strip .rc-strip-t{font-weight:700;font-size:1rem;line-height:1.3;font-variant-numeric:tabular-nums;min-width:0;overflow-wrap:anywhere}
  .rc-strip button{flex:none;font:inherit;font-size:.9rem;font-weight:600;min-height:44px;padding:.45rem 1rem;border-radius:999px;border:1px solid var(--teal,#25b59a);background:var(--teal,#25b59a);color:#05060d;cursor:pointer}
  .rc-strip button:focus-visible{outline:2px solid var(--text,#0e1320);outline-offset:2px}
  body.rc-strip-on{padding-bottom:72px}
}

/* ===== 20261003d design pass: tap controls, chips, verdict chip, numbered steps ===== */
#rate-calc{--rc-ctl:color-mix(in srgb,var(--text-2,#46506a) 72%,var(--surface,#fff));--rc-on:color-mix(in srgb,var(--teal,#25b59a) 18%,var(--surface,#fff))}
#rate-calc .rc-lab{display:block;margin:0 0 .4rem;font-size:.9rem;line-height:1.35;font-weight:600;color:var(--text,#0e1320)}
/* numbered step headers: a teal disc */
#rate-calc .rc-step{align-items:center;gap:.7rem;font-size:.82rem;color:var(--text,#0e1320)}
#rate-calc .rc-step b{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;border-radius:50%;background:var(--teal,#25b59a);color:#05060d;font-size:.85rem;letter-spacing:0}
#rate-calc .rc-section + .rc-section{margin-top:1.7rem}
/* I was asked for: chips */
#rate-calc .rc-ask,#rate-calc .rc-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem}
#rate-calc .rc-ask .rc-lab{margin:0 .2rem 0 0;flex:none}
#rate-calc .rc-ask{margin:.1rem 0 .4rem}
#rate-calc button.rc-askb,#rate-calc .rc-chips button{min-height:44px;padding:.4rem .95rem;border-radius:999px;border:1px solid var(--rc-ctl);background:transparent;font-size:.88rem;line-height:1.2}
#rate-calc button.rc-askb[aria-pressed="true"],#rate-calc .rc-chips button[aria-pressed="true"],#rate-calc .rc-seg button[aria-pressed="true"]{background:var(--rc-on);border-color:var(--teal-2,#0c7563);box-shadow:inset 0 0 0 1px var(--teal-2,#0c7563);font-weight:600}
#rate-calc .rc-about{margin:.1rem 0 0}
#rate-calc .rc-about .rc-modehelp{margin:0 0 .6rem}
/* segmented buttons */
#rate-calc .rc-seg{display:flex;width:100%;max-width:30rem;border:1px solid var(--rc-ctl);border-radius:12px;overflow:hidden}
#rate-calc .rc-seg button{flex:1 1 0;min-width:0;min-height:44px;border:0;border-radius:0;padding:.4rem .6rem;font-size:.9rem;line-height:1.2;text-align:center}
#rate-calc .rc-seg button + button{border-left:1px solid var(--rc-ctl)}
#rate-calc .rc-seg button[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--teal-2,#0c7563)}
#rate-calc .rc-seg button:focus-visible{outline-offset:-3px}
#rate-calc .rc-estbox{margin-top:.8rem}
#rate-calc .rc-hours + .rc-lab{margin-top:.9rem}
#rate-calc .rc-section .rc-lab + .rc-seg{margin-bottom:.1rem}
#rate-calc .rc-section > .rc-lab{margin-top:1rem}
#rate-calc .rc-selects.rc-f{max-width:34rem}
/* count boxes with minus, plus, None */
#rate-calc .rc-num{display:flex;align-items:center;gap:.4rem}
#rate-calc .rc-num input{flex:1 1 4.5rem;min-width:0;width:auto}
#rate-calc button.rc-nb{flex:none;min-width:44px;height:44px;padding:0 .6rem;border-radius:10px;border:1px solid var(--rc-ctl);font-size:1.25rem;line-height:1;font-weight:600;display:inline-flex;align-items:center;justify-content:center}
#rate-calc button.rc-nb.rc-none{font-size:.88rem;font-weight:500;padding:0 .8rem}
@media (min-width:561px){
  #rate-calc .rc-num-sm{display:grid;grid-template-columns:1fr 1fr 1.5fr}
  #rate-calc .rc-num-sm input{grid-column:1/-1;width:100%}
  #rate-calc .rc-num-sm .rc-nb{min-width:0;width:100%}
}
@media (max-width:560px){#rate-calc .rc-yrcols{grid-template-columns:minmax(0,1fr)}}
/* optional days switch */
#rate-calc .rc-swrow{margin:.9rem 0 .2rem}
#rate-calc button.rc-sw{display:inline-flex;align-items:center;gap:.7rem;min-height:44px;border-radius:12px;padding:.3rem .8rem .3rem .5rem;text-align:left;font-size:.9rem;line-height:1.3}
#rate-calc .rc-knob{flex:none;position:relative;width:2.6rem;height:1.5rem;border-radius:99px;border:1px solid var(--rc-ctl);background:var(--surface-3,#eef1f8)}
#rate-calc .rc-knob::after{content:"";position:absolute;top:2px;left:2px;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--text-2,#46506a);transition:transform .15s}
#rate-calc button.rc-sw[aria-checked="true"] .rc-knob{background:var(--teal,#25b59a);border-color:var(--teal-2,#0c7563)}
#rate-calc button.rc-sw[aria-checked="true"] .rc-knob::after{transform:translateX(1.1rem);background:#05060d}
#rate-calc #rc-days{margin-top:.6rem}
/* compare-with chips */
#rate-calc .rc-compare{display:grid;gap:.1rem;align-items:start}
#rate-calc .rc-compare .rc-lab{margin-bottom:.45rem}
#rate-calc .rc-morebox{margin-top:.6rem}
#rate-calc .rc-morebox select{max-width:34rem}
#rate-calc .rc-compare .rc-badge{justify-self:start;margin-top:.6rem}
#rate-calc .rc-compare .rc-basis{margin-top:.2rem}
/* verdict chip: amber higher, teal same or lower */
#rate-calc .rc-tone{display:inline-block;margin:0 0 .6rem;padding:.4rem .95rem;border-radius:999px;font-size:1rem;font-weight:700;line-height:1.3;color:var(--text,#0e1320);border:1px solid var(--teal-2,#0c7563);background:color-mix(in srgb,var(--teal,#25b59a) 20%,var(--surface,#fff))}
#rate-calc .rc-tone[data-tone="high"]{border-color:var(--amber,#f3a51e);background:color-mix(in srgb,var(--amber,#f3a51e) 24%,var(--surface,#fff))}
#rate-calc .rc-fill[data-tone="high"]{background:var(--amber,#f3a51e)}
#rate-calc .rc-verdict{font-size:.95rem;font-weight:500;color:var(--text-2,#46506a)}
/* the hidden controls behind the segments stay in the page for state and for the PDF */
#rate-calc input.rc-sr,#rate-calc select.rc-sr{position:absolute!important;width:1px;height:1px;min-height:0;opacity:0;pointer-events:none}
#rate-calc .rc-intro{margin-bottom:.2rem}
@media (max-width:560px){
  #rate-calc .rc-ask .rc-lab{flex-basis:100%}
  #rate-calc button.rc-askb{flex:1 1 calc(50% - .3rem);padding:.4rem .6rem;font-size:.84rem}
}
#rate-calc .rc-f{grid-template-columns:minmax(0,1fr)}
#rate-calc .rc-compare{grid-template-columns:minmax(0,1fr)}
#rate-calc .rc-chips{min-width:0}
#rate-calc .rc-compare .rc-morebox select{width:100%;max-width:34rem;min-width:0;flex:none}
#rate-calc .rc-actions{grid-template-columns:minmax(0,1fr)}
#rate-calc .rc-pdfopts .rc-pair{grid-template-columns:repeat(auto-fit,minmax(min(10rem,100%),1fr))}
#rate-calc fieldset.rc-yr{grid-template-columns:minmax(0,1fr)}
#rate-calc .rc-two{grid-template-columns:repeat(auto-fit,minmax(min(15rem,100%),1fr))}

/* Count boxes: one column on phones, two side by side above 640px, so each box is wide enough for its example */
#rate-calc .rc-counts{grid-template-columns:minmax(0,1fr)}
@media (min-width:640px){#rate-calc .rc-counts{grid-template-columns:repeat(2,minmax(0,1fr))}#rate-calc .rc-num input{min-width:6.5rem}}

/* Guide column beside the rules card: natural height, follows the reader on wide screens */
.ltp-two .rc-side{display:flex;flex-direction:column;gap:18px;align-self:start;min-width:0}
.ltp-two .rc-side .ltp-guide{justify-content:flex-start}
.rc-also{border:1px solid var(--border-strong,rgba(12,18,34,.16));border-radius:18px;padding:20px 22px;background:var(--surface,#fff)}
.rc-also .rc-also-k{margin:0 0 10px;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--text-2,#4a5068)}
.rc-also ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.rc-also a{display:flex;align-items:center;min-height:44px;color:var(--text,#161421);text-decoration:none;font-weight:500;border-top:1px solid var(--border,rgba(12,18,34,.1))}
.rc-also li:first-child a{border-top:0}
.rc-also a::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--teal,#25b59a);border-top:2px solid var(--teal,#25b59a);transform:rotate(45deg);flex:none}
.rc-also a:hover{color:var(--teal-text,#0f7f6c)}
.rc-also a:focus-visible{outline:2px solid var(--teal,#25b59a);outline-offset:2px;border-radius:6px}
@media (min-width:900px){.ltp-two .rc-side{position:sticky;top:calc(env(safe-area-inset-top,0px) + 96px)}}

/* Rules card: no tick on source rows (it sat on the first letter), and room between the sections */
.ltp-rules .src-list li::before{display:none}
.ltp-rules .src-list li{border-top:1px solid var(--border,rgba(12,18,34,.1))}
.ltp-rules .src-list li:first-child{border-top:0}
.ltp-rules > p{margin:0 0 .8rem;font-size:.93rem;line-height:1.6}
.ltp-rules ul + h3,.ltp-rules p + h3{margin-top:1.6rem}
/* Narrow phones: the box gets its own row and the minus, plus and None buttons share the row under it */
@media (max-width:400px){
  #rate-calc .rc-num{flex-wrap:wrap}
  #rate-calc .rc-num input{flex:1 1 100%}
  #rate-calc .rc-num button.rc-nb{flex:1 1 0}
}
