:root{
  --font-title:"Trebuchet MS", Tahoma, Verdana, sans-serif;
  --font-ui:Tahoma, Verdana, Arial, sans-serif;
  --font-data:Verdana, Tahoma, Arial, sans-serif;
  --lime:#a1d951;
  --lime-soft:#c5f079;
  --blood:#8f0018;
  --blood-bright:#bd172c;
  --red:#bd172c;
  --gold:#f0c85a;
  --blue:#5ab7ff;
  --cream:#fff1dd;
  --text:#f4f1e8;
  --muted:#aeb8a5;
  --shell-accent:var(--lime);
  --shell-accent-soft:var(--lime-soft);
  --shell-accent-rgb:161,217,81;
  --shell-accent-2:#6ca93a;
}
*{box-sizing:border-box}
html{min-height:100%;scrollbar-gutter:stable}
body{
  margin:0;
  min-height:100vh;
  color:var(--text);
  font-family:var(--font-ui);
  background:
    radial-gradient(circle at 24% -20%, rgba(161,217,81,.22), transparent 38%),
    radial-gradient(circle at 78% 18%, rgba(65,7,10,.22), transparent 38%),
    linear-gradient(145deg,#061006,#091508 54%,#050706);
}
body.theme-nmrih,
body.nmrih-page{
  --shell-accent:#bd172c;
  --shell-accent-soft:#ff4056;
  --shell-accent-rgb:189,23,44;
  --shell-accent-2:#8f0018;
  background:
    radial-gradient(circle at 20% -18%, rgba(125,0,18,.16), transparent 32%),
    radial-gradient(circle at 78% 18%, rgba(78,13,13,.22), transparent 42%),
    repeating-linear-gradient(0deg, rgba(255,255,255,.016) 0 1px, transparent 1px 5px),
    linear-gradient(145deg,#080808 0%, #130607 52%, #070404 100%);
}
a{color:inherit}
.page{max-width:1110px;margin:0 auto;padding:32px 34px 74px}
.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:42px}
.brand{position:relative;padding-left:76px;min-height:92px}
.logo-slot{position:absolute;left:0;top:8px;width:58px;height:58px;border-radius:12px;border:1px solid rgba(var(--shell-accent-rgb),.22);background:radial-gradient(circle at 35% 30%, rgba(var(--shell-accent-rgb),.20), transparent 34%),linear-gradient(145deg, rgba(11,24,10,.80), rgba(3,5,3,.75));box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 12px 28px rgba(0,0,0,.30);opacity:.55}
.logo-slot::after{content:"logo";position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);text-align:center;color:rgba(230,230,220,.42);font:900 9px var(--font-ui);letter-spacing:.16em;text-transform:uppercase}
.brand h1{margin:0 0 8px;font-family:var(--font-title);font-size:clamp(52px,7.2vw,86px);letter-spacing:-.07em;line-height:.84;color:var(--shell-accent);text-shadow:0 3px 0 rgba(0,0,0,.58),0 0 30px rgba(var(--shell-accent-rgb),.30)}
.brand p{margin:0;color:#d0dcc6;text-transform:uppercase;letter-spacing:.18em;font:900 12px var(--font-ui)}
body.theme-nmrih .brand p,body.nmrih-page .brand p{color:#e5d7ca}
.top-actions{display:flex;gap:10px;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;margin-top:16px}
.top-action{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:7px 13px;border-radius:4px;border:1px solid rgba(var(--shell-accent-rgb),.34);background:linear-gradient(180deg, rgba(var(--shell-accent-rgb),.23), rgba(10,12,10,.62));color:#e9f3df;font:900 11px var(--font-ui);text-transform:uppercase;letter-spacing:.08em;text-decoration:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 24px rgba(0,0,0,.26);text-shadow:0 1px 0 rgba(0,0,0,.55)}
.top-action:hover{border-color:rgba(var(--shell-accent-rgb),.72);background:linear-gradient(180deg, rgba(var(--shell-accent-rgb),.34), rgba(15,18,14,.78));color:#fff}
.top-action.muted{color:#c9d3bf;border-color:rgba(var(--shell-accent-rgb),.34)}
.top-icon{width:36px;height:36px;display:inline-grid;place-items:center;border:1px solid rgba(var(--shell-accent-rgb),.34);border-radius:6px;background:linear-gradient(180deg, rgba(var(--shell-accent-rgb),.20), rgba(10,14,10,.62));box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 8px 20px rgba(0,0,0,.22);color:var(--shell-accent-soft);text-decoration:none;font-family:var(--font-ui);font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;transition:transform .14s ease,border-color .14s ease,background .14s ease,color .14s ease,box-shadow .14s ease}
.top-icon:hover,.top-icon:focus-visible{transform:translateY(-1px);border-color:rgba(var(--shell-accent-rgb),.78);background:linear-gradient(180deg, rgba(var(--shell-accent-rgb),.34), rgba(15,18,14,.86));color:#fff;box-shadow:0 0 20px rgba(var(--shell-accent-rgb),.16),inset 0 0 0 1px rgba(255,255,255,.07)}
.login-box{position:relative;display:flex;flex-direction:column;align-items:flex-end}.login-button{min-width:72px;text-align:center}.login-popover{position:absolute;top:calc(100% + 9px);right:0;width:190px;padding:11px 12px;border:1px solid rgba(var(--shell-accent-rgb),.34);border-radius:8px;background:linear-gradient(180deg, rgba(9,12,10,.96), rgba(7,8,8,.96));box-shadow:0 16px 34px rgba(0,0,0,.38),inset 0 0 0 1px rgba(255,255,255,.035);color:var(--text);font-family:var(--font-ui);font-size:12px;letter-spacing:.02em;line-height:1.35;opacity:0;transform:translateY(-4px);pointer-events:none;transition:opacity .14s ease,transform .14s ease;z-index:20}.login-popover strong{display:block;margin-bottom:4px;color:#fff;text-transform:uppercase;letter-spacing:.08em;font-size:11px}.login-popover span{color:var(--muted)}.login-box:hover .login-popover,.login-box:focus-within .login-popover{opacity:1;transform:translateY(0);pointer-events:auto}
.section-label{margin:0 0 9px 3px;color:#a9b99f;font:900 11px var(--font-ui);text-transform:uppercase;letter-spacing:.18em}
body.theme-nmrih .section-label,body.nmrih-page .section-label{color:#e1c9ba}
.drawer-toggle{position:fixed;top:50%;left:18px;transform:translateY(-50%);z-index:40;width:42px;height:42px;border:1px solid rgba(var(--shell-accent-rgb),.35);border-radius:10px;background:rgba(7,8,8,.78);color:var(--shell-accent-soft);font-family:var(--font-title);font-weight:900;letter-spacing:.06em;box-shadow:0 0 22px rgba(var(--shell-accent-rgb),.12);cursor:pointer}.drawer-toggle:hover{border-color:rgba(var(--shell-accent-rgb),.8);color:#fff5df}.drawer-open .drawer-toggle{transform:translateY(-50%)}
.side-drawer{position:fixed;inset:0 auto 0 0;width:min(292px, calc(100vw - 28px));z-index:50;transform:translateX(-104%);transition:transform .22s ease;border-right:1px solid rgba(var(--shell-accent-rgb),.16);background:radial-gradient(circle at 10% 0%, rgba(161,217,81,.13), transparent 28%),radial-gradient(circle at 92% 50%, rgba(143,0,24,.25), transparent 44%),linear-gradient(155deg, rgba(7,15,7,.985) 0%, rgba(9,11,8,.985) 42%, rgba(24,5,7,.985) 100%);box-shadow:18px 0 60px rgba(0,0,0,.48),inset -1px 0 0 rgba(255,255,255,.035);padding:18px 18px 22px;overflow:auto}.side-drawer.open{transform:translateX(0)}
.drawer-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;padding:0 0 13px;border-bottom:1px solid rgba(255,255,255,.08)}.drawer-head strong{color:#d9e6cd;font-family:var(--font-ui);font-size:11px;text-transform:uppercase;letter-spacing:.18em}.drawer-close{width:30px;height:30px;border-radius:4px;border:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.22);color:#aeb8a5;cursor:pointer;font:900 22px/24px var(--font-ui)}.drawer-close:hover{color:#fff5df;border-color:rgba(var(--shell-accent-rgb),.42)}
.drawer-nav{display:flex;flex-direction:column;gap:8px}.drawer-group{position:relative;display:flex;flex-direction:column;gap:1px;padding:0 0 11px;margin:0;border:0;background:transparent;box-shadow:none}.drawer-group + .drawer-group{margin-top:11px;padding-top:14px}.drawer-group + .drawer-group::before{content:"";position:absolute;top:0;left:8px;right:8px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent)}.drawer-nav a,.drawer-nav span.disabled{position:relative;display:flex;align-items:center;min-height:36px;padding:9px 10px 9px 18px;border-radius:0 4px 4px 0;color:#b8b8b4;text-decoration:none;font-family:var(--font-ui);font-size:13px;font-weight:900;letter-spacing:.055em;text-transform:none;overflow:hidden}.drawer-nav a::before,.drawer-nav span.disabled::before{content:"";position:absolute;left:0;top:7px;bottom:7px;width:4px;border-radius:4px;background:transparent;transition:background .15s ease,box-shadow .15s ease}.drawer-nav a::after,.drawer-nav span.disabled::after{content:"";position:absolute;inset:0;z-index:-1;opacity:0;background:linear-gradient(90deg,rgba(161,217,81,.24) 0%,rgba(161,217,81,.12) 42%,rgba(161,217,81,.035) 72%,rgba(161,217,81,0) 100%);transition:opacity .15s ease}.drawer-nav a:not(.drawer-main):hover,.drawer-nav .drawer-main:hover{background:transparent;color:#f2f6ea}.drawer-nav a:hover::after{opacity:1}.drawer-main{margin-bottom:5px;border:0;background:transparent;color:#f0f4e9;text-transform:uppercase!important;letter-spacing:.11em!important;font-size:12px!important}.drawer-home .drawer-main{color:#d7f8a0}.drawer-nmrih .drawer-main{color:#ffd8dc}.drawer-tf2 .drawer-main{color:#ffe28a}.drawer-future .drawer-main{color:#a8dcff}.drawer-home a:hover::before,.drawer-home .drawer-main::before{background:var(--lime);box-shadow:0 0 14px rgba(161,217,81,.36)}.drawer-nmrih a::after{background:linear-gradient(90deg,rgba(189,23,44,.30) 0%,rgba(189,23,44,.15) 42%,rgba(189,23,44,.045) 72%,rgba(189,23,44,0) 100%)}.drawer-nmrih a:hover::before,.drawer-nmrih .drawer-main::before{background:var(--blood-bright);box-shadow:0 0 14px rgba(189,23,44,.34)}.drawer-tf2 span::after,.drawer-tf2 a::after{background:linear-gradient(90deg,rgba(240,200,90,.24) 0%,rgba(240,200,90,.11) 42%,rgba(240,200,90,.035) 72%,rgba(240,200,90,0) 100%)}.drawer-tf2 span::before,.drawer-tf2 a:hover::before{background:var(--gold);box-shadow:0 0 14px rgba(240,200,90,.30)}.drawer-future span::after,.drawer-future a::after{background:linear-gradient(90deg,rgba(90,183,255,.24) 0%,rgba(90,183,255,.11) 42%,rgba(90,183,255,.035) 72%,rgba(90,183,255,0) 100%)}.drawer-future span::before,.drawer-future a:hover::before{background:var(--blue);box-shadow:0 0 14px rgba(90,183,255,.28)}.drawer-soon{opacity:.75}.drawer-soon:hover::after{content:"Coming soon";margin-left:auto;color:#e7d889;font-size:10px;letter-spacing:.08em}.drawer-community{margin:8px 0 0;padding:10px 0 0;border-top:1px dashed rgba(255,255,255,.08)}.drawer-community>span{display:block;padding:0 0 8px 2px;color:#8f9b88;font-family:var(--font-ui);font-size:10px;text-transform:uppercase;letter-spacing:.16em}.drawer-icon-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.drawer-icon-row .drawer-icon{justify-content:center;min-height:34px;padding:8px 9px;border-radius:4px;border:1px solid rgba(var(--shell-accent-rgb),.18);background:rgba(0,0,0,.18);font-size:11px;color:#c7d5bd}.drawer-icon-row .drawer-icon:hover{color:#f2f6ea;border-color:rgba(var(--shell-accent-rgb),.42)}.drawer-scrim{position:fixed;inset:0;z-index:45;background:rgba(0,0,0,.44)}
.drawer-nav a[href="bans.html"]{color:#b8b8b4;font-weight:800}.drawer-nav a[href="bans.html"]::before{background:transparent;box-shadow:none}.drawer-nav a[href="bans.html"]::after{opacity:0;background:repeating-linear-gradient(135deg,rgba(255,42,42,.30) 0px,rgba(255,42,42,.30) 8px,rgba(255,42,42,.08) 8px,rgba(255,42,42,.08) 17px),linear-gradient(90deg,rgba(255,42,42,.30) 0%,rgba(255,42,42,.14) 48%,rgba(255,42,42,0) 100%)}.drawer-nav a[href="bans.html"]:hover{color:#fff3f3}.drawer-nav a[href="bans.html"]:hover::before{background:#ff2a2a;box-shadow:0 0 16px rgba(255,42,42,.45)}.drawer-nav a[href="bans.html"]:hover::after{opacity:1}
@media(max-width:940px){.topbar{display:block}.top-actions{justify-content:flex-start;margin-top:16px}.brand{padding-left:0;padding-top:72px}.logo-slot{top:0}}
@media(max-width:760px){.drawer-toggle{top:auto;bottom:18px;left:12px;transform:none}.drawer-open .drawer-toggle{transform:none}.top-actions{align-items:center}.top-icon{width:34px;height:34px}.login-popover{right:50%;transform:translate(50%,-4px)}.login-box:hover .login-popover,.login-box:focus-within .login-popover{transform:translate(50%,0)}}
@media(max-width:560px){.page{padding:28px 16px 58px}.brand h1{font-size:46px}.top-action{padding:7px 10px}}


/* CitriLime real shared shell v2: header/drawer live here, not copied per page. */
.citrilime-shell{
  max-width:1110px;
  margin:0 auto;
  padding:32px 34px 42px;
}
body.has-shell .page{padding-top:0;}
body.has-shell.nmrih-page .page{padding-top:0;}
.citrilime-shell .topbar{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:28px;
  margin:0;
}
.citrilime-shell .brand{position:relative;padding-left:76px;min-height:92px;}
.citrilime-shell .logo-slot{position:absolute;left:0;top:8px;}
.citrilime-shell .top-actions{display:flex;gap:10px;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;margin-top:16px;}
.theme-nmrih .drawer-toggle,
.nmrih-page .drawer-toggle{
  background:
    linear-gradient(135deg, rgba(190,24,45,.95), rgba(82,7,16,.98)),
    rgba(16,7,9,.98);
  border-color:rgba(255,100,118,.72);
  color:#ffd5da;
  box-shadow:
    0 0 0 1px rgba(255,150,160,.12) inset,
    0 12px 28px rgba(0,0,0,.44),
    0 0 24px rgba(190,24,45,.28);
}
.theme-nmrih .drawer-toggle:hover,
.nmrih-page .drawer-toggle:hover{
  background:
    linear-gradient(135deg, rgba(220,38,58,1), rgba(110,12,24,1)),
    rgba(20,7,10,1);
  border-color:rgba(255,145,158,.95);
  color:#fff;
  box-shadow:
    0 0 0 1px rgba(255,180,190,.18) inset,
    0 14px 34px rgba(0,0,0,.50),
    0 0 34px rgba(220,38,58,.42);
}
.drawer-current > .drawer-main,
.drawer-current > a.drawer-main{
  filter:brightness(1.08);
}
@media(max-width:940px){.citrilime-shell .topbar{display:block}.citrilime-shell .top-actions{justify-content:flex-start;margin-top:16px}.citrilime-shell .brand{padding-left:0;padding-top:72px}.citrilime-shell .logo-slot{top:0}}
@media(max-width:560px){.citrilime-shell{padding:28px 16px 34px}}
