:root{color-scheme:dark;--bg:#111216;--panel:#1a1c22;--text:#f3f0e9;--muted:#b9bcc5;--accent:#ffba55;--line:#363841;font-family:Arial,Helvetica,sans-serif;font-size:16px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--text);line-height:1.65}a{color:var(--accent);text-underline-offset:.24em}a:hover{color:#ffddac}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}main{max-width:1120px;margin:auto;padding:0 24px}.top{max-width:1280px;margin:auto;padding:22px 24px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:.875rem}.top a:first-child{letter-spacing:.12em;font-weight:800;color:var(--text);text-decoration:none}.intro{padding:54px 0 18px}.eyebrow,.section-heading>span{font-size:.8rem;font-weight:700;letter-spacing:.13em;color:var(--accent)}h1{font-size:clamp(2.5rem,6vw,4.4rem);line-height:1.08;letter-spacing:-.045em;margin:16px 0 22px}h2{font-size:clamp(1.7rem,3vw,2.3rem);letter-spacing:-.025em;line-height:1.2;margin:10px 0 22px}h3{font-size:1.3rem;line-height:1.3;margin:0 0 9px}.lead{font-size:1.125rem;max-width:760px;color:var(--muted)}.jump{display:flex;flex-wrap:wrap;gap:14px 28px;margin:28px 0}.notice,.warning{padding:16px 20px;border-left:3px solid var(--accent);background:#221f1a;font-size:.9375rem}.notice{background:#191e25;border-color:#879ab7}.muted{color:var(--muted);font-size:.9375rem}section{padding:38px 0;border-bottom:1px solid var(--line)}.kits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.kit{background:var(--panel);border:1px solid var(--line);overflow:hidden;border-radius:8px}.diagram{display:block;background:#101821}.diagram img{display:block;width:100%;height:auto;aspect-ratio:1.28;object-fit:contain}.kit-copy{padding:24px}.kit-copy p{margin:8px 0 20px}.kit-copy .eyebrow{margin:0 0 8px}.download{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 16px;background:var(--accent);color:#191510;font-weight:700;text-decoration:none;border-radius:4px}.download:hover{background:#ffd294;color:#191510}.download span{font-size:.8rem}.steps{list-style:none;counter-reset:step;padding:0}.steps li{counter-increment:step;position:relative;padding:0 0 24px 52px;max-width:930px}.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:0;color:var(--accent);font-weight:700;font-size:1.1rem}.steps p{margin:0;color:var(--muted)}code{font-family:Consolas,monospace;font-size:.92em;overflow-wrap:anywhere;background:#25272e;padding:2px 5px;border-radius:3px}.compact li{padding-bottom:18px}.text-link{display:inline-block;font-weight:700;margin:14px 0}details{border-top:1px solid var(--line);padding:17px 0}summary{cursor:pointer;font-size:1.05rem;font-weight:700}details p{max-width:880px;color:var(--muted)}.rules{max-width:900px;border:0}footer{border-top:1px solid var(--line);padding:24px 0 34px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px;color:var(--muted);font-size:.875rem}.skip{position:absolute;left:16px;top:-100px;background:var(--panel);padding:12px}.skip:focus{top:8px;z-index:10}@media(max-width:680px){.kits{grid-template-columns:1fr}.top{flex-wrap:wrap}.intro{padding-top:32px}section{padding:28px 0}.kit-copy{padding:20px}.steps li{padding-left:40px}.jump{gap:12px 20px}h1{font-size:2.6rem}main{padding:0 18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.example-figure{margin:24px 0;background:#111821;border:1px solid var(--line);border-radius:8px;overflow:hidden}.example-figure img{display:block;width:100%;height:auto}.example-figure figcaption{padding:12px 18px;color:var(--muted);font-size:.875rem}.example-download{max-width:610px}.example-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin:30px 0}.example-notes p{color:var(--muted)}.texture-example{max-width:900px}.example-motion video{display:block;width:100%;height:auto;margin:20px 0 0;background:#111821}@media(max-width:680px){.example-notes{grid-template-columns:1fr;gap:10px}.example-download{align-items:flex-start}.example-download span{white-space:nowrap}}
