
:root{
  color-scheme:dark;
  --bg:#282828;--bg1:#3c3836;--bg2:#504945;
  --fg:#ebdbb2;--fg1:#d5c4a1;--fg2:#bdae93;
  --red:#fb4934;--green:#b8bb26;--yellow:#fabd2f;
  --blue:#83a598;--purple:#d3869b;--aqua:#8ec07c;
  --orange:#fe8019;--gray:#928374;
  --border:#504945;--link:#fabd2f;--linkhov:#fe8019;
  --lens-border:#8ec07c;
  --serif:Georgia,"Times New Roman",serif;
  --sans:"Helvetica Neue",Arial,sans-serif;
  --mono:"SF Mono","Cascadia Code",Consolas,monospace;
}
body:has(#theme-toggle:checked){
  color-scheme:light;
  --bg:#fbf1c7;--bg1:#ebdbb2;--bg2:#d5c4a1;
  --fg:#3c3836;--fg1:#504945;--fg2:#665c54;
  --red:#cc241d;--green:#98971a;--yellow:#d79921;
  --blue:#458588;--purple:#b16286;--aqua:#689d6a;
  --orange:#d65d0e;--gray:#7c6f64;
  --border:#d5c4a1;--link:#076678;--linkhov:#af3a03;
  --lens-border:#689d6a;
}
body{font-family:var(--serif);line-height:1.75;max-width:68ch;margin:0 auto;padding:1.5rem 1.25rem;color:var(--fg);background:var(--bg);transition:background .2s,color .2s;font-size:1.05rem}
header.masthead{border-bottom:2px solid var(--border);margin-bottom:1.5rem;padding-bottom:.75rem;display:flex;flex-direction:column;align-items:flex-start}
header.masthead a{font-family:var(--sans);font-weight:700;font-size:1.15rem;letter-spacing:-.01em}
header.masthead .topnav{display:flex;gap:.7rem;align-items:center;font-family:var(--sans)}
header.masthead .topnav a{font-weight:400;font-size:.9rem;padding:.55rem .35rem;display:inline-flex;align-items:center;line-height:1.3}
h1{font-family:var(--sans);font-size:1.65rem;font-weight:700;line-height:1.25;color:var(--fg);margin-bottom:.5rem;letter-spacing:-.02em}
h2{font-family:var(--sans);font-size:.95rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);margin-top:2.5rem;margin-bottom:.75rem;color:var(--fg1);padding-bottom:.3rem}
a{color:var(--link);text-decoration:none;transition:color .15s}
a:hover{color:var(--linkhov);text-decoration:underline}
nav.tags{margin:.75rem 0 1.5rem;font-family:var(--sans);font-size:.85rem}
nav.tags a{margin-right:.4rem;margin-bottom:.2rem;display:inline-block;padding:.4rem .6rem;border:1px solid var(--border);border-radius:3px;background:var(--bg1)}
nav.tags a:hover{background:var(--bg2);text-decoration:none}
.skip{position:absolute;left:-999px}.skip:focus{left:0}
:focus{outline:2px solid var(--blue)}
.cite{font-family:var(--mono);font-size:.75em;color:var(--fg2)}
a.cite{color:var(--link);text-decoration:underline}
.lens h2{display:inline-block;background:rgba(142,192,124,.18);border-left:3px solid var(--lens-border);border-bottom:none;padding:.3rem .7rem}
.lens p{color:var(--fg1);margin:.85rem 0}
.ctx-row{margin:.6rem 0 1.25rem;font-family:var(--sans);font-size:.8rem;display:flex;flex-wrap:wrap;gap:.35rem;align-items:baseline}
.ctx-label{color:var(--fg2);margin-right:.15rem}
.ctx{display:inline-block;padding:.3rem .55rem;border:1px dashed var(--border);border-radius:999px;background:transparent;color:var(--fg1)}
.ctx:hover{background:var(--bg1);color:var(--linkhov);text-decoration:none}
footer{margin-top:3rem;border-top:1px solid var(--border);padding-top:.75rem;color:var(--fg2);font-family:var(--sans);font-size:.8rem}
button{font-family:var(--sans);background:var(--bg1);color:var(--fg);border:1px solid var(--border);padding:.4rem 1rem;cursor:pointer;border-radius:4px;font-size:.9rem;transition:background .15s}
button:hover{background:var(--bg2)}
.theme-toggle-input{position:absolute;opacity:0;width:0;height:0}
.theme-toggle-label{cursor:pointer;font-size:1.2rem;padding:.2rem .5rem;border:1px solid var(--border);border-radius:4px;user-select:none;background:var(--bg1);transition:background .15s}
.theme-toggle-label:hover{background:var(--bg2)}
body:has(#theme-toggle:checked) .theme-toggle-label::after{content:" ☀"}
body:not(:has(#theme-toggle:checked)) .theme-toggle-label::after{content:" ☾"}
body:has(#theme-toggle:focus-visible) .theme-toggle-label{outline:2px solid var(--blue);outline-offset:2px}
small{color:var(--fg2);font-family:var(--sans);font-size:.85rem}
ul{padding-left:1.25rem;margin:.5rem 0}
li{margin-bottom:.5rem}
ul.sub-claims{margin:.25rem 0 .75rem 1rem;padding-left:1.25rem;list-style:disc;border-left:2px solid var(--border);padding-top:.35rem;padding-bottom:.35rem}
ul.sub-claims li{font-size:.92em;color:var(--fg1);margin-bottom:.35rem}
article>p{color:var(--fg1);margin-bottom:1rem}
section{margin-bottom:.5rem}
.field{margin:.6rem 0}
.ovlabel{font-family:var(--sans);font-size:.85rem;margin-right:.5rem;cursor:pointer;display:inline-block}
.val{display:block;margin:.25rem 0}
.inh{display:block;margin-top:.15rem}
.field:has(.ov:checked) .val{opacity:1;pointer-events:auto}
.field:has(.ov:not(:checked)) .val{opacity:.45;pointer-events:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (prefers-reduced-motion: reduce){*{transition:none!important;scroll-behavior:auto!important}}
.hub-list{padding-left:0;margin-top:1rem}
.hub-card{list-style:none;border:1px solid var(--border);border-radius:6px;padding:.75rem 1rem;margin:0 0 .75rem;background:var(--bg1)}
.hub-card-title{font-family:var(--sans);font-weight:600;font-size:1.1rem}
.links-list{padding-left:0;list-style:none}
.links-list li{margin-bottom:1.1rem}
.search-form{margin:1rem 0;display:flex;gap:.4rem;max-width:22rem}
.search-form input{flex:1}
.separator{border:none;border-top:1px solid var(--border);margin:2.5rem 0}
.phase-badge{font-style:italic}
.cloud{line-height:2.2}
.cloud a{margin:.1rem .45rem;display:inline-block;line-height:1.25}
.next-meeting{font-family:var(--sans);font-size:.85rem;padding:.35rem .75rem .3rem;background:var(--bg1);color:var(--fg1);border-left:3px solid var(--blue);margin-bottom:1rem}
