:root{--accent:#1d4ed8;--accent-hover:#1e40af;--body-leading:28px;--body-measure:36ic;--body-size:16px;--body-tracking:0.04em;--brand-leading:32px;--brand-size:24px;--breakpoint:768px;--caption-leading:20px;--caption-size:12px;--columns:repeat(2, minmax(0, 1fr));--container:1200px;--control-flow:row;--danger:#a52f2f;--faint:#5f6776;--focus-offset:2px;--focus-width:2px;--full:100%;--gate-columns:repeat(3, minmax(0, 1fr));--gutter:48px;--hair:1px;--heading-leading:36px;--heading-mobile-leading:32px;--heading-mobile-size:20px;--heading-size:24px;--heading-tracking:0.02em;--heading-weight:600;--ink:#0b1220;--label-tracking:0.06em;--label-weight:500;--lead-leading:36px;--lead-measure:32ic;--lead-size:20px;--mobile-columns:minmax(0, 1fr);--mobile-gutter:24px;--muted:#475061;--offscreen:-10000px;--paper:#fafaf7;--provenance-columns:6em minmax(0, 1fr);--quote-rule:2px;--radius:4px;--reading-flow:column;--reading-width:760px;--rule:#d9dce1;--sans:"Inter", "Noto Sans JP", "Noto Sans CJK JP", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;--small-leading:24px;--small-size:14px;--space-body:24px;--space-pair:8px;--space-section:48px;--space-small:16px;--success:#247443;--surface:#ffffff;--text:#1c2330;--title-leading:48px;--title-mobile-leading:36px;--title-mobile-size:24px;--title-size:32px;--touch-target:44px;--underline-offset:0.3em;--zero:0}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-autospace:normal;line-break:strict;background:var(--paper);color:var(--text)}
body{margin:var(--zero);font-family:var(--sans);font-size:var(--body-size);line-height:var(--body-leading);letter-spacing:var(--body-tracking);font-feature-settings:normal;-webkit-font-smoothing:antialiased}
p,h1,h2,h3,dl,dd{margin:var(--zero)}
a{color:var(--accent);text-decoration-thickness:var(--hair);text-underline-offset:var(--underline-offset);text-decoration-skip-ink:auto}
a:hover{color:var(--accent-hover)}
:focus-visible{outline:var(--focus-width) solid var(--accent);outline-offset:var(--focus-offset);border-radius:var(--radius)}
button,input{font:inherit}button,summary{cursor:pointer}
.skip-link{position:absolute;inset-inline-start:var(--offscreen)}.skip-link:focus{inset-inline-start:var(--gutter);background:var(--surface);padding:var(--space-pair)}
.masthead,main,footer{max-width:calc(var(--container) + var(--gutter) * 2);margin-inline:auto;padding-inline:var(--gutter)}
.masthead{padding-block:var(--space-body) var(--space-pair);border-bottom:var(--hair) solid var(--rule)}
.brand{font-size:var(--brand-size);line-height:var(--brand-leading);font-weight:var(--heading-weight);color:var(--ink);text-decoration:none}
.masthead>p{font-size:var(--small-size);line-height:var(--small-leading);color:var(--muted);margin-block-start:var(--space-pair)}
.masthead nav{display:flex;flex-direction:var(--control-flow);flex-wrap:wrap;gap:var(--zero) var(--space-body);margin-block-start:var(--space-pair)}
.masthead nav a{display:inline-flex;align-items:center;min-height:var(--touch-target);font-size:var(--small-size);line-height:var(--small-leading)}
.edition{display:flex;flex-direction:var(--control-flow);align-items:baseline;justify-content:space-between;gap:var(--space-body);padding-block:var(--space-body) var(--space-small)}
.edition h1{font-size:var(--small-size);line-height:var(--small-leading);font-weight:var(--heading-weight)}
.meta,.empty{color:var(--faint);font-size:var(--small-size);line-height:var(--small-leading)}
.grid{display:grid;grid-template-columns:var(--columns);gap:var(--space-section) var(--space-body);padding-block:var(--zero) var(--space-section)}
.card{min-inline-size:var(--zero);border-top:var(--hair) solid var(--rule);padding-block:var(--space-body) var(--zero)}
.card-tag,.card-category{color:var(--accent);font-size:var(--caption-size);line-height:var(--caption-leading);letter-spacing:var(--label-tracking);font-weight:var(--heading-weight);margin-block-end:var(--space-pair)}
h1,h2,h3{font-feature-settings:"palt" 1;letter-spacing:var(--heading-tracking);text-spacing-trim:trim-start;word-break:keep-all;overflow-wrap:anywhere;text-wrap:balance;font-weight:var(--heading-weight);color:var(--ink)}
.card-heading{font-size:var(--heading-size);line-height:var(--heading-leading)}
.card-heading a{color:inherit;text-decoration:none}.card-heading a:hover{text-decoration:underline;text-decoration-thickness:var(--hair)}
.card-summary{font-size:var(--body-size);line-height:var(--body-leading);max-inline-size:var(--body-measure);margin-block-start:var(--space-small);text-wrap:pretty}
.card-provenance{display:flex;flex-direction:var(--reading-flow);gap:var(--space-pair);font-size:var(--caption-size);line-height:var(--caption-leading);margin-block-start:var(--space-body);padding-block-start:var(--space-small);border-top:var(--hair) solid var(--rule)}
.card-provenance div{display:grid;grid-template-columns:var(--provenance-columns);gap:var(--space-pair)}
.card-provenance dt,.citation dt{color:var(--faint);font-weight:var(--label-weight);white-space:nowrap}
.card-provenance dd,.citation dd,.citation a{min-inline-size:var(--zero);overflow-wrap:anywhere}
.card-llm-stamp{font-size:var(--caption-size);line-height:var(--caption-leading);color:var(--muted);border-top:var(--hair) solid var(--rule);padding-block-start:var(--space-small);margin-block-start:var(--space-small);overflow-wrap:anywhere}
time{font-variant-numeric:tabular-nums lining-nums;letter-spacing:var(--zero)}
.article,.policy{max-width:var(--reading-width);margin-inline:auto;padding-block:var(--space-section)}
.article h1,.policy h1{font-size:var(--title-size);line-height:var(--title-leading);margin-block-end:var(--space-body)}
.dek{font-size:var(--lead-size);line-height:var(--lead-leading);max-inline-size:var(--lead-measure);color:var(--muted);margin-block-end:var(--space-body);text-wrap:pretty}
.article-body{max-inline-size:var(--body-measure)}
.article-body p{font-size:var(--body-size);line-height:var(--body-leading);margin-block-end:var(--space-body);text-wrap:pretty;overflow-wrap:anywhere}
.article blockquote{border-inline-start:var(--quote-rule) solid var(--rule);margin:var(--space-section) var(--zero);padding-inline-start:var(--space-body);color:var(--muted)}
.citation,.llm-stamp,.corrections{border-top:var(--hair) solid var(--rule);padding-block-start:var(--space-body);margin-block-start:var(--space-section)}
.citation h2,.corrections h2,.policy h2{font-size:var(--heading-size);line-height:var(--heading-leading);margin-block-end:var(--space-small)}
.citation dl{font-size:var(--small-size);line-height:var(--small-leading)}.citation dd{margin-block-end:var(--space-small)}
.llm-stamp,.license-note{font-size:var(--small-size);line-height:var(--small-leading);color:var(--muted);overflow-wrap:anywhere}
.personalize-panel{border-block:var(--hair) solid var(--rule);margin-block:var(--zero) var(--space-section)}
.personalize-panel summary{min-height:var(--touch-target);padding-block:var(--space-small);font-size:var(--small-size);font-weight:var(--heading-weight)}
.personalize-content{padding-block:var(--zero) var(--space-body);font-size:var(--small-size);line-height:var(--small-leading)}
.follow-list,.personalize-actions,.category-links{display:flex;flex-direction:var(--control-flow);flex-wrap:wrap;gap:var(--space-small);align-items:center;margin-block-start:var(--space-small)}
.follow-tag,.clear-personalization{min-height:var(--touch-target);padding:var(--space-pair) var(--space-small);border:var(--hair) solid var(--rule);border-radius:var(--radius);background:var(--surface);color:var(--text)}
.follow-tag[aria-pressed="true"]{border-color:var(--accent);color:var(--accent);font-weight:var(--heading-weight)}
.personalize-actions label{display:flex;align-items:center;gap:var(--space-pair);min-height:var(--touch-target)}
.category-links a{min-height:var(--touch-target)}
.policy h2{margin-block-start:var(--space-section)}.policy p,.policy dd{margin-block-end:var(--space-small);overflow-wrap:anywhere}
.preview,.gate-panel{border:var(--hair) solid var(--rule);background:var(--surface);padding:var(--space-small);margin-block:var(--space-body);overflow-wrap:anywhere}
.gate-list{display:grid;grid-template-columns:var(--gate-columns);gap:var(--space-pair);padding:var(--zero);list-style:none}.red{color:var(--danger)}.green{color:var(--success)}
footer{border-top:var(--hair) solid var(--rule);padding-block:var(--space-body);color:var(--muted);font-size:var(--small-size);line-height:var(--small-leading)}
@media(max-width:768px){:root{--gutter:var(--mobile-gutter);--columns:var(--mobile-columns);--title-size:var(--title-mobile-size);--title-leading:var(--title-mobile-leading);--heading-size:var(--heading-mobile-size);--heading-leading:var(--heading-mobile-leading)}.article,.policy{padding-block:var(--space-body)}}
