:root{color-scheme:dark;--bg:#282c34;--panel:#21252b;--inset:#2c313a;--rule:#3b4048;--rule-strong:#4b5263;--text:#abb2bf;--dim:#828997;--faint:#5c6370;--signal:#dcdfe4;--p1:#d19a66;--p2:#61afef;--p3:#c678dd;--p4:#98c379;--p5:#e06c75;--cyan:#56b6c2;--down:#5c6370;--max:1080px;--gutter:clamp(20px, 5vw, 40px);--font-jp:"Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic", "Noto Sans JP", sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--bg);color:var(--text);font-family:var(--font-body), var(--font-jp);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.7}:lang(ja) body{line-height:1.85}h1,h2,h3{font-family:var(--font-mono), var(--font-jp);letter-spacing:-.02em;color:var(--signal);text-wrap:balance;margin:0;font-weight:700;line-height:1.15}:lang(ja) h1,:lang(ja) h2{letter-spacing:0;line-height:1.35}h2{font-size:clamp(1.6rem,3vw,2.2rem)}h3{letter-spacing:.16em;text-transform:uppercase;color:var(--faint);font-size:.78rem;font-weight:600}:lang(ja) h3{letter-spacing:.1em}p{text-wrap:pretty;margin:0 0 1.1em}p:last-child{margin-bottom:0}:lang(ja) h1,:lang(ja) h2,:lang(ja) .statement,:lang(ja) .lede,:lang(ja) .prose p,:lang(ja) .prose li{word-break:auto-phrase}a{color:var(--text);text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:.22em;text-decoration-thickness:1px;transition:color .15s,text-decoration-color .15s}a:hover{color:var(--signal);text-decoration-color:var(--p4)}strong{color:var(--signal);font-weight:600}:focus-visible{outline:2px solid var(--p2);outline-offset:3px;border-radius:1px}.wrap{max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.band{border-top:1px solid var(--rule);padding-block:clamp(72px,9vw,120px)}.lede{color:var(--dim);max-width:46em;font-size:clamp(1rem,1.4vw,1.12rem);line-height:1.75}:lang(ja) .lede{line-height:1.95}.dim{color:var(--dim)}.tiny{font-size:.82rem}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{font-family:var(--font-mono), monospace;letter-spacing:.04em;color:var(--faint);margin:0 0 clamp(26px,3.4vw,40px);font-size:.82rem;font-weight:500}.eyebrow .hash{color:var(--p4);font-weight:700}.btn{font-family:var(--font-mono), monospace;border:1px solid var(--rule-strong);color:var(--text);background:var(--panel);border-radius:3px;align-items:center;gap:.6em;padding:.95em 1.4em;font-size:.85rem;font-weight:500;line-height:1;text-decoration:none;transition:border-color .15s,color .15s,background-color .15s;display:inline-flex}.btn:hover{color:var(--signal);border-color:var(--faint);text-decoration:none}.btn--solid{background:var(--signal);border-color:var(--signal);color:var(--bg);font-weight:600}.btn--solid:hover{background:var(--p4);border-color:var(--p4);color:#21252b}.btn-row{flex-wrap:wrap;gap:12px;display:flex}.chips{flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;display:flex}.chips li{font-family:var(--font-mono), monospace;letter-spacing:.02em;color:var(--dim);font-size:.82rem;line-height:1.5}.chips li:before{content:"[ ";color:var(--faint)}.chips li:after{content:" ]";color:var(--faint)}.cards{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.card{background:var(--panel);border:1px solid var(--rule);border-radius:4px;padding:22px 24px}.card h3{margin-bottom:10px}.card p{color:var(--dim);margin:0}@media (width<=860px){.cards{grid-template-columns:1fr}}.statement{font-family:var(--font-mono), var(--font-jp);letter-spacing:-.01em;color:var(--signal);text-wrap:balance;max-width:26em;margin:0 0 .9em;font-size:clamp(1.3rem,2.6vw,1.9rem);font-weight:700;line-height:1.4}.statement em{color:var(--p4);font-style:normal}:lang(ja) .statement{font-size:clamp(1.2rem,2.3vw,1.65rem);line-height:1.6}.terminal{background:var(--panel);border:1px solid var(--rule);max-width:660px;font-family:var(--font-mono), monospace;border-radius:4px;padding:24px 28px;font-size:.92rem}.term-cmd{color:var(--faint);margin:0 0 20px}.term-cmd:before{content:"$ ";color:var(--p4)}.term-rows{gap:13px;margin:0;display:grid}.term-row{grid-template-columns:110px 1fr;align-items:baseline;gap:14px;display:grid}.term-row dt{letter-spacing:.12em;color:var(--faint);font-size:.72rem;font-weight:600}.term-row dd{overflow-wrap:anywhere;margin:0}@media (width<=520px){.term-row{grid-template-columns:1fr;gap:2px}}.skip{z-index:100;background:var(--signal);color:var(--bg);font-family:var(--font-mono), monospace;padding:12px 18px;font-size:.85rem;text-decoration:none;position:absolute;top:0;left:-9999px}.skip:focus{top:8px;left:8px}.masthead{z-index:20;background:color-mix(in srgb, var(--bg) 88%, transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--rule);position:sticky;top:0}.masthead__row{justify-content:space-between;align-items:center;gap:20px;height:60px;display:flex}.brand{color:var(--signal);font-family:var(--font-mono), monospace;letter-spacing:.01em;white-space:nowrap;align-items:center;gap:10px;font-size:.95rem;font-weight:700;text-decoration:none;display:inline-flex}.brand:hover{color:var(--signal);text-decoration:none}.brand svg{flex:none;display:block}.masthead nav{align-items:center;gap:clamp(12px,2.4vw,26px);display:flex}.masthead nav a{font-family:var(--font-mono), monospace;letter-spacing:.03em;text-transform:lowercase;color:var(--dim);white-space:nowrap;font-size:.8rem;font-weight:500;text-decoration:none}.masthead nav a:hover{color:var(--signal)}.lang{font-family:var(--font-mono), monospace;letter-spacing:.1em;color:var(--dim);border:1px solid var(--rule-strong);background:var(--panel);border-radius:3px;padding:.4em .65em;font-size:.72rem;line-height:1;text-decoration:none}.lang:hover{color:var(--signal);border-color:var(--faint);text-decoration:none}@media (width<=780px){.masthead nav a[data-optional]{display:none}}.foot{border-top:1px solid var(--rule);padding-block:38px 52px}.foot__row{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px 28px;display:flex}.foot__links{flex-wrap:wrap;gap:10px 24px;display:flex}.foot a,.foot__meta{font-family:var(--font-mono), monospace;letter-spacing:.04em;color:var(--faint);font-size:.76rem;text-decoration:none}.foot a:hover{color:var(--text)}.foot__meta{margin:0}.prose{max-width:42em}.prose h2{letter-spacing:-.01em;margin:2.6em 0 .75em;font-size:clamp(1.05rem,1.8vw,1.25rem)}.prose h2:first-child{margin-top:0}.prose p,.prose li{color:var(--dim)}.prose ul{margin:0 0 1.1em;padding-left:1.2em}.prose li{margin-bottom:.4em}.prose li::marker{color:var(--faint)}.page-title{font-size:clamp(1.7rem,3.8vw,2.6rem)}.legal-table{border-collapse:collapse;border:1px solid var(--rule);background:var(--panel);width:100%;margin:26px 0;font-size:.94rem}.legal-table th,.legal-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--rule);color:var(--dim);padding:14px 16px}.legal-table th{background:var(--inset);width:34%;color:var(--text);border-right:1px solid var(--rule);font-weight:600}.legal-table tr:last-child th,.legal-table tr:last-child td{border-bottom:0}@media (width<=640px){.legal-table th,.legal-table td{border-right:0;width:auto;display:block}.legal-table th{border-bottom:0;padding-bottom:4px}}.notice{border:1px solid var(--rule-strong);border-left:2px solid var(--p1);background:var(--panel);color:var(--dim);border-radius:3px;margin:0 0 28px;padding:16px 20px;font-size:.92rem}.notice p:last-child{margin-bottom:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
