:root{--bg:#fff;--grid:#e9f1f0;--ink:#1d2b33;--mute:#5c6b70;--acc:#0f6e6e;--acc-ink:#fff;--acc2:#e8842b;--acc2-soft:#fff4ea;--acc2-ink:#8a4a0f;--soft:#e6f2f1;--line:#cfe0de;--card:#fff;--ng:#b8433a;--ng-soft:#fdeeec;--font-body:"Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif;--font-head:"BIZ UDPGothic", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#14201f;--grid:#1e3130;--ink:#e6efee;--mute:#9fb3b0;--acc:#4fb3b0;--acc-ink:#0d1a19;--acc2:#f2a35e;--acc2-soft:#3a2a1c;--acc2-ink:#ffd9b3;--soft:#1c2f2e;--line:#2b4442;--card:#172725;--ng:#f08a80;--ng-soft:#3a2220}}:root[data-theme=dark]{--bg:#14201f;--grid:#1e3130;--ink:#e6efee;--mute:#9fb3b0;--acc:#4fb3b0;--acc-ink:#0d1a19;--acc2:#f2a35e;--acc2-soft:#3a2a1c;--acc2-ink:#ffd9b3;--soft:#1c2f2e;--line:#2b4442;--card:#172725;--ng:#f08a80;--ng-soft:#3a2220}*{box-sizing:border-box}html{color-scheme:light dark}body{background-color:var(--bg);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;background-size:22px 22px;margin:0;font-size:17px;line-height:1.85}a{color:var(--acc)}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--acc2);outline-offset:2px}.site-head{background:var(--acc);color:var(--acc-ink);z-index:10;position:sticky;top:0}.site-head .in{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1040px;margin:0 auto;padding:10px 18px;display:flex}.logo{font-family:var(--font-head);color:inherit;letter-spacing:.02em;font-size:1.2rem;font-weight:700;text-decoration:none}.logo small{opacity:.85;margin-left:8px;font-size:.75rem;font-weight:400}.nav{gap:14px;font-size:.9rem;display:flex}.nav a{color:inherit;opacity:.92;border-bottom:2px solid #0000;padding:4px 2px;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{border-bottom-color:var(--acc-ink);opacity:1}main{background:var(--card);border:1px solid var(--line);border-radius:10px;max-width:1040px;margin:24px auto 40px;padding:32px 36px 56px;box-shadow:0 2px 12px #0000000d}@media (width<=700px){main{border-left:0;border-right:0;border-radius:0;margin:0 0 24px;padding:22px 18px 44px}}.prose{max-width:72ch}.prose h1{font-family:var(--font-head);color:var(--acc);text-wrap:balance;margin:0 0 6px;font-size:1.7rem;line-height:1.35}.prose h2{font-family:var(--font-head);border-bottom:2px solid var(--acc);color:var(--acc);text-wrap:balance;margin:2.2em 0 .6em;padding-bottom:.25em;font-size:1.3rem}.prose h3{font-family:var(--font-head);border-left:4px solid var(--acc2);margin:1.6em 0 .4em;padding-left:.6em;font-size:1.05rem}.prose p,.prose li{max-width:68ch}.prose table{border-collapse:collapse;max-width:100%;margin:1em 0;font-size:.95rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:.45em .8em}.prose th{background:var(--soft);font-family:var(--font-head);font-weight:700}.prose pre{background:var(--soft);border:1px solid var(--line);border-radius:6px;padding:.8em 1em;font-size:.92rem;line-height:1.5;overflow-x:auto}.prose code{font-family:ui-monospace,SF Mono,Menlo,monospace}.prose hr{border:0;border-top:1px dashed var(--line);margin:2em 0}.prose strong{color:inherit}.prose blockquote{background:var(--soft);border-left:4px solid var(--acc);margin:1em 0;padding:.6em 1em}.prose blockquote p{margin:0}.eyebrow{letter-spacing:.1em;color:var(--mute);font-size:.8rem;font-family:var(--font-head)}.meta{color:var(--mute);margin:0 0 1.4em;font-size:.85rem}.term{font:inherit;color:var(--acc);cursor:help;border:0;border-bottom:2px dotted var(--acc);background:0 0;border-radius:0;padding:0 1px 1px}.term:hover{background:var(--soft)}#term-pop{z-index:20;background:var(--card);max-width:320px;color:var(--ink);border:1px solid var(--line);border-left:4px solid var(--acc);border-radius:6px;padding:10px 12px;font-size:.88rem;line-height:1.6;position:absolute;box-shadow:0 8px 24px #00000024}#term-pop[hidden]{display:none}#term-pop b{font-family:var(--font-head);color:var(--acc)}#term-pop a{margin-top:6px;font-size:.8rem;display:block}.btn{font-family:var(--font-head);background:var(--acc);color:var(--acc-ink);cursor:pointer;border:0;border-radius:6px;padding:10px 18px;font-size:1rem;font-weight:700;text-decoration:none;display:inline-block}.btn.alt{color:var(--acc);border:2px solid var(--acc);background:0 0}.btn:hover{filter:brightness(1.08)}.card{background:var(--card);border:1.5px solid var(--line);border-radius:8px;padding:16px 18px}.card h3{font-family:var(--font-head);margin:0 0 4px;font-size:1.05rem}.cards{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.unitlist{gap:8px;margin:0;padding:0;list-style:none;display:grid}.unitlist li{background:var(--card);border:1px solid var(--line);border-radius:6px;align-items:baseline;gap:10px;padding:8px 12px;display:flex}.unitlist .id{color:var(--mute);min-width:4.5em;font-family:ui-monospace,Menlo,monospace;font-size:.8rem}.unitlist .soon{color:var(--mute)}.chip{border:1px solid var(--acc);color:var(--acc);font-size:.74rem;font-family:var(--font-head);border-radius:999px;padding:1px 9px;display:inline-block}.chip.on{background:var(--acc);color:var(--acc-ink)}.chip.adv{border-color:var(--acc2);color:var(--acc2-ink);background:var(--acc2-soft)}.callout{background:var(--soft);border:1px solid var(--line);border-radius:8px;margin:1.2em 0;padding:12px 16px;font-size:.95rem}.site-foot{max-width:1040px;color:var(--mute);margin:0 auto;padding:8px 18px 40px;font-size:.82rem}.site-foot a{color:inherit}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@media (width<=600px){body{font-size:16px}.prose h1{font-size:1.4rem}}@media print{body{color:#000;font-size:11pt;line-height:1.6;background:#fff!important}.site-head,.site-foot,.callout,nav,.btn,#term-pop,.q-setup,.q-play,.q-done{display:none!important}main{max-width:none;box-shadow:none;background:#fff;border:0;margin:0;padding:0}.prose{max-width:none}.prose h1{color:#000;font-size:16pt}.prose h2{color:#000;break-after:avoid;border-bottom-color:#000;font-size:13pt}.prose h3{break-after:avoid;border-left-color:#000}.prose table,.prose pre{break-inside:avoid}.prose th{background:#eee}.term{color:#000;border-bottom:1px dotted #000}a{color:#000;text-decoration:none}.print-only{display:block!important}}.print-only{display:none}
