:root{--cream: #f8f3e9;--ink: #2a2440;--ink-subdued: #5c5070;--accent: #c57b57;--accent-2: #e8957b;--accent-deep: #9b5836;--border: #ece0bd;--hairline: #d8cfb8;--night: #2a2440;--night-deep: #1f1a33;--on-night: #f8f3e9;--on-night-subdued: rgba(248, 243, 233, .72);--tier-sober: #5d6bb6;--tier-good: #7a82b5;--tier-buzzed: #c58fa0;--tier-drunk: #dc8e7a;--tier-pastit: #e8957b;--accent-grad: linear-gradient(135deg, #e8957b, #c57b57);--sunset-grad: linear-gradient( 90deg, #5d6bb6 0%, #7a82b5 22%, #a289ab 42%, #c58fa0 58%, #dc8e7a 80%, #e8957b 100% );--measure: 70ch;--jp: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, "Noto Sans JP", Meiryo, system-ui, sans-serif;--serif: "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", "Shippori Mincho", serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--jp);line-height:1.85;font-size:17px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.site-header{display:flex;align-items:center;justify-content:space-between;max-width:var(--measure);margin:0 auto;padding:20px 24px}.wordmark{font-weight:700;font-size:20px;color:var(--ink);text-decoration:none}.site-header .lang{font-size:15px;color:var(--accent);text-decoration:none}.site-header .lang:hover{text-decoration:underline}main.doc{max-width:var(--measure);margin:0 auto;padding:8px 24px 64px}main.doc h1{font-family:var(--serif);font-size:30px;line-height:1.4;margin:24px 0 16px}main.doc h1:after{content:"";display:block;width:88px;height:3px;border-radius:2px;background:var(--sunset-grad);margin-top:14px}main.doc h2{font-family:var(--serif);font-size:22px;line-height:1.5;margin:40px 0 12px}main.doc h3{font-size:18px;margin:28px 0 8px}main.doc a{color:var(--accent-deep)}.doc-card{background:#fff;border:1px solid var(--hairline);border-radius:16px;padding:28px 24px;text-align:center;margin:28px 0}main.doc .doc-card-action{display:inline-block;font-size:20px;font-weight:600;background:var(--accent-grad);color:#fff;text-decoration:none;border-radius:999px;padding:12px 26px}main.doc .doc-card-action:hover{opacity:.92}.doc-card-note{font-size:14px;color:var(--ink-subdued);margin:14px 0 0}main.doc blockquote{margin:20px 0;padding:12px 18px;background:#fff;border-left:4px solid var(--accent-2);border-radius:6px;color:var(--ink-subdued)}main.doc table{border-collapse:collapse;width:100%;margin:16px 0}main.doc th,main.doc td{border:1px solid var(--border);padding:8px 10px;text-align:left;vertical-align:top}main.doc th{background:#fff}.hero{padding:56px 0}.hero p{color:var(--ink-subdued);font-size:19px}.site-footer{background:var(--night);color:var(--on-night-subdued);padding:40px 0;margin-top:48px}.footer-inner{max-width:var(--page-max, var(--measure));margin:0 auto;padding:0 24px}.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 20px}.site-footer nav a{color:var(--on-night-subdued);font-size:15px}.footer-socials{list-style:none;display:flex;gap:16px;padding:0;margin:20px 0 0}.footer-socials a{display:inline-flex;color:var(--on-night-subdued);transition:color .15s ease}.footer-socials a:hover{color:var(--cream)}.footer-socials svg{width:22px;height:22px;display:block}.site-footer .copyright{font-size:13px;margin-top:16px}.blog-back{margin:4px 0 0;font-size:14px}.blog-back a{color:var(--ink-subdued)}.blog-cta{background:#fffdf8;border:1px solid var(--border);border-left:3px solid var(--accent-2);border-radius:12px;padding:18px 20px;margin:36px 0 8px}.blog-cta p{margin:0 0 8px;font-size:15px;color:var(--ink-subdued)}.blog-cta a{color:var(--accent-deep);font-weight:600;text-decoration:none;font-size:15px}.blog-cta a:hover{text-decoration:underline}.blog-note{font-size:13px;color:var(--ink-subdued);border-top:1px solid var(--hairline);padding-top:16px;margin-top:36px}.blog-list{list-style:none;padding:0;margin:24px 0 0}.blog-list li{padding:20px 0;border-top:1px solid var(--hairline)}.blog-list li:last-child{border-bottom:1px solid var(--hairline)}.blog-list-title{font-family:var(--serif);font-size:20px;font-weight:600;text-decoration:none}.blog-list li p{color:var(--ink-subdued);font-size:15px;margin:8px 0 0}.blog-external{margin-top:48px;border-top:1px solid var(--hairline);padding-top:32px}.blog-external>p{color:var(--ink-subdued);font-size:15px;margin:8px 0 0}.blog-external-list{list-style:none;padding:0;margin:20px 0 0}.blog-external-list li{display:flex;align-items:baseline;gap:12px;padding:14px 0;border-top:1px solid var(--hairline)}.blog-external-list li:last-child{border-bottom:1px solid var(--hairline)}.blog-external-platform{flex:none;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-deep);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:6px;padding:2px 8px;min-width:50px;text-align:center}.blog-external-body{display:flex;flex-direction:column;gap:4px}.blog-external-list a{font-family:var(--serif);font-size:17px;text-decoration:none}.blog-external-date{font-size:13px;color:var(--ink-subdued);margin:0}.bac-chart{margin:28px 0}.bac-chart svg{width:100%;height:auto;background:#fff;border:1px solid var(--hairline);border-radius:14px;padding:8px}.bac-chart figcaption{font-size:13px;color:var(--ink-subdued);margin-top:10px;text-align:center}main.doc sup.cite{font-size:.7em;line-height:0}main.doc sup.cite a{text-decoration:none}.refs{list-style:none;padding:0;font-size:14px;color:var(--ink-subdued)}.refs li{margin:8px 0}body.page{min-height:100vh;display:flex;flex-direction:column}body.page>*{width:100%}body.page>main{flex:1 0 auto}.blog-date{font-size:14px;color:var(--ink-subdued);margin:0 0 8px}.blog-list-date{font-size:13px;color:var(--ink-subdued);margin:0 0 4px}.stage-ladder{margin:24px 0}.stage-ladder .ladder{display:flex;border-radius:12px;overflow:hidden;border:1px solid var(--hairline)}.stage-ladder .seg{flex:1;min-width:0;padding:12px 6px;color:#fff;text-align:center;display:flex;flex-direction:column;gap:4px;text-shadow:0 1px 2px rgba(0,0,0,.28)}.stage-ladder .seg .name{font-size:13px;font-weight:600;line-height:1.3}.stage-ladder .seg .rng{font-size:11px;opacity:.92}.stage-ladder figcaption{font-size:13px;color:var(--ink-subdued);margin-top:10px;text-align:center}
