:root {
  --bg: #030205;
  --bg-soft: #07040b;
  --panel: rgba(10, 7, 14, .95);
  --panel-2: #100a18;
  --line: rgba(157, 91, 255, .15);
  --line-strong: rgba(172, 105, 255, .44);
  --text: #fbf9ff;
  --muted: #a29baa;
  --muted-2: #746b7c;
  --purple: #a55fff;
  --purple-2: #6730bd;
  --purple-soft: rgba(155, 77, 255, .14);
  --green: #b77aff;
  --red: #ff7188;
  --radius: 18px;
  --shadow: 0 28px 100px rgba(0, 0, 0, .58);
}

* { box-sizing: border-box; }
html { color-scheme: dark; scroll-behavior: smooth; }
body {
  margin: 0;
  min-height: 100vh;
  color: var(--text);
  background:
    radial-gradient(circle at 85% -10%, rgba(126, 51, 212, .13), transparent 31rem),
    radial-gradient(circle at 8% 90%, rgba(91, 32, 161, .08), transparent 35rem),
    var(--bg);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body::selection { background: var(--purple); color: #fff; }
* {
  scrollbar-color: rgba(156, 84, 255, .6) #060309;
  scrollbar-width: thin;
}
*::-webkit-scrollbar { width: 9px; height: 9px; }
*::-webkit-scrollbar-track { background: #060309; }
*::-webkit-scrollbar-thumb { border: 2px solid #060309; border-radius: 20px; background: linear-gradient(#bc82ff, #6e32c5); }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
img { display: block; max-width: 100%; image-rendering: auto; }
p, h1, h2, h3 { margin-top: 0; }
.icon { width: 20px; height: 20px; flex: none; }
.noise-layer {
  position: fixed;
  inset: 0;
  z-index: -1;
  opacity: .19;
  pointer-events: none;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.12'/%3E%3C/svg%3E");
}
.ambient {
  position: fixed;
  z-index: -2;
  width: 660px;
  height: 660px;
  border-radius: 50%;
  filter: blur(140px);
  background: rgba(121, 48, 217, .17);
  pointer-events: none;
}
.ambient-one { top: -280px; right: -180px; }
.eyebrow {
  display: flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 13px;
  color: #b99aef;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.status-orb {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #50465b;
  box-shadow: 0 0 0 4px rgba(156,84,255,.035);
}
.status-live {
  background: var(--green);
  box-shadow: 0 0 0 4px rgba(166,95,255,.1), 0 0 16px rgba(166,95,255,.72);
}
.mancix-wordmark {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .17em;
  color: #fff;
  font-size: 28px;
  font-weight: 850;
  line-height: .95;
  letter-spacing: -.055em;
  text-transform: none;
  white-space: nowrap;
}
.mancix-logo-mark {
  width: 1.34em;
  height: 1.34em;
  margin-right: .04em;
  object-fit: contain;
  flex: none;
  filter: drop-shadow(0 0 12px rgba(157, 66, 255, .32));
}
.mancix-wordmark::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -10px;
  left: 0;
  height: 1px;
  opacity: .72;
  background: linear-gradient(90deg, transparent, rgba(181,116,255,.88), transparent);
  box-shadow: 0 0 12px rgba(158,83,255,.45);
}
.wordmark-name {
  color: #fff;
  text-shadow: 0 2px 22px rgba(255,255,255,.06);
}
.plus-shift {
  display: inline-block;
  color: #fff;
  font-weight: 850;
  animation: plus-shift 4s ease-in-out infinite;
  text-shadow: 0 0 15px rgba(162,87,255,.5);
}
.wordmark-navigation { font-size: 29px; }
.wordmark-mobile { font-size: 23px; }
.wordmark-strip { gap: .13em; font-size: 13px; letter-spacing: -.025em; }
.wordmark-strip .mancix-logo-mark { width: 1.45em; height: 1.45em; }
.wordmark-strip::after { display: none; }
.wordmark-login { font-size: clamp(38px, 5vw, 54px); }
.wordmark-setup { min-width: max-content; font-size: 31px; }
.wordmark-error { justify-content: center; margin-bottom: 32px; font-size: 39px; }
@keyframes plus-shift {
  0%, 100% { color: #fff; text-shadow: 0 0 7px rgba(255,255,255,.24), 0 0 18px rgba(150,76,255,.2); }
  38% { color: #dbc4ff; text-shadow: 0 0 11px rgba(208,172,255,.6), 0 0 25px rgba(150,76,255,.38); }
  70% { color: #9d52ff; text-shadow: 0 0 10px rgba(158,82,255,.85), 0 0 28px rgba(126,52,231,.62); }
}

.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 46px;
  padding: 0 19px;
  border: 1px solid transparent;
  border-radius: 12px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 750;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.button:hover { transform: translateY(-2px); }
.button-primary {
  color: #fff;
  border-color: rgba(202,159,255,.22);
  background: linear-gradient(135deg, #ae68ff, #7133ca 72%, #542091);
  box-shadow: 0 13px 32px rgba(105,42,196,.38), inset 0 1px rgba(255,255,255,.2);
}
.button-primary:hover { box-shadow: 0 17px 44px rgba(116,47,211,.52), inset 0 1px rgba(255,255,255,.22); }
.button-ghost { border-color: var(--line); background: rgba(91,37,151,.045); }
.button-ghost:hover { border-color: var(--line-strong); background: var(--purple-soft); }
.button-wide { width: 100%; }
.button-small { min-height: 34px; padding: 0 12px; font-size: 11px; }
.button-danger { color: #ffd9df; border-color: rgba(255,113,136,.28); background: rgba(255,113,136,.09); }
.button-disabled { color: #77727f; border-color: var(--line); background: rgba(255,255,255,.025); cursor: not-allowed; box-shadow: none; }
.button-disabled:hover { transform: none; }
.icon-button {
  display: inline-grid;
  place-items: center;
  width: 39px;
  height: 39px;
  padding: 0;
  border: 1px solid var(--line);
  border-radius: 11px;
  cursor: pointer;
  background: rgba(104,43,174,.055);
  transition: .18s ease;
}
.icon-button:hover { border-color: var(--line-strong); color: #c7a7ff; background: var(--purple-soft); }
.icon-button.danger { color: #ff9cac; }

/* Login */
.login-page {
  display: grid;
  place-items: center;
  overflow-x: hidden;
  background:
    radial-gradient(circle at 14% 60%, rgba(127,50,229,.17), transparent 34%),
    radial-gradient(circle at 87% 15%, rgba(96,35,181,.16), transparent 30%),
    #030205;
}
.login-grid {
  position: fixed;
  inset: 0;
  z-index: -3;
  opacity: .28;
  background-image: linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px), linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);
  background-size: 62px 62px;
  mask-image: linear-gradient(to bottom, transparent, #000 18%, #000 82%, transparent);
}
.login-glow {
  position: fixed;
  z-index: -2;
  width: 460px;
  height: 460px;
  border-radius: 50%;
  filter: blur(130px);
  background: rgba(123, 48, 224, .2);
}
.login-glow-left { left: -280px; bottom: -100px; }
.login-glow-right { top: -260px; right: -200px; }
.login-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(380px, .8fr);
  gap: 100px;
  align-items: center;
  width: min(1160px, calc(100% - 60px));
  min-height: 100vh;
  padding: 70px 0;
}
.login-brand { display: flex; align-items: flex-start; flex-direction: column; gap: 17px; margin-bottom: 88px; }
.login-brand small { color: #887a92; font-size: 9px; font-weight: 750; letter-spacing: .31em; }
.login-message h1 {
  margin-bottom: 26px;
  font-size: clamp(44px, 5vw, 73px);
  line-height: .99;
  letter-spacing: -.052em;
}
.login-message h1 em { color: #b686ff; font-style: normal; font-weight: 350; }
.login-message > p:last-child { max-width: 580px; color: #aaa6b5; font-size: 17px; }
.login-features { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 58px; }
.login-features article {
  min-height: 132px;
  padding: 19px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(19,11,29,.72), rgba(6,4,9,.94));
}
.login-features article > span { color: #9360e9; font: 800 9px/1 monospace; letter-spacing: .18em; }
.login-features p { display: flex; flex-direction: column; gap: 7px; margin: 25px 0 0; }
.login-features strong { font-size: 13px; }
.login-features small { color: var(--muted-2); font-size: 11px; line-height: 1.5; }
.login-card-wrap { width: 100%; max-width: 455px; justify-self: end; }
.login-card {
  position: relative;
  padding: 38px;
  border: 1px solid rgba(171,101,255,.22);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(18,10,27,.98), rgba(5,4,8,.99));
  box-shadow: var(--shadow), inset 0 1px rgba(221,190,255,.055);
}
.login-card::before {
  content: "";
  position: absolute;
  inset: -1px auto -1px -1px;
  width: 3px;
  border-radius: 24px 0 0 24px;
  background: linear-gradient(transparent, var(--purple), transparent);
}
.login-card-head { display: flex; align-items: center; gap: 15px; }
.login-lock {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border: 1px solid var(--line-strong);
  border-radius: 14px;
  color: #bd91ff;
  background: var(--purple-soft);
}
.login-card-head .eyebrow { margin-bottom: 4px; font-size: 9px; }
.login-card h2 { margin-bottom: 0; font-size: 24px; letter-spacing: -.03em; }
.login-description { margin: 25px 0 20px; color: var(--muted); font-size: 13px; }
.command-box {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding: 15px 100px 15px 17px;
  border: 1px dashed rgba(167,112,255,.3);
  border-radius: 13px;
  background: rgba(155,96,255,.06);
}
.command-box span { color: var(--muted-2); font-size: 9px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.command-box strong { font: 700 15px/1.3 ui-monospace, SFMono-Regular, Menlo, monospace; color: #cfb3ff; }
.command-box button {
  position: absolute;
  top: 50%;
  right: 12px;
  padding: 7px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: rgba(255,255,255,.04);
  cursor: pointer;
  font-size: 10px;
}
.login-form { display: grid; gap: 13px; margin-top: 24px; }
.login-form label, .admin-form label > span { color: #c7c4cf; font-size: 11px; font-weight: 700; }
input, textarea, select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 11px;
  outline: none;
  color: var(--text);
  background: rgba(13,7,19,.94);
  transition: border-color .18s, box-shadow .18s;
}
input, select { height: 47px; padding: 0 14px; }
textarea { min-height: 100px; padding: 13px 14px; resize: vertical; }
input:focus, textarea:focus, select:focus { border-color: rgba(164,103,255,.58); box-shadow: 0 0 0 4px rgba(155,96,255,.09); }
.code-input {
  height: 66px;
  text-align: center;
  color: #d6bfff;
  font: 750 24px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.login-security { display: flex; gap: 12px; margin-top: 24px; color: #716e7d; }
.login-security .icon { width: 17px; margin-top: 3px; }
.login-security p { display: flex; flex-direction: column; gap: 3px; margin: 0; }
.login-security strong { color: #918e9c; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }
.login-security span { font-size: 10px; }
.login-requirement { margin: 20px 0 0; text-align: center; color: #5d5a67; font-size: 9px; font-weight: 750; letter-spacing: .13em; }
.alert { margin: 18px 0 -6px; padding: 12px 14px; border-radius: 10px; font-size: 12px; }
.alert-error { color: #ffc3cd; border: 1px solid rgba(255,113,136,.25); background: rgba(255,113,136,.08); }
.alert-success { color: #dec8ff; border: 1px solid rgba(166,95,255,.28); background: rgba(131,61,225,.09); }

/* App shell */
.sidebar {
  position: fixed;
  z-index: 20;
  inset: 0 auto 0 0;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  width: 255px;
  padding: 27px 20px 22px;
  border-right: 1px solid rgba(159, 86, 255, .17);
  background:
    linear-gradient(180deg, rgba(15,8,22,.98), rgba(4,3,7,.99) 34%),
    #050307;
  box-shadow: 18px 0 60px rgba(0,0,0,.24);
  backdrop-filter: blur(20px);
}
.sidebar-brand { display: flex; align-items: flex-start; flex-direction: column; gap: 15px; padding: 7px; }
.sidebar-brand small { color: #716679; font-size: 7px; font-weight: 800; letter-spacing: .24em; }
.access-pill {
  display: grid;
  grid-template-columns: 8px 1fr auto;
  align-items: center;
  gap: 9px;
  margin: 30px 5px 27px;
  padding: 10px 11px;
  border: 1px solid rgba(169,98,255,.2);
  border-radius: 10px;
  background: linear-gradient(90deg, rgba(147,72,244,.1), rgba(79,27,137,.035));
  color: var(--muted);
  font-size: 9px;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.access-pill strong { color: var(--green); font-size: 8px; letter-spacing: .1em; }
.sidebar-nav { display: grid; gap: 5px; }
.nav-label { margin: 0 12px 8px; color: #55525f; font-size: 9px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase; }
.sidebar-nav a {
  display: flex;
  align-items: center;
  gap: 13px;
  min-height: 45px;
  padding: 0 12px;
  border: 1px solid transparent;
  border-radius: 11px;
  color: #8c8998;
  font-size: 12px;
  font-weight: 650;
}
.sidebar-nav a .icon { width: 18px; }
.sidebar-nav a em { margin-left: auto; color: #b793ef; font: 800 7px/1 sans-serif; letter-spacing: .1em; }
.sidebar-nav a:hover, .sidebar-nav a.active {
  border-color: rgba(165,92,255,.22);
  color: #eee9f8;
  background: linear-gradient(90deg, rgba(155,74,255,.18), rgba(87,31,151,.035));
}
.sidebar-nav a.active { box-shadow: inset 2px 0 #b66fff, 0 9px 30px rgba(89,29,162,.08); }
.sidebar-footer { margin-top: auto; }
.member-card {
  display: grid;
  grid-template-columns: 36px 1fr 38px;
  align-items: center;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 13px;
  background: linear-gradient(145deg, rgba(17,10,24,.94), rgba(6,4,9,.96));
}
.member-card img, .member-list-item img, .table-member img { border-radius: 8px; background: #160c20; }
.member-card div { display: flex; flex-direction: column; min-width: 0; }
.member-card strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; }
.member-card span { color: #a279e3; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.member-card form { margin: 0; }
.sidebar-level { display: grid; gap: 7px; margin: 9px 1px 0; padding: 9px 10px; border: 1px solid var(--line); border-radius: 10px; background: rgba(133,58,222,.055); }
.sidebar-level > span { display: flex; align-items: center; justify-content: space-between; }
.sidebar-level strong { color: #b98bff; font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.sidebar-level em { color: var(--muted-2); font-size: 7px; font-style: normal; }
.sidebar-level > i { overflow: hidden; height: 3px; border-radius: 5px; background: rgba(255,255,255,.055); }
.sidebar-level > i b { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #6f35c8, #bd7dff); box-shadow: 0 0 10px rgba(171,95,255,.55); }
.sidebar-version { margin: 17px 0 0; text-align: center; color: #484651; font-size: 7px; font-weight: 750; letter-spacing: .12em; }
.portal-main { min-height: 100vh; margin-left: 255px; padding: 0 48px 36px; }
.top-strip {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 57px;
  margin: 0 -48px 0;
  padding: 0 48px;
  border-bottom: 1px solid rgba(157,86,255,.13);
  background: rgba(4,2,7,.52);
  color: #777482;
  font-size: 9px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.top-strip div { display: flex; align-items: center; gap: 9px; }
.top-strip strong { color: var(--green); font-size: 8px; }
.top-strip p { margin: 0; }
.mobile-header, .mobile-bottom-nav { display: none; }
.toast {
  position: fixed;
  z-index: 60;
  top: 21px;
  right: 24px;
  display: grid;
  grid-template-columns: 25px 1fr 24px;
  align-items: center;
  gap: 10px;
  width: min(390px, calc(100% - 32px));
  padding: 13px 14px;
  border: 1px solid rgba(169,98,255,.28);
  border-radius: 13px;
  background: rgba(13,7,19,.97);
  box-shadow: var(--shadow);
  transition: opacity .25s, transform .25s;
}
.toast p { margin: 0; font-size: 12px; }
.toast .icon { color: var(--green); }
.toast button { border: 0; color: var(--muted); background: none; cursor: pointer; font-size: 20px; }
.toast-error { border-color: rgba(255,113,136,.3); background: rgba(24,15,18,.96); }
.toast-error .icon { color: var(--red); }
.toast.hidden { opacity: 0; transform: translateY(-10px); pointer-events: none; }
.portal-footer {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  margin-top: 64px;
  padding-top: 22px;
  border-top: 1px solid var(--line);
  color: #5f5c69;
  font-size: 9px;
  letter-spacing: .06em;
}
.portal-footer p { margin: 0; }

/* Dashboard */
.welcome-hero {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 40px;
  overflow: hidden;
  min-height: 390px;
  margin-top: 34px;
  padding: 58px 66px;
  border: 1px solid rgba(173,103,255,.23);
  border-radius: 24px;
  background:
    radial-gradient(circle at 82% 40%, rgba(145,64,244,.27), transparent 30%),
    radial-gradient(circle at 12% 100%, rgba(93,35,157,.11), transparent 34%),
    linear-gradient(145deg, #0e0815, #060409 58%, #0c0612);
  box-shadow: var(--shadow);
}
.welcome-hero::after { content:""; position:absolute; inset:0; border-radius:inherit; box-shadow:inset 0 1px rgba(221,190,255,.07), inset 0 0 80px rgba(102,35,179,.035); pointer-events:none; }
.hero-grid-lines {
  position: absolute;
  inset: 0;
  opacity: .19;
  background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
  background-size: 50px 50px;
  mask-image: linear-gradient(90deg, #000, transparent 75%);
}
.hero-copy { position: relative; z-index: 1; align-self: center; }
.hero-copy h1, .page-hero h1 {
  margin-bottom: 20px;
  font-size: clamp(39px, 4vw, 58px);
  line-height: 1.02;
  letter-spacing: -.048em;
}
.hero-copy h1 em { color: #b484ff; font-style: normal; font-weight: 400; }
.hero-copy > p:not(.eyebrow) { max-width: 620px; color: #a6a2b0; font-size: 14px; }
.hero-actions { display: flex; gap: 10px; margin-top: 30px; }
.hero-member-visual { position: relative; z-index: 1; display: grid; place-content: center; text-align: center; }
.member-halo { position: absolute; inset: 9% 0 auto 50%; width: 230px; height: 230px; border: 1px solid rgba(172,123,255,.17); border-radius: 50%; transform: translateX(-50%); box-shadow: 0 0 80px rgba(137,75,232,.2), inset 0 0 70px rgba(128,65,223,.08); }
.member-avatar-frame { position: relative; width: 128px; margin: 0 auto; padding: 7px; border: 1px solid rgba(183,139,255,.44); border-radius: 19px; background: rgba(5,3,8,.78); box-shadow: 0 20px 50px rgba(0,0,0,.55), 0 0 40px rgba(116,47,203,.12); }
.member-avatar-frame img { width: 112px; border-radius: 13px; }
.verified-mark { position: absolute; right: -11px; bottom: -10px; display: grid; place-items: center; width: 35px; height: 35px; border: 4px solid #121019; border-radius: 50%; color: #fff; background: var(--purple); }
.verified-mark .icon { width: 16px; }
.member-identity { display: flex; flex-direction: column; margin-top: 23px; }
.member-identity strong { font-size: 17px; }
.member-identity span { color: #a881e9; font-size: 9px; font-weight: 800; letter-spacing: .15em; }
.metric-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-top: 15px; }
.metric-row article {
  display: grid;
  grid-template-columns: 47px auto 1fr;
  align-items: center;
  gap: 13px;
  min-height: 88px;
  padding: 18px 20px;
  border: 1px solid var(--line);
  border-radius: 15px;
  background: linear-gradient(145deg, rgba(14,8,20,.96), rgba(5,3,8,.97));
}
.metric-icon { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; color: #b58aff; background: var(--purple-soft); }
.metric-row article div { display: flex; align-items: baseline; gap: 9px; }
.metric-row strong { font-size: 24px; line-height: 1; }
.metric-row p { margin: 0; color: #d4d1dc; font-size: 11px; }
.metric-row small { justify-self: end; color: var(--muted-2); font-size: 9px; }
.member-level-strip { display: grid; grid-template-columns: 65px minmax(0, 1fr) auto; align-items: center; gap: 18px; min-height: 94px; margin-top: 15px; padding: 15px 20px; border: 1px solid rgba(166,96,255,.2); border-radius: 15px; background: linear-gradient(105deg, rgba(139,61,229,.12), rgba(12,7,17,.96) 42%, rgba(6,4,9,.98)); }
.level-mini-badge { display: grid; place-items: center; width: 58px; height: 58px; border: 1px solid rgba(189,129,255,.35); border-radius: 16px; background: radial-gradient(circle at top, rgba(177,91,255,.27), transparent 65%), #0d0713; box-shadow: 0 12px 30px rgba(75,22,142,.23); }
.level-mini-badge span { color: #956ccd; font-size: 7px; font-weight: 850; letter-spacing: .14em; }
.level-mini-badge strong { font-size: 25px; line-height: 1; }
.level-strip-copy { min-width: 0; }
.level-strip-copy p { display: flex; align-items: center; justify-content: space-between; margin: 0 0 8px; }
.level-strip-copy p strong { font-size: 11px; }
.level-strip-copy p span, .level-strip-copy small { color: var(--muted-2); font-size: 8px; }
.level-strip-copy small { display: block; margin-top: 6px; }
.level-progress { overflow: hidden; height: 5px; border-radius: 8px; background: rgba(255,255,255,.055); }
.level-progress i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #6e33c7, #b76fff, #d4acff); box-shadow: 0 0 16px rgba(173,99,255,.54); }
.member-level-strip > a { display: inline-flex; align-items: center; gap: 7px; color: #b68be9; font-size: 9px; font-weight: 750; }
.member-level-strip > a .icon { width: 14px; }
.section-heading { display: flex; align-items: end; justify-content: space-between; margin: 65px 0 22px; }
.section-heading h2 { margin: 0; font-size: 26px; letter-spacing: -.035em; }
.section-heading .eyebrow { margin-bottom: 6px; }
.section-heading > a { display: flex; align-items: center; gap: 8px; color: #a98bdb; font-size: 11px; font-weight: 700; }
.section-heading > a .icon { width: 15px; }
.section-heading.compact { margin-top: 0; }
.news-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.news-grid-dashboard .news-card:first-child { grid-column: span 1; }
.news-card {
  position: relative;
  overflow: hidden;
  min-height: 365px;
  border: 1px solid var(--line);
  border-radius: 17px;
  background: linear-gradient(155deg, rgba(13,8,19,.97), rgba(5,3,8,.98));
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}
.news-card:hover { transform: translateY(-4px); border-color: rgba(158,104,245,.33); box-shadow: 0 22px 50px rgba(0,0,0,.25); }
.news-card > a { position: absolute; z-index: 3; inset: 0; }
.news-card-visual {
  position: relative;
  height: 138px;
  overflow: hidden;
  background:
    radial-gradient(circle at 20% 10%, rgba(173,92,255,.22), transparent 43%),
    linear-gradient(135deg, rgba(112,44,206,.18), transparent 58%),
    repeating-linear-gradient(135deg, transparent 0 10px, rgba(255,255,255,.013) 10px 11px),
    #0c0712;
}
.visual-watermark { position: absolute; right: 12px; bottom: -37px; color: rgba(255,255,255,.038); font-size: 112px; font-weight: 950; letter-spacing: -.1em; }
.visual-watermark .plus-shift { opacity: .3; }
.news-category, .featured-label, .status-label {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px;
  border: 1px solid rgba(172,124,255,.25);
  border-radius: 7px;
  color: #c09afd;
  background: rgba(10,9,14,.65);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.news-card-visual .news-category { position: absolute; top: 14px; left: 14px; }
.featured-label { position: absolute; top: 14px; right: 14px; color: #e7d5ff; }
.featured-label .icon { width: 11px; height: 11px; }
.news-card-body { padding: 21px; }
.news-meta { display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); font-size: 8px; text-transform: uppercase; }
.news-card-body h3 { margin: 18px 0 10px; font-size: 18px; line-height: 1.25; letter-spacing: -.02em; }
.news-card-body > p { overflow: hidden; min-height: 48px; color: var(--muted); font-size: 11px; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
.text-link { display: flex; align-items: center; gap: 7px; margin-top: 18px; color: #ae88e8; font-size: 10px; font-weight: 750; }
.text-link .icon { width: 14px; }
.dashboard-split { display: grid; grid-template-columns: 1.12fr .88fr; gap: 18px; margin-top: 66px; }
.poll-preview, .member-list-card, .empty-card {
  border: 1px solid var(--line);
  border-radius: 17px;
  background: linear-gradient(145deg, rgba(13,8,19,.97), rgba(5,3,8,.98));
}
.poll-preview { padding: 25px; }
.poll-preview-top, .poll-list-meta { display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); font-size: 9px; }
.poll-live, .poll-closed { display: inline-flex; align-items: center; gap: 8px; color: #bd88ff; font-size: 8px; font-weight: 800; letter-spacing: .1em; }
.poll-closed { color: var(--muted); }
.poll-preview h3 { margin: 23px 0 8px; font-size: 20px; }
.poll-preview > p { color: var(--muted); font-size: 11px; }
.poll-preview-options { display: flex; flex-wrap: wrap; gap: 7px; margin: 20px 0; }
.poll-preview-options span { padding: 7px 10px; border: 1px solid var(--line); border-radius: 8px; color: #8f8b99; font-size: 9px; }
.poll-preview-options span.selected { border-color: var(--line-strong); color: #c5a7f7; background: var(--purple-soft); }
.member-list-card { padding: 8px 17px; }
.member-list-item { display: grid; grid-template-columns: 37px 1fr auto; align-items: center; gap: 11px; padding: 12px 2px; border-bottom: 1px solid var(--line); }
.member-list-item:last-child { border-bottom: 0; }
.member-list-item img { width: 37px; }
.member-list-item div { display: flex; flex-direction: column; }
.member-list-item strong { font-size: 11px; }
.member-list-item span { color: #9d75df; font-size: 8px; font-weight: 800; }
.member-list-item small { color: var(--muted-2); font-size: 8px; }
.empty-card { display: grid; place-items: center; min-height: 210px; padding: 30px; text-align: center; }
.empty-card > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 13px; color: #ac80f5; background: var(--purple-soft); }
.empty-card h3 { margin: 15px 0 5px; }
.empty-card p { color: var(--muted); font-size: 11px; }

/* Content pages */
.page-hero {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 30px;
  padding: 68px 0 35px;
  border-bottom: 1px solid var(--line);
}
.page-hero h1 { margin-bottom: 10px; }
.page-hero > div > p:last-child { max-width: 650px; margin: 0; color: var(--muted); font-size: 13px; }
.filter-bar { display: flex; justify-content: space-between; align-items: center; margin: 23px 0; color: var(--muted-2); font-size: 9px; text-transform: uppercase; letter-spacing: .08em; }
.filter-bar p { display: flex; align-items: center; gap: 8px; margin: 0; }
.article-detail, .poll-detail { width: min(920px, 100%); margin: 0 auto; padding-top: 54px; }
.back-link { display: inline-flex; margin-bottom: 39px; color: #8f8b99; font-size: 11px; }
.back-link:hover { color: #c5a3ff; }
.article-badges { display: flex; gap: 8px; }
.article-detail h1 { max-width: 820px; margin: 22px 0 18px; font-size: clamp(38px, 5vw, 62px); line-height: 1.04; letter-spacing: -.05em; }
.article-lead { max-width: 760px; color: #aaa6b5; font-size: 17px; }
.article-info { display: flex; gap: 24px; margin-top: 27px; color: var(--muted-2); font-size: 9px; text-transform: uppercase; }
.article-info span { display: flex; align-items: center; gap: 7px; }
.article-info .icon { width: 15px; }
.article-visual { position: relative; display: grid; place-items: center; overflow: hidden; height: 285px; margin: 43px 0; border: 1px solid var(--line); border-radius: 19px; background: radial-gradient(circle, rgba(151,89,244,.22), transparent 45%), #121119; }
.article-visual::before { content:""; position:absolute; inset:0; opacity:.25; background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px); background-size:38px 38px; }
.article-visual > span { z-index: 1; color: rgba(255,255,255,.12); font-size: 120px; font-weight: 900; letter-spacing: -.12em; }
.article-visual .plus-shift { opacity: .58; }
.article-visual p { position: absolute; z-index: 2; bottom: 19px; margin: 0; color: #8065a9; font-size: 8px; font-weight: 800; letter-spacing: .2em; }
.article-content { color: #bbb7c6; font-size: 15px; line-height: 1.9; }
.transparency-note { display: flex; align-items: center; gap: 14px; margin: 26px 0; padding: 15px 18px; border: 1px solid rgba(155,96,255,.18); border-radius: 13px; background: var(--purple-soft); }
.transparency-note > .icon { color: #b689ff; }
.transparency-note strong { font-size: 11px; }
.transparency-note p { margin: 2px 0 0; color: var(--muted); font-size: 10px; }
.poll-list { display: grid; gap: 13px; }
.poll-list-card { position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: linear-gradient(145deg, rgba(13,8,19,.97), rgba(5,3,8,.98)); }
.poll-list-accent { position: absolute; inset: 0 auto 0 0; width: 3px; background: linear-gradient(transparent, var(--purple), transparent); }
.poll-list-content { padding: 25px 28px; }
.poll-list-content h2 { margin: 18px 0 8px; font-size: 21px; }
.poll-list-content > p { color: var(--muted); font-size: 11px; }
.poll-card-footer { display: flex; align-items: center; gap: 13px; margin-top: 19px; }
.poll-card-footer .button { margin-left: auto; }
.voter-stack { display: flex; padding-left: 6px; }
.voter-stack img { width: 28px; height: 28px; margin-left: -6px; border: 2px solid #14131a; border-radius: 7px; }
.your-vote { display: inline-flex; align-items: center; gap: 6px; color: #c796ff; font-size: 9px; font-weight: 750; }
.your-vote .icon { width: 14px; }

/* Poll detail */
.poll-detail-head { display: grid; grid-template-columns: 1fr 130px; gap: 30px; padding-bottom: 37px; border-bottom: 1px solid var(--line); }
.poll-detail h1 { margin: 20px 0 13px; font-size: clamp(35px, 5vw, 57px); line-height: 1.04; letter-spacing: -.05em; }
.poll-detail-head p { max-width: 680px; color: var(--muted); font-size: 14px; }
.vote-total { display: grid; place-content: center; min-height: 125px; border: 1px solid var(--line); border-radius: 18px; text-align: center; background: linear-gradient(145deg, rgba(15,8,22,.97), rgba(5,3,8,.98)); }
.vote-total strong { font-size: 37px; line-height: 1; }
.vote-total span { margin-top: 8px; color: #9d78dc; font-size: 8px; font-weight: 800; letter-spacing: .16em; }
.vote-form { margin-top: 25px; padding: 27px; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg, rgba(14,8,20,.97), rgba(5,3,8,.98)); }
.form-kicker { color: #a7a2b0; font-size: 10px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.vote-options { display: grid; gap: 9px; margin: 17px 0 20px; }
.vote-options label { position: relative; display: flex; align-items: center; gap: 13px; min-height: 56px; padding: 0 16px; border: 1px solid var(--line); border-radius: 12px; cursor: pointer; background: rgba(18,9,27,.62); }
.vote-options label:hover { border-color: var(--line-strong); }
.vote-options input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.radio-indicator { width: 17px; height: 17px; border: 1px solid #5e5a69; border-radius: 50%; box-shadow: inset 0 0 0 4px #121219; background: #121219; }
.vote-options input:checked + .radio-indicator { border-color: #b988ff; background: #9b60ff; }
.vote-options label:has(input:checked) { border-color: rgba(160,99,255,.46); background: var(--purple-soft); }
.vote-options strong { font-size: 12px; }
.vote-options em { margin-left: auto; color: #b68af7; font-size: 7px; font-style: normal; font-weight: 800; letter-spacing: .12em; }
.results-heading { display: flex; justify-content: space-between; align-items: end; margin: 55px 0 20px; }
.results-heading h2 { margin: 0; font-size: 27px; }
.results-heading span { color: var(--muted-2); font-size: 9px; }
.result-list { display: grid; gap: 12px; }
.result-option { padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: linear-gradient(145deg, rgba(13,8,19,.97), rgba(5,3,8,.98)); }
.result-option.your-result { border-color: rgba(159,99,255,.3); }
.result-top { display: flex; justify-content: space-between; gap: 20px; }
.result-top strong { font-size: 13px; }
.result-top span { color: #a39fab; font-size: 10px; }
.result-bar { overflow: hidden; height: 5px; margin: 14px 0 17px; border-radius: 5px; background: rgba(255,255,255,.05); }
.result-bar span { display: block; width: 0; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #7541d8, #b078ff); box-shadow: 0 0 15px rgba(155,96,255,.45); transition: width .8s cubic-bezier(.2,.8,.2,1); }
.result-voters { display: flex; flex-wrap: wrap; gap: 7px; }
.voter-chip { display: grid; grid-template-columns: 26px auto; align-items: center; column-gap: 8px; padding: 6px 10px 6px 6px; border: 1px solid var(--line); border-radius: 10px; background: rgba(20,10,29,.66); }
.voter-chip img { grid-row: span 2; width: 26px; border-radius: 6px; }
.voter-chip strong { font-size: 9px; }
.voter-chip small { color: #946fd0; font-size: 7px; font-weight: 750; }
.no-votes { color: var(--muted-2); font-size: 9px; }
.poll-end-note { display: flex; align-items: center; gap: 7px; margin-top: 16px; color: var(--muted-2); font-size: 9px; }
.poll-end-note .icon { width: 14px; }
.admin-inline-actions { margin-top: 25px; }

/* Member Level */
.level-hero { position: relative; overflow: hidden; min-height: 405px; margin-top: 34px; padding: 52px 60px; border: 1px solid rgba(175,103,255,.27); border-radius: 24px; background: radial-gradient(circle at 85% 12%, rgba(164,73,255,.26), transparent 31%), radial-gradient(circle at 15% 100%, rgba(105,39,178,.11), transparent 35%), linear-gradient(145deg, #100819, #060409 63%, #0c0612); box-shadow: var(--shadow); }
.level-hero-grid { position: absolute; inset: 0; opacity: .19; background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 46px 46px; mask-image: linear-gradient(90deg,#000,transparent 82%); }
.level-identity { position: relative; z-index: 1; display: grid; grid-template-columns: 112px 1fr; align-items: center; gap: 27px; }
.level-avatar { position: relative; width: 108px; padding: 7px; border: 1px solid rgba(194,142,255,.44); border-radius: 20px; background: #09050d; box-shadow: 0 20px 50px rgba(0,0,0,.4); }
.level-avatar img { width: 92px; border-radius: 13px; }
.level-avatar > span { position: absolute; right: -10px; bottom: -10px; display: grid; place-items: center; width: 35px; height: 35px; border: 4px solid #110b18; border-radius: 50%; color: #fff; background: linear-gradient(145deg,#bc78ff,#7132c9); }
.level-avatar > span .icon { width: 15px; }
.level-identity h1 { margin: 0 0 12px; font-size: clamp(38px,5vw,59px); line-height: 1; letter-spacing: -.055em; }
.level-identity h1 em { display: block; margin-top: 8px; color: #b37cff; font-size: .54em; font-style: normal; font-weight: 450; letter-spacing: -.025em; }
.level-identity > div:last-child > p:last-child { max-width: 680px; margin: 0; color: #a9a4b1; font-size: 12px; }
.level-hero-progress { position: relative; z-index: 1; margin-top: 43px; padding: 20px 22px; border: 1px solid rgba(172,102,255,.2); border-radius: 15px; background: rgba(6,3,9,.58); backdrop-filter: blur(10px); }
.level-hero-progress > div:first-child { display: flex; justify-content: space-between; color: #9b74d5; font-size: 8px; font-weight: 850; letter-spacing: .12em; }
.level-hero-progress > div:first-child strong { color: #fff; font-size: 10px; }
.level-progress-large { height: 8px; margin: 12px 0 9px; }
.level-hero-progress > p { display: flex; justify-content: space-between; margin: 0; color: var(--muted-2); font-size: 8px; }
.level-hero-progress > p strong { color: #a79eae; font-weight: 650; }
.level-stat-row { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; margin-top: 15px; }
.level-stat-row article { display: flex; align-items: center; gap: 13px; min-height: 84px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: linear-gradient(145deg,rgba(14,8,20,.97),rgba(5,3,8,.98)); }
.level-stat-row article > span { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 11px; color: #b98bff; background: var(--purple-soft); }
.level-stat-row strong { font-size: 22px; }
.level-stat-row p { margin: 1px 0 0; color: var(--muted); font-size: 9px; }
.level-content-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 15px; margin-top: 48px; }
.level-panel { overflow: hidden; border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg,rgba(14,8,20,.97),rgba(5,3,8,.99)); }
.level-panel-head { display: flex; align-items: center; justify-content: space-between; min-height: 79px; padding: 19px 22px; border-bottom: 1px solid var(--line); }
.level-panel-head h2 { margin: 0; font-size: 19px; }
.level-panel-head .eyebrow { margin-bottom: 4px; font-size: 8px; }
.level-panel-head > span { padding: 6px 8px; border: 1px solid var(--line); border-radius: 7px; color: #9873d1; background: rgba(135,62,218,.07); font-size: 7px; font-weight: 850; letter-spacing: .1em; }
.xp-rule-grid { display: grid; gap: 0; }
.xp-rule-grid article { display: grid; grid-template-columns: 35px 1fr auto; align-items: center; gap: 11px; min-height: 65px; padding: 12px 21px; border-bottom: 1px solid var(--line); }
.xp-rule-grid article > span { display: grid; place-items: center; width: 33px; height: 33px; border-radius: 9px; color: #b586f6; background: var(--purple-soft); }
.xp-rule-grid article > span .icon { width: 14px; }
.xp-rule-grid article div { display: flex; flex-direction: column; }
.xp-rule-grid strong { font-size: 10px; }
.xp-rule-grid p { margin: 2px 0 0; color: var(--muted-2); font-size: 8px; }
.xp-rule-grid em { color: #c596ff; font-size: 10px; font-style: normal; font-weight: 850; }
.anti-farm-note { display: flex; align-items: center; gap: 8px; margin: 0; padding: 15px 21px; color: #716a78; font-size: 8px; line-height: 1.5; }
.anti-farm-note .icon { width: 13px; }
.xp-activity { padding: 3px 20px; }
.xp-activity > div { display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 10px; min-height: 61px; border-bottom: 1px solid var(--line); }
.xp-activity > div:last-child { border-bottom: 0; }
.xp-activity > div > span { display: grid; place-items: center; width: 31px; height: 31px; border-radius: 8px; color: #aa7ce8; background: var(--purple-soft); }
.xp-activity > div > span .icon { width: 13px; }
.xp-activity p { display: flex; flex-direction: column; margin: 0; }
.xp-activity strong { font-size: 9px; line-height: 1.25; }
.xp-activity small { margin-top: 3px; color: var(--muted-2); font-size: 7px; }
.xp-activity em { color: #c08fff; font-size: 9px; font-style: normal; font-weight: 850; }
.level-ranking-panel { margin-top: 15px; }
.level-ranking { padding: 3px 21px 9px; }
.level-ranking > div { display: grid; grid-template-columns: 35px 42px minmax(120px,1fr) 110px 75px 90px; align-items: center; gap: 11px; min-height: 65px; border-bottom: 1px solid var(--line); color: #aaa5b2; }
.level-ranking > div:last-child { border-bottom: 0; }
.level-ranking > div.is-current { margin-inline: -8px; padding-inline: 8px; border: 1px solid rgba(178,108,255,.24); border-radius: 11px; background: var(--purple-soft); }
.ranking-position { color: #786d82; font-size: 10px; }
.level-ranking img { width: 39px; border-radius: 8px; }
.level-ranking p { display: flex; flex-direction: column; margin: 0; }
.level-ranking p strong { color: #eee9f5; font-size: 10px; }
.level-ranking p small { color: #9670cf; font-size: 7px; font-weight: 750; }
.level-ranking > div > span { color: var(--muted); font-size: 8px; }
.level-ranking > div > em { color: #bb8cf8; font-size: 8px; font-style: normal; font-weight: 850; }
.level-ranking > div > b { text-align: right; color: #918899; font-size: 8px; }
.level-path { margin-top: 52px; }
.level-path-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 11px; }
.level-path-grid article { position: relative; overflow: hidden; min-height: 145px; padding: 21px; border: 1px solid var(--line); border-radius: 15px; background: linear-gradient(145deg,rgba(14,8,20,.96),rgba(5,3,8,.98)); }
.level-path-grid article::after { content:""; position:absolute; right:-28px; bottom:-42px; width:100px; height:100px; border:1px solid rgba(173,100,255,.11); border-radius:50%; }
.level-path-grid article.current { border-color: rgba(180,108,255,.34); background: radial-gradient(circle at bottom right,rgba(160,76,251,.17),transparent 55%),#0d0713; }
.level-path-grid span { color: #7f7588; font-size: 7px; font-weight: 850; letter-spacing: .11em; }
.level-path-grid strong { display: block; margin-top: 26px; font-size: 18px; }
.level-path-grid p { margin: 3px 0 0; color: #a77cdd; font-size: 9px; }
.admin-form-note { display: flex; align-items: center; gap: 8px; margin: 0; padding: 12px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: rgba(138,61,226,.055); font-size: 8px; }
.admin-form-note .icon { width: 14px; color: #ac80e8; }
.xp-admin-rules { display: grid; padding: 0 21px 15px; }
.xp-admin-rules span { display: flex; justify-content: space-between; padding: 9px 2px; border-top: 1px solid var(--line); }
.xp-admin-rules strong { color: var(--muted); font-size: 8px; }
.xp-admin-rules em { color: #ae82e9; font-size: 8px; font-style: normal; font-weight: 800; }
.admin-level-list { padding: 3px 20px; }
.admin-level-list > div { display: grid; grid-template-columns: 30px 37px 1fr 70px 70px; align-items: center; gap: 10px; min-height: 61px; border-bottom: 1px solid var(--line); }
.admin-level-list > div > strong { color: var(--muted-2); font-size: 8px; }
.admin-level-list img { width: 36px; border-radius: 8px; }
.admin-level-list p { display: flex; flex-direction: column; margin: 0; }
.admin-level-list b { font-size: 9px; }
.admin-level-list small { color: var(--muted-2); font-size: 7px; }
.admin-level-list > div > span { color: #b486f1; font-size: 8px; font-weight: 850; }
.admin-level-list > div > em { text-align: right; color: #8d8495; font-size: 8px; font-style: normal; }

/* Premium Events */
.section-count { color: var(--muted-2); font-size: 9px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.event-section { margin-top: 31px; }
.event-section .section-heading { margin-bottom: 19px; }
.event-archive { margin-top: 62px; }
.event-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.event-card {
  position: relative;
  display: grid;
  grid-template-columns: 105px 1fr;
  overflow: hidden;
  min-height: 276px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: linear-gradient(145deg, rgba(14,8,20,.98), rgba(5,3,8,.99));
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}
.event-card:hover { transform: translateY(-3px); border-color: rgba(166,101,255,.34); box-shadow: 0 22px 50px rgba(0,0,0,.25); }
.event-card-link { position: absolute; z-index: 4; inset: 0; }
.event-date-tile {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  border-right: 1px solid var(--line);
  background:
    radial-gradient(circle at 50% 35%, rgba(171,92,255,.25), transparent 48%),
    repeating-linear-gradient(135deg, transparent 0 11px, rgba(255,255,255,.015) 11px 12px),
    #0c0612;
}
.event-date-tile strong { font-size: 42px; line-height: 1; letter-spacing: -.06em; }
.event-date-tile span { margin-top: 7px; color: #bc91ff; font-size: 10px; font-weight: 850; letter-spacing: .18em; }
.event-date-tile small { margin-top: 3px; color: var(--muted-2); font-size: 8px; }
.event-card-content { display: flex; flex-direction: column; min-width: 0; padding: 24px; }
.event-card-meta { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: var(--muted-2); font-size: 8px; text-transform: uppercase; }
.event-state { display: inline-flex; align-items: center; gap: 7px; color: #b786ff; font-size: 8px; font-weight: 850; letter-spacing: .1em; }
.event-state i { width: 6px; height: 6px; border-radius: 50%; background: #aa62ff; box-shadow: 0 0 12px rgba(165,87,255,.65); }
.event-state-cancelled { color: #ff9cab; }
.event-state-cancelled i { background: var(--red); box-shadow: 0 0 10px rgba(255,113,136,.5); }
.event-state-draft, .event-state-past { color: var(--muted); }
.event-state-draft i, .event-state-past i { background: #65616d; box-shadow: none; }
.event-card h2 { margin: 19px 0 8px; font-size: 20px; letter-spacing: -.025em; }
.event-card-content > p { min-height: 50px; margin-bottom: 13px; color: var(--muted); font-size: 10px; }
.event-facts { display: flex; flex-wrap: wrap; gap: 13px; margin-top: auto; color: #8e8998; font-size: 8px; }
.event-facts span { display: inline-flex; align-items: center; gap: 6px; }
.event-facts .icon { width: 13px; height: 13px; color: #9e76df; }
.event-card-footer { display: flex; align-items: center; gap: 10px; min-height: 30px; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--line); }
.event-card-footer .text-link { margin: 0 0 0 auto; }
.event-card-cancelled, .event-card-past, .event-card-draft { opacity: .76; }
.event-empty { grid-column: 1 / -1; }
.event-detail { width: min(1080px, 100%); margin: 0 auto; padding-top: 54px; }
.event-detail-grid { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 42px; align-items: start; }
.event-detail-main h1 { margin: 20px 0 22px; font-size: clamp(40px, 5vw, 64px); line-height: 1.02; letter-spacing: -.055em; }
.event-detail-facts { display: flex; flex-wrap: wrap; gap: 11px; margin-bottom: 32px; }
.event-detail-facts > span { display: flex; align-items: center; gap: 9px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 10px; color: #aaa4b2; background: rgba(20,10,29,.55); font-size: 9px; }
.event-detail-facts .icon { width: 14px; color: #a87ce9; }
.event-description { margin-bottom: 31px; color: #bbb6c5; font-size: 14px; line-height: 1.85; }
.event-registration-panel { position: sticky; top: 25px; padding: 25px; border: 1px solid rgba(166,99,255,.24); border-radius: 19px; background: radial-gradient(circle at top, rgba(143,70,239,.16), transparent 48%), #0b0610; box-shadow: 0 25px 70px rgba(0,0,0,.28); }
.event-date-large { display: flex; align-items: center; flex-direction: column; padding: 7px 0 24px; border-bottom: 1px solid var(--line); text-align: center; }
.event-date-large strong { font-size: 56px; line-height: 1; letter-spacing: -.07em; }
.event-date-large span { margin-top: 7px; color: #be91ff; font-size: 10px; font-weight: 850; letter-spacing: .16em; }
.event-date-large small { margin-top: 5px; color: var(--muted); font-size: 10px; }
.event-capacity { margin: 21px 0; }
.event-capacity > div:first-child { display: flex; align-items: baseline; justify-content: space-between; }
.event-capacity strong { font-size: 19px; }
.event-capacity span { color: var(--muted-2); font-size: 7px; font-weight: 800; letter-spacing: .14em; }
.capacity-bar { overflow: hidden; height: 4px; margin-top: 10px; border-radius: 6px; background: rgba(255,255,255,.06); }
.capacity-bar span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #7136c9, #b979ff); box-shadow: 0 0 15px rgba(164,91,255,.5); }
.event-registration-panel form { margin: 0; }
.event-registration-closed { display: grid; grid-template-columns: 34px 1fr; gap: 10px; padding: 13px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.025); }
.event-registration-closed > .icon { width: 17px; color: #9b79cf; }
.event-registration-closed p { display: flex; flex-direction: column; gap: 2px; margin: 0; }
.event-registration-closed strong { font-size: 9px; }
.event-registration-closed span { color: var(--muted-2); font-size: 8px; }
.secure-hint { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 15px 0 0; color: #625c69; font-size: 7px; text-transform: uppercase; }
.secure-hint .icon { width: 11px; }
.attendee-section { margin-top: 68px; }
.attendee-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 9px; }
.attendee-card { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; min-width: 0; padding: 11px; border: 1px solid var(--line); border-radius: 12px; background: linear-gradient(145deg, rgba(15,8,22,.96), rgba(6,4,9,.98)); }
.attendee-card img { width: 42px; border-radius: 8px; }
.attendee-card > span { display: flex; flex-direction: column; min-width: 0; }
.attendee-card strong { overflow: hidden; font-size: 10px; text-overflow: ellipsis; }
.attendee-card small { color: #9872d6; font-size: 7px; font-weight: 750; }
.attendee-card em { color: var(--muted-2); font-size: 7px; font-style: normal; }
.attendee-empty { grid-column: 1 / -1; }

/* Mancix Client */
.client-hero {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 330px;
  gap: 50px;
  align-items: center;
  overflow: hidden;
  min-height: 455px;
  margin-top: 34px;
  padding: 63px 70px;
  border: 1px solid rgba(177,107,255,.26);
  border-radius: 24px;
  background:
    radial-gradient(circle at 78% 50%, rgba(154,71,255,.28), transparent 28%),
    linear-gradient(145deg, #11091a, #060309 58%, #0d0614);
  box-shadow: var(--shadow);
}
.client-hero::before { content:""; position:absolute; inset:0; opacity:.24; background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:48px 48px; mask-image:linear-gradient(90deg,#000,transparent 82%); }
.client-hero-copy { position: relative; z-index: 2; }
.client-badges { display: flex; gap: 8px; margin-bottom: 35px; }
.client-beta, .client-private { display: inline-flex; align-items: center; gap: 7px; padding: 7px 10px; border: 1px solid rgba(185,123,255,.3); border-radius: 8px; color: #d7bdff; background: rgba(130,55,222,.13); font-size: 8px; font-weight: 850; letter-spacing: .12em; }
.client-beta i { width: 6px; height: 6px; border-radius: 50%; background: #c28cff; box-shadow: 0 0 13px rgba(188,125,255,.8); }
.client-private { color: #82798c; border-color: var(--line); background: rgba(255,255,255,.02); }
.client-private .icon { width: 12px; }
.client-hero h1 { margin: 0 0 18px; font-size: clamp(48px, 6vw, 76px); line-height: .96; letter-spacing: -.065em; }
.client-hero-copy > p:not(.eyebrow) { max-width: 640px; color: #aaa5b2; font-size: 14px; }
.client-actions { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 30px; }
.client-emblem { position: relative; z-index: 1; display: grid; place-items: center; width: 250px; height: 250px; justify-self: center; }
.client-core { position: relative; z-index: 2; display: flex; align-items: baseline; justify-content: center; width: 142px; height: 142px; padding-top: 38px; border: 1px solid rgba(213,174,255,.38); border-radius: 31px; color: #fff; background: linear-gradient(145deg, rgba(53,23,78,.88), rgba(9,5,13,.96)); box-shadow: 0 24px 80px rgba(91,28,169,.48), inset 0 1px rgba(255,255,255,.1); transform: rotate(-6deg); }
.client-core span { font-size: 54px; font-weight: 950; letter-spacing: -.1em; }
.client-core em { font-size: 29px; font-style: normal; }
.client-orbit { position: absolute; border: 1px solid rgba(193,137,255,.18); border-radius: 50%; }
.orbit-one { inset: 16px; animation: orbit-pulse 4s ease-in-out infinite; }
.orbit-two { inset: -9px; opacity: .5; animation: orbit-pulse 4s 1s ease-in-out infinite; }
.client-emblem > small { position: absolute; z-index: 3; right: 23px; bottom: 45px; padding: 6px 8px; border: 1px solid var(--line-strong); border-radius: 7px; color: #cfadff; background: #0a050f; font-size: 8px; font-weight: 850; letter-spacing: .1em; }
@keyframes orbit-pulse { 0%,100% { transform: scale(.96); opacity:.34; } 50% { transform: scale(1.03); opacity:.8; } }
.client-release-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 15px; margin-top: 16px; }
.client-release-card, .client-compatibility, .client-changelog { border: 1px solid var(--line); border-radius: 18px; background: linear-gradient(145deg, rgba(14,8,20,.97), rgba(5,3,8,.99)); }
.client-release-card { padding: 25px; }
.client-card-head { display: grid; grid-template-columns: 44px 1fr auto; align-items: center; gap: 13px; padding-bottom: 20px; border-bottom: 1px solid var(--line); }
.client-card-head > span { display: grid; place-items: center; width: 43px; height: 43px; border-radius: 12px; color: #b98cff; background: var(--purple-soft); }
.client-card-head h2 { margin: 0; font-size: 19px; }
.client-card-head .eyebrow { margin-bottom: 4px; font-size: 7px; }
.client-card-head > em { padding: 6px 8px; border: 1px solid var(--line); border-radius: 7px; color: var(--muted-2); font-size: 7px; font-style: normal; font-weight: 850; letter-spacing: .1em; }
.client-card-head > em.available { color: #c89cff; border-color: rgba(177,108,255,.3); background: var(--purple-soft); }
.client-specs { display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; padding: 20px 0; }
.client-specs div { padding: 12px; border: 1px solid var(--line); border-radius: 10px; background: rgba(20,10,29,.5); }
.client-specs span, .checksum span { display: block; margin-bottom: 5px; color: var(--muted-2); font-size: 7px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.client-specs strong { font-size: 11px; }
.checksum { padding: 12px 14px; border: 1px solid var(--line); border-radius: 10px; background: rgba(0,0,0,.18); }
.checksum code { display: block; overflow-wrap: anywhere; color: #8d8496; font-size: 8px; }
.client-compatibility { padding: 27px; }
.client-compatibility h2 { margin-bottom: 23px; font-size: 22px; }
.compatibility-points { display: grid; gap: 11px; }
.compatibility-points > span { display: grid; grid-template-columns: 30px 1fr; align-items: center; gap: 10px; }
.compatibility-points > span > .icon { width: 17px; color: #b482ff; }
.compatibility-points p { display: flex; flex-direction: column; margin: 0; }
.compatibility-points strong { font-size: 10px; }
.compatibility-points small { color: var(--muted-2); font-size: 8px; }
.client-changelog { display: grid; grid-template-columns: 260px 1fr; gap: 40px; margin-top: 15px; padding: 30px; }
.client-changelog h2 { margin: 0; font-size: 24px; }
.changelog-copy { color: #aaa5b2; font-size: 11px; line-height: 1.85; white-space: normal; }
.changelog-copy p { margin: 0; }
.client-security-note { display: flex; align-items: center; gap: 13px; margin-top: 15px; padding: 15px 18px; border: 1px solid rgba(166,97,255,.17); border-radius: 13px; background: rgba(125,50,210,.07); }
.client-security-note > .icon { color: #aa7fe8; }
.client-security-note strong { font-size: 10px; }
.client-security-note p { margin: 2px 0 0; color: var(--muted-2); font-size: 9px; }
.client-file-state { display: grid; grid-template-columns: 35px 1fr; align-items: center; gap: 10px; padding: 12px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.02); }
.client-file-state > .icon { width: 18px; color: var(--muted-2); }
.client-file-state.ready { border-color: rgba(166,98,255,.28); background: var(--purple-soft); }
.client-file-state.ready > .icon { color: #c49aff; }
.client-file-state p { display: flex; flex-direction: column; margin: 0; }
.client-file-state strong { font-size: 9px; }
.client-file-state span { overflow-wrap: anywhere; color: var(--muted-2); font-size: 8px; }
.client-upload-guide { display: grid; grid-template-columns: 42px 1fr; gap: 13px; margin: 20px; padding: 17px; border: 1px solid rgba(165,96,255,.2); border-radius: 12px; background: var(--purple-soft); }
.client-upload-guide > span { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 10px; color: #bd91ff; background: rgba(7,3,11,.45); }
.client-upload-guide strong { font-size: 10px; }
.client-upload-guide p { margin: 4px 0 0; color: var(--muted); font-size: 9px; line-height: 1.8; }
.client-upload-guide code { color: #d3b7ff; }
.download-history { padding: 0 21px 7px; }
.download-history > div { display: grid; grid-template-columns: 35px 1fr 25px; align-items: center; gap: 10px; min-height: 61px; border-top: 1px solid var(--line); }
.download-history img { width: 35px; border-radius: 7px; }
.download-history p { display: flex; flex-direction: column; margin: 0; }
.download-history strong { font-size: 9px; }
.download-history span { color: var(--muted-2); font-size: 8px; }
.download-history em { color: #916cc9; }
.download-history em .icon { width: 15px; }

/* Game */
.game-status, .admin-verified {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 9px 12px;
  border: 1px solid var(--line);
  border-radius: 9px;
  color: var(--muted);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: .1em;
}
.game-status.ready { color: #c797ff; border-color: rgba(169,98,255,.28); background: rgba(132,57,226,.09); }
.game-placeholder {
  display: grid;
  place-items: center;
  min-height: 510px;
  margin-top: 28px;
  padding: 60px;
  border: 1px solid var(--line);
  border-radius: 21px;
  text-align: center;
  background:
    radial-gradient(circle at center, rgba(142,77,237,.14), transparent 38%),
    repeating-linear-gradient(135deg, transparent 0 15px, rgba(255,255,255,.011) 15px 16px),
    #08040c;
}
.game-emblem { position: relative; display: flex; align-items: baseline; justify-content: center; width: 150px; height: 150px; margin-bottom: 37px; padding-top: 44px; border: 1px solid rgba(169,116,255,.21); border-radius: 50%; color: #fff; font-size: 47px; font-weight: 900; }
.game-emblem em { font-size: 29px; font-style: normal; }
.game-ring { position: absolute; border: 1px solid rgba(169,116,255,.12); border-radius: 50%; }
.ring-one { inset: -18px; }
.ring-two { inset: -38px; }
.game-placeholder h2 { margin: 3px 0 11px; font-size: 28px; }
.game-placeholder > p:not(.eyebrow) { max-width: 620px; color: var(--muted); font-size: 12px; }
.integration-tag { display: inline-flex; align-items: center; gap: 7px; margin-top: 21px; padding: 8px 11px; border: 1px solid var(--line-strong); border-radius: 8px; color: #ac87e9; font-size: 8px; font-weight: 800; letter-spacing: .09em; }
.integration-tag .icon { width: 13px; }
.game-frame-shell { overflow: hidden; margin-top: 28px; border: 1px solid var(--line); border-radius: 18px; background: #050207; }
.game-frame-top { height: 39px; padding: 12px 15px; border-bottom: 1px solid var(--line); color: var(--muted-2); font-size: 8px; letter-spacing: .16em; }
.game-frame { display: block; width: 100%; height: min(76vh, 850px); border: 0; background: #09090c; }

/* Admin */
.admin-verified { color: #c8a8fc; border-color: var(--line-strong); background: var(--purple-soft); }
.admin-verified .icon { width: 15px; }
.admin-tabs { display: flex; gap: 3px; margin: 25px 0 18px; padding: 4px; border: 1px solid var(--line); border-radius: 12px; background: rgba(13,7,19,.9); }
.admin-tabs a { padding: 9px 15px; border-radius: 8px; color: var(--muted); font-size: 10px; font-weight: 700; }
.admin-tabs a.active { color: #fff; background: var(--purple-soft); box-shadow: inset 0 0 0 1px rgba(155,96,255,.16); }
.admin-metrics { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.admin-metrics article { display: flex; align-items: center; gap: 13px; padding: 21px; border: 1px solid var(--line); border-radius: 15px; background: linear-gradient(145deg, rgba(14,8,20,.97), rgba(5,3,8,.98)); }
.admin-metrics article > span { display: grid; place-items: center; width: 39px; height: 39px; border-radius: 10px; color: #b48cf2; background: var(--purple-soft); }
.admin-metrics strong { font-size: 22px; }
.admin-metrics p { margin: 1px 0 0; color: var(--muted); font-size: 9px; }
.admin-panel { overflow: hidden; border: 1px solid var(--line); border-radius: 17px; background: linear-gradient(145deg, rgba(13,8,19,.97), rgba(5,3,8,.98)); }
.admin-metrics + .admin-panel { margin-top: 16px; }
.admin-panel-heading { display: flex; align-items: center; justify-content: space-between; min-height: 78px; padding: 19px 22px; border-bottom: 1px solid var(--line); }
.admin-panel-heading h2 { margin: 0; font-size: 18px; }
.admin-panel-heading .eyebrow { margin-bottom: 4px; font-size: 8px; }
.admin-panel-heading > span { display: grid; place-items: center; min-width: 28px; height: 28px; border-radius: 8px; color: #b28ce9; background: var(--purple-soft); font-size: 9px; font-weight: 800; }
.admin-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 14px; }
.admin-form { display: grid; gap: 16px; padding: 22px; }
.admin-form > label:not(.toggle) { display: grid; gap: 7px; }
.admin-form label small { color: var(--muted-2); font-size: 8px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.form-row label { display: grid; gap: 7px; }
.toggle-row { display: grid; grid-template-columns: 1fr 1fr; gap: 11px; }
.toggle { display: grid !important; grid-template-columns: 35px 1fr; align-items: center; gap: 10px; cursor: pointer; }
.toggle input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.toggle > span { position: relative; width: 35px; height: 20px; border: 1px solid var(--line); border-radius: 20px; background: #24232c; }
.toggle > span::after { content:""; position:absolute; top:3px; left:3px; width:12px; height:12px; border-radius:50%; background:#777482; transition:.2s; }
.toggle input:checked + span { border-color: rgba(155,96,255,.4); background: rgba(155,96,255,.25); }
.toggle input:checked + span::after { left:18px; background:#b78bff; }
.toggle p { display: flex; flex-direction: column; margin: 0; }
.toggle strong { font-size: 9px; }
.toggle small { color: var(--muted-2); font-size: 8px; }
.admin-content-list { display: grid; }
.admin-content-list article { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 21px; border-bottom: 1px solid var(--line); }
.admin-content-list article:last-child { border-bottom: 0; }
.admin-content-list h3 { margin: 9px 0 3px; font-size: 12px; }
.admin-content-list p { margin: 0; color: var(--muted-2); font-size: 8px; }
.row-actions { display: flex; gap: 6px; }
.row-actions form { margin: 0; }
.audit-list { padding: 3px 21px; }
.audit-list > div { display: grid; grid-template-columns: 38px 1fr auto; align-items: center; gap: 12px; min-height: 66px; border-bottom: 1px solid var(--line); }
.audit-list > div:last-child { border-bottom: 0; }
.audit-icon { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 9px; color: #ad82ef; background: var(--purple-soft); }
.audit-icon .icon { width: 15px; }
.audit-list p { display: flex; flex-direction: column; margin: 0; }
.audit-list strong { font-size: 10px; }
.audit-list small, .audit-list time { color: var(--muted-2); font-size: 8px; font-style: normal; }
.empty-inline { padding: 25px; color: var(--muted); font-size: 11px; }
.member-table-wrap { overflow-x: auto; }
.member-table { width: 100%; border-collapse: collapse; }
.member-table th { padding: 13px 18px; text-align: left; color: var(--muted-2); font-size: 8px; letter-spacing: .08em; text-transform: uppercase; }
.member-table td { padding: 14px 18px; border-top: 1px solid var(--line); color: #aaa6b4; font-size: 10px; white-space: nowrap; }
.table-member { display: flex; align-items: center; gap: 10px; }
.table-member img { width: 36px; }
.table-member span { display: flex; flex-direction: column; }
.table-member strong { color: #eeeaf5; font-size: 11px; }
.table-member small { max-width: 190px; overflow: hidden; color: var(--muted-2); font-size: 7px; text-overflow: ellipsis; }
.rank-badge { padding: 5px 7px; border: 1px solid var(--line-strong); border-radius: 7px; color: #be99f4; background: var(--purple-soft); font-size: 8px; font-weight: 800; }
.level-table-badge { color: #dac2ff; border-color: rgba(186,120,255,.28); background: rgba(143,68,231,.12); }
.member-state { display: inline-flex; align-items: center; gap: 6px; color: var(--muted); font-size: 9px; }
.member-state i { width: 6px; height: 6px; border-radius: 50%; background: #65626d; }
.member-state.active { color: #c797ff; }
.member-state.active i { background: #ad68ff; box-shadow: 0 0 12px rgba(166,91,255,.72); }

/* Setup and error pages */
.setup-page, .error-page { display: grid; place-items: center; padding: 40px 20px; background: radial-gradient(circle at top, rgba(139,57,229,.21), transparent 38%), #030205; }
.setup-shell { width: min(760px, 100%); }
.setup-card, .error-card { padding: 38px; border: 1px solid rgba(169,98,255,.22); border-radius: 21px; background: linear-gradient(145deg, rgba(15,8,22,.98), rgba(5,3,8,.99)); box-shadow: var(--shadow); }
.setup-header { display: flex; align-items: center; gap: 16px; margin-bottom: 27px; }
.setup-header h1 { margin: 0; font-size: 26px; }
.setup-header p { margin: 2px 0 0; color: var(--muted); font-size: 11px; }
.setup-intro { color: var(--muted); font-size: 13px; }
.setup-form { display: grid; gap: 15px; margin-top: 25px; }
.setup-form label { display: grid; gap: 7px; color: #c7c2ce; font-size: 11px; }
.compatibility-list, .setup-steps { display: grid; gap: 8px; margin: 23px 0; }
.compatibility-list div, .setup-steps li { padding: 11px 13px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: rgba(18,9,27,.65); font-size: 10px; }
.setup-result { padding: 17px; border: 1px solid rgba(169,98,255,.28); border-radius: 12px; color: #ddc3ff; background: rgba(132,57,226,.09); font-size: 11px; }
.error-card { width: min(520px, 100%); text-align: center; }
.error-card p { color: var(--muted); }

@media (max-width: 1180px) {
  .portal-main { padding-inline: 30px; }
  .top-strip { margin-inline: -30px; padding-inline: 30px; }
  .welcome-hero { padding: 48px; }
  .news-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .news-grid-dashboard .news-card:last-child { display: none; }
  .admin-grid { grid-template-columns: 1fr; }
  .event-grid { grid-template-columns: 1fr; }
  .client-hero { grid-template-columns: 1fr 250px; padding-inline: 48px; }
}
@media (max-width: 960px) {
  .login-shell { grid-template-columns: 1fr; gap: 60px; width: min(680px, calc(100% - 40px)); }
  .login-brand { margin-bottom: 50px; }
  .login-card-wrap { justify-self: center; }
  .sidebar { transform: translateX(-100%); transition: transform .25s ease; }
  .sidebar.open { transform: translateX(0); box-shadow: 40px 0 90px rgba(0,0,0,.6); }
  .portal-main { margin-left: 0; padding-top: 69px; }
  .mobile-header { position: fixed; z-index: 25; top: 0; right: 0; left: 0; display: flex; align-items: center; justify-content: space-between; height: 69px; padding: 0 19px; border-bottom: 1px solid rgba(159,86,255,.18); background: rgba(5,2,8,.96); box-shadow: 0 14px 40px rgba(0,0,0,.26); backdrop-filter: blur(18px); }
  .top-strip { display: none; }
  .dashboard-split { grid-template-columns: 1fr; }
  .admin-metrics { grid-template-columns: repeat(2, 1fr); }
  .event-detail-grid { grid-template-columns: 1fr; }
  .event-registration-panel { position: static; }
  .attendee-grid { grid-template-columns: repeat(2, 1fr); }
  .client-hero { grid-template-columns: 1fr; }
  .client-emblem { display: none; }
  .client-release-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .login-shell { padding: 35px 0 50px; }
  .login-brand-panel { text-align: center; }
  .login-brand { align-items: center; justify-content: center; }
  .login-message .eyebrow { justify-content: center; }
  .login-features { grid-template-columns: 1fr; text-align: left; }
  .login-features article { min-height: auto; }
  .login-features p { margin-top: 15px; }
  .portal-main { padding: 69px 16px 95px; }
  .welcome-hero { grid-template-columns: 1fr; padding: 37px 25px; }
  .hero-member-visual { display: none; }
  .metric-row { grid-template-columns: 1fr; }
  .metric-row article { min-height: 75px; }
  .news-grid { grid-template-columns: 1fr; }
  .news-grid-dashboard .news-card:last-child { display: block; }
  .page-hero { align-items: flex-start; flex-direction: column; padding-top: 48px; }
  .page-hero .button { width: 100%; }
  .poll-detail-head { grid-template-columns: 1fr; }
  .vote-total { min-height: 95px; }
  .poll-card-footer { align-items: flex-start; flex-wrap: wrap; }
  .poll-card-footer .button { width: 100%; margin-left: 0; }
  .admin-tabs { overflow-x: auto; }
  .admin-tabs a { white-space: nowrap; }
  .admin-metrics { grid-template-columns: 1fr 1fr; }
  .form-row, .toggle-row { grid-template-columns: 1fr; }
  .game-placeholder { min-height: 440px; padding: 45px 24px; }
  .article-info { align-items: flex-start; flex-direction: column; gap: 8px; }
  .event-card { grid-template-columns: 82px 1fr; }
  .event-card-content { padding: 20px; }
  .event-date-tile strong { font-size: 34px; }
  .client-hero { min-height: 410px; padding: 43px 27px; }
  .client-specs { grid-template-columns: repeat(2, 1fr); }
  .client-changelog { grid-template-columns: 1fr; gap: 16px; }
  .level-content-grid { grid-template-columns: 1fr; }
  .level-ranking { overflow-x: auto; }
  .level-ranking > div { min-width: 690px; }
  .level-path-grid { grid-template-columns: repeat(2,1fr); }
  .mobile-bottom-nav { position: fixed; z-index: 18; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: repeat(6, 1fr); height: 67px; border-top: 1px solid rgba(159,86,255,.18); background: rgba(5,2,8,.97); box-shadow: 0 -14px 40px rgba(0,0,0,.24); backdrop-filter: blur(16px); }
  .mobile-bottom-nav a { display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 4px; color: #686572; font-size: 7px; }
  .mobile-bottom-nav .icon { width: 18px; }
  .mobile-bottom-nav a.active { color: #bb90ff; }
  .portal-footer { flex-direction: column; }
}
@media (max-width: 500px) {
  .login-shell { width: calc(100% - 26px); }
  .login-message h1 { font-size: 39px; }
  .login-card { padding: 26px 20px; }
  .login-card-head { align-items: flex-start; }
  .command-box { padding-right: 88px; }
  .hero-copy h1, .page-hero h1 { font-size: 37px; }
  .hero-actions { flex-direction: column; }
  .metric-row article { grid-template-columns: 43px auto; }
  .metric-row article small { display: none; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
  .results-heading { align-items: flex-start; flex-direction: column; gap: 8px; }
  .admin-metrics { grid-template-columns: 1fr; }
  .member-level-strip { grid-template-columns: 55px 1fr; }
  .member-level-strip > a { grid-column: 1 / -1; justify-content: center; padding-top: 10px; border-top: 1px solid var(--line); }
  .level-mini-badge { width: 50px; height: 50px; }
  .level-hero { padding: 38px 24px; }
  .level-identity { grid-template-columns: 1fr; }
  .level-avatar { width: 92px; }
  .level-avatar img { width: 76px; }
  .level-identity h1 { font-size: 39px; }
  .level-hero-progress > p { align-items: flex-start; flex-direction: column; gap: 4px; }
  .level-stat-row { grid-template-columns: 1fr; }
  .level-path-grid { grid-template-columns: 1fr 1fr; }
  .admin-level-list { overflow-x: auto; }
  .admin-level-list > div { min-width: 520px; }
  .event-card { grid-template-columns: 1fr; }
  .event-date-tile { min-height: 105px; border-right: 0; border-bottom: 1px solid var(--line); }
  .event-card-content > p { min-height: 0; }
  .event-card-footer { flex-wrap: wrap; }
  .event-card-footer .text-link { width: 100%; margin-left: 0; }
  .attendee-grid { grid-template-columns: 1fr; }
  .attendee-card em { display: none; }
  .client-hero h1 { font-size: 46px; }
  .client-actions .button { width: 100%; }
  .client-card-head { grid-template-columns: 42px 1fr; }
  .client-card-head > em { grid-column: 1 / -1; }
  .setup-card, .error-card { padding: 27px 20px; }
}
