
:root{--bg:#031927;--panel:#06283c;--cyan:#15b9ff;--text:#eef8ff;--muted:#a6c8dd;--line:rgba(34,185,255,.22);--gold:#ffbf38;--red:#ff6477;--green:#73ffc1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at 22% 10%,rgba(0,162,255,.18),transparent 34%),linear-gradient(rgba(45,185,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(45,185,255,.055) 1px,transparent 1px),var(--bg);background-size:auto,64px 64px,64px 64px;color:var(--text)}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.14),transparent 18%,transparent 82%,rgba(0,0,0,.3)),repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 5px)}a{color:inherit}.wrap{max-width:1220px;margin:auto;padding:42px 28px 80px;position:relative;z-index:1}.top-actions{display:flex;gap:12px;align-items:center;justify-content:flex-end;margin-bottom:24px}.admin-link,.btn{border:1px solid var(--line);background:rgba(3,20,31,.74);color:#9fe2ff;text-decoration:none;padding:12px 16px;border-radius:12px;font-weight:900}.badge{display:inline-flex;align-items:center;gap:10px;padding:10px 15px;background:linear-gradient(90deg,#064769,#063049);color:#87dcff;font-weight:900;font-size:13px;letter-spacing:.12em;text-transform:uppercase;clip-path:polygon(0 0,100% 0,100% 100%,10px 100%,0 calc(100% - 10px))}.badge:before{content:"◆";color:var(--cyan);font-size:10px}.hero{padding:20px 0 34px}.hero h1{font-size:68px;line-height:.98;margin:22px 0;font-weight:900;letter-spacing:-.06em}.hero h1 span{display:block;color:#09adff}.hero p{max-width:620px;color:#b8dcf2;font-size:16px;line-height:1.75}.stats{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px}.stat{padding:12px 16px;background:linear-gradient(90deg,rgba(0,170,255,.16),rgba(0,170,255,.05));border:1px solid var(--line);color:#83d8ff;font-weight:800;font-size:14px;box-shadow:0 0 25px rgba(0,170,255,.08)}.stat.gold{color:var(--gold);background:linear-gradient(90deg,rgba(255,191,56,.18),rgba(255,191,56,.05));border-color:rgba(255,191,56,.25)}.search-panel{margin:10px 0 34px;padding:16px;border:1px solid var(--line);border-radius:14px;background:rgba(3,20,31,.68);box-shadow:0 0 30px rgba(0,170,255,.08)}.search-row{display:flex;gap:12px;align-items:center}.search-row input{width:100%;padding:15px 16px;border-radius:12px;border:1px solid rgba(21,185,255,.25);background:rgba(2,15,25,.72);color:#eef8ff;font:inherit;font-weight:800;outline:none}.search-row input:focus{border-color:rgba(21,185,255,.65);box-shadow:0 0 0 4px rgba(21,185,255,.08)}.search-count{color:#75a9c8;font-weight:800;font-size:13px;margin-top:10px}.layout{display:grid;grid-template-columns:220px 1fr;gap:56px}.nav{position:sticky;top:24px;height:fit-content;background:rgba(3,20,31,.74);border:1px solid var(--line);border-left:2px solid var(--cyan);padding:14px;border-radius:7px;max-height:calc(100vh - 48px);overflow:auto}.nav h3{font-size:12px;letter-spacing:.15em;color:#9fe2ff;margin:2px 4px 12px;text-transform:uppercase}.nav a{display:flex;gap:12px;align-items:center;text-decoration:none;color:#a9c6d7;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.055);padding:13px 12px;margin:8px 0;border-radius:7px;font-weight:800;font-size:14px}.nav a span{color:#76d5ff;font-size:12px}.notice-box{margin-bottom:52px;background:linear-gradient(90deg,rgba(0,178,255,.14),rgba(0,178,255,.04));border:1px solid rgba(31,184,255,.35);border-radius:10px;padding:20px 24px;color:#d9f4ff;line-height:1.65}.section{margin-bottom:52px}.section-head{position:relative;display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:center;min-height:138px;padding:30px 34px;background:linear-gradient(90deg,rgba(0,185,255,.18),rgba(0,80,120,.08));border:1px solid var(--line);border-left:3px solid var(--cyan);clip-path:polygon(0 0,98.5% 0,100% 12%,100% 100%,0 100%)}.section-head:after{content:attr(data-num);position:absolute;right:20px;top:15px;font-size:92px;font-weight:900;color:rgba(0,174,255,.08)}.icon{width:44px;height:44px;background:#073a57;display:grid;place-items:center;color:var(--cyan);font-weight:900;clip-path:polygon(0 0,78% 0,100% 25%,100% 100%,0 100%)}.kicker{font-size:11px;letter-spacing:.16em;color:var(--cyan);font-weight:900;text-transform:uppercase}.section-head h2{font-size:30px;margin:5px 0 8px;letter-spacing:-.04em}.section-head p{margin:0;color:var(--muted);line-height:1.65}.rule{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:24px 4px 24px 0;border-bottom:1px solid rgba(124,211,255,.12)}.rule mark{background:rgba(255,191,56,.26);color:#fff;border-radius:3px;padding:0 2px}.num{margin-left:8px;background:#07324b;color:#76d7ff;font-size:13px;font-weight:900;padding:8px 10px;border-radius:5px;text-align:center;height:max-content;border:1px solid rgba(118,215,255,.12)}.rule h3{margin:0 0 10px;font-size:18px;color:#fff}.tag{display:inline-block;margin-left:8px;vertical-align:middle;padding:4px 8px;border-radius:4px;background:#0e3b55;color:#94dcff;font-size:10px;font-weight:900;letter-spacing:.07em}.tag.red{background:rgba(255,65,89,.16);color:#ff8fa0}.tag.green{background:rgba(64,255,172,.13);color:#8cffc9}.rule p,.rule li{color:#add1e6;line-height:1.75;font-size:15px}.rule p{margin:0 0 12px}.footer{text-align:center;color:#75a9c8;margin-top:45px;font-weight:700}.hidden{display:none!important}.admin-shell{max-width:1220px;margin:auto;padding:32px 24px 80px;position:relative;z-index:1}.admin-grid{display:grid;grid-template-columns:320px 1fr;gap:24px}.panel{border:1px solid var(--line);border-radius:14px;background:rgba(3,20,31,.78);padding:18px}.panel h2,.panel h3{margin-top:0}.field{display:grid;gap:7px;margin:12px 0}.field label{color:#9fe2ff;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:900}.field input,.field textarea,.field select{width:100%;padding:13px;border-radius:10px;border:1px solid rgba(21,185,255,.24);background:rgba(2,15,25,.76);color:#eef8ff;font:inherit}.field textarea{min-height:140px}.btn{cursor:pointer}.btn.primary{background:#075d89;color:#fff;border-color:#15b9ff}.btn.danger{background:rgba(255,65,89,.14);border-color:rgba(255,65,89,.35);color:#ff9baa}.btns{display:flex;gap:10px;flex-wrap:wrap}.list-item{padding:12px;border:1px solid rgba(255,255,255,.075);border-radius:10px;margin:8px 0;background:rgba(255,255,255,.035);cursor:pointer}.list-item.active{border-color:#15b9ff;background:rgba(21,185,255,.12)}.muted{color:#84aac1}.login-box{max-width:440px;margin:90px auto}@media(max-width:900px){.hero h1{font-size:48px}.layout,.admin-grid{grid-template-columns:1fr}.nav{position:relative;top:0;max-height:none}.rule{grid-template-columns:1fr}.num{margin-left:0;width:max-content}.search-row{flex-direction:column;align-items:stretch}}

.admin-tabs{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}
.audit-item{border:1px solid var(--line);background:rgba(3,20,31,.62);border-radius:12px;padding:14px 16px;margin:12px 0}
.audit-item pre{white-space:pre-wrap;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.06);border-radius:10px;color:#add1e6;padding:10px;margin:10px 0 0;font-size:12px}
#whoami{font-weight:800;padding:0 8px}

.toast-wrap{position:fixed;right:18px;bottom:18px;display:grid;gap:10px;z-index:9999;max-width:min(420px,calc(100vw - 36px))}.toast{transform:translateY(12px);opacity:0;background:linear-gradient(135deg,#06283c,#041f30);border:1px solid var(--line);border-left:4px solid var(--cyan);border-radius:14px;padding:13px 15px;color:#d9f4ff;box-shadow:0 12px 35px rgba(0,0,0,.38);transition:.22s ease}.toast.show{transform:translateY(0);opacity:1}.toast b{display:block;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}.toast span{display:block;color:#b8dcf2;line-height:1.45}.toast-success{border-left-color:var(--green)}.toast-error{border-left-color:var(--red)}.modal-overlay{position:fixed;inset:0;display:grid;place-items:center;background:rgba(0,0,0,.58);backdrop-filter:blur(6px);z-index:9998;opacity:0;transition:.18s ease}.modal-overlay.show{opacity:1}.modal-card{width:min(460px,calc(100vw - 36px));border:1px solid var(--line);border-left:3px solid var(--cyan);border-radius:16px;background:linear-gradient(135deg,rgba(6,40,60,.98),rgba(3,25,39,.98));padding:24px;box-shadow:0 22px 70px rgba(0,0,0,.5)}.modal-kicker{font-size:11px;letter-spacing:.16em;color:var(--cyan);font-weight:900;text-transform:uppercase}.modal-card h2{margin:8px 0 10px}.modal-card p{color:#b8dcf2;line-height:1.7}.modal-actions{justify-content:flex-end;margin-top:18px}.audit-item{border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.035);border-radius:12px;padding:13px;margin:10px 0}.audit-item pre{white-space:pre-wrap;color:#a6c8dd;background:rgba(0,0,0,.18);padding:10px;border-radius:8px;overflow:auto}

/* Rich rule editor */
.rich-editor{min-height:260px;border:1px solid rgba(21,185,255,.24);border-radius:12px;background:rgba(2,15,25,.76);color:#eef8ff;overflow:hidden}
.rich-editor .ql-editor{min-height:220px;color:#eef8ff;font-family:Inter,Arial,sans-serif;font-size:15px;line-height:1.75}
.rich-editor .ql-editor p,.rich-editor .ql-editor li{color:#eef8ff}
.rich-editor .ql-editor.ql-blank::before{color:#84aac1;font-style:normal}
.ql-toolbar.ql-snow{border:1px solid rgba(21,185,255,.24)!important;border-radius:12px 12px 0 0;background:rgba(6,40,60,.86)}
.ql-container.ql-snow{border:0!important}
.ql-snow .ql-stroke{stroke:#9fe2ff!important}
.ql-snow .ql-fill{fill:#9fe2ff!important}
.ql-snow .ql-picker{color:#9fe2ff!important}
.ql-snow .ql-picker-options{background:#06283c!important;border-color:rgba(21,185,255,.35)!important}
.editor-help{margin-top:8px;font-size:12px;line-height:1.5}

/* v6 readable audit log */
.audit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:10px}
.audit-readable{border:1px solid rgba(21,185,255,.12);background:rgba(21,185,255,.045);border-radius:10px;padding:12px;margin-top:10px}
.audit-readable p{margin:0 0 8px;color:#d9f4ff;line-height:1.6}.audit-readable p:last-child{margin-bottom:0}
.audit-actions{margin-top:10px}.audit-details{margin-top:10px;border:1px solid rgba(255,255,255,.07);border-radius:10px;background:rgba(0,0,0,.16);padding:10px;color:#add1e6}
.audit-details p{margin:5px 0}.audit-change-block{margin-top:12px;padding-top:10px;border-top:1px solid rgba(255,255,255,.08)}
.audit-rule-change{margin:8px 0;padding:9px 10px;border-radius:9px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.06)}
.audit-rule-change ul{margin:8px 0 0 18px;padding:0}.audit-rule-change li{margin:5px 0;color:#add1e6;line-height:1.55}.audit-field{color:#9fe2ff;font-weight:900;text-transform:uppercase;font-size:11px;letter-spacing:.08em}


/* Turnstile entry gate */
.turnstile-locked body{overflow:hidden}.turnstile-gate{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:radial-gradient(circle at 50% 15%,rgba(21,185,255,.16),transparent 38%),rgba(1,10,18,.86);backdrop-filter:blur(8px);transition:opacity .24s ease,transform .24s ease}.turnstile-gate-done{opacity:0;transform:scale(1.015)}.turnstile-card{width:min(460px,calc(100vw - 34px));border:1px solid var(--line);border-left:3px solid var(--cyan);border-radius:18px;background:linear-gradient(135deg,rgba(6,40,60,.98),rgba(3,25,39,.98));padding:26px;box-shadow:0 24px 80px rgba(0,0,0,.55),0 0 35px rgba(21,185,255,.12)}.turnstile-card h2{margin:8px 0 10px;font-size:28px;letter-spacing:-.04em}.turnstile-card p{color:#b8dcf2;line-height:1.7;margin:0 0 18px}.turnstile-widget{min-height:70px;display:flex;align-items:center;justify-content:center;padding:8px;border:1px solid rgba(21,185,255,.18);background:rgba(2,15,25,.62);border-radius:12px}.turnstile-message{margin-top:12px;color:#84aac1;font-weight:800;font-size:13px}.turnstile-message.loading{color:#9fe2ff}.turnstile-message.success{color:var(--green)}.turnstile-message.error{color:var(--red)}


/* v9 public section nav: exact-blue hover + scroll-darkening */
:root{
  --nav-scroll-dark:0;
  --nav-hover-blue:#15b9ff;
}
.nav a{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.nav a::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  opacity:0;
  background:linear-gradient(90deg,rgba(21,185,255,.28),rgba(21,185,255,.10));
  transition:opacity .18s ease;
}
.nav a::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  background:rgba(0,0,0,var(--nav-scroll-dark));
  transition:opacity .18s ease,background .18s ease;
}
.nav a:hover,
.nav a.active{
  color:#eef8ff;
  border-color:var(--nav-hover-blue);
  background:#15b9ff;
  box-shadow:0 0 0 1px rgba(21,185,255,.35) inset,0 0 26px rgba(21,185,255,.32);
  transform:translateX(2px);
}
.nav a:hover::before,
.nav a.active::before,
.nav a:hover::after,
.nav a.active::after{opacity:1}
.nav a:hover .nav-icon,
.nav a.active .nav-icon{
  background:#031927;
  color:#15b9ff;
  border-color:rgba(255,255,255,.22);
  box-shadow:0 0 18px rgba(21,185,255,.65);
}
.nav a:hover .nav-num,
.nav a.active .nav-num{color:#031927}
.nav a:hover b,
.nav a.active b{color:#031927}
.nav-icon{
  width:23px;
  height:23px;
  display:inline-grid;
  place-items:center;
  border-radius:6px;
  background:rgba(21,185,255,.10);
  border:1px solid rgba(21,185,255,.16);
  color:#76d5ff;
  font-size:13px;
  flex:0 0 auto;
  transition:.18s ease;
}
.nav-num{color:#76d5ff;font-size:12px;font-weight:900;min-width:20px;transition:.18s ease}.nav a b{font-size:14px;transition:.18s ease}

/* v9 admin rules tab section list: icon cards matching public sidebar */
#sectionsList{margin-top:12px}.section-list-item{display:grid;grid-template-columns:32px 32px 1fr;align-items:center;gap:10px;position:relative;overflow:hidden;transition:.18s ease}.section-list-item::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,185,255,.20),rgba(21,185,255,.05));opacity:0;transition:.18s ease}.section-list-item:hover,.section-list-item.active{border-color:#15b9ff;background:rgba(21,185,255,.12);box-shadow:0 0 22px rgba(21,185,255,.14);transform:translateX(2px)}.section-list-item:hover::before,.section-list-item.active::before{opacity:1}.section-list-icon{position:relative;z-index:1;width:28px;height:28px;display:grid;place-items:center;border-radius:8px;background:rgba(21,185,255,.10);border:1px solid rgba(21,185,255,.18);color:#76d5ff}.section-list-item.active .section-list-icon,.section-list-item:hover .section-list-icon{background:#15b9ff;color:#031927;box-shadow:0 0 18px rgba(21,185,255,.55)}.section-list-num{position:relative;z-index:1;color:#76d5ff;font-size:12px;font-weight:900}.section-list-copy{position:relative;z-index:1}.section-list-copy b{color:#eef8ff}.section-list-copy .muted{font-size:12px}.rule-list-item:hover,.rule-list-item.active{border-color:#15b9ff;background:rgba(21,185,255,.10)}

/* v10: stronger blue hover, scroll-darkening and rule-card hover exactly like requested */
:root{
  --nav-scroll-dark:0;
  --rule-hover-blue:#15b9ff;
}
.nav{
  background:linear-gradient(180deg,rgba(3,20,31,calc(.74 + var(--nav-scroll-dark) * .16)),rgba(1,11,18,calc(.82 + var(--nav-scroll-dark) * .15)));
  box-shadow:0 18px 45px rgba(0,0,0,calc(.18 + var(--nav-scroll-dark) * .32));
}
.nav a{
  min-height:44px;
  border-left:1px solid rgba(255,255,255,.055);
  will-change:transform,background,box-shadow;
}
.nav a.active:not(:hover){
  color:#eef8ff;
  border-color:rgba(21,185,255,.72);
  background:linear-gradient(90deg,rgba(21,185,255,calc(.14 + var(--nav-scroll-dark) * .18)),rgba(21,185,255,.045));
  box-shadow:inset 3px 0 0 #15b9ff,0 0 22px rgba(21,185,255,.13);
  transform:none;
}
.nav a.active:not(:hover) .nav-icon{
  background:rgba(21,185,255,.20);
  color:#76d5ff;
  border-color:rgba(21,185,255,.32);
  box-shadow:0 0 14px rgba(21,185,255,.22);
}
.nav a.active:not(:hover) .nav-num,
.nav a.active:not(:hover) b{color:#dff6ff}
.nav a:hover{
  background:#15b9ff!important;
  border-color:#15b9ff!important;
  box-shadow:0 0 0 1px rgba(21,185,255,.9) inset,0 0 28px rgba(21,185,255,.50),0 12px 28px rgba(0,0,0,.28)!important;
  transform:translateX(4px) scale(1.01);
}
.nav a:hover::after{opacity:1;background:rgba(0,0,0,calc(var(--nav-scroll-dark) * .72))}
.nav a:hover .nav-icon{background:#031927;color:#15b9ff;border-color:rgba(3,25,39,.45);box-shadow:0 0 18px rgba(3,25,39,.5)}
.nav a:hover .nav-num,.nav a:hover b{color:#031927!important}

.rule{
  position:relative;
  border-left:3px solid transparent;
  border-radius:0 10px 10px 0;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease,padding-left .18s ease;
}
.rule::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:0;
  border-radius:0 10px 10px 0;
  background:linear-gradient(90deg,rgba(21,185,255,.16),rgba(21,185,255,.065) 42%,rgba(21,185,255,0));
  transition:opacity .18s ease;
}
.rule:hover,
.rule:focus-within{
  border-left-color:var(--rule-hover-blue);
  background:linear-gradient(90deg,rgba(21,185,255,.13),rgba(2,20,32,.30));
  box-shadow:inset 0 0 0 1px rgba(21,185,255,.14),0 0 32px rgba(21,185,255,.10);
  transform:translateX(2px);
  padding-left:10px;
}
.rule:hover::before,
.rule:focus-within::before{opacity:1}
.rule:hover .num,
.rule:focus-within .num{
  background:#063f5e;
  border-color:rgba(21,185,255,.65);
  color:#15b9ff;
  box-shadow:0 0 18px rgba(21,185,255,.24);
}
.rule:hover h3,
.rule:focus-within h3{color:#fff;text-shadow:0 0 16px rgba(21,185,255,.22)}
.rule:hover .tag,
.rule:focus-within .tag{box-shadow:0 0 14px rgba(21,185,255,.12)}

/* Admin rules tab sections: same blue icon-tab treatment */
.section-list-item,
.rule-list-item{
  border-left:1px solid rgba(255,255,255,.06);
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.section-list-item:hover,
.section-list-item.active,
.rule-list-item:hover,
.rule-list-item.active{
  border-color:#15b9ff!important;
  background:linear-gradient(90deg,rgba(21,185,255,.18),rgba(21,185,255,.055))!important;
  box-shadow:inset 3px 0 0 #15b9ff,0 0 24px rgba(21,185,255,.16)!important;
  transform:translateX(3px);
}
.section-list-item:hover .section-list-icon,
.section-list-item.active .section-list-icon{
  background:#15b9ff!important;
  color:#031927!important;
  border-color:#15b9ff!important;
  box-shadow:0 0 20px rgba(21,185,255,.52)!important;
}
.section-list-item:hover .section-list-num,
.section-list-item.active .section-list-num{color:#9fe2ff!important}

/* v11 definitive interaction design — intentionally loaded from a new filename */
:root{
  --scroll-depth:0;
  --electric-blue:#08afff;
  --deep-blue:#041a29;
}

/* Public sidebar tabs */
#nav.nav a{
  position:relative;
  display:grid;
  grid-template-columns:26px 26px minmax(0,1fr);
  align-items:center;
  gap:10px;
  min-height:48px;
  padding:10px 12px;
  border:1px solid rgba(125,202,255,.12);
  border-left:3px solid transparent;
  border-radius:9px;
  background:linear-gradient(90deg,rgba(255,255,255,.035),rgba(255,255,255,.018));
  color:#a9c6d7;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}
#nav.nav a:hover{
  color:#fff!important;
  transform:translateX(5px);
  border-color:var(--electric-blue)!important;
  border-left-color:#fff!important;
  background:linear-gradient(90deg,
    rgba(8,175,255,calc(.74 - var(--scroll-depth) * .30)),
    rgba(4,103,154,calc(.64 - var(--scroll-depth) * .24)))!important;
  box-shadow:0 0 0 1px rgba(8,175,255,.45) inset,0 0 30px rgba(8,175,255,.38),0 14px 30px rgba(0,0,0,.30)!important;
}
#nav.nav a.active:not(:hover){
  color:#eaf8ff!important;
  border-color:rgba(8,175,255,.55)!important;
  border-left-color:var(--electric-blue)!important;
  background:linear-gradient(90deg,
    rgba(8,175,255,calc(.18 - var(--scroll-depth) * .06)),
    rgba(8,175,255,.035))!important;
  box-shadow:inset 3px 0 0 var(--electric-blue),0 0 24px rgba(8,175,255,.12)!important;
}
#nav.nav a:hover .nav-icon{
  color:var(--electric-blue)!important;
  background:#031927!important;
  border-color:rgba(255,255,255,.30)!important;
  box-shadow:0 0 18px rgba(0,0,0,.45)!important;
}
#nav.nav a:hover .nav-num,#nav.nav a:hover b{color:#fff!important}

/* Rule row becomes the blue card shown in the reference */
#rules article.rule{
  position:relative;
  isolation:isolate;
  margin:8px 0;
  padding:24px 22px 24px 18px;
  border:1px solid transparent;
  border-left:3px solid transparent;
  border-bottom-color:rgba(124,211,255,.12);
  border-radius:2px 12px 12px 2px;
  background:transparent;
  overflow:hidden;
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
#rules article.rule::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  opacity:0;
  background:linear-gradient(100deg,
    rgba(8,175,255,calc(.22 - var(--scroll-depth) * .06)) 0%,
    rgba(4,63,94,calc(.34 + var(--scroll-depth) * .18)) 48%,
    rgba(2,22,35,calc(.72 + var(--scroll-depth) * .20)) 100%);
  transition:opacity .18s ease;
}
#rules article.rule:hover,#rules article.rule:focus-within{
  transform:translateX(5px);
  border-color:rgba(8,175,255,.28);
  border-left-color:var(--electric-blue);
  background:#061f31;
  box-shadow:inset 0 0 0 1px rgba(8,175,255,.10),0 0 34px rgba(8,175,255,.12),0 16px 36px rgba(0,0,0,.25);
}
#rules article.rule:hover::before,#rules article.rule:focus-within::before{opacity:1}
#rules article.rule:hover .num,#rules article.rule:focus-within .num{
  color:#3fc7ff;
  background:#073a57;
  border-color:rgba(8,175,255,.55);
  box-shadow:0 0 18px rgba(8,175,255,.22);
}
#rules article.rule:hover h3,#rules article.rule:focus-within h3{
  color:#fff;
  text-shadow:0 0 18px rgba(8,175,255,.20);
}

/* Admin section selector uses the same icon-tab language */
#sectionsList .section-list-item{
  grid-template-columns:30px 30px minmax(0,1fr)!important;
  min-height:52px;
  border-left:3px solid transparent!important;
}
#sectionsList .section-list-item:hover,#sectionsList .section-list-item.active{
  border-left-color:var(--electric-blue)!important;
  background:linear-gradient(90deg,rgba(8,175,255,.23),rgba(8,175,255,.055))!important;
  box-shadow:0 0 28px rgba(8,175,255,.16)!important;
}

@media (prefers-reduced-motion:reduce){
  #nav.nav a,#rules article.rule,#sectionsList .section-list-item{transition:none!important}
}

/* v13 — Capital-style compact typography and spacing */
:root{
  --type-body:#a9d2ec;
  --type-muted:#8fb4ca;
  --type-title:#f2f8ff;
}
html{font-size:16px}
body{
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  font-weight:500;
  -webkit-font-smoothing:antialiased;
  text-rendering:geometricPrecision;
}
.wrap{max-width:1280px;padding:32px 28px 72px}
.hero{padding:14px 0 30px}
.badge{padding:8px 13px;font-size:11px;line-height:1;letter-spacing:.13em;font-weight:800}
.badge:before{font-size:8px}
.hero h1{
  max-width:720px;
  margin:20px 0 18px;
  font-size:64px;
  line-height:.96;
  font-weight:800;
  letter-spacing:-.055em;
  color:var(--type-title);
}
.hero h1 span{font-size:54px;line-height:1;color:#08adfb}
.hero p{
  max-width:610px;
  margin:0;
  color:#9fcae5;
  font-size:16px;
  line-height:1.78;
  font-weight:500;
  letter-spacing:-.005em;
}
.stats{gap:10px;margin-top:34px}
.stat{padding:9px 13px;font-size:12px;line-height:1.15;font-weight:700}
.search-panel{margin:8px 0 28px;padding:13px}
.search-row input{padding:12px 14px;font-size:13px;font-weight:700}
.search-count{font-size:11px}
.layout{grid-template-columns:220px minmax(0,1fr);gap:56px}
.nav{padding:13px}
.nav h3{margin:2px 4px 11px;font-size:10px;line-height:1;letter-spacing:.16em;font-weight:800}
.nav a{min-height:42px;padding:10px 11px;margin:7px 0;gap:9px;font-size:13px;line-height:1.15;font-weight:700}
.nav a b{font-size:13px;font-weight:700;letter-spacing:-.01em}
.nav-num{font-size:10px;min-width:18px}
.nav-icon{width:22px;height:22px;font-size:12px}
.notice-box{margin-bottom:42px;padding:17px 21px;font-size:14px;line-height:1.65;font-weight:500}
.section{margin-bottom:44px}
.section-head{grid-template-columns:46px 1fr;gap:17px;min-height:126px;padding:26px 31px}
.section-head:after{right:18px;top:12px;font-size:82px}
.icon{width:42px;height:42px;font-size:16px}
.kicker{font-size:9px;line-height:1;letter-spacing:.17em;font-weight:800}
.section-head h2{margin:6px 0 7px;font-size:28px;line-height:1.08;font-weight:800;letter-spacing:-.035em;color:var(--type-title)}
.section-head p{max-width:700px;font-size:14px;line-height:1.65;font-weight:500;color:#91b5cb}
.rule{grid-template-columns:58px 1fr;gap:17px;padding:20px 4px 20px 0}
.num{margin-left:8px;padding:6px 8px;font-size:10px;line-height:1.1;font-weight:800;border-radius:4px}
.rule h3{margin:0 0 7px;font-size:15px;line-height:1.3;font-weight:800;letter-spacing:-.012em;color:#fff}
.tag{margin-left:7px;padding:3px 7px;font-size:8px;line-height:1.1;font-weight:900;letter-spacing:.09em;border-radius:3px}
.rule p,.rule li{font-size:14px;line-height:1.72;font-weight:500;color:#9fc9e3}
.rule p{margin:0 0 10px}
.rule ul,.rule ol{margin-top:8px;margin-bottom:10px;padding-left:21px}
.footer{font-size:12px;margin-top:38px;font-weight:600}

/* Keep hover refined and consistent with the reference theme */
.rule:hover,.rule:focus-within{
  background:linear-gradient(90deg,rgba(8,132,190,.105),rgba(2,20,32,.24));
  box-shadow:inset 0 0 0 1px rgba(15,153,216,.11),0 0 24px rgba(8,132,190,.07);
}
.nav a:hover{
  background:linear-gradient(90deg,rgba(8,151,220,.24),rgba(8,111,165,.12))!important;
  border-color:rgba(21,185,255,.58)!important;
  box-shadow:inset 3px 0 0 rgba(21,185,255,.9),0 0 18px rgba(8,132,190,.16)!important;
  transform:translateX(2px);
}
.nav a:hover .nav-num,.nav a:hover b{color:#e8f7ff!important}
.nav a:hover .nav-icon{background:rgba(21,185,255,.16);color:#8bdcff;border-color:rgba(21,185,255,.34);box-shadow:0 0 12px rgba(21,185,255,.18)}

@media(max-width:900px){
  .wrap{padding:26px 20px 60px}
  .hero h1{font-size:48px}
  .hero h1 span{font-size:43px}
  .hero p{font-size:15px}
  .section-head h2{font-size:25px}
  .section-head p{font-size:13.5px}
  .rule h3{font-size:14.5px}
  .rule p,.rule li{font-size:13.5px}
}


/* v14 — progressive Capital-inspired section palette and restrained hover */
:root{
  --active-section-accent:#15aeea;
  --active-section-rgb:21,174,234;
  --active-section-deep:#073047;
}
body{
  background:
    radial-gradient(circle at 24% 8%,rgba(var(--active-section-rgb),.13),transparent 34%),
    linear-gradient(rgba(45,185,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(45,185,255,.045) 1px,transparent 1px),
    linear-gradient(180deg,#031927 0%,var(--active-section-deep) 54%,#07131d 100%);
  background-size:auto,64px 64px,64px 64px,auto;
  transition:background-color .55s ease;
}

/* Every section carries its own palette. Section 03 onward stays mauve and darkens. */
.section{
  position:relative;
  padding-top:1px;
}
.section .section-head{
  border-color:rgba(var(--section-accent-rgb),.26)!important;
  border-left-color:var(--section-accent)!important;
  background:linear-gradient(105deg,
    rgba(var(--section-accent-rgb),.105) 0%,
    rgba(var(--section-accent-rgb),.045) 48%,
    rgba(4,18,28,.36) 100%)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.section .section-head::after{color:rgba(var(--section-accent-rgb),.065)!important}
.section .section-head .icon{
  color:var(--section-accent)!important;
  background:rgba(var(--section-accent-rgb),.115)!important;
  border:1px solid rgba(var(--section-accent-rgb),.14);
}
.section .section-head .kicker{color:var(--section-accent)!important}

/* Faint, reference-like hover across rule rows. */
#rules article.rule{
  margin:5px 0!important;
  padding:20px 16px 20px 10px!important;
  border:1px solid transparent!important;
  border-left:3px solid transparent!important;
  border-bottom-color:rgba(124,211,255,.085)!important;
  border-radius:2px 8px 8px 2px!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
#rules article.rule::before{
  background:linear-gradient(100deg,
    rgba(var(--section-accent-rgb),.075) 0%,
    rgba(var(--section-accent-rgb),.035) 52%,
    rgba(3,15,24,.10) 100%)!important;
}
#rules article.rule:hover,#rules article.rule:focus-within{
  transform:translateX(1px)!important;
  border-color:rgba(var(--section-accent-rgb),.16)!important;
  border-left-color:rgba(var(--section-accent-rgb),.72)!important;
  background:linear-gradient(95deg,
    rgba(var(--section-accent-rgb),.078),
    rgba(var(--section-accent-rgb),.026) 58%,
    rgba(2,13,21,.10))!important;
  box-shadow:inset 0 0 0 1px rgba(var(--section-accent-rgb),.025),0 8px 24px rgba(0,0,0,.12)!important;
}
#rules article.rule:hover .num,#rules article.rule:focus-within .num{
  color:var(--section-accent)!important;
  background:rgba(var(--section-accent-rgb),.09)!important;
  border-color:rgba(var(--section-accent-rgb),.28)!important;
  box-shadow:none!important;
}
#rules article.rule:hover h3,#rules article.rule:focus-within h3{
  color:#fff!important;
  text-shadow:none!important;
}

/* Sidebar uses each section colour; hover remains faint rather than neon. */
#nav.nav a{
  min-height:43px!important;
  background:rgba(255,255,255,.026)!important;
  border:1px solid rgba(255,255,255,.065)!important;
  border-left:2px solid transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
#nav.nav a::before{
  background:linear-gradient(90deg,rgba(var(--section-accent-rgb),.105),rgba(var(--section-accent-rgb),.032))!important;
}
#nav.nav a:hover{
  color:#eef8ff!important;
  transform:translateX(1px)!important;
  border-color:rgba(var(--section-accent-rgb),.28)!important;
  border-left-color:rgba(var(--section-accent-rgb),.74)!important;
  background:linear-gradient(90deg,rgba(var(--section-accent-rgb),.10),rgba(var(--section-accent-rgb),.03))!important;
  box-shadow:inset 2px 0 0 rgba(var(--section-accent-rgb),.46),0 7px 18px rgba(0,0,0,.10)!important;
}
#nav.nav a.active:not(:hover){
  color:#f1f8fc!important;
  border-color:rgba(var(--section-accent-rgb),.25)!important;
  border-left-color:var(--section-accent)!important;
  background:linear-gradient(90deg,rgba(var(--section-accent-rgb),.105),rgba(var(--section-accent-rgb),.025))!important;
  box-shadow:inset 2px 0 0 rgba(var(--section-accent-rgb),.58)!important;
}
#nav.nav a:hover .nav-icon,#nav.nav a.active .nav-icon{
  color:var(--section-accent)!important;
  background:rgba(var(--section-accent-rgb),.09)!important;
  border-color:rgba(var(--section-accent-rgb),.18)!important;
  box-shadow:none!important;
}
#nav.nav a:hover .nav-num,#nav.nav a:hover b,#nav.nav a.active .nav-num,#nav.nav a.active b{color:#dfeef7!important}

/* Admin section cards mirror the exact section palette and icon language. */
#sectionsList .section-list-item{
  border-color:rgba(255,255,255,.065)!important;
  border-left:2px solid transparent!important;
  background:rgba(255,255,255,.024)!important;
  box-shadow:none!important;
  transform:none!important;
}
#sectionsList .section-list-item:hover,#sectionsList .section-list-item.active{
  border-color:rgba(var(--section-accent-rgb),.24)!important;
  border-left-color:var(--section-accent)!important;
  background:linear-gradient(90deg,rgba(var(--section-accent-rgb),.095),rgba(var(--section-accent-rgb),.025))!important;
  box-shadow:inset 2px 0 0 rgba(var(--section-accent-rgb),.48),0 7px 18px rgba(0,0,0,.10)!important;
  transform:translateX(1px)!important;
}
#sectionsList .section-list-item:hover .section-list-icon,#sectionsList .section-list-item.active .section-list-icon{
  color:var(--section-accent)!important;
  background:rgba(var(--section-accent-rgb),.10)!important;
  border-color:rgba(var(--section-accent-rgb),.19)!important;
  box-shadow:none!important;
}
#sectionsList .section-list-item:hover .section-list-num,#sectionsList .section-list-item.active .section-list-num{color:var(--section-accent)!important}

@media(max-width:900px){
  #rules article.rule{padding:18px 12px!important}
}

/* v15 — rule rows use the same restrained card depth as the rule-category navigation */
#rules article.rule{
  overflow:hidden!important;
  margin:7px 0!important;
  padding:20px 16px 20px 10px!important;
  border:1px solid rgba(255,255,255,.055)!important;
  border-left:3px solid transparent!important;
  border-radius:2px 8px 8px 2px!important;
  background:rgba(3,20,31,.22)!important;
  box-shadow:none!important;
  transform:none!important;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease!important;
}
#rules article.rule::before{
  opacity:0!important;
  background:linear-gradient(100deg,
    rgba(var(--section-accent-rgb),.115) 0%,
    rgba(var(--section-accent-rgb),.052) 48%,
    rgba(3,15,24,.08) 100%)!important;
  transition:opacity .18s ease!important;
}
#rules article.rule:hover,
#rules article.rule:focus-within{
  transform:translateX(1px)!important;
  border-color:rgba(var(--section-accent-rgb),.24)!important;
  border-left-color:rgba(var(--section-accent-rgb),.78)!important;
  background:linear-gradient(95deg,
    rgba(var(--section-accent-rgb),.105) 0%,
    rgba(var(--section-accent-rgb),.052) 52%,
    rgba(2,13,21,.13) 100%)!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.018),
    inset 2px 0 0 rgba(var(--section-accent-rgb),.34),
    0 8px 20px rgba(0,0,0,.11)!important;
}
#rules article.rule:hover::before,
#rules article.rule:focus-within::before{opacity:1!important}
#rules article.rule:hover .num,
#rules article.rule:focus-within .num{
  color:var(--section-accent)!important;
  background:rgba(var(--section-accent-rgb),.105)!important;
  border-color:rgba(var(--section-accent-rgb),.34)!important;
  box-shadow:none!important;
}
#rules article.rule:hover h3,
#rules article.rule:focus-within h3{
  color:#fff!important;
  text-shadow:none!important;
}
#rules article.rule:hover .tag,
#rules article.rule:focus-within .tag{box-shadow:none!important}

/* Match the section/category controls: visible, quiet, and without neon bloom. */
#nav.nav a:hover,
#nav.nav a.active:not(:hover),
#sectionsList .section-list-item:hover,
#sectionsList .section-list-item.active{
  box-shadow:inset 2px 0 0 rgba(var(--section-accent-rgb),.44),0 7px 18px rgba(0,0,0,.10)!important;
}
