.prose.art{--measure:68ch;max-inline-size:min(var(--measure),100%);padding-block:var(--s6) var(--s8);font-size:clamp(1.0625rem,1rem + .3vw,1.1875rem);line-height:1.72;color:var(--ink);font-family:var(--f-sans)}
.prose.art p{margin:0 0 1.05em}
.prose.art>p:first-of-type{font-size:1.14em;line-height:1.62;color:var(--ink)}
.prose.art h2{font-family:var(--f-serif);font-weight:600;font-size:clamp(1.6rem,1.25rem + 1.4vw,2.1rem);line-height:1.2;letter-spacing:-.01em;margin-block:clamp(2.4rem,5vw,3.4rem) .6rem;scroll-margin-block-start:84px}
.prose.art h2::before{content:"";display:block;inline-size:36px;block-size:3px;background:var(--brand-fill);border-radius:3px;margin-block-end:.7rem}
.prose.art h3{font-family:var(--f-sans);font-weight:700;font-size:clamp(1.15rem,1.05rem + .5vw,1.35rem);line-height:1.3;margin-block:1.8rem .35rem}
.prose.art a{color:var(--brand);text-underline-offset:.18em;text-decoration-thickness:1px}
.prose.art a:hover{text-decoration-thickness:2px}
.prose.art strong{font-weight:650}
.prose.art ul,.prose.art ol{padding-inline-start:1.3em;margin:0 0 1.2em}
.prose.art li{margin-block-end:.55em;padding-inline-start:.2em}
.prose.art li::marker{color:var(--brand);font-weight:700}
.prose.art .table{border-collapse:collapse;inline-size:100%;font-size:.95rem;line-height:1.5;margin-block:1.2em}
.prose.art .table th{font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-align:start}
.prose.art .table th,.prose.art .table td{padding:.7em .9em;border-block-end:1px solid var(--line);text-align:start;vertical-align:top}
.prose.art .table tbody tr:hover{background:var(--brand-tint)}
.prose.art .box{border:1px solid var(--line);border-inline-start:4px solid var(--brand-fill);background:var(--card);border-radius:var(--r-m);padding:var(--s4) var(--s5);margin-block:2.4rem;box-shadow:var(--shadow)}
.prose.art .box h2{margin-block-start:0;font-size:1.35rem}.prose.art .box h2::before{display:none}
.prose.art .small,.prose.art ol.small{font-size:.9rem;line-height:1.55;color:var(--muted)}
.prose.art .faq summary{font-size:1.05rem}
.toc{border:1px solid var(--line);border-radius:var(--r-m);background:var(--bg-soft);padding:var(--s4) var(--s5);margin-block:1.6rem 2rem;font-size:.95rem;line-height:1.5}
.toc summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;align-items:center}
.toc summary::-webkit-details-marker{display:none}
.toc summary::after{content:"+";color:var(--brand);font-size:1.3rem}
.toc[open] summary::after{content:"\2212"}
.toc ol{margin:.8rem 0 0;padding:0;list-style:none;counter-reset:t;display:grid;gap:.1rem}
.toc li{counter-increment:t;margin:0}
.toc a{display:flex;gap:.7rem;padding:.4rem .2rem;border-radius:6px;text-decoration:none;color:var(--ink)}
.toc a::before{content:counter(t,decimal-leading-zero);color:var(--brand);font-variant-numeric:tabular-nums;font-weight:700}
.toc a:hover,.toc a:focus-visible{background:var(--brand-tint);color:var(--brand)}
.toc a.on{color:var(--brand);font-weight:600}
.rp{position:fixed;inset-block-start:0;inset-inline:0;block-size:3px;z-index:60;background:transparent;pointer-events:none}
.rp i{display:block;block-size:100%;inline-size:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--brand-fill)}
[dir=rtl] .rp i{transform-origin:100% 50%}
.art-meta{display:flex;flex-wrap:wrap;gap:.4rem 1rem;color:var(--muted);font-size:.9rem;margin-block-start:var(--s3)}
.art-meta span+span::before{content:"\00b7";margin-inline-end:1rem}
@media print{.rp,.toc{display:none}.prose.art{max-inline-size:none;font-size:11pt}.prose.art h2::before{display:none}}
