:root{--paper:#FFFFFF;--ink:#212121;--ink-2:#4A4A48;--line:#E4E4E1;--accent:#2346E0;--brand:"Source Serif 4",Georgia,serif;--sans:"Hanken Grotesk","Segoe UI",system-ui,sans-serif;--display:"Source Serif 4",Georgia,serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;font-size:1rem}
.lg-head{border-bottom:1px solid var(--line)}
.lg-head__in,.lg-main,.lg-foot{max-width:760px;margin:0 auto;padding-inline:max(1.25rem,env(safe-area-inset-left))}
.lg-head__in{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1rem}
.lg-logo{display:inline-flex;align-items:center;gap:.7rem;color:var(--ink);text-decoration:none;font-family:var(--brand);font-weight:600;letter-spacing:.22em;font-size:1.05rem}
.lg-logo svg{width:38px;height:24px;fill:#212121;stroke:#212121;stroke-width:2;stroke-linejoin:round}
.lg-back{color:var(--ink-2);font-size:.9rem;text-decoration:none}
.lg-back:hover,.lg-main a:hover{color:var(--accent)}
.lg-main{padding-block:clamp(2.5rem,7vw,4.5rem)}
h1{font-family:var(--display);font-weight:600;letter-spacing:-.015em;font-size:clamp(2rem,5vw,2.8rem);line-height:1.1;margin:0 0 .5rem}
.lg-upd{color:var(--ink-2);font-size:.875rem;margin:0 0 2.5rem}
h2{font-size:1.15rem;margin:2.2rem 0 .6rem;letter-spacing:-.005em}
p,li{color:var(--ink)}
ul{padding-left:1.2rem}
li{margin:.25rem 0}
.lg-main a{color:var(--ink);text-underline-offset:3px}
.todo{background:#EDEDEA;padding:0 .3em;border-radius:3px}
table{width:100%;border-collapse:collapse;font-size:.95rem;margin:.5rem 0}
th,td{text-align:left;vertical-align:top;padding:.55rem .6rem;border-bottom:1px solid var(--line)}
th{color:var(--ink-2);font-weight:600;width:34%}
.lg-foot{padding-block:2rem 3rem;color:var(--ink-2);font-size:.875rem;border-top:1px solid var(--line)}
.lg-foot a{color:var(--ink-2);margin-right:1rem}
