:root{--ink:#f5f1f6;--paper:#09080b;--soft:#151218;--acid:#c9a3d9;--muted:#aaa2ad;--line:rgba(219,202,228,.19)}
body{background:var(--paper);color:var(--ink)}
.hero{background:radial-gradient(circle at 77% 13%,rgba(157,102,180,.24),transparent 21%),radial-gradient(circle at 12% 66%,rgba(116,72,137,.11),transparent 29%),#09080b}
.hero .eyebrow{font:700 16px/1.2 "Barlow Condensed",sans-serif;letter-spacing:.16em;color:#dec0ea}.hero .eyebrow span{width:42px;border-width:2px;margin:0 12px}
.hero-logo-display{position:absolute;z-index:1;right:max(6vw,calc((100vw - 1180px)/2));top:133px;width:clamp(280px,34vw,510px);aspect-ratio:1;display:grid;place-items:center;pointer-events:none}.hero-logo-display::before{content:"";position:absolute;inset:6%;border-radius:50%;background:radial-gradient(circle,rgba(201,163,217,.24),transparent 63%);filter:blur(20px)}.hero-logo-display img{position:relative;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 18px 35px rgba(0,0,0,.48));animation:hero-logo-rotate 22s linear infinite}@keyframes hero-logo-rotate{to{transform:rotate(360deg)}}
.brand-logo{width:38px;height:38px;object-fit:cover;border-radius:50%;border:1px solid #b693c5}
.edit-trigger,.pill-button,.primary-button{background:var(--acid);color:#130f16;border:1px solid #b693c5}
.hero-copy{color:#d7d0d8}.section-kicker{color:#bcaac3}.hero-fade{background:linear-gradient(transparent,var(--paper))}
.intro>div p,.callout>p:not(.section-kicker){color:#c4bdc6}.rules-section{background:#0d0b10}.search{border-color:#716878}.search input{color:var(--ink)}.search input::placeholder{color:#aaa2ad}
.category-nav button{color:#aaa2ad}.category-nav button.active{color:var(--ink);box-shadow:inset 3px 0 var(--acid)}.category-nav small,.category-heading span{color:#aa9eaf}.rule-no{color:#ba9bc5}.rule summary::after{color:#c8b4d0}.rule-body{color:#c5bdc7}.empty{color:#aaa2ad}
.callout a{border-color:var(--acid)}.callout a span,.footer-inner a:last-child{color:var(--acid)}footer{background:#050406;color:#f5f1f6;border-top:1px solid var(--line)}.footer-inner{color:#aaa2ad}
dialog{border:1px solid #55495a;background:#111014;color:var(--ink)}dialog::backdrop{background:#070508dd}.icon-button,.text-button{color:var(--ink)}.editor-note{color:#b8afbb}input,textarea,select{border-color:#514657;background:#0b0a0d;color:var(--ink)}.editor-row small{color:#aa9eaf}.editor-row button,.data-actions button,.import-label{border-color:#66596c;color:var(--ink)}.editor-row .delete,.data-actions .danger{color:#f19ba4;border-color:#9c5761}
.category{border:1px solid #38323b;border-radius:17px;background:#0b0a0d;padding:20px;margin-bottom:28px}.category-heading{padding:0 3px 10px;margin:0}.rule,.rule:last-child{border:1px solid #403943;border-radius:12px;background:#0e0d10;margin:8px 0}.rule summary{padding:17px 15px;font-size:16px;line-height:1.45}.rule-body{padding:0 18px 20px 77px;font-size:15px;line-height:1.72;color:#ddd6df}.rule-no{font-size:15px}.category-heading h3{font-size:30px}.category-heading span{font-size:13px}@media(max-width:720px){.category{padding:14px}.rule summary{font-size:15px}.rule-body{padding:0 15px 18px;font-size:15px}}
.intro>div{display:block}.intro>div h2{white-space:nowrap;font-size:clamp(44px,4.6vw,68px)}.intro>div p{max-width:680px;margin-top:26px}@media(max-width:720px){.intro>div h2{white-space:normal;font-size:clamp(44px,12vw,60px)}}
@media(max-width:900px){.hero-logo-display{opacity:.36;right:-50px;top:170px;width:390px}}@media(prefers-reduced-motion:reduce){.hero-logo-display img{animation:none}}
