:root{--ground:#0d1b2a;--ground-2:#0a1520;--panel:#12263a;--panel-2:#17304a;--line:#24405c;--ink:#e9f4f7;--ink-2:#b9cbd6;--muted:#7e97a8;--accent:#35e0d0;--accent-ink:#04211f;--accent-soft:#35e0d026;--warn:#ffcf5c;--maxw:72rem;--font:"Helvetica Neue", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SFMono-Regular", "Cascadia Mono", "Roboto Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--ground);background-image:linear-gradient(180deg, #0f2033 0%, var(--ground) 22rem);color:var(--ink);font-family:var(--font);letter-spacing:.01em;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.62}a{color:var(--accent);text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3{letter-spacing:-.015em;text-wrap:balance;font-weight:800;line-height:1.18}img{max-width:100%;height:auto}.wrap{width:min(100% - 2.5rem, var(--maxw));margin-inline:auto}.skip{background:var(--accent);color:var(--accent-ink);z-index:40;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip:focus{top:.5rem;left:.5rem}.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}.masthead{z-index:30;background:color-mix(in srgb, var(--ground) 92%, transparent);border-block-end:1px solid var(--line);backdrop-filter:blur(6px);position:sticky;top:0}.masthead-inner{flex-wrap:wrap;align-items:center;gap:1.2rem;padding-block:.7rem;display:flex}.wordmark{color:var(--ink);align-items:center;gap:.6rem;margin-inline-end:auto;text-decoration:none;display:inline-flex}.wordmark-mark{grid-template-columns:repeat(5,.42rem);align-items:end;gap:.18rem;display:inline-grid}.wordmark-mark b{background:var(--panel-2);border-radius:2px;height:.9rem;display:block}.wordmark-mark b:first-child{background:#f4f7f9}.wordmark-mark b:nth-child(2){background:#ff6b5e}.wordmark-mark b:nth-child(3){background:#4fd97a}.wordmark-mark b:nth-child(4){background:#ffd23f}.wordmark-mark b:nth-child(5){background:#bb86ff}.wordmark-text{line-height:1.05;display:grid}.wordmark-main{letter-spacing:-.01em;font-size:1.02rem;font-weight:800}.wordmark-sub{color:var(--muted);letter-spacing:.14em;font-size:.68rem}.nav{flex-wrap:wrap;gap:.15rem 1rem;font-size:.88rem;display:flex}.nav a{color:var(--ink-2);border-block-end:2px solid #0000;padding-block:.15rem;text-decoration:none}.nav a:hover{color:var(--ink);border-block-end-color:var(--line)}.nav a[aria-current=page]{color:var(--accent);border-block-end-color:var(--accent)}.hero{border-block-end:1px solid var(--line);padding-block:3.2rem 1.6rem}.hero-inner{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);align-items:start;gap:2.4rem;display:grid}.kicker{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:0 0 .7rem;font-size:.74rem}.hero h1{margin:0 0 1rem;font-size:clamp(2.1rem,4.6vw,3.4rem)}.hero-title{letter-spacing:-.03em;display:block}.hero-title-ja{color:var(--ink-2);letter-spacing:.01em;margin-block-start:.45rem;font-size:clamp(1.05rem,1.8vw,1.35rem);font-weight:700;display:block}.lead{color:var(--ink-2);max-width:46rem;margin:0;font-size:1.02rem;line-height:1.75}.facts{background:var(--line);border:1px solid var(--line);border-radius:4px;gap:1px;margin:0;display:grid;overflow:hidden}.fact{background:var(--panel);grid-template-columns:5.2rem minmax(0,1fr);align-items:baseline;gap:.6rem;padding:.55rem .8rem;display:grid}.fact dt{letter-spacing:.1em;color:var(--muted);font-size:.72rem}.fact dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:.94rem;font-weight:700}.hero-swatches{gap:.4rem;padding-block:1rem 0;display:flex}.swatch{background:var(--panel-2);border-radius:2px;width:2.4rem;height:.5rem;display:inline-block}.swatch-white{background:#f4f7f9}.swatch-red{background:#ff6b5e}.swatch-green{background:#4fd97a}.swatch-yellow{background:#ffd23f}.swatch-purple{background:#bb86ff}.swatch-inline{vertical-align:-.05em;width:.85rem;height:.85rem;margin-inline-end:.4rem}.pagelinks{border-block-end:1px solid var(--line);background:var(--panel);padding-block:.9rem}.pagelinks>.wrap{flex-wrap:wrap;align-items:center;gap:.4rem 1.1rem;font-size:.88rem;display:flex}.pagelinks-label{font-family:var(--mono);letter-spacing:.14em;color:var(--muted);margin-inline-end:.4rem;font-size:.7rem}.pagelinks a{color:var(--ink);border-block-end:1px dashed var(--line);text-decoration:none}.pagelinks a:hover{color:var(--accent);border-block-end-color:var(--accent)}.deck,.matrix,.chips{border-block-end:1px solid var(--line);padding-block:2.6rem}.deck h2,.matrix h2,.chips h2{align-items:baseline;gap:.7rem;margin:0 0 1.1rem;font-size:clamp(1.4rem,2.4vw,1.9rem);display:flex}.deck h2:before,.matrix h2:before,.chips h2:before{content:"";background:var(--accent);flex:none;width:.6rem;height:.6rem;transform:translateY(-.1rem)rotate(45deg)}.index-head{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-block:1.6rem .6rem;display:flex}.index-head h3{margin:0;margin-inline-end:auto;font-size:1.05rem}.index-search input{font:inherit;min-width:17rem;color:var(--ink);background:var(--ground-2);border:1px solid var(--line);border-radius:3px;padding:.42rem .7rem;font-size:.9rem}.index-search input::placeholder{color:var(--muted)}.index-count{font-family:var(--mono);color:var(--muted);margin:0;font-size:.78rem}.index-empty{color:var(--warn);margin:.4rem 0 0;font-size:.9rem}.prose{color:var(--ink-2)}.prose h2{color:var(--ink);align-items:baseline;gap:.6rem;margin:2.4rem 0 .9rem;scroll-margin-top:5rem;font-size:clamp(1.25rem,2vw,1.55rem);display:flex}.prose h3{color:var(--ink);margin:1.8rem 0 .6rem;font-size:1.1rem}.prose p{margin:0 0 1rem}.prose ul,.prose ol{margin:0 0 1.2rem;padding-inline-start:1.3rem}.prose li{margin-block:.3rem}.prose li::marker{color:var(--accent)}.sec-num{font-family:var(--mono);color:var(--accent);letter-spacing:.05em;flex:none;font-size:.82rem}.bullets li{padding-inline-start:1.1rem;list-style:none;position:relative}.bullets li:before{content:"";background:var(--accent);width:.4rem;height:.4rem;position:absolute;top:.62em;left:0;transform:rotate(45deg)}.kv{background:var(--line);border:1px solid var(--line);border-radius:3px;gap:1px;margin:0 0 1.4rem;display:grid;overflow:hidden}.kv-row{background:var(--panel);grid-template-columns:minmax(9rem,26%) minmax(0,1fr);gap:0;display:grid}.kv-row dt,.kv-row dd{margin:0;padding:.55rem .8rem}.kv-row dt{background:var(--panel-2);color:var(--ink);font-size:.9rem;font-weight:700}.kv-row dd{font-size:.92rem}.tablewrap{border:1px solid var(--line);background:var(--ground-2);border-radius:3px;margin:0 0 1.5rem;overflow-x:auto}.datatable{border-collapse:collapse;width:100%;font-size:.9rem;line-height:1.55}.datatable caption{caption-side:top;text-align:start;letter-spacing:.06em;color:var(--muted);background:var(--panel);border-block-end:1px solid var(--line);padding:.6rem .8rem;font-size:.78rem}.datatable th,.datatable td{text-align:start;vertical-align:top;border-block-end:1px solid var(--line);font-variant-numeric:tabular-nums;padding:.55rem .75rem}.datatable thead th{background:var(--panel-2);color:var(--ink);letter-spacing:.06em;z-index:1;font-size:.8rem;position:sticky;top:3rem}.datatable tbody tr:nth-child(2n){background:#0f2133}.datatable tbody tr:hover{background:var(--accent-soft)}.datatable tbody tr.row-on{background:color-mix(in srgb, var(--accent) 14%, var(--ground-2));box-shadow:inset 3px 0 0 var(--accent)}.datatable th[scope=row]{color:var(--ink);white-space:nowrap;font-weight:700}.datatable a{border-block-end:1px solid var(--accent-soft);text-decoration:none}.index-table td:first-child{white-space:nowrap}.linklist{background:var(--line);border:1px solid var(--line);border-radius:3px;gap:1px;margin:0 0 1.4rem;padding:0;list-style:none;display:grid;overflow:hidden}.linklist li{background:var(--panel);margin:0}.linklist a{color:var(--ink-2);gap:.15rem;padding:.7rem .9rem;text-decoration:none;display:grid}.linklist a:hover{background:var(--panel-2)}.link-label{color:var(--ink);justify-self:start;font-weight:700}.link-tag{letter-spacing:.1em;width:max-content;color:var(--accent-ink);background:var(--accent);vertical-align:.15em;border-radius:2px;justify-self:start;margin-inline-start:.4rem;padding:.05rem .35rem;font-size:.66rem;display:inline-block}.link-note{color:var(--muted);justify-self:start;font-size:.82rem}.crumbs{border-block-end:1px solid var(--line);color:var(--muted);padding-block:.8rem;font-size:.8rem}.crumbs>.wrap{flex-wrap:wrap;gap:.5rem;display:flex}.crumbs a{color:var(--muted);text-decoration:none}.crumbs a:hover{color:var(--accent)}.art-head{border-block-end:1px solid var(--line);padding-block:2.2rem 1.4rem}.art-head h1{color:var(--ink);margin:0 0 .9rem;font-size:clamp(1.7rem,3.4vw,2.5rem)}.art-meta{font-family:var(--mono);letter-spacing:.06em;color:var(--muted);flex-wrap:wrap;gap:.4rem 1rem;margin:0;font-size:.74rem;display:flex}.art-shell{grid-template-columns:12.5rem minmax(0,1fr) 15rem;align-items:start;gap:2rem;padding-block:2rem 3rem;display:grid}.toc{border-inline-start:2px solid var(--line);padding-inline-start:.9rem;font-size:.84rem;position:sticky;top:4.2rem}.toc-title{font-family:var(--mono);letter-spacing:.16em;color:var(--muted);margin:0 0 .5rem;font-size:.68rem}.toc ol{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.toc a{color:var(--ink-2);gap:.5rem;line-height:1.4;text-decoration:none;display:flex}.toc a:hover{color:var(--accent)}.toc-num{font-family:var(--mono);color:var(--muted);flex:none;padding-block-start:.15rem;font-size:.7rem}.art-body{min-width:0}.rail{gap:1.4rem;font-size:.86rem;display:grid;position:sticky;top:4.2rem}.rail h2{letter-spacing:.14em;font-size:.72rem;font-family:var(--mono);color:var(--muted);text-transform:uppercase;margin:0 0 .5rem}.rail-list{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.rail-list a{color:var(--ink-2);border-block-end:1px dashed var(--line);padding-block:.2rem;text-decoration:none;display:block}.rail-list a:hover{color:var(--accent)}.rail-note{color:var(--muted);margin:0 0 .5rem;line-height:1.65}.rail-pager{border-block-start:1px solid var(--line);flex-direction:column;gap:.4rem;padding-block-start:.8rem;display:flex}.rail-pager a{color:var(--ink-2);font-size:.84rem;text-decoration:none}.rail-pager a:hover{color:var(--accent)}.chips-note{color:var(--muted);max-width:48rem;margin:0 0 1.2rem;font-size:.94rem}.tabletools{border-block-start:1px solid var(--line);margin-block:1.6rem 0;padding-block-start:1rem}.tabletools-hint{color:var(--muted);margin:0;font-size:.84rem}.tt-icon{color:var(--accent);margin-inline-end:.4rem}.tt-bar{flex-wrap:wrap;align-items:center;gap:.5rem;margin-block:1rem .5rem;display:flex}.tt-bar input[type=search]{font:inherit;min-width:15rem;color:var(--ink);background:var(--ground-2);border:1px solid var(--line);border-radius:3px;flex:15rem;padding:.4rem .65rem;font-size:.88rem}.tt-bar select{font:inherit;color:var(--ink);background:var(--panel);border:1px solid var(--line);border-radius:3px;padding:.4rem .5rem;font-size:.84rem}.tt-count{font-family:var(--mono);color:var(--muted);margin-inline-start:auto;font-size:.76rem}.clonelab,.tracker{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:1.2rem}.clonelab-head h3,.tracker-head h3{color:var(--ink);margin:0 0 .5rem;font-size:1.15rem}.clonelab-head p,.tracker-head p{color:var(--muted);margin:0 0 1rem;font-size:.9rem;line-height:1.7}.clonelab-inputs{flex-wrap:wrap;gap:.5rem;margin-block-end:1rem;display:flex}.clonelab-inputs button,.tracker-bar button,.btn{font:inherit;border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);cursor:pointer;border-radius:3px;padding:.45rem .85rem;font-size:.86rem;font-weight:700}.clonelab-inputs button:hover,.tracker-bar button:hover,.btn:hover{border-color:var(--accent);color:var(--ink)}.clonelab-inputs button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.clonelab-table{background:var(--ground-2)}.clonelab-note{color:var(--ink-2);margin:.6rem 0 0;font-size:.82rem;line-height:1.6}.clonelab-warn{color:var(--warn);margin:.8rem 0 0;font-size:.86rem}.clonelab-noscript,.tracker-noscript{color:var(--muted);margin:.8rem 0 0;font-size:.84rem}.tracker-bar{flex-wrap:wrap;align-items:center;gap:.6rem 1rem;margin-block-end:.8rem;display:flex}.tracker-count{font-family:var(--mono);color:var(--muted);font-size:.82rem}.tracker-count b{color:var(--accent);font-variant-numeric:tabular-nums;font-size:1.5rem}.tracker-list{background:var(--line);border:1px solid var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid}.tracker-item{background:var(--ground-2)}.tracker-item label{cursor:pointer;grid-template-columns:auto 4.2rem minmax(0,1fr);align-items:baseline;gap:.6rem;padding:.5rem .7rem;font-size:.88rem;display:grid}.tracker-item input{accent-color:var(--accent);transform:translateY(.1rem)}.tracker-num{font-family:var(--mono);color:var(--ink);font-weight:700}.tracker-note{color:var(--ink-2);line-height:1.6}.tracker-src{color:var(--muted);font-size:.78rem;font-style:normal}.tracker-item.is-done{background:#14303a}.tracker-item.is-done .tracker-num{color:var(--accent)}.nf{min-height:55vh;padding-block:3rem 4rem}.nf h1{margin:0 0 1rem;font-size:clamp(1.6rem,3.4vw,2.3rem)}.nf-actions{flex-wrap:wrap;gap:.6rem;margin:1.6rem 0 2.4rem;display:flex}.btn{background:var(--accent);color:var(--accent-ink);border-color:var(--accent);padding:.6rem 1.1rem;text-decoration:none;display:inline-block}.btn-ghost{color:var(--ink);border-color:var(--line);background:0 0}.nf-list{border-block-start:1px solid var(--line);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr));gap:.1rem 1.4rem;margin:0;padding:0;list-style:none;display:grid}.nf-list a{color:var(--ink-2);border-block-end:1px solid #0000;padding-block:.45rem;font-size:.9rem;text-decoration:none;display:block}.nf-list a:hover{color:var(--accent)}.footer{background:var(--ground-2);border-block-start:1px solid var(--line);color:var(--muted);padding-block:2.2rem 2.6rem;font-size:.85rem}.footer-inner{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:1.6rem 2.4rem;display:grid}.footer-name{color:var(--ink);margin:0 0 .4rem;font-size:.95rem;font-weight:800}.footer-note{margin:0 0 .3rem;line-height:1.6}.footer-nav{flex-wrap:wrap;gap:.3rem 1.1rem;display:flex}.footer-nav a{color:var(--ink-2);font-size:.82rem;text-decoration:none}.footer-nav a:hover{color:var(--accent)}.clonelab-table th,.clonelab-table td{padding-block:.5rem}.clonelab-table thead th,.clonelab-table tbody th{white-space:nowrap}@media (width<=620px){.clonelab,.tracker{padding:.9rem .7rem}.clonelab-table th,.clonelab-table td{padding-inline:.45rem;font-size:.84rem}.clonelab-table td{white-space:nowrap}}.lookup{border:1px solid var(--line);background:var(--panel);border-radius:4px;padding:1.2rem}.lookup-bar{border-block-end:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem .8rem;margin-block-end:1rem;padding-block-end:.9rem;display:flex}.lookup-label{font-family:var(--mono);letter-spacing:.12em;color:var(--muted);flex:100%;font-size:.7rem}.lookup-bar input[type=search]{font:inherit;min-width:0;color:var(--ink);background:var(--ground-2);border:1px solid var(--line);border-radius:3px;flex:12rem;padding:.42rem .65rem;font-size:.88rem}.lookup-bar select{font:inherit;color:var(--ink);background:var(--panel-2);border:1px solid var(--line);border-radius:3px;padding:.42rem .5rem;font-size:.84rem}.lookup-count{font-family:var(--mono);color:var(--muted);margin:0 0 0 auto;font-size:.76rem}.lookup-list{background:var(--line);border:1px solid var(--line);gap:1px;margin:0;padding:0;list-style:none;display:grid}.lookup-item{background:var(--ground-2);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:baseline;gap:.15rem .8rem;padding:.55rem .7rem;display:grid}.lookup-en{font-family:var(--mono);color:var(--accent);margin:0;font-size:.82rem}.lookup-ja{color:var(--ink);margin:0;font-size:.9rem;font-weight:700}.lookup-group{letter-spacing:.08em;color:var(--muted);border:1px solid var(--line);vertical-align:.15em;border-radius:2px;margin-inline-start:.5rem;padding:.05rem .3rem;font-size:.64rem;font-weight:400;display:inline-block}.lookup-note{color:var(--ink-2);grid-column:1/-1;margin:0;font-size:.82rem;line-height:1.6}.lookup-empty{color:var(--warn);margin:.8rem 0 0;font-size:.86rem}@media (width<=620px){.lookup{padding:.9rem .7rem}.lookup-item{grid-template-columns:minmax(0,1fr)}}@media (width<=1080px){.art-shell{grid-template-columns:11rem minmax(0,1fr)}.rail{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));position:static}}@media (width<=900px){.hero-inner{grid-template-columns:minmax(0,1fr);gap:1.6rem}.art-shell{grid-template-columns:minmax(0,1fr)}.toc{border-inline-start:0;border-block-end:1px solid var(--line);padding-block-end:.9rem;padding-inline-start:0;position:static}.footer-inner{grid-template-columns:minmax(0,1fr)}}@media (width<=620px){body{font-size:1rem}.facts .fact{grid-template-columns:minmax(0,1fr);gap:.1rem}.kv-row{grid-template-columns:minmax(0,1fr)}.index-search input{width:100%;min-width:0}.tracker-item label{grid-template-columns:auto 4.2rem minmax(0,1fr)}.datatable thead th{position:static}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}[hidden]{display:none!important}.upd-log{border-top:1px solid var(--line,var(--bp-line,#c9d2d8));margin:2.8rem 0 0;padding-top:1.2rem}.upd-log h2{letter-spacing:.04em;margin:0 0 .8rem;font-size:1.05rem}.upd-log dl{grid-template-columns:8.5rem minmax(0,1fr);gap:.55rem 1.2rem;margin:0;display:grid}.upd-log dt{font-family:var(--font-mono,monospace);color:var(--muted,#5a6570);font-size:.78rem}.upd-log dd{margin:0;font-size:.92rem;line-height:1.75}@media (width<=620px){.upd-log dl{grid-template-columns:minmax(0,1fr);gap:.2rem}.upd-log dd{margin-bottom:.6rem}}
