
  :root { --teal:#17695A; --teal2:#178A72; --teal-deep:#0F4C40; --line:#e5e7eb; --bg:#f6f8f8; --text:#1f2937; --muted:#6b7280; }
  * { box-sizing:border-box; }
  html, body { overflow-x:hidden; }
  body { margin:0; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; color:var(--text); background:var(--bg); line-height:1.65; }
  header.site { background:var(--teal); color:#fff; padding:18px 24px; }
  header.site .bar { max-width:820px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:16px; }
  header.site h1 { margin:0; font-size:18px; }
  header.site h1 a { color:#fff; text-decoration:none; }
  header.site nav a { color:#dcefe9; font-size:14px; text-decoration:none; margin-left:16px; }
  header.site nav a:hover { color:#fff; text-decoration:underline; }
  main { max-width:820px; margin:0 auto; padding:24px; }
  .crumbs { font-size:13px; color:var(--muted); margin:2px 0 10px; }
  .crumbs a { color:var(--teal); text-decoration:none; }
  h2.title { font-size:30px; line-height:1.18; margin:6px 0 8px; color:#122f29; }
  .tag { display:inline-block; font-size:12px; color:var(--teal); background:#e7f1ed; border:1px solid #d3e6df; border-radius:999px; padding:3px 10px; margin-bottom:6px; }
  h3 { font-size:19px; color:var(--teal); margin:28px 0 8px; }
  p, li { font-size:16px; }
  .rangebox { background:#fff; border:1px solid var(--line); border-left:4px solid var(--teal2); border-radius:10px; padding:14px 18px; margin:12px 0; }
  .cols { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:10px 0; }
  .card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:16px 18px; }
  .card h4 { margin:0 0 8px; font-size:15px; }
  .card.fav h4 { color:var(--teal2); } .card.lim h4 { color:#b23a2e; }
  .card ul { margin:0; padding-left:18px; font-size:14px; color:#374151; }
  details { background:#fff; border:1px solid var(--line); border-radius:10px; padding:2px 16px; margin:8px 0; }
  details summary { cursor:pointer; font-weight:600; padding:12px 0; font-size:15px; color:#122f29; }
  details p { margin:0 0 12px; color:#374151; }
  .cta { background:linear-gradient(135deg,var(--teal),var(--teal-deep)); color:#fff; border-radius:14px; padding:22px; margin:26px 0; text-align:center; }
  .cta h3 { color:#fff; margin:0 0 6px; }
  .cta p { color:#dcefe9; margin:0 0 14px; font-size:15px; }
  .cta a { display:inline-block; background:#fff; color:var(--teal-deep); text-decoration:none; font-weight:600; padding:12px 22px; border-radius:9px; }
  .disclaimer { background:#fff7ed; border:1px solid #f3d9b8; border-left:4px solid #c07d2e; border-radius:10px; padding:12px 16px; margin:22px 0; font-size:14px; color:#5c4321; }
  .grid-links { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:14px 0; }
  .grid-links a { display:block; background:#fff; border:1px solid var(--line); border-radius:10px; padding:14px 16px; text-decoration:none; color:#122f29; }
  .grid-links a:hover { border-color:var(--teal2); }
  .grid-links .q { color:var(--muted); font-size:13px; margin-top:2px; }
  footer.site { border-top:1px solid var(--line); padding:22px 24px; color:var(--muted); font-size:13px; text-align:center; }
  footer.site a { color:var(--teal); text-decoration:none; margin:0 8px; }
  @media (max-width:640px){ .cols, .grid-links { grid-template-columns:1fr; } h2.title { font-size:25px; } }
  @media (max-width:600px){
    header.site .bar { flex-direction:column; align-items:flex-start; gap:8px; }
    header.site nav { display:flex; flex-wrap:wrap; }
    header.site nav a { margin:0 14px 0 0; }
  }
