:root{
    color-scheme:light dark;
    --ink:#15181b;--ink-soft:#41463f;--paper:#e8e6df;--surface:#fcfbf8;
    --line:#d3d1c6;--line-strong:#b9b7ab;--accent:#2c5642;--accent-bright:#3a7459;
    --steel:#c6c9c2;--plate:#dedcd3;--warn:#7d5127;--maxw:1060px;
  }
  @media (prefers-color-scheme:dark){
    :root{
      --ink:#ecebe4;--ink-soft:#b6b8af;--paper:#1b1e1c;--surface:#242723;
      --line:#363a35;--line-strong:#4d524c;--accent:#6fbf97;--accent-bright:#8ad2ac;
      --steel:#3a3e39;--plate:#2a2e2a;--warn:#d09a5d;
    }
  }
  *{box-sizing:border-box;}
  html{-webkit-text-size-adjust:100%;background:var(--paper);}
  body{margin:0;background:var(--paper);color:var(--ink);font-family:"Newsreader",Georgia,serif;font-size:18px;line-height:1.6;font-feature-settings:"kern" 1;}
  .mono{font-family:"IBM Plex Mono",ui-monospace,monospace;}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px;}
  a{color:var(--accent);text-underline-offset:3px;text-decoration-thickness:1px;}
  a:hover{color:var(--accent-bright);}
  :focus-visible{outline:2.5px solid var(--accent-bright);outline-offset:3px;border-radius:2px;}
  .skip{position:absolute;left:-9999px;top:0;background:#15181b;color:#fff;padding:10px 16px;z-index:50;}
  .skip:focus{left:8px;top:8px;}
  .util{border-bottom:1px solid var(--line);background:var(--surface);}
  .util .wrap{display:flex;justify-content:space-between;align-items:center;gap:16px;height:42px;}
  .crumb{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.02em;color:var(--ink-soft);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}
  .crumb a{color:var(--ink-soft);text-decoration:none;}
  .crumb a:hover{color:var(--accent);}
  .crumb span{color:var(--ink);}
  .brandtag{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.08em;color:var(--accent);font-weight:600;flex-shrink:0;}
  .hero{padding:46px 0 36px;border-bottom:1px solid var(--line);background:var(--paper);}
  .eyebrow{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 14px;}
  h1{font-family:"Archivo",sans-serif;font-weight:800;font-size:clamp(2.1rem,6vw,3.5rem);line-height:1.02;letter-spacing:-.02em;margin:0 0 6px;color:var(--ink);}
  h1 .yr{display:block;font-size:.42em;font-weight:600;letter-spacing:.01em;color:var(--ink-soft);margin-bottom:8px;}
  .essence{font-size:1.18rem;color:var(--ink-soft);max-width:46ch;margin:14px 0 0;line-height:1.45;}
  .placard{margin-top:34px;background:var(--plate);border:1px solid var(--line-strong);border-radius:10px;padding:26px 26px 22px;position:relative;box-shadow:inset 0 1px 0 #fff, 0 1px 2px rgba(0,0,0,.06);}
  .placard::before,.placard::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fbfbf9,#9d9c92);top:11px;}
  .placard::before{left:11px;}
  .placard::after{right:11px;}
  .rivet{position:absolute;bottom:11px;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fbfbf9,#9d9c92);}
  .rivet.l{left:11px;} .rivet.r{right:11px;}
  .placard h2{font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin:0 0 18px;font-weight:600;}
  .gauges{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
  .gauge{border-left:2px solid var(--accent);padding-left:14px;}
  .gauge .num{font-family:"IBM Plex Mono",monospace;font-weight:600;font-size:clamp(1.5rem,3.4vw,2.05rem);color:var(--ink);line-height:1;}
  .gauge .num .u{font-size:.5em;color:var(--ink-soft);font-weight:500;margin-left:3px;}
  .gauge .lbl{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-top:8px;}
  .metarow{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
  .chip{font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.02em;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:5px 12px;color:var(--ink-soft);}
  .chip b{color:var(--ink);font-weight:600;}
  .chip.price b{color:var(--accent);}
  main{display:block;background:var(--paper);}
  section{padding:42px 0;border-bottom:1px solid var(--line);}
  .sec-h{font-family:"IBM Plex Mono",monospace;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 20px;display:flex;align-items:baseline;gap:12px;}
  .sec-h .idx{color:var(--ink-soft);font-weight:500;}
  .prose{max-width:64ch;}
  .prose p{margin:0 0 16px;}
  .prose p:last-child{margin-bottom:0;}
  .lead{font-size:1.16rem;}
  .specgrid{display:grid;grid-template-columns:1fr 1fr;gap:28px 44px;}
  .specgroup h3{font-family:"Archivo",sans-serif;font-size:.86rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink);margin:0 0 4px;padding-bottom:9px;border-bottom:2px solid var(--ink);}
  .specgroup dl{margin:0;}
  .specgroup .row{display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line);}
  .specgroup dt{color:var(--ink-soft);font-size:.94rem;}
  .specgroup dd{margin:0;font-family:"IBM Plex Mono",monospace;font-size:.92rem;font-weight:500;color:var(--ink);text-align:right;}
  .tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface);}
  table.fam{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px;}
  table.fam th,table.fam td{text-align:left;padding:11px 16px;border-bottom:1px solid var(--line);}
  table.fam thead th{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:600;background:var(--paper);}
  table.fam td.code{font-family:"IBM Plex Mono",monospace;font-weight:600;color:var(--ink);}
  table.fam td.code a{color:var(--accent);text-decoration:none;}
  table.fam td.code a:hover{text-decoration:underline;}
  table.fam td.numc{font-family:"IBM Plex Mono",monospace;color:var(--ink-soft);}
  table.fam tr.cur{background:rgba(44,86,66,.07);}
  table.fam tr.cur td.code{color:var(--accent);}
  table.fam tr.cur td.code::after{content:" \2190 this entry";font-family:"Newsreader",serif;font-size:.74rem;font-style:italic;color:var(--accent);font-weight:400;letter-spacing:0;}
  .fam-note{font-style:italic;color:var(--ink-soft);font-size:.9rem;margin:12px 2px 0;}
  .notes{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .note{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:6px;padding:16px 18px;}
  .note.flag{border-left-color:var(--warn);}
  .note h4,.note h3.nh{font-family:"Archivo",sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;margin:0 0 6px;color:var(--ink);}
  .note p{margin:0;font-size:.96rem;color:var(--ink-soft);line-height:1.5;}
  .srctag{display:inline-block;margin-top:18px;font-family:"IBM Plex Mono",monospace;font-size:11px;letter-spacing:.04em;color:var(--ink-soft);background:var(--paper);border:1px dashed var(--line-strong);border-radius:5px;padding:7px 12px;}
  .compare{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px;}
  .cmp{border:1px solid var(--line);border-radius:8px;padding:16px 18px;background:var(--surface);}
  .cmp .dir{font-family:"IBM Plex Mono",monospace;font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:6px;}
  .cmp .nm{font-family:"Archivo",sans-serif;font-weight:700;font-size:1rem;margin-bottom:5px;}
  .cmp p{margin:0;font-size:.9rem;color:var(--ink-soft);line-height:1.45;}
  .docs{display:flex;flex-wrap:wrap;gap:12px;}
  .doc{display:flex;align-items:center;gap:11px;border:1px solid var(--line);border-radius:8px;padding:13px 17px;background:var(--surface);text-decoration:none;color:var(--ink);font-size:.95rem;flex:1 1 240px;transition:border-color .15s,transform .15s;}
  .doc:hover{border-color:var(--accent);transform:translateY(-1px);}
  .doc .ic{font-family:"IBM Plex Mono",monospace;font-size:11px;font-weight:600;color:#fff;background:#2c5642;border-radius:4px;padding:4px 7px;letter-spacing:.04em;}
  .doc .dt{font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-soft);display:block;}
  footer{padding:34px 0 56px;color:var(--ink-soft);background:var(--paper);}
  .foot-meta{display:flex;flex-wrap:wrap;gap:10px 28px;font-family:"IBM Plex Mono",monospace;font-size:11.5px;letter-spacing:.02em;}
  .foot-meta b{color:var(--ink);font-weight:600;}
  .completeness{margin-top:18px;display:flex;align-items:center;gap:12px;font-family:"IBM Plex Mono",monospace;font-size:11px;color:var(--ink-soft);}
  .bar{flex:0 0 160px;height:6px;background:var(--steel);border-radius:3px;overflow:hidden;}
  .bar span{display:block;height:100%;background:var(--accent);}
  .disclaim{margin-top:20px;font-size:.82rem;font-style:italic;max-width:70ch;line-height:1.5;}
  table.fam tr.muted td{color:var(--ink-soft);opacity:.82;}
  table.fam tr.muted td.code{font-weight:500;color:var(--ink-soft);}
  @media (max-width:720px){
    body{font-size:17px;}
    .gauges{grid-template-columns:repeat(2,1fr);gap:20px 14px;}
    .specgrid{grid-template-columns:1fr;gap:24px;}
    .notes{grid-template-columns:1fr;}
    .compare{grid-template-columns:1fr;}
    .util .wrap{height:auto;padding-top:8px;padding-bottom:8px;flex-direction:column;align-items:flex-start;gap:3px;}
    .crumb{white-space:normal;}
  }
  @media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;}}
