:root{--bg: #110D1E;--card: #1E1530;--border: #2A1E40;--text-primary: #E2D4F8;--text-muted: #9B8FBE;--text-hint: #7A6A96;--accent: #7F77DD;--link: #A78BFA}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:700;color:var(--text-primary);text-decoration:none;letter-spacing:.02em}.brand img{border-radius:7px}nav{display:flex;gap:20px;flex-wrap:wrap}nav a{color:var(--text-muted);text-decoration:none;font-size:14px}nav a:hover{color:var(--text-primary)}main{max-width:760px;margin:0 auto;padding:40px 24px 80px}main.wide{max-width:none;margin:0;padding:0}main.with-toc{max-width:none;margin:0;padding:40px 24px 80px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,760px) minmax(0,1fr);gap:40px}main.with-toc .toc{justify-self:end;width:220px}main.with-toc .doc{grid-column:2;min-width:0}.toc{position:sticky;top:24px;align-self:start}.toc-details{margin:0}.toc-label{font-size:11px;color:var(--text-hint);letter-spacing:.12em;margin:0 0 12px;list-style:none}.toc-label::-webkit-details-marker{display:none}.toc nav{display:flex;flex-direction:column;gap:2px;font-size:13px;border-left:1px solid var(--border)}.toc nav a{color:var(--text-muted);text-decoration:none;padding:6px 14px;border-left:2px solid transparent;margin-left:-1px}.toc nav a:hover{color:var(--text-primary);border-left-color:#afa9ec}@media(max-width:1200px){main.with-toc{grid-template-columns:220px minmax(0,1fr);gap:40px;max-width:1040px;margin:0 auto}main.with-toc .toc{justify-self:start}main.with-toc .doc{grid-column:2}}@media(max-width:900px){main.with-toc{grid-template-columns:minmax(0,1fr);gap:0;max-width:760px}main.with-toc .doc{grid-column:1}main.with-toc .toc{position:static;width:auto;height:0}.toc-details{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:50;width:max-content;max-width:min(320px,calc(100vw - 32px));background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:0 12px 32px #00000080}.toc-label{display:flex;align-items:center;gap:10px;margin:0;padding:0 18px;font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--text-primary);cursor:pointer;min-height:48px}.toc-label:after{content:"";width:8px;height:8px;border-right:2px solid var(--text-hint);border-bottom:2px solid var(--text-hint);transform:rotate(-135deg) translateY(2px);transition:transform .15s ease}.toc-details[open] .toc-label:after{transform:rotate(45deg) translateY(-2px)}.toc-details[open]{width:min(320px,calc(100vw - 32px))}.toc-details[open] .toc-label{border-bottom:1px solid var(--border)}.toc nav{flex-direction:column;border-left:none;gap:0;padding:4px 18px 12px;max-height:min(60vh,420px);overflow-y:auto;overscroll-behavior:contain}.toc nav a{padding:11px 0;border-left:none;margin-left:0}.toc nav a+a{border-top:1px solid var(--border)}.toc nav a:hover{border-left-color:transparent}}@media(prefers-reduced-motion:reduce){.toc-label:after{transition:none}}main:not(.wide) h1{font-size:28px;margin:0 0 24px;color:var(--text-primary)}main:not(.wide) h2{font-size:20px;margin:32px 0 12px;color:var(--text-primary);border-left:3px solid var(--accent);padding-left:12px}main:not(.wide) h3{font-size:16px;margin:24px 0 8px;color:var(--text-primary)}main:not(.wide) p,main:not(.wide) li{color:var(--text-primary);font-size:15px}main:not(.wide) ul,main:not(.wide) ol{padding-left:24px}main:not(.wide) a{color:var(--link);text-decoration:underline}main:not(.wide) a:hover{color:#c4b5fd}main:not(.wide) hr{border:none;border-top:1px solid var(--border);margin:32px 0}main:not(.wide) code{background:var(--card);padding:2px 6px;border-radius:4px;font-size:13px;color:var(--text-muted)}main:not(.wide) blockquote{border-left:3px solid var(--text-hint);padding-left:16px;margin:16px 0;color:var(--text-muted)}main:not(.wide) table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;margin:0 0 20px;border:1px solid var(--border);border-radius:14px;overflow:hidden}main:not(.wide) thead tr{background:var(--card)}main:not(.wide) th{text-align:left;padding:12px 16px;color:var(--text-muted);font-weight:700;font-size:12px;border-bottom:1px solid var(--border)}main:not(.wide) td{padding:12px 16px;border-bottom:1px solid var(--border);vertical-align:top}main:not(.wide) tbody tr:last-child td{border-bottom:none}main:not(.wide) td:first-child{font-weight:700}main.with-toc .doc>blockquote:first-of-type{border:1px solid var(--border);border-left:1px solid var(--border);background:var(--card);border-radius:14px;padding:16px 20px;margin:0 0 40px;font-size:13px;color:var(--text-primary)}footer{border-top:1px solid var(--border);padding:28px 40px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;color:var(--text-hint);font-size:13px}.footer-links{display:flex;gap:24px;flex-wrap:wrap}footer a{color:var(--text-muted);text-decoration:none}footer a:hover{color:var(--text-primary)}@media(max-width:640px){footer{justify-content:center;text-align:center}.footer-links{justify-content:center;gap:16px}}
