/* ClearSnip shared stylesheet. System fonts only, no external requests. */
:root{
  --ink:#10263b; --muted:#4a5d70; --brand:#0b5f7a; --brand-dark:#084a5f; --teal:#0f766e;
  --bg:#f5f9fb; --surface:#fff; --line:#d5e2e9; --tint:#e8f3f6; --yes:#11663d; --no:#8a2b1d; --unk:#5b6670;
  --radius:10px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  font-size:1.0625rem;line-height:1.6;color:var(--ink);background:var(--bg)}
.wrap{max-width:1100px;margin:0 auto;padding:0 1rem}
a{color:var(--brand)}
a:hover{color:var(--brand-dark)}
a:focus-visible,.button:focus-visible,.table-wrap:focus-visible{outline:3px solid #f2a900;outline-offset:2px}
.skip{position:absolute;left:-999px;top:0;background:#fff;padding:.5rem 1rem;z-index:10}
.skip:focus{left:1rem}
.site-header{background:var(--surface);border-bottom:1px solid var(--line)}
.header-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1.5rem;padding:.75rem 1rem}
.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.25rem;color:var(--ink);text-decoration:none}
nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1rem}
nav a{text-decoration:none;font-size:.95rem;padding:.25rem 0;display:inline-block}
nav a[aria-current="page"]{font-weight:700;border-bottom:2px solid var(--teal)}
main{padding:1.5rem 1rem 3rem;flex:1 0 auto;width:100%}
body{display:flex;flex-direction:column;min-height:100vh}
h1{font-size:1.85rem;line-height:1.2;margin:.5rem 0 .75rem}
h2{font-size:1.35rem;line-height:1.3;margin:2rem 0 .5rem}
h3{font-size:1.1rem;margin:1.5rem 0 .25rem}
.lead{font-size:1.15rem;color:var(--muted);max-width:46rem}
p,li{max-width:46rem}
.small{font-size:.9rem;color:var(--muted)}
.crumbs{font-size:.9rem;color:var(--muted);margin-top:.25rem}
.hero{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem 1.25rem;margin-top:.5rem}
.stat{font-weight:600;color:var(--teal)}
.button{display:inline-block;background:var(--brand);color:#fff;text-decoration:none;font-weight:600;
  padding:.65rem 1.1rem;border-radius:8px}
.button:hover{background:var(--brand-dark);color:#fff}
.state-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(10.5rem,1fr));gap:.5rem;max-width:none}
.state-grid a{display:flex;justify-content:space-between;background:var(--surface);border:1px solid var(--line);
  border-radius:8px;padding:.55rem .75rem;text-decoration:none}
.state-grid a:hover{border-color:var(--brand)}
.count{color:var(--muted);font-size:.9rem}
.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:1rem 0}
table{border-collapse:collapse;width:100%;font-size:.95rem}
caption{text-align:left;font-weight:600;padding:.75rem .9rem;color:var(--muted)}
th,td{padding:.6rem .9rem;border-top:1px solid var(--line);text-align:left;vertical-align:top}
thead th{background:var(--tint);font-size:.85rem;white-space:nowrap}
tbody th{font-weight:600;min-width:12rem}
thead th.group{text-align:center;border-bottom:1px solid var(--line)}
.num{text-align:right;white-space:nowrap}
.note{display:block;font-size:.8rem;color:var(--muted);white-space:normal;max-width:16rem;margin-left:auto;text-align:left}
.note-flag{min-width:15rem;color:var(--ink);background:#fff8e6;border-left:3px solid #e9c46a;padding:.2rem .4rem;margin-top:.25rem}
.badge.badge-info{background:var(--tint);color:var(--brand-dark);border-color:#9cc9d6}
.note summary{cursor:pointer;color:var(--brand);text-align:right}
.note[open]{background:var(--tint);padding:.4rem .5rem;border-radius:6px}
.yn,time,td a{white-space:nowrap}
.yn-yes{color:var(--yes);font-weight:600}
.yn-no{color:var(--no)}
.yn-unknown{color:var(--unk);font-style:italic}
.badge{display:inline-block;background:#fff4d6;color:#5c4300;border:1px solid #e9c46a;border-radius:999px;
  font-size:.75rem;font-weight:700;padding:.05rem .5rem;margin:0}
.featured{background:#fffbef;border:1px solid #e9c46a;border-radius:var(--radius);padding:1rem 1.25rem;margin:1rem 0}
.callout{background:var(--tint);border-left:4px solid var(--teal);padding:.75rem 1rem;border-radius:0 8px 8px 0}
.two-col{display:grid;gap:0 2rem}
.faq h2{font-size:1.15rem;margin-top:1.75rem}
.price-tag{font-size:1.6rem;font-weight:700;color:var(--teal);margin:.25rem 0}
.site-footer{background:var(--surface);border-top:1px solid var(--line);padding:1.5rem 0;font-size:.9rem;color:var(--muted)}
.footer-links{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.25rem 1.25rem;max-width:none}
.copy{margin-bottom:0}
.table-wrap .cards{min-width:0}
@media (max-width:699px){
  .cards thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .cards,.cards tbody,.cards tr,.cards th,.cards td{display:block;width:100%}
  .cards tr{border-top:1px solid var(--line);padding:.6rem .9rem}
  .cards tbody th{border:0;padding:0 0 .35rem;min-width:0;font-size:1rem}
  .cards td{border:0;padding:.15rem 0;display:flex;justify-content:space-between;gap:1rem;text-align:right}
  .cards td::before{content:attr(data-label);color:var(--muted);text-align:left;font-size:.88rem}
  .cards .note{margin-left:auto;text-align:right}
  .cards .note-flag{min-width:0;text-align:left}
  .cards caption{display:block}
  .cards td.num{flex-wrap:wrap}
  .cards td.num .note{flex-basis:100%;max-width:none}
}
@media (min-width:760px){
  h1{font-size:2.3rem}
  .hero{padding:2.25rem 2rem}
  .two-col{grid-template-columns:1fr 1fr}
}
@media print{.site-header nav,.skip,.button{display:none}}
