:root{--bg:#f6efe0;--bg-deep:#ebe1c8;--surface:#fdf8eb;--surface-2:#ffffff;--ink:#14233a;--ink-soft:#4a586e;--ink-muted:#7a8499;--gold:#c9a14d;--gold-deep:#9c772a;--gold-soft:#f0e2bc;--red:#c0392b;--red-deep:#8e2018;--green:#386b54;--border:#e3d8b8;--border-soft:#efe6ce;--shadow-sm:0 1px 2px rgba(20,35,58,0.06);--shadow:0 6px 18px rgba(20,35,58,0.08);--shadow-lg:0 18px 42px rgba(20,35,58,0.10);--radius-sm:8px;--radius:14px;--radius-lg:22px;--maxw:1140px;--maxw-narrow:760px;--font-head:Georgia,"Iowan Old Style","Palatino Linotype","Book Antiqua",Palatino,"Times New Roman",serif;--font-body:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}*,*::before,*::after{box-sizing:border-box}*{margin:0}html,body{height:100%}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:17px;line-height:1.65;color:var(--ink);background:radial-gradient(1200px 600px at 90% -10%,rgba(201,161,77,0.18),transparent 60%),radial-gradient(900px 500px at -10% 10%,rgba(192,57,43,0.06),transparent 60%),var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{max-width:100%;display:block}a{color:var(--red-deep);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--red);text-decoration-thickness:2px}h1,h2,h3,h4{font-family:var(--font-head);font-weight:600;color:var(--ink);letter-spacing:-0.01em;line-height:1.15}h1{font-size:clamp(2.1rem,1.4rem+3.2vw,3.4rem);font-weight:700}h2{font-size:clamp(1.55rem,1.15rem+1.6vw,2.15rem);margin-top:2.2rem}h3{font-size:clamp(1.2rem,1rem+0.6vw,1.4rem);margin-top:1.8rem}h4{font-size:1.05rem;margin-top:1.4rem}p,ul,ol{margin:0.9rem 0}ul,ol{padding-left:1.4rem}li{margin:0.35rem 0}strong{color:var(--ink);font-weight:600}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 20px}.narrow{max-width:var(--maxw-narrow);margin:0 auto}.skip-link{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--surface);padding:10px 14px;border-radius:8px;z-index:100;text-decoration:none}.skip-link:focus{left:12px}.brand-bar{background:var(--surface-2);border-bottom:1px solid var(--border-soft);padding:14px 0;position:sticky;top:0;z-index:50;backdrop-filter:saturate(140%)}.brand-bar .inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font-family:var(--font-head);font-weight:700;font-size:1.15rem;letter-spacing:-0.01em}.brand:hover{color:var(--ink);text-decoration:none}.brand .logo{width:36px;height:36px}.brand .brand-text .tld{color:var(--red)}.brand-meta{color:var(--ink-muted);font-size:0.82rem}.brand-meta strong{color:var(--ink-soft);font-weight:600}.hero{padding:56px 0 32px;position:relative}.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:0.78rem;letter-spacing:0.16em;text-transform:uppercase;color:var(--gold-deep);font-weight:600;background:var(--gold-soft);padding:6px 12px;border-radius:999px;border:1px solid #e9d4a0}.hero h1{margin:14px 0 8px}.hero .lede{font-size:1.12rem;color:var(--ink-soft);max-width:60ch}.hero .meta{margin-top:14px;color:var(--ink-muted);font-size:0.92rem}.hero .meta a{color:var(--ink-soft)}.spin-radar{margin:36px 0 8px;background:linear-gradient(180deg,var(--surface-2) 0%,var(--surface) 100%);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;box-shadow:var(--shadow);position:relative;overflow:hidden}.spin-radar::before{content:"";position:absolute;inset:-40% -10% auto auto;width:360px;height:360px;background:radial-gradient(circle at center,rgba(201,161,77,0.22),transparent 60%);pointer-events:none}.spin-radar .radar-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.spin-radar .radar-head h2{margin:0;font-size:1.1rem;font-family:var(--font-body);font-weight:700;letter-spacing:0.02em;text-transform:uppercase;color:var(--ink-soft)}.spin-radar .radar-head .dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--red);margin-right:8px;box-shadow:0 0 0 4px rgba(192,57,43,0.15);animation:pulse 2.4s ease-in-out infinite}@keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(192,57,43,0.12)}50%{box-shadow:0 0 0 8px rgba(192,57,43,0.03)}}.spin-radar .radar-head .hint{color:var(--ink-muted);font-size:0.85rem}.radar-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.radar-tile{position:relative;display:flex;flex-direction:column;gap:6px;padding:16px 14px 14px;background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);text-decoration:none;color:var(--ink);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;isolation:isolate;min-height:116px}.radar-tile:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:var(--shadow);color:var(--ink);text-decoration:none}.radar-tile .num{position:absolute;top:10px;right:12px;font-family:var(--font-head);font-weight:600;font-size:0.85rem;color:var(--gold-deep);opacity:0.8}.radar-tile .icon{width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:var(--gold-soft);color:var(--gold-deep);font-family:var(--font-head);font-weight:700;font-size:0.95rem;margin-bottom:4px}.radar-tile .label{font-family:var(--font-head);font-weight:600;font-size:1.02rem;line-height:1.2}.radar-tile .desc{font-size:0.83rem;color:var(--ink-soft);line-height:1.4}.radar-tile.active{background:var(--ink);color:var(--surface);border-color:var(--ink)}.radar-tile.active .label,.radar-tile.active .desc{color:var(--surface)}.radar-tile.active .icon{background:var(--gold);color:var(--ink)}.radar-tile.active .num{color:var(--gold)}@media (min-width:900px){.radar-grid>.radar-tile:nth-child(1){transform:translateY(8px)}.radar-grid>.radar-tile:nth-child(2){transform:translateY(-2px)}.radar-grid>.radar-tile:nth-child(3){transform:translateY(-2px)}.radar-grid>.radar-tile:nth-child(4){transform:translateY(8px)}.radar-grid>.radar-tile:nth-child(5){transform:translateY(-2px)}.radar-grid>.radar-tile:nth-child(6){transform:translateY(-8px)}.radar-grid>.radar-tile:nth-child(7){transform:translateY(-8px)}.radar-grid>.radar-tile:nth-child(8){transform:translateY(-2px)}.radar-grid>.radar-tile:hover{transform:translateY(-12px)}}@media (max-width:899px){.radar-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:540px){.radar-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;margin:0 -22px;padding-left:22px;padding-right:22px}.radar-tile{scroll-snap-align:start;min-height:110px}}.spin-radar.compact{padding:14px 18px;margin-top:24px}.spin-radar.compact .radar-head{margin-bottom:10px}.spin-radar.compact .radar-tile{min-height:92px;padding:12px}.spin-radar.compact .radar-tile .desc{display:none}@media (min-width:900px){.spin-radar.compact .radar-grid>.radar-tile{transform:none}}section.section{padding:28px 0}.card{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-sm)}.callout{background:linear-gradient(180deg,var(--gold-soft),var(--surface));border:1px solid #ecd9a8;border-left:4px solid var(--gold-deep);border-radius:var(--radius);padding:18px 20px;margin:18px 0}.callout h3{margin-top:0}.warn{background:#fbeeec;border:1px solid #f1c8c2;border-left:4px solid var(--red);border-radius:var(--radius);padding:16px 18px;margin:18px 0}.warn strong{color:var(--red-deep)}.checklist{list-style:none;padding:0;margin:18px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.checklist li{background:var(--surface-2);border:1px solid var(--border-soft);border-radius:10px;padding:12px 14px 12px 38px;position:relative;font-size:0.96rem}.checklist li::before{content:"";position:absolute;left:12px;top:14px;width:18px;height:18px;border-radius:4px;background:var(--gold);color:var(--ink);background-image:linear-gradient(135deg,transparent 45%,var(--ink) 45%,var(--ink) 55%,transparent 55%),linear-gradient(45deg,transparent 45%,var(--ink) 45%,var(--ink) 55%,transparent 55%)}.faq{margin:14px 0 26px;border-top:1px solid var(--border)}.faq details{border-bottom:1px solid var(--border);padding:14px 4px}.faq summary{font-family:var(--font-head);font-weight:600;font-size:1.08rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--ink)}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"+";color:var(--gold-deep);font-family:var(--font-body);font-weight:700;font-size:1.4rem;transition:transform .2s ease}.faq details[open] summary::after{content:"-"}.faq details p{margin-top:10px;color:var(--ink-soft)}.author-box{margin:36px 0 8px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:22px;display:grid;grid-template-columns:72px 1fr;gap:18px;align-items:start}.author-box .avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--ink),#2a3a55);color:var(--gold);display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:1.5rem;border:2px solid var(--gold);overflow:hidden}.author-box .avatar img{width:100%;height:100%;object-fit:cover;display:block}.author-box h3{margin:0 0 6px;font-size:1.15rem}.author-box .author-meta{color:var(--ink-muted);font-size:0.88rem}.author-box p{font-size:0.95rem;color:var(--ink-soft);margin:8px 0 0}@media (max-width:480px){.author-box{grid-template-columns:56px 1fr}.author-box .avatar{width:56px;height:56px;font-size:1.2rem}}.crumbs{font-size:0.85rem;color:var(--ink-muted);margin:12px 0 4px}.crumbs a{color:var(--ink-soft);text-decoration:none}.crumbs a:hover{color:var(--ink);text-decoration:underline}.crumbs .sep{margin:0 6px;opacity:0.6}.table-wrap{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--border);margin:18px 0}table{width:100%;border-collapse:collapse;background:var(--surface-2);font-size:0.95rem}th,td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border-soft)}th{background:var(--bg-deep);font-weight:600;color:var(--ink)}tr:last-child td{border-bottom:none}.intro-grid{display:grid;gap:24px;grid-template-columns:1.4fr 1fr;align-items:start;margin:24px 0}@media (max-width:760px){.intro-grid{grid-template-columns:1fr}}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.tag{font-size:0.78rem;color:var(--ink-soft);background:var(--surface);border:1px solid var(--border);padding:4px 10px;border-radius:999px}footer{margin-top:56px;background:var(--ink);color:#c9d3e3;padding:44px 0 28px}footer a{color:#f0e2bc;text-decoration:none}footer a:hover{color:#fff;text-decoration:underline}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}@media (max-width:760px){.footer-grid{grid-template-columns:1fr}}footer .brand-text{color:#fff}footer .brand-text .tld{color:var(--gold)}footer h4{color:#fff;font-family:var(--font-body);font-weight:600;text-transform:uppercase;letter-spacing:0.08em;font-size:0.82rem;margin:0 0 12px}footer ul{list-style:none;padding:0;margin:0}footer li{margin:6px 0;font-size:0.95rem}.responsible{background:rgba(255,255,255,0.05);border-left:3px solid var(--gold);padding:14px 16px;border-radius:8px;font-size:0.88rem;color:#d8dfec}.copyright{border-top:1px solid rgba(255,255,255,0.1);margin-top:28px;padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:0.82rem;color:#9ba8bf}a:focus-visible,button:focus-visible,summary:focus-visible,.radar-tile:focus-visible{outline:3px solid var(--gold);outline-offset:3px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}html{scroll-behavior:auto}}.divider{display:flex;align-items:center;gap:12px;margin:28px 0 8px;color:var(--gold-deep);font-family:var(--font-head);font-size:0.9rem;letter-spacing:0.16em;text-transform:uppercase}.divider::before,.divider::after{content:"";flex:1;height:1px;background:var(--border)}.muted{color:var(--ink-muted)}.center{text-align:center}.mt-0{margin-top:0 !important}.mb-0{margin-bottom:0 !important}.lead{font-size:1.1rem;color:var(--ink-soft)}.updated-chip{display:inline-flex;align-items:center;gap:6px;font-size:0.78rem;color:var(--ink-soft);background:var(--surface);border:1px solid var(--border);padding:4px 10px;border-radius:999px}.updated-chip .pulse{width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 0 3px rgba(56,107,84,0.18)}