:root{
  --bg:#E6E9EC;--panel:#fff;--panel2:#F3F5F7;--ink:#22272D;--muted:#5B636C;--line:#CBD1D7;
  --accent:#FFC20E;--asphalt:#2B3036;--warn:#9A6A00;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#15181B;--panel:#1E2226;--panel2:#252A2F;--ink:#E9ECEF;--muted:#9BA4AE;--line:#353B42;--asphalt:#0F1214;--warn:#E7B53C}}
:root[data-theme="dark"]{--bg:#15181B;--panel:#1E2226;--panel2:#252A2F;--ink:#E9ECEF;--muted:#9BA4AE;--line:#353B42;--asphalt:#0F1214;--warn:#E7B53C}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 Barlow,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:"Barlow Condensed","Arial Narrow",Barlow,sans-serif;line-height:1.1;margin:0}
h1{font-size:clamp(2rem,5vw,3rem)}
h2{font-size:1.6rem;margin:2rem 0 .5rem;border-bottom:2px solid var(--accent);padding-bottom:3px}
h3{font-size:1.2rem;margin:1.4rem 0 .3rem}
p,li{max-width:70ch}
p{margin:.6rem 0}
ul{padding-left:20px}
li{margin:.35rem 0}
a{color:inherit}
header{background:var(--asphalt);color:#F1F3F5;border-bottom:6px solid var(--accent)}
.hin{max-width:860px;margin:0 auto;padding:26px 20px}
.hin a.back{color:#B9C1C9;text-decoration:none;font-weight:600;font-size:.95rem;display:inline-block;margin-bottom:14px}
.hin a.back:hover{color:var(--accent)}
.hin p{color:#C3CAD1;margin:.4rem 0 0}
main{max-width:860px;margin:0 auto;padding:8px 20px 60px}
section{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:8px 24px 24px;margin:18px 0}
.note{background:var(--panel2);border-left:5px solid var(--accent);border-radius:0 8px 8px 0;padding:12px 16px;margin:16px 0}
.note p{margin:.3rem 0}
.todo{background:color-mix(in srgb,var(--warn) 18%,transparent);border-left:5px solid var(--warn);border-radius:0 8px 8px 0;padding:12px 16px;margin:16px 0}
mark{background:var(--accent);color:#22272D;padding:0 5px;border-radius:3px;font-weight:600}
table{border-collapse:collapse;width:100%;margin:12px 0;font-size:.95rem}
th,td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
th{background:var(--panel2);font-weight:600;white-space:nowrap}
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
footer{max-width:860px;margin:0 auto;padding:0 20px 50px;color:var(--muted);font-size:.9rem}
footer a{font-weight:600}
.small{font-size:.9rem;color:var(--muted)}
