
:root{
  --bg:#030b18;
  --bg-2:#071323;
  --panel:#0b1627;
  --panel-2:#0d1b31;
  --panel-3:#101f38;
  --text:#eff5ff;
  --muted:#9aa8bf;
  --muted-2:#7e8aa2;
  --line:rgba(255,255,255,.09);
  --line-soft:rgba(255,255,255,.05);
  --blue:#1f80ff;
  --blue-2:#4e8dff;
  --violet:#815dff;
  --violet-2:#9e84ff;
  --green:#28c76f;
  --shadow:0 28px 80px rgba(0,0,0,.48);
  --radius:22px;
  --radius-sm:16px;
  --container:1440px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 84% 8%, rgba(129,93,255,.11), transparent 18%),
    radial-gradient(circle at 18% 12%, rgba(31,128,255,.06), transparent 16%),
    radial-gradient(circle at 28% 86%, rgba(129,93,255,.05), transparent 18%),
    linear-gradient(180deg, #030c18 0%, #020916 100%);
  min-height:100vh;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg, transparent 0%, rgba(39,107,255,.025) 28%, transparent 58%);
  opacity:.55;
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(var(--container), calc(100% - 64px)); margin:0 auto}
.header{
  position:sticky; top:0; z-index:30;
  background:rgba(3,11,24,.94);
  border-bottom:1px solid var(--line-soft);
}
.header__inner{
  min-height:86px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.brand{display:flex;align-items:center;gap:18px;min-width:260px}
.brand__logo{
  display:flex;
  align-items:center;
  justify-content:center;
  width:auto;
  height:auto;
  flex:0 0 auto;
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  overflow:visible;
}
.brand__title{font-size:20px;font-weight:800;line-height:1.05}
.brand__subtitle{font-size:12px;color:var(--muted);margin-top:6px}
.nav{display:flex;align-items:center;gap:42px;justify-content:center;flex:1}
.nav a{
  font-size:15px;color:#c2cce0;position:relative;padding:10px 0
}
.nav a.is-active{color:#fff}
.nav a.is-active::after{
  content:""; position:absolute; left:0; right:0; bottom:-20px; height:2px;
  border-radius:999px; background:linear-gradient(90deg, var(--blue), var(--violet));
}
.header__actions{display:flex;align-items:center;gap:12px}
.header-steam-link{width:42px;height:42px;display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.015);transition:transform .18s ease,border-color .18s ease,background .18s ease}
.header-steam-link:hover{transform:translateY(-1px);border-color:rgba(102,160,255,.7);background:rgba(66,113,255,.12)}
.header-steam-link.is-linked{border-color:rgba(53,207,139,.65);box-shadow:inset 0 0 0 1px rgba(53,207,139,.14)}
.header-steam-link img{width:23px;height:23px;display:block}
.steam-auth-button{display:flex!important;align-items:center;justify-content:center;gap:9px}
.steam-auth-button img{width:22px;height:22px;display:block}
.steam-profile-card{margin-top:18px}
.steam-profile-card__heading{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.steam-profile-card__heading h2{margin:0;font-size:22px}.steam-profile-card__heading p{margin:5px 0 0;color:var(--muted);font-size:14px}
.steam-profile-card__icon{width:52px;height:52px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(102,160,255,.35);border-radius:12px;background:rgba(66,113,255,.12)}
.steam-profile-card__icon img{width:100%;height:100%;display:block;object-fit:cover}.steam-profile-card__state{margin-left:auto;padding:8px 11px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:13px;font-weight:800}
.steam-profile-card__state.is-linked{border-color:rgba(53,207,139,.55);background:rgba(53,207,139,.1);color:#65e6a8}
.steam-profile-card__details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.steam-profile-card__detail{min-height:86px;padding:15px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.018)}
.steam-profile-card__detail span{display:block;margin-bottom:8px;color:var(--muted);font-size:12px}.steam-profile-card__detail strong{display:block;overflow-wrap:anywhere;font-size:14px}
.steam-profile-card__verified{color:#65e6a8}.steam-profile-card__actions{display:flex;gap:10px;align-items:center;margin-top:18px}.steam-profile-card__actions form{margin:0}
.steam-profile-card__empty{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:18px}.steam-profile-card__empty strong,.steam-profile-card__empty span{display:block}.steam-profile-card__empty span{margin-top:5px;color:var(--muted);font-size:14px}
@media (max-width:700px){.steam-profile-card__heading{align-items:flex-start}.steam-profile-card__state{margin-left:0}.steam-profile-card__details{grid-template-columns:1fr}.steam-profile-card__actions,.steam-profile-card__empty{align-items:stretch;flex-direction:column}.steam-profile-card__actions .btn,.steam-profile-card__actions form,.steam-profile-card__actions form .btn,.steam-profile-card__empty .btn{width:100%}}
.lang-select,.btn,.input,.select{
  border:1px solid var(--line);
  border-radius:14px;
  outline:none;
}
.lang-select,.select,.input{
  background:rgba(255,255,255,.02);
  color:var(--text);
}
.lang-select{padding:12px 16px; min-width:132px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:48px;padding:0 20px;
  color:var(--text); font-weight:700; font-size:15px;
  cursor:pointer;
  background:rgba(255,255,255,.02);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.05);
}
.btn:hover{transform:translateY(-1px)}
.btn--primary{
  background:linear-gradient(135deg, var(--blue), var(--blue-2));
  border-color:rgba(255,255,255,.08);
  box-shadow:0 10px 24px rgba(31,128,255,.18), inset 0 1px 0 rgba(255,255,255,.16);
}
.btn--violet{
  background:linear-gradient(135deg, var(--violet), var(--blue-2));
  border-color:rgba(255,255,255,.08);
  box-shadow:0 10px 24px rgba(129,93,255,.16), inset 0 1px 0 rgba(255,255,255,.14);
}
.btn--ghost{background:rgba(255,255,255,.015)}
.home-landing{
  background:
    radial-gradient(circle at 74px 120px, rgba(31,128,255,.09), transparent 150px),
    radial-gradient(circle at 78% 18%, rgba(129,93,255,.2), transparent 250px),
    linear-gradient(180deg, #020812 0%, #030815 54%, #020711 100%);
}
.home-landing::before{
  display:none;
}
.home-landing .container{
  width:min(1360px, calc(100% - 96px));
}
.home-landing .header{
  position:sticky;
  background:rgba(2,7,16,.82);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.home-landing .header__inner{
  min-height:68px;
  gap:22px;
}
.home-landing .brand{
  min-width:190px;
  gap:12px;
}
.home-landing .brand__logo-image{
  width:30px;
}
.home-landing .brand__title{
  font-size:18px;
  letter-spacing:-.02em;
}
.home-landing .brand__subtitle,
.home-landing .header__actions form,
.home-landing .header-steam-link{
  display:none;
}
.home-landing .nav{
  gap:28px;
}
.home-landing .nav a{
  font-size:12px;
  color:#a7b4cf;
  padding:12px 0;
}
.home-landing .nav a.is-active{
  color:#6f8cff;
}
.home-landing .nav a.is-active::after{
  bottom:-22px;
  height:1px;
}
.home-landing .header__actions{
  gap:10px;
}
.home-landing .header__actions .btn,
.home-landing .user-chip{
  height:44px;
  min-height:44px;
  padding:0 18px;
  border-radius:10px;
  font-size:14px;
}
.home-landing .btn{
  border-radius:9px;
}
.main-page{padding-bottom:56px}
.main-page--ops{
  padding-bottom:0;
}
.ops-hero{
  position:relative;
  min-height:560px;
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 14%, rgba(90,115,255,.26), transparent 19%),
    radial-gradient(circle at 82% 6%, rgba(129,93,255,.2), transparent 18%),
    linear-gradient(180deg, rgba(2,8,18,.18), rgba(2,8,18,0));
}
.ops-hero__inner{
  position:relative;
  z-index:1;
  min-height:560px;
  display:grid;
  grid-template-columns:minmax(360px,.82fr) minmax(620px,1.18fr);
  gap:72px;
  align-items:center;
  padding-top:28px;
  padding-bottom:56px;
}
.ops-hero__content{
  max-width:520px;
}
.ops-kicker,
.ops-section-head span,
.ops-proof span,
.ops-panel-title{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#9eb8ff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ops-kicker::before,
.ops-section-head span::before,
.ops-proof span::before,
.ops-panel-title::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:50%;
  background:linear-gradient(135deg, var(--blue), var(--violet));
  box-shadow:0 0 8px rgba(95,128,255,.42);
}
.ops-hero h1{
  margin:15px 0 0;
  font-size:clamp(46px, 4.8vw, 76px);
  line-height:.94;
  letter-spacing:-.045em;
}
.ops-hero h1 span{
  display:block;
}
.ops-hero h1 span:last-child{
  color:#8d75ff;
}
.ops-hero__content p{
  max-width:500px;
  margin:18px 0 0;
  color:#9fabca;
  font-size:12px;
  line-height:1.65;
}
.ops-hero__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top:22px;
}
.ops-hero__actions .btn{
  height:38px;
  padding:0 15px;
  font-size:11px;
}
.ops-hero__trust{
  display:flex;
  flex-wrap:wrap;
  gap:20px;
  margin-top:28px;
}
.ops-hero__trust span{
  position:relative;
  padding-left:18px;
  color:#8c9ab8;
  font-size:10px;
  font-weight:700;
}
.ops-hero__trust span::before{
  content:"";
  position:absolute;
  left:0;
  top:7px;
  width:7px;
  height:7px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
}
.ops-dashboard-preview{
  position:relative;
  transform:rotateZ(3deg);
  transform-origin:center;
  border:1px solid rgba(95,126,255,.24);
  border-radius:14px;
  background:rgba(7,14,27,.62);
  box-shadow:0 22px 54px rgba(0,0,0,.48), 0 0 34px rgba(95,86,255,.14);
  padding:7px;
  margin-right:-42px;
  contain:paint;
}
.ops-dashboard-preview__glow{
  position:absolute;
  inset:-82px -48px auto auto;
  width:310px;
  height:310px;
  border:1px solid rgba(148,116,255,.48);
  border-radius:999px;
  box-shadow:none;
  pointer-events:none;
}
.ops-dashboard-preview img{
  position:relative;
  z-index:1;
  width:100%;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.08);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.ops-stack,
.ops-proof{
  padding-top:34px;
}
.ops-download{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);
  gap:22px;
  align-items:center;
  margin-top:-28px;
  padding:22px 26px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:
    radial-gradient(circle at 82% 34%, rgba(129,93,255,.22), transparent 28%),
    linear-gradient(135deg, rgba(24,43,84,.5), rgba(10,17,36,.72));
  box-shadow:0 14px 34px rgba(0,0,0,.26);
  contain:paint;
}
.ops-download__content span{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#9eb8ff;
  font-size:10px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.ops-download__content span::before{
  content:"";
  width:6px;
  height:6px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  box-shadow:0 0 8px rgba(95,128,255,.42);
}
.ops-download h2{
  margin:10px 0 0;
  font-size:clamp(24px,2.5vw,34px);
  line-height:1.03;
  letter-spacing:-.03em;
}
.ops-download p{
  max-width:680px;
  margin:12px 0 0;
  color:#9fabca;
  font-size:13px;
  line-height:1.6;
}
.ops-download__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.ops-download__actions .btn{
  height:38px;
  padding:0 15px;
  font-size:11px;
}
.ops-download__card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:14px;
  align-items:center;
  padding:16px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  background:rgba(255,255,255,.035);
}
.ops-download__card strong,
.ops-download__card span{
  display:block;
  overflow-wrap:anywhere;
}
.ops-download__card strong{
  color:#fff;
  font-size:15px;
}
.ops-download__card span{
  margin-top:4px;
  color:#9fabca;
  font-size:11px;
}
.ops-download__card ul{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  list-style:none;
  margin:4px 0 0;
  padding:0;
}
.ops-download__card li{
  padding:6px 8px;
  border:1px solid rgba(112,143,255,.18);
  border-radius:999px;
  background:rgba(70,87,180,.16);
  color:#c9d4ff;
  font-size:10px;
  font-weight:800;
}
.ops-section-head{
  max-width:620px;
  margin:0 auto;
  text-align:center;
}
.ops-section-head h2,
.ops-proof h2{
  margin:10px 0 0;
  font-size:clamp(23px, 2.4vw, 31px);
  line-height:1.02;
  letter-spacing:-.03em;
}
.ops-section-head p{
  max-width:500px;
  margin:14px 0 0;
  margin-left:auto;
  margin-right:auto;
  color:#8f9bb8;
  font-size:11px;
  line-height:1.6;
}
.ops-stack-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:20px;
  margin-top:28px;
}
.ops-stack-grid article{
  min-height:168px;
  display:grid;
  justify-items:center;
  text-align:center;
  padding:21px 14px 18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:10px;
  background:linear-gradient(180deg, rgba(20,37,71,.46), rgba(9,16,34,.58));
  box-shadow:0 10px 26px rgba(0,0,0,.22);
  contain:paint;
}
.ops-stack-grid h3{
  margin:14px 0 0;
  font-size:13px;
}
.ops-stack-grid p{
  margin:8px 0 0;
  color:#95a4c2;
  line-height:1.55;
  font-size:10px;
}
.ops-stack__actions{
  display:flex;
  justify-content:center;
  margin-top:20px;
}
.ops-stack__actions .btn{
  height:34px;
  padding:0 14px;
  border-radius:8px;
  font-size:11px;
  color:#dce7ff;
  background:rgba(255,255,255,.035);
}
.ops-proof{
  display:grid;
  grid-template-columns:minmax(360px,.62fr) minmax(620px,1.38fr);
  gap:48px;
  align-items:center;
}
.ops-proof > div:first-child span{
  display:inline-flex;
}
.ops-proof h2{
  margin-top:9px;
  font-size:clamp(22px, 2.2vw, 29px);
}
.ops-proof p{
  max-width:360px;
  color:#8f9bb8;
  line-height:1.55;
  font-size:12px;
}
.ops-proof__checks{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:8px;
}
.ops-proof__checks li{
  position:relative;
  padding-left:20px;
  color:#b5c2dd;
  font-size:11px;
  line-height:1.35;
}
.ops-proof__checks li::before{
  content:"";
  position:absolute;
  left:0;
  top:2px;
  width:13px;
  height:13px;
  border-radius:999px;
  background:rgba(49,215,139,.16);
  box-shadow:inset 0 0 0 1px rgba(72,227,157,.22);
}
.ops-proof__checks li::after{
  content:"";
  position:absolute;
  left:4px;
  top:5px;
  width:5px;
  height:3px;
  border-left:2px solid #5ee6a8;
  border-bottom:2px solid #5ee6a8;
  transform:rotate(-45deg);
}
.ops-proof__panel{
  position:relative;
  min-height:188px;
  padding:22px 24px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:
    radial-gradient(circle at 72% 58%, rgba(86,111,255,.28), transparent 32%),
    radial-gradient(circle at 88% 78%, rgba(129,93,255,.22), transparent 24%),
    linear-gradient(180deg, rgba(16,28,55,.7), rgba(8,14,31,.76));
  box-shadow:0 14px 36px rgba(0,0,0,.28);
  overflow:hidden;
  contain:paint;
}
.ops-proof__story{
  display:block;
}
.ops-proof__quote{
  min-width:0;
}
.ops-proof__quote-mark{
  color:#7f66ff;
  font-size:28px;
  font-weight:900;
  line-height:.8;
}
.ops-proof__quote p{
  max-width:250px;
  margin:4px 0 0;
  color:#d8e1ff;
  font-size:11px;
  line-height:1.6;
}
.ops-proof__quote strong{
  display:block;
  margin-top:11px;
  color:#b7c6ef;
  font-size:10px;
}
.ops-proof__stars{
  margin-top:7px;
  color:#ffcf4f;
  font-size:11px;
  letter-spacing:1px;
}
.ops-proof__map{
  position:absolute;
  right:4px;
  bottom:0;
  width:54%;
  min-width:330px;
  height:160px;
  display:block;
  overflow:visible;
}
.ops-proof__map::before{
  content:"";
  position:absolute;
  z-index:0;
  inset:6px -4px -8px;
  border-radius:16px;
  background:radial-gradient(circle at 56% 54%, rgba(95,88,255,.28), transparent 58%);
  opacity:.75;
}
.ops-world-map{
  position:absolute;
  right:0;
  bottom:0;
  z-index:2;
  width:105%;
  min-width:350px;
  height:auto;
  overflow:visible;
}
.ops-world-globe .globe-core{
  fill:url(#globeFill);
  stroke:rgba(120,155,255,.3);
  stroke-width:1.5;
}
.ops-world-globe .globe-grid ellipse,
.ops-world-globe .globe-grid path{
  fill:none;
  stroke:rgba(126,164,255,.28);
  stroke-width:1;
}
.ops-world-globe .globe-routes path{
  fill:none;
  stroke:rgba(122,191,255,.52);
  stroke-width:1.6;
  stroke-dasharray:5 7;
}
.ops-world-globe .globe-routes path:nth-child(2){
  stroke:rgba(167,118,255,.5);
}
.ops-world-globe .globe-routes path:nth-child(3){
  stroke:rgba(111,140,255,.42);
}
.ops-world-globe .node-glow{
  opacity:.62;
}
.ops-world-globe .node-blue{
  fill:url(#nodeBlue);
}
.ops-world-globe .node-violet{
  fill:url(#nodeViolet);
}
.ops-world-globe .node-dot{
  fill:#9edcff;
  stroke:#dff7ff;
  stroke-width:1.5;
}
.ops-world-globe .node-dot--violet{
  fill:#b48cff;
  stroke:#f0e5ff;
}
.ops-proof__global{
  position:absolute;
  left:12px;
  bottom:18px;
  z-index:3;
  padding:5px 8px;
  border-radius:6px;
  background:rgba(43,54,137,.38);
  color:#b8c5ff;
  font-size:9px;
  font-weight:800;
}
.hero{
  padding:54px 0 32px;
  display:grid;grid-template-columns:minmax(0, .92fr) minmax(0, 1.08fr);
  align-items:center;gap:42px;
}
.hero__badge{
  display:inline-flex;align-items:center;gap:10px;
  height:42px;padding:0 18px;border-radius:999px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  color:#dce7ff;
  margin-bottom:22px;
}
.hero__badge::before{
  content:""; width:8px; height:8px; border-radius:999px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
}
.hero__title{
  margin:0;
  font-size:74px;
  line-height:.98;
  letter-spacing:-.05em;
  max-width:760px;
}
.hero__title span{display:block}
.hero__title .accent{
  background:linear-gradient(90deg, #ffffff 0%, #d9ebff 12%, #59a3ff 48%, #4f89ff 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero__text{
  max-width:720px;
  margin:30px 0 0;
  font-size:21px;
  line-height:1.65;
  color:var(--muted);
}
.hero__actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}
.hero__quick{
  display:grid;grid-template-columns:repeat(4,1fr);gap:18px;
  margin-top:42px;
}
.quick-item{display:flex;gap:12px;align-items:flex-start}
.quick-item__icon{
  width:34px;height:34px;border-radius:12px;
  display:grid;place-items:center;
  background:linear-gradient(135deg, rgba(31,128,255,.16), rgba(129,93,255,.14));
  border:1px solid var(--line);
  flex:0 0 34px;
}
.quick-item__title{font-size:16px;font-weight:700}
.quick-item__text{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.45}
.hero-mock{
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.012));
  box-shadow:var(--shadow);
  padding:22px;
  position:relative;
  overflow:hidden;
}
.hero-mock::before{
  content:""; position:absolute; inset:-1px;
  border-radius:inherit;
  background:
    radial-gradient(circle at 80% 8%, rgba(129,93,255,.12), transparent 18%),
    radial-gradient(circle at 24% 18%, rgba(31,128,255,.08), transparent 18%);
  pointer-events:none;
}
.browser-dots{display:flex;gap:8px;margin-bottom:18px}
.browser-dots span{width:10px;height:10px;border-radius:999px}
.dot-red{background:#ff6b6b}.dot-yellow{background:#ffc857}.dot-green{background:#3ad29f}
.mock-app{
  position:relative;
  display:grid;grid-template-columns:180px 1fr;gap:18px;
  min-height:388px;
}
.mock-side,.mock-main{
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(7,15,28,.66);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}
.mock-side{padding:18px}
.mock-brand{font-size:22px;font-weight:800;margin-bottom:18px}
.mock-add{
  height:44px;display:flex;align-items:center;justify-content:center;
  border-radius:12px;
  background:linear-gradient(135deg, var(--blue), var(--blue-2));
  font-weight:700;margin-bottom:16px
}
.mock-menu{display:grid;gap:12px}
.mock-menu .item{
  height:42px;border-radius:12px;border:1px solid var(--line);
  display:flex;align-items:center;padding:0 14px;background:rgba(255,255,255,.02)
}
.mock-main{padding:18px}
.mock-main__top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.mock-main__title{font-size:34px;font-weight:800}
.mock-main__sub{font-size:14px;color:var(--muted);margin-top:8px}
.mock-button-small{
  min-width:134px;height:40px;border-radius:12px;border:1px solid var(--line);
  display:inline-flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg, var(--blue), var(--blue-2));font-weight:700
}
.mock-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}
.mock-card{
  min-height:90px;border-radius:16px;border:1px solid var(--line);
  background:rgba(255,255,255,.02);padding:14px
}
.mock-card__label{font-size:14px;color:var(--muted)}
.mock-card__value{font-size:34px;font-weight:800;margin-top:10px}
.mock-table{margin-top:18px;border-radius:18px;border:1px solid var(--line);overflow:hidden}
.mock-table__head,.mock-table__row{
  display:grid;grid-template-columns:1.35fr .7fr .7fr 1.1fr 1fr;gap:14px;align-items:center
}
.mock-table__head{
  padding:14px 16px;background:rgba(255,255,255,.025);font-size:12px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase
}
.mock-table__row{
  padding:18px 16px;background:rgba(255,255,255,.015)
}
.section-title{
  text-align:center;
  font-size:40px;
  letter-spacing:-.03em;
  margin:0 0 24px;
}
.features{padding:18px 0 0}
.index-section-desc{
  max-width:760px;
  margin:0 auto 18px;
  text-align:center;
  color:var(--muted);
  line-height:1.6;
}
.feature-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.feature-card,.why-panel,.cta-panel,.auth-panels .panel,.dashboard-panel,.table-panel{
  background:linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.015));
  border:1px solid var(--line);
  border-radius:20px;
  box-shadow:var(--shadow);
}
.feature-card{
  position:relative;
  padding:22px 22px 20px;
  display:flex;
  gap:18px;
  align-items:flex-start;
  overflow:hidden;
}
.feature-card::before{
  display:none;
}
.icon-tile{
  width:52px;
  height:52px;
  border-radius:10px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  background:linear-gradient(135deg, rgba(31,128,255,.16), rgba(129,93,255,.16));
  font-size:24px;
  flex:0 0 52px;
}
.icon-tile--real svg{
  width:26px;
  height:26px;
  fill:none;
  stroke:#dce7ff;
  stroke-width:1.8;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.feature-card:nth-child(2n) .icon-tile--real svg{stroke:#9eb8ff}
.feature-card:nth-child(3n) .icon-tile--real svg{stroke:#c8b7ff}
.feature-card:nth-child(4n) .icon-tile--real svg{stroke:#8fd6ff}
.why-item .icon-tile--real svg{stroke:#dce7ff}
.feature-card > div:last-child,
.why-item{
  min-width:0;
}
.feature-card h3,.why-item h3{
  margin:0;
  font-size:24px;
  letter-spacing:-.02em;
}
.feature-card p,.why-item p,.footer p,.footer li,.auth-note,.notice,.table-empty{
  margin:10px 0 0;
  color:var(--muted);
  line-height:1.6;
}
.why{padding:18px 0 0}
.why-panel{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  overflow:hidden
}
.why-item{padding:28px 28px 26px;position:relative}
.why-item + .why-item{border-left:1px solid var(--line-soft)}
.cta{padding:16px 0 0}
.cta-panel{
  display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:30px 34px
}
.cta-panel--home{
  align-items:center;
  margin-top:26px;
  padding:15px 24px;
  border-radius:10px;
  background:linear-gradient(135deg, rgba(31,128,255,.58), rgba(129,93,255,.74));
  box-shadow:0 12px 32px rgba(84,70,255,.18);
  contain:paint;
}
.cta-panel--home > .icon-tile{
  flex:0 0 50px;
  width:50px;
  height:50px;
  border-radius:10px;
  background:rgba(255,255,255,.12);
}
.cta-panel__title{font-size:42px;font-weight:800;letter-spacing:-.03em}
.cta-panel__text{margin-top:10px;font-size:17px;color:var(--muted)}
.cta-panel--home .cta-panel__title{
  font-size:16px;
  letter-spacing:-.02em;
}
.cta-panel--home .cta-panel__text{
  margin-top:5px;
  color:#d8e0ff;
  font-size:11px;
}
.cta-panel--home .hero__actions{
  margin-top:0;
}
.cta-panel--home .btn{
  height:34px;
  padding:0 14px;
  font-size:10px;
}
.cta-panel--home .btn--ghost{
  background:rgba(0,0,0,.26);
}
.footer{
  margin-top:18px;
  border-top:1px solid var(--line-soft);
  padding:28px 0 18px;
}
.footer__grid{
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr 1.1fr;gap:28px
}
.footer h4{margin:0 0 14px;font-size:18px}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;color:var(--muted)}
.footer .brand__title{font-size:32px}
.footer__copy{text-align:center;color:var(--muted-2);padding-top:24px;font-size:14px}
.home-landing .footer{
  margin-top:0;
  padding-top:40px;
  background:rgba(2,7,16,.2);
}
.home-landing .footer__grid{
  grid-template-columns:1.45fr repeat(4,1fr);
}
.home-landing .footer .brand{
  min-width:0;
}
.home-landing .footer .brand__title{
  font-size:16px;
}
.home-landing .footer h4{
  font-size:12px;
}
.home-landing .footer p,
.home-landing .footer li,
.home-landing .footer__copy{
  font-size:11px;
}

.auth-section{padding-top:24px}
.home-landing .auth-section{
  display:none;
}
.home-landing.home-auth-open .auth-section,
.home-landing .auth-section:has(#login:target),
.home-landing .auth-section:has(#register:target){
  display:block;
}

.home-landing .ops-hero,
.home-landing .ops-download,
.home-landing .ops-stack,
.home-landing .ops-proof,
.home-landing .cta{
  content-visibility:auto;
  contain-intrinsic-size:1px 520px;
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    scroll-behavior:auto !important;
    transition:none !important;
    animation:none !important;
  }
}

@media (prefers-reduced-transparency: reduce){
  body::before,
  .home-landing::before,
  .ops-dashboard-preview__glow,
  .ops-proof__map::before{
    display:none;
  }
}
.auth-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{padding:28px}
.panel h2{margin:0 0 18px;font-size:34px}
.input,.select{
  width:100%;height:52px;padding:0 16px;margin-bottom:12px;
  font-size:15px
}
.notice{
  padding:14px 16px;border-radius:14px;border:1px solid var(--line);margin-bottom:12px
}
.notice--error{background:rgba(255,107,107,.11);border-color:rgba(255,107,107,.16);color:#ffd8d8}
.notice--success{background:rgba(40,199,111,.11);border-color:rgba(40,199,111,.16);color:#d0ffe1}
.auth-note{font-size:14px}
.registration-captcha{
  min-height:65px;
  margin:2px 0 14px;
  overflow:hidden;
}
.registration-captcha .cf-turnstile{
  max-width:100%;
}
.user-chip{
  min-height:48px;padding:0 16px;border-radius:14px;border:1px solid var(--line);
  display:inline-flex;align-items:center;background:rgba(255,255,255,.02)
}

.dashboard-layout{
  display:grid;grid-template-columns:280px 1fr;gap:28px;
  min-height:100vh;padding:28px 0
}
.sidebar{
  padding:24px;
  border:1px solid var(--line);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.015));
  box-shadow:var(--shadow);
  height:fit-content;position:sticky;top:110px
}
.side-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:18px}
.side-stat,.server-card,.summary-card,.table-panel,.dashboard-panel{
  border:1px solid var(--line);
  border-radius:20px;
  background:rgba(255,255,255,.02)
}
.side-stat{padding:16px;min-height:130px}
.side-stat__label{color:var(--muted);margin-top:12px}
.side-stat__value{font-size:40px;font-weight:800;margin-top:8px}
.server-card{padding:18px;margin-top:20px}
.badge-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.badge{
  min-height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--line);
  display:inline-flex;align-items:center;background:rgba(255,255,255,.025);font-size:14px
}
.badge--success{background:rgba(40,199,111,.12);border-color:rgba(40,199,111,.22);color:#c9ffe0}
.dashboard-top{
  border:1px solid var(--line);border-radius:24px;padding:32px 34px;
  background:linear-gradient(180deg, rgba(255,255,255,.028), rgba(255,255,255,.015));
  box-shadow:var(--shadow)
}
.kicker{color:var(--violet-2);font-size:15px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.page-title{margin:12px 0 0;font-size:64px;letter-spacing:-.05em}
.page-sub{margin-top:12px;color:var(--muted);font-size:19px}
.action-row{display:flex;gap:14px;flex-wrap:wrap}
.dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:18px}
.summary-card{padding:22px;min-height:150px}
.summary-card__label{font-size:18px;color:var(--muted)}
.summary-card__value{font-size:52px;font-weight:800;margin-top:14px;letter-spacing:-.03em}
.summary-card__value--success{color:#7dffb1}
.table-panel{padding:26px;margin-top:18px}
.table-headline{font-size:17px;font-weight:800;letter-spacing:.08em;color:var(--violet-2);text-transform:uppercase}
.table-title{font-size:52px;font-weight:800;letter-spacing:-.04em;margin-top:10px}
.table-desc{font-size:18px;color:var(--muted);margin-top:12px}
.data-table{width:100%;border-collapse:collapse;margin-top:22px}
.data-table th,.data-table td{padding:20px 18px;border-top:1px solid var(--line-soft);text-align:left}
.data-table th{font-size:13px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase}
.table-actions{display:flex;gap:12px;flex-wrap:wrap}
.table-btn{
  height:44px;padding:0 18px;border-radius:14px;border:1px solid var(--line);
  display:inline-flex;align-items:center;background:rgba(255,255,255,.02);font-weight:700
}
.table-btn--primary{background:linear-gradient(135deg, var(--violet), var(--blue-2))}
.form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.form-grid .input,.form-grid .select{margin:0}
.form-grid .btn{height:52px}

@media (max-width: 1360px){
  .hero{grid-template-columns:1fr}
  .hero__title{font-size:62px}
  .feature-grid{grid-template-columns:repeat(2,1fr)}
  .footer__grid{grid-template-columns:1.3fr 1fr 1fr}
  .dashboard-layout{grid-template-columns:1fr}
  .sidebar{position:relative;top:0}
}
@media (max-width: 960px){
  .container{width:min(var(--container), calc(100% - 32px))}
  .header__inner{flex-wrap:wrap;padding:14px 0}
  .nav{order:3;justify-content:flex-start;width:100%;overflow:auto;gap:28px}
  .nav a.is-active::after{bottom:-10px}
  .hero__title{font-size:48px}
  .hero__quick,.auth-panels,.why-panel,.summary-grid,.mock-cards,.form-grid,.feature-grid{grid-template-columns:1fr}
  .cta-panel,.dashboard-head{flex-direction:column;align-items:flex-start}
  .footer__grid{grid-template-columns:1fr}
  .page-title{font-size:44px}
  .table-title{font-size:36px}
  .mock-app{grid-template-columns:1fr}
}

.brand__logo-image{width:auto;height:58px;object-fit:contain;display:block;}

.hero-mock__frame{
  position:relative;
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:rgba(7,15,28,.55);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.hero-mock__image{
  display:block;
  width:100%;
  height:auto;
  border-radius:18px;
}


/* SaaS-style dashboard refresh */
.dashboard-shell{
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  min-height:100vh;
  background:transparent;
}
.dashboard-sidebar{
  background:rgba(35,44,70,.78);
  border-right:1px solid rgba(255,255,255,.06);
  padding:22px 18px;
  display:flex;
  flex-direction:column;
  gap:18px;
  position:sticky;
  top:0;
  height:100vh;
}
.dashboard-sidebar .brand{
  min-width:0;
  gap:14px;
}
.dashboard-sidebar .brand__logo{
  width:44px;height:44px;flex-basis:44px;border-radius:12px;
}
.dashboard-sidebar .brand__title{font-size:18px}
.dashboard-sidebar .brand__subtitle{font-size:11px}
.sidebar-group-title{
  color:var(--muted-2);
  text-transform:uppercase;
  font-size:12px;
  letter-spacing:.08em;
  margin:12px 0 0;
}
.sidebar-nav{display:grid;gap:8px}
.sidebar-link{
  height:42px;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0 14px;
  border-radius:12px;
  color:#cfd9ec;
  border:1px solid transparent;
}
.sidebar-link:hover,.sidebar-link.is-active{
  background:rgba(255,255,255,.04);
  border-color:rgba(255,255,255,.06);
}
.sidebar-icon{width:18px;text-align:center;opacity:.9}
.dashboard-main{min-width:0;display:flex;flex-direction:column}
.dashboard-topbar{
  min-height:74px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:16px 24px;
  background:rgba(42,50,78,.78);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:18px}
.topbar-search{flex:1;max-width:560px;position:relative}
.topbar-search input{
  width:100%;
  height:40px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.04);
  color:var(--text);
  padding:0 18px 0 42px;
}
.topbar-search::before{
  content:"🔎";
  position:absolute;
  left:14px;
  top:8px;
  font-size:16px;
  opacity:.75;
}
.topbar-user{display:flex;align-items:center;gap:10px;color:#d8e2f5}
.topbar-avatar{
  width:36px;height:36px;border-radius:999px;
  background:linear-gradient(135deg, rgba(31,128,255,.35), rgba(129,93,255,.32));
  display:grid;place-items:center;
  font-size:14px;font-weight:800;
}
.dashboard-content{padding:24px}
.dashboard-kicker{
  color:#fff;
  text-transform:uppercase;
  font-size:14px;
  letter-spacing:.04em;
  font-weight:800;
}
.stats-banner{
  margin-top:18px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.05);
  border-radius:18px;
  padding:20px;
  display:grid;
  grid-template-columns:1.1fr .7fr 1fr;
  gap:18px;
}
.stats-banner__box{min-height:88px}
.stats-banner__title{color:#dce5f8;font-size:15px;font-weight:700}
.stats-banner__value{margin-top:8px;font-size:34px;font-weight:800}
.stats-banner__muted{color:var(--muted);margin-top:6px}
.ring{
  width:120px;height:120px;border-radius:50%;
  border:12px solid rgba(255,255,255,.06);
  border-top-color:#000;
  display:grid;place-items:center;
  color:#dce5f8;
  margin-left:auto;
}
.saas-card-grid{
  margin-top:22px;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:22px;
}
.saas-card{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.05);
  border-radius:16px;
  padding:20px;
}
.saas-card__top{display:flex;align-items:center;gap:12px;color:#fff;font-weight:700}
.saas-icon{
  width:34px;height:34px;border-radius:999px;
  display:grid;place-items:center;
  background:rgba(79,137,255,.18);
  color:#8cb8ff;
}
.saas-value{margin-top:26px;font-size:38px;font-weight:800}
.saas-sub{margin-top:6px;color:var(--muted)}
.saas-trend{display:inline-flex;gap:8px;align-items:center;margin-top:10px;color:#dfe9fb}
.saas-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:44px;
  height:24px;
  border-radius:8px;
  padding:0 8px;
  background:rgba(40,199,111,.18);
  color:#7cffbc;
  font-size:12px;
  font-weight:700;
}
.saas-chip--warn{background:rgba(255,184,77,.16);color:#ffc86c}
.server-table-panel{
  margin-top:22px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.05);
  border-radius:16px;
  padding:20px;
}
.server-table-title{font-size:26px;font-weight:800;margin-bottom:16px}
.server-table{width:100%;border-collapse:collapse;overflow:hidden}
.server-table thead th{
  color:#aac0e5;
  font-size:14px;
  font-weight:700;
  background:rgba(255,255,255,.03);
}
.server-table th,.server-table td{
  padding:14px 12px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.server-table tbody tr:hover{background:rgba(255,255,255,.02)}
.status-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:68px;
  height:32px;
  border-radius:999px;
  padding:0 12px;
  background:rgba(40,199,111,.14);
  border:1px solid rgba(40,199,111,.18);
  color:#87f1ba;
  font-weight:700;
}
.action-inline{display:flex;gap:10px;flex-wrap:wrap}
.action-inline .table-btn{
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
  border-radius:10px;
  padding:10px 12px;
  color:#ebf2ff;
}
.dashboard-bottom-grid{
  margin-top:22px;
  display:grid;
  grid-template-columns:380px 1fr;
  gap:22px;
}
.form-panel,.players-panel{
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.05);
  border-radius:16px;
  padding:20px;
}
.panel-title{margin:0 0 16px;font-size:24px;font-weight:800}
.players-table{width:100%;border-collapse:collapse}
.players-table th,.players-table td{
  padding:12px 10px;
  border-bottom:1px solid rgba(255,255,255,.05);
  text-align:left;
}
.players-table th{color:#aac0e5;font-size:13px}
@media (max-width: 1180px){
  .saas-card-grid{grid-template-columns:1fr}
  .stats-banner{grid-template-columns:1fr}
  .dashboard-bottom-grid{grid-template-columns:1fr}
}
@media (max-width: 900px){
  .dashboard-shell{grid-template-columns:1fr}
  .dashboard-sidebar{
    position:fixed;
    left:0;
    top:0;
    z-index:40;
    width:min(280px, 86vw);
    height:100vh;
    transform:translateX(-100%);
    transition:transform .22s ease;
    box-shadow:0 18px 48px rgba(0,0,0,.35);
  }
  .dashboard-shell.sidebar-is-open .dashboard-sidebar{transform:translateX(0)}
  .dashboard-shell.sidebar-is-open .sidebar-overlay{
    opacity:1;
    pointer-events:auto;
  }
  .dashboard-topbar{flex-wrap:wrap}
  .topbar-search{max-width:none;width:100%}
  .support-layout{grid-template-columns:1fr}
  .support-form__row{grid-template-columns:1fr}
  .support-list{max-height:none}
}
@media (min-width: 901px){
  .sidebar-overlay{display:none}
}


/* Dashboard SaaS / team management */
.brand__logo-image{
  width:56px;
  height:auto;
  display:block;
}
.dashboard-body{
  background:#232b42;
}
.app-shell{
  min-height:100vh;
  display:grid;
  grid-template-columns:250px 1fr;
  background:#232b42;
}
.app-sidebar{
  background:#2a3148;
  border-right:1px solid rgba(255,255,255,.05);
  padding:18px 14px 22px;
  display:flex;
  flex-direction:column;
  gap:18px;
}
.brand--sidebar{
  min-width:0;
  padding:0 6px 14px;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.sidebar-block{padding:0 6px}
.sidebar-block--bottom{margin-top:auto}
.sidebar-caption{
  font-size:14px;
  color:#9ca8c3;
  margin-bottom:12px;
}
.sidebar-menu{display:grid;gap:6px}
.sidebar-menu__item{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:44px;
  padding:0 14px;
  border-radius:12px;
  color:#c4cee4;
}
.sidebar-menu__item:hover,
.sidebar-menu__item.is-current{
  background:#313954;
  color:#fff;
}
.app-main{
  min-width:0;
  display:flex;
  flex-direction:column;
}
.app-topbar{
  min-height:78px;
  background:#2a3148;
  border-bottom:1px solid rgba(0,0,0,.28);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 26px;
}
.app-topbar__left,
.app-topbar__right{
  display:flex;
  align-items:center;
  gap:14px;
}
.menu-toggle{
  background:transparent;
  border:none;
  color:#dbe4fb;
  font-size:24px;
  cursor:pointer;
}
.app-topbar__label{
  color:#dbe4fb;
  font-size:15px;
}
.top-search{
  flex:1;
  max-width:560px;
  position:relative;
}
.top-search__icon{
  position:absolute;
  left:16px;
  top:50%;
  transform:translateY(-50%);
  color:#8fa0c2;
}
.top-search__input{
  width:100%;
  height:42px;
  border-radius:24px;
  border:1px solid rgba(255,255,255,.12);
  background:#303754;
  color:#eff5ff;
  padding:0 16px 0 46px;
  outline:none;
  box-shadow:0 0 0 1px rgba(255,216,128,.65);
}
.app-select{
  min-width:132px;
  height:42px;
  background:#303754;
  color:#fff;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:0 14px;
}
.icon-pill{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#303754;
}
.profile-chip{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
}
.profile-chip__avatar,
.avatar{
  object-fit:cover;
  border-radius:999px;
}
.profile-chip__avatar{
  width:38px;
  height:38px;
}
.profile-chip__fallback,
.avatar--fallback{
  background:linear-gradient(135deg, #4e8dff, #6c63ff);
  color:#fff;
  font-weight:800;
  display:grid;
  place-items:center;
}
.profile-chip__fallback{
  width:38px;
  height:38px;
  border-radius:999px;
}
.dashboard-content{
  padding:32px 26px 40px;
}
.notice{
  padding:14px 16px;
  border-radius:14px;
  margin-bottom:18px;
}
.notice--success{
  background:rgba(40,199,111,.12);
  border:1px solid rgba(40,199,111,.2);
  color:#d5ffe8;
}
.notice--error{
  background:rgba(255,107,107,.12);
  border:1px solid rgba(255,107,107,.2);
  color:#ffd8d8;
}
.dashboard-head,
.subpage-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:22px;
}
.eyebrow{
  font-size:14px;
  font-weight:800;
  letter-spacing:.05em;
  color:#f1f4ff;
}
.dashboard-title,
.subpage-head h1{
  margin:8px 0 0;
  font-size:40px;
  line-height:1.1;
}
.dashboard-subtitle,
.subpage-head__meta{
  margin:10px 0 0;
  color:#c4cee4;
}
.top-actions{display:flex;gap:12px}
.stats-banner,
.metric-grid,
.metric-strip{
  display:grid;
  gap:24px;
  margin-bottom:24px;
}
.stats-banner{
  grid-template-columns:repeat(3,1fr);
  padding:20px 22px;
  background:#2d3550;
  border-radius:8px;
}
.stats-banner__label,
.metric-strip__label{
  color:#b6c3df;
  font-size:15px;
}
.stats-banner__value,
.metric-strip__value{
  margin-top:8px;
  font-size:44px;
  font-weight:800;
  color:#fff;
}
.stats-banner__hint{
  margin-top:6px;
  color:#b6c3df;
  font-size:14px;
}
.metric-grid{
  grid-template-columns:repeat(3,1fr);
}
.metric-card,
.panel,
.metric-strip{
  background:#2d3550;
  border-radius:6px;
}
.metric-card{
  padding:22px 20px;
}
.metric-card__icon{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#3a67c9;
  margin-bottom:16px;
}
.metric-card__title{
  color:#fff;
  font-weight:700;
}
.metric-card__value{
  font-size:42px;
  margin-top:24px;
  font-weight:800;
}
.metric-card__delta{
  color:#b6c3df;
  margin-top:8px;
}
.metric-card__delta.is-positive{
  color:#7de29f;
}
.panel{
  padding:22px;
  margin-bottom:24px;
}
.panel--narrow{max-width:760px}
.panel--danger{
  border:1px solid rgba(255,101,101,.6);
}
.panel__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:18px;
}
.panel__header h2{
  margin:0;
  font-size:18px;
}
.table-wrap{
  overflow:auto;
}
.data-table{
  width:100%;
  border-collapse:collapse;
}
.data-table th,
.data-table td{
  padding:14px 12px;
  text-align:left;
  border-bottom:1px solid rgba(255,255,255,.06);
  vertical-align:middle;
}
.data-table th{
  color:#c4cee4;
  font-size:14px;
  font-weight:700;
}
.status-badge{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(40,199,111,.14);
  color:#9af1bb;
  border:1px solid rgba(40,199,111,.24);
}
.table-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.btn--tiny{
  height:38px;
  padding:0 14px;
  border-radius:10px;
  font-size:14px;
}
.btn--danger{
  background:#f26a6a;
  border-color:#f26a6a;
  color:#fff;
}
.form-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.form-grid--search{
  grid-template-columns:1fr 220px;
}
.stack-form{
  display:grid;
  gap:14px;
}
.input{
  width:100%;
  min-height:46px;
  padding:0 14px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.08);
  background:#303754;
  color:#fff;
}
.inline-form,
.inline-actions{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.member-row{
  display:flex;
  align-items:center;
  gap:10px;
}
.avatar--small{
  width:34px;
  height:34px;
}
.avatar--large{
  width:96px;
  height:96px;
}
.muted-text{
  color:#b6c3df;
  font-size:14px;
}
.team-summary{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
}
.team-summary__id{
  font-size:18px;
  font-weight:800;
  border-bottom:2px dotted rgba(255,200,100,.7);
  display:inline-block;
  padding-bottom:4px;
}
.team-summary__meta{
  margin-top:8px;
  color:#c4cee4;
}
.metric-strip{
  grid-template-columns:repeat(2,1fr);
  padding:22px;
}
.metric-strip__item{
  text-align:center;
}
.empty-state{
  min-height:140px;
  display:grid;
  place-items:center;
  color:#d6def4;
  font-size:18px;
  text-align:center;
}
.subpage-layout{
  display:grid;
  grid-template-columns:190px 1fr;
  gap:24px;
}
.subpage-side{
  padding-top:8px;
  display:grid;
  align-content:start;
  gap:8px;
}
.subpage-side__link{
  font-weight:800;
  color:#eaf0ff;
  letter-spacing:.02em;
}
.subpage-side__link.is-current{
  color:#fff;
}
.search-panel{
  border:1px solid rgba(255,255,255,.22);
  border-radius:4px;
  padding:16px;
}
.search-panel__title{
  color:#c4cee4;
  font-size:14px;
  margin-bottom:12px;
}
.search-panel__title span{
  display:inline-block;
  padding:2px 8px;
  border-radius:6px;
  background:#4a87f6;
  color:#fff;
  font-size:12px;
}
.role-badge{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:0 12px;
  border-radius:6px;
  font-weight:700;
}
.role-badge--owner{
  background:#f0c36b;
  color:#2d1f00;
}
.role-badge--manager{
  background:#91d36d;
  color:#1d3412;
}
.role-badge--member{
  background:#4f8bff;
  color:#fff;
}
.profile-settings{
  display:flex;
  align-items:center;
  gap:24px;
  flex-wrap:wrap;
}
.danger-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.danger-title{
  font-size:18px;
  font-weight:800;
  color:#ff6c6c;
  margin-bottom:8px;
}
@media (max-width: 1100px){
  .app-shell{grid-template-columns:1fr}
  .app-sidebar{display:none}
  .stats-banner,.metric-grid,.form-grid,.subpage-layout,.metric-strip{grid-template-columns:1fr}
  .top-search{max-width:none}
}


/* dashboard user menu + profile */
.brand__logo-image{display:block;max-width:56px;height:auto}
.user-menu{position:relative}
.user-menu__summary{
  list-style:none;
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
  padding:0 4px;
  color:#d8e2f5;
}
.user-menu__summary::-webkit-details-marker{display:none}
.user-menu__dropdown{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  min-width:220px;
  background:#2d3550;
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  overflow:hidden;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
  z-index:50;
}
.user-menu__dropdown a{
  display:block;
  padding:12px 14px;
  color:#eef3ff;
}
.user-menu__dropdown a:hover{background:rgba(255,255,255,.05)}
.topbar-bell{
  width:36px;height:36px;border-radius:999px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);
}
.avatar--fallback{
  width:100%;
  height:100%;
}
.profile-grid{
  display:grid;
  grid-template-columns: 340px minmax(0,1fr);
  gap:24px;
  margin-bottom:24px;
}
.prefs-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:18px;
}
.pref-item{
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
  border-radius:10px;
  padding:18px;
}
.pref-item__title{font-weight:700;margin-bottom:8px}
.pref-item__text{color:#c4cee4}
.subpage-layout{
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:24px;
}
.search-panel__title{
  font-weight:700;
  margin-bottom:14px;
}
@media (max-width: 1100px){
  .profile-grid,.subpage-layout{grid-template-columns:1fr}
  .prefs-grid{grid-template-columns:1fr}
}


/* Roles management */
.roles-layout{
  display:grid;
  grid-template-columns:minmax(320px, 420px) minmax(0, 1fr);
  gap:24px;
  align-items:start;
}
.roles-list{display:grid;gap:14px}
.role-card-link{display:block}
.role-card-link.is-current .role-card{
  border-color:rgba(78,141,255,.55);
  box-shadow:0 0 0 1px rgba(78,141,255,.22) inset;
}
.role-card{
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);
  border-radius:18px;
  padding:18px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.role-card__left{display:flex;align-items:center;gap:16px}
.role-card__name{font-size:18px;font-weight:800}
.role-swatch{
  width:18px;
  height:18px;
  border-radius:999px;
  display:inline-block;
  box-shadow:0 0 0 4px rgba(255,255,255,.04);
}
.role-pill{
  --role-color:#4e8dff;
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:999px;
  font-weight:700;
  font-size:14px;
  border:1px solid color-mix(in srgb, var(--role-color) 45%, rgba(255,255,255,.08));
  background:color-mix(in srgb, var(--role-color) 18%, rgba(255,255,255,.02));
  color:#fff;
}
.label{display:block;margin-bottom:10px;color:var(--muted);font-size:14px}
.input--color{
  min-height:54px;
  padding:8px 10px;
}
.panel__header--split{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
.create-role-dropdown{position:relative}
.create-role-dropdown summary{list-style:none}
.create-role-dropdown summary::-webkit-details-marker{display:none}
.create-role-dropdown[open] .create-role-dropdown__panel{
  display:block;
}
.create-role-dropdown__panel{
  display:none;
  position:absolute;
  right:0;
  top:58px;
  width:340px;
  z-index:30;
  padding:18px;
  border-radius:18px;
  border:1px solid var(--line);
  background:#172239;
  box-shadow:var(--shadow);
}
.perm-head{margin-bottom:12px}
.panel__title-sm{font-size:22px;font-weight:800;margin-bottom:6px}
.perm-group{
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  background:rgba(255,255,255,.02);
  margin-top:16px;
}
.perm-group__head{
  padding:16px 18px;
  background:rgba(255,255,255,.04);
  font-size:18px;
  font-weight:800;
}
.perm-group__body{padding:12px 18px}
.perm-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:12px 0;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.perm-row:last-child{border-bottom:none}
.perm-row__title{font-size:16px;font-weight:800}
.perm-row__desc{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.45}
.perm-toggle{
  position:relative;
  width:72px;
  height:36px;
  flex:0 0 72px;
}
.perm-toggle input{
  position:absolute;
  inset:0;
  opacity:0;
  cursor:pointer;
}
.perm-toggle__slider{
  position:absolute;
  inset:0;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  transition:.2s ease;
}
.perm-toggle__slider::before{
  content:"Off";
  position:absolute;
  width:28px;
  height:28px;
  left:4px;
  top:4px;
  border-radius:999px;
  background:#fff;
  color:#e66;
  font-size:12px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:.2s ease;
}
.perm-toggle input:checked + .perm-toggle__slider{
  background:#2fd09a;
}
.perm-toggle input:checked + .perm-toggle__slider::before{
  content:"On";
  left:40px;
  color:#1b8f68;
}
.role-edit-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:20px;
}
.btn--success{
  background:linear-gradient(135deg,#27c690,#43d39e);
  border-color:rgba(255,255,255,.08);
  box-shadow:0 20px 50px rgba(39,198,144,.2), inset 0 1px 0 rgba(255,255,255,.18);
}
@media (max-width: 1200px){
  .roles-layout{grid-template-columns:1fr}
  .create-role-dropdown__panel{position:static;width:100%;margin-top:12px}
}


body.drawer-open{overflow:hidden}
.topbar-bell{
  position:relative;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.03);
  color:var(--text);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
}
.topbar-bell__badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:linear-gradient(135deg, var(--blue), var(--violet));
  color:#fff;
  font-size:11px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
}
.notif-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.45);
  opacity:0;
  visibility:hidden;
  transition:.2s ease;
  z-index:2147483646;
}
.notif-overlay.is-visible{opacity:1;visibility:visible}
.notif-drawer{
  position:fixed;
  top:0;
  right:0;
  width:min(420px, 100vw);
  height:100vh;
  background:linear-gradient(180deg, #0c1628 0%, #101c31 100%);
  border-left:1px solid var(--line);
  box-shadow:-18px 0 50px rgba(0,0,0,.35);
  transform:translateX(100%);
  transition:transform .25s ease;
  z-index:2147483647;
  padding:22px;
  overflow:auto;
}
.notif-drawer.is-open{transform:translateX(0)}
.notif-drawer__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:16px;
}
.notif-drawer__header h3{margin:8px 0 0;font-size:28px}
.notif-close{
  width:38px;height:38px;border-radius:12px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.02);color:var(--text);
  cursor:pointer;font-size:24px;line-height:1;
}
.notif-drawer__section{
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.02);
  padding:16px;
  margin-bottom:16px;
}
.notif-drawer__section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.notif-drawer__section-head h4{margin:0;font-size:18px}
.notif-link{
  border:none;background:none;color:#8fb4ff;font-weight:700;cursor:pointer;padding:0;
}
.notif-list{display:grid;gap:12px}
.notif-item{
  display:flex;
  gap:12px;
  border:1px solid var(--line);
  border-radius:16px;
  padding:14px;
  background:rgba(255,255,255,.018);
}
.notif-item--unread{border-color:rgba(78,141,255,.35); background:rgba(78,141,255,.08)}
.notif-item__icon{
  width:38px;height:38px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.04);
  flex:0 0 38px;
}
.notif-item__title{font-weight:800}
.notif-item__text{margin-top:6px;color:var(--muted);line-height:1.45}
.notif-item__meta{margin-top:8px;font-size:12px;color:var(--muted-2)}
.notif-item__link{display:inline-block;margin-top:10px;color:#9ec1ff;font-weight:700}
.notif-item__body{flex:1}
.notif-actions{display:flex;gap:10px;margin-top:12px}
.notif-empty{
  color:var(--muted);
  border:1px dashed var(--line);
  border-radius:16px;
  padding:18px;
}

.topbar-title-link{color:#eef3ff;font-size:15px;font-weight:700}
.notice-banner{margin-bottom:18px;padding:14px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.08)}
.notice-banner--success{background:rgba(40,199,111,.12);border-color:rgba(40,199,111,.22);color:#d1ffe6}
.notice-banner--error{background:rgba(255,98,98,.12);border-color:rgba(255,98,98,.25);color:#ffd7d7}

.sidebar-overlay{
  position:fixed;
  inset:0;
  background:rgba(5,10,22,.58);
  opacity:0;
  pointer-events:none;
  transition:opacity .2s ease;
  z-index:30;
}
.sidebar-toggle{
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.06);
  color:#eef3ff;
  font-size:18px;
  line-height:1;
}
.sidebar-toggle:hover{
  background:rgba(255,255,255,.1);
}
.support-layout{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(320px, .8fr);
  gap:24px;
  margin-bottom:24px;
  align-items:start;
}
.support-create{
  margin-bottom:0;
}
.support-list{
  max-height:524px;
  overflow:auto;
}
.ticket-row{
  align-items:flex-start;
}
.ticket-row__title{
  font-weight:700;
  font-size:15px;
  line-height:1.45;
}
.ticket-row .badge{
  flex-shrink:0;
  white-space:nowrap;
}
.support-create,.support-list,.support-thread{padding:24px}
.section-kicker{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.section-title{font-size:40px;font-weight:800;letter-spacing:-.03em;margin:10px 0 18px}
.support-form,.support-reply-form{display:grid;gap:14px}
.support-form__row{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px}
.support-form label,.muted-text{color:var(--muted)}
.textarea{width:100%;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);padding:14px 16px;resize:vertical;min-height:120px}
.support-form__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}
.upload-field{display:inline-flex;align-items:center;gap:10px;padding:11px 14px;border-radius:14px;border:1px dashed var(--line);background:rgba(255,255,255,.02);cursor:pointer}
.upload-field input{display:none}
.ticket-list{display:grid;gap:12px}
.ticket-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.02)}
.ticket-row:hover,.ticket-row.is-active{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.12)}
.ticket-row__title{font-weight:700}
.ticket-row__meta{color:var(--muted);font-size:13px;margin-top:6px}
.badge--info{background:rgba(78,141,255,.16);border-color:rgba(78,141,255,.24);color:#dbe7ff}
.badge--warning{background:rgba(255,193,79,.16);border-color:rgba(255,193,79,.24);color:#ffecc1}
.badge--muted{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08);color:#d3d9e5}
.support-thread__header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}
.message-thread{display:grid;gap:16px;max-height:520px;overflow:auto;padding-right:8px}
.message-bubble{padding:16px 18px;border-radius:18px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}
.message-bubble.is-admin{border-color:rgba(78,141,255,.18);background:rgba(78,141,255,.08)}
.message-bubble__top{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--muted);margin-bottom:10px}
.message-bubble__body{line-height:1.7}
.message-bubble__attachment{margin-top:12px}
.support-status-form{display:flex;gap:10px;align-items:center}
.topbar-filter{width:220px}
@media (max-width: 1180px){
  .support-layout{grid-template-columns:1fr}
  .support-form__row{grid-template-columns:1fr}
}


/* Stable recovery overrides */
select, .lang-select, .select {
  color-scheme: dark;
}
select option, .lang-select option, .select option {
  background:#1f2841;
  color:#eff5ff;
}
.support-grid {
  grid-template-columns: minmax(420px, 520px) 1fr;
}
.support-form textarea,
.ticket-reply textarea,
.support-textarea {
  min-height: 220px;
}
.sidebar-link, .hamburger, .ticket-list__item {
  cursor:pointer;
}


.subscription-mini-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  background:rgba(255,255,255,.04);
  border:1px solid var(--line);
  border-radius:20px;
  padding:24px 26px;
  margin-bottom:22px;
}
.subscription-mini-card__name{font-size:28px;font-weight:800;margin-top:6px}
.subscription-mini-card__meta{color:var(--muted);margin-top:8px}

.subscription-hero{
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:22px;
  margin-bottom:24px;
}
.subscription-current{
  background:rgba(255,255,255,.04);
  border:1px solid var(--line);
  border-radius:22px;
  padding:24px;
  min-height:100%;
}
.subscription-current__name{font-size:34px;font-weight:800;margin-top:8px}
.subscription-current__meta{
  display:grid;
  gap:8px;
  margin-top:14px;
  color:var(--muted);
}
.plan-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:18px;
}
.plan-card{
  background:rgba(255,255,255,.04);
  border:1px solid var(--line);
  border-radius:22px;
  padding:24px;
  display:flex;
  flex-direction:column;
  min-height:100%;
}
.plan-card.is-featured{
  border-color:rgba(40,199,111,.65);
  box-shadow:0 0 0 1px rgba(40,199,111,.15) inset;
}
.plan-card__name{font-size:28px;font-weight:800}
.plan-card__price{font-size:40px;font-weight:900;margin-top:10px}
.plan-card__per{color:var(--muted);margin-top:6px}
.plan-card__stats{
  display:grid;
  gap:8px;
  margin-top:18px;
  color:#d6e3ff;
}
.plan-card__desc{
  color:var(--muted);
  line-height:1.6;
  min-height:48px;
  margin:18px 0 0;
}
.plan-card__features{
  margin:18px 0 0;
  padding-left:18px;
  display:grid;
  gap:10px;
  color:#dfe9ff;
  flex:1;
}
.plan-card__features li{line-height:1.5}
.plan-card__action{margin-top:22px}

@media (max-width: 1280px){
  .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .subscription-hero{grid-template-columns:1fr}
}
@media (max-width: 720px){
  .plan-grid{grid-template-columns:1fr}
  .subscription-mini-card{flex-direction:column;align-items:flex-start}
}


.user-chip__avatar{width:38px;height:38px;border-radius:14px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;object-fit:cover;background:rgba(255,255,255,.06);font-weight:800}
.user-chip__avatar img{width:100%;height:100%;object-fit:cover}
.user-chip__avatar--fallback{background:linear-gradient(135deg,var(--blue),var(--violet));color:#fff}

.notifications-drawer{position:fixed;top:0;right:0;width:min(420px,100vw);height:100vh;background:linear-gradient(180deg,#0c1628 0%,#101c31 100%);border-left:1px solid var(--line);box-shadow:-18px 0 50px rgba(0,0,0,.35);transform:translateX(100%);transition:transform .25s ease;z-index:50;padding:22px;overflow:auto}
.notifications-drawer.is-open{transform:translateX(0)}
.drawer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}
.drawer-header h3{margin:8px 0 0;font-size:28px}
.drawer-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.02);padding:16px;margin-bottom:16px}
.drawer-card__title{font-weight:800;margin-bottom:8px}
.drawer-card__text{color:var(--muted);line-height:1.5}


.topbar-title-link{
  color:#f2f6ff;
  font-size:22px;
  font-weight:800;
}

.topbar-bell{
  position:relative;
  width:44px;
  height:44px;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.04);
  color:var(--text);
  cursor:pointer;
}
.topbar-bell__badge,
.icon-badge{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  background:linear-gradient(135deg,var(--blue),var(--violet));
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  font-weight:800;
  color:#fff;
}

.sidebar-servers-card{
  margin-top:auto;
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  overflow:visible;
}
.sidebar-servers-card__head{
  min-height:46px;
  padding:0 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  color:var(--muted-2);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  border-bottom:1px solid rgba(255,255,255,.05);
}
.sidebar-servers-card__actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.sidebar-servers-card__icon{
  border:none;
  background:transparent;
  color:#dbe6fb;
  cursor:pointer;
  font-size:18px;
  line-height:1;
  padding:0;
}
.sidebar-servers-card__body{
  padding:12px;
  display:grid;
  gap:10px;
  max-height:clamp(260px, calc(100vh - 230px), 520px);
  overflow-y:auto;
  overflow-x:hidden;
  scrollbar-width:thin;
  scrollbar-color:rgba(111,151,255,.55) transparent;
}
.sidebar-servers-card__body::-webkit-scrollbar{width:6px}
.sidebar-servers-card__body::-webkit-scrollbar-thumb{background:rgba(111,151,255,.45);border-radius:999px}
.sidebar-servers-card__empty{
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
}
.sidebar-server-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.05);
}
.sidebar-server-row__name{
  font-size:14px;
  font-weight:700;
  color:#eef4ff;
}
.sidebar-server-row__meta{
  margin-top:4px;
  font-size:12px;
  color:var(--muted);
}
.sidebar-server-row__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:64px;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  border:1px solid rgba(255,255,255,.08);
}
.sidebar-server-row__status.is-online{
  background:rgba(40,199,111,.12);
  border-color:rgba(40,199,111,.24);
  color:#c8ffe1;
}
.sidebar-server-row__status.is-offline{
  background:rgba(255,255,255,.06);
  color:#dbe5f8;
}
.sidebar-server-row__status.is-maintenance{
  background:rgba(255,184,77,.14);
  border-color:rgba(255,184,77,.24);
  color:#ffd28f;
}
.panel__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
}
.panel__header-meta{
  color:var(--muted);
  font-size:14px;
  line-height:1.5;
  text-align:right;
}

@media (max-width: 900px){
  .dashboard-shell{
    grid-template-columns:1fr;
  }
  .dashboard-sidebar{
    position:relative;
    height:auto;
  }
  .sidebar-servers-card{
    margin-top:0;
  }
}



/* Refined subscription + support sizing */
.subscription-hero{
  grid-template-columns:minmax(0, 1.1fr) minmax(320px, .9fr);
  gap:18px;
  align-items:start;
}
.subscription-hero__left h1{
  margin:0 0 10px;
  font-size:32px;
  letter-spacing:-.03em;
}
.subscription-hero__left p{
  margin:0;
  max-width:820px;
  color:#d2ddf2;
  line-height:1.6;
  font-size:15px;
}
.subscription-current{
  border-radius:20px;
  padding:20px 22px;
  min-height:auto;
}
.subscription-current__name{
  font-size:28px;
  line-height:1.1;
  margin-top:6px;
}
.subscription-current__meta{
  gap:6px;
  margin-top:12px;
  font-size:14px;
}
.plan-grid{
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:14px;
  align-items:stretch;
}
.plan-card{
  border-radius:20px;
  padding:20px 20px 18px;
  min-height:auto;
}
.plan-card__header{
  display:grid;
  gap:2px;
}
.plan-card__name{
  font-size:22px;
  line-height:1.1;
}
.plan-card__price{
  font-size:32px;
  line-height:1.05;
  margin-top:8px;
}
.plan-card__per{
  font-size:14px;
  margin-top:2px;
}
.plan-card__stats{
  gap:6px;
  margin-top:14px;
  font-size:14px;
}
.plan-card__stats strong{
  font-size:18px;
}
.plan-card__desc{
  margin-top:14px;
  min-height:auto;
  font-size:14px;
  line-height:1.55;
}
.plan-card__features{
  margin-top:14px;
  gap:8px;
  padding-left:18px;
  font-size:14px;
  line-height:1.45;
}
.plan-card__features li::marker{
  font-size:.9em;
}
.plan-card__action{
  margin-top:16px;
}
.plan-card .btn{
  width:100%;
  height:42px;
  font-size:14px;
  border-radius:12px;
}
.support-layout{
  grid-template-columns:minmax(0, 1.45fr) minmax(300px, .55fr);
  gap:20px;
  align-items:start;
}
.support-create,
.support-list,
.support-thread{
  border-radius:20px;
  padding:20px 22px;
}
.support-create .section-title{
  font-size:30px;
  margin:8px 0 18px;
}
.support-form{
  gap:12px;
}
.support-form__row{
  grid-template-columns:minmax(0,1.7fr) minmax(180px,.65fr) minmax(180px,.65fr);
  gap:12px;
}
.support-form label,
.support-thread .muted-text{
  font-size:14px;
}
.support-form .input,
.support-form .select{
  height:50px;
  padding:0 16px;
  font-size:15px;
}
.textarea{
  min-height:220px;
  padding:16px;
  font-size:15px;
  line-height:1.6;
}
.support-form__footer .btn{
  min-width:140px;
  height:48px;
}
.upload-field{
  min-height:46px;
  padding:10px 14px;
  font-size:14px;
}
.support-list{
  max-width:420px;
  justify-self:end;
}
.ticket-list{
  gap:10px;
}
.ticket-row{
  gap:10px;
  padding:14px;
  border-radius:15px;
}
.ticket-row__title{
  font-size:14px;
  line-height:1.35;
}
.ticket-row__meta{
  font-size:12px;
  margin-top:4px;
}
.ticket-row .badge{
  min-height:34px;
  padding:0 12px;
  font-size:12px;
}
.support-thread__header{
  margin-bottom:16px;
}
.support-thread__header h2{
  margin:0;
  font-size:28px;
  line-height:1.15;
  letter-spacing:-.03em;
}
.message-thread{
  gap:14px;
  max-height:460px;
}
.message-bubble{
  padding:14px 16px;
  border-radius:16px;
}
.message-bubble__body{
  line-height:1.6;
  font-size:15px;
}
@media (max-width: 1380px){
  .plan-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 1180px){
  .support-layout{
    grid-template-columns:1fr;
  }
  .support-list{
    max-width:none;
    justify-self:stretch;
  }
}
@media (max-width: 720px){
  .subscription-hero{
    grid-template-columns:1fr;
  }
  .plan-grid{
    grid-template-columns:1fr;
  }
  .support-create .section-title{
    font-size:26px;
  }
  .support-thread__header h2{
    font-size:24px;
  }
  .textarea{
    min-height:180px;
  }
}


/* Application-like visual alignment */
:root{
  --app-bg:#050a15;
  --app-bg-2:#081223;
  --app-shell:rgba(10,18,34,.92);
  --app-panel:rgba(12,20,38,.82);
  --app-panel-2:rgba(16,26,48,.76);
  --app-stroke:rgba(149,174,255,.10);
  --app-stroke-soft:rgba(255,255,255,.06);
  --app-glow-blue:rgba(60,121,255,.28);
  --app-glow-violet:rgba(146,86,255,.24);
  --app-text:#edf3ff;
  --app-muted:#91a0bc;
  --app-muted-2:#6d7890;
  --app-success:#55dd88;
}
body.dashboard-body,
.dashboard-shell,
body:has(.dashboard-shell){
  background:
    radial-gradient(circle at 18% 12%, rgba(49,105,255,.13), transparent 22%),
    radial-gradient(circle at 82% 9%, rgba(144,89,255,.16), transparent 20%),
    radial-gradient(circle at 50% 100%, rgba(31,128,255,.08), transparent 34%),
    linear-gradient(180deg, #030814 0%, #040c18 100%);
}
.dashboard-shell{
  grid-template-columns:290px minmax(0,1fr);
  gap:22px;
  padding:12px;
}
.dashboard-sidebar,
.dashboard-main{
  border:1px solid var(--app-stroke);
  background:linear-gradient(180deg, rgba(8,16,30,.94), rgba(8,16,30,.82));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.04),
    0 30px 90px rgba(0,0,0,.45);
  backdrop-filter:blur(22px);
}
.dashboard-sidebar{
  border-radius:26px;
  padding:20px 16px 18px;
  position:relative;
}
.dashboard-main{
  border-radius:26px;
  overflow:hidden;
  position:relative;
}
.dashboard-main::before,
.dashboard-sidebar::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 0% 0%, rgba(46,98,255,.12), transparent 22%),
    radial-gradient(circle at 100% 0%, rgba(159,92,255,.11), transparent 18%);
  z-index:0;
}
.dashboard-sidebar > *,
.dashboard-main > *{
  position:relative;
  z-index:1;
}
.dashboard-sidebar .brand{
  padding:8px 10px 14px;
}
.dashboard-sidebar .brand__logo{
  width:34px;
  height:34px;
  min-width:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.dashboard-sidebar .brand__logo-image{
  width:100%;
  height:100%;
  object-fit:contain;
}
.dashboard-sidebar .brand__title{font-size:18px;font-weight:800}
.dashboard-sidebar .brand__subtitle{font-size:11px;color:var(--app-muted)}
.sidebar-nav{
  gap:10px;
  margin-top:2px;
}
.sidebar-link{
  min-height:46px;
  height:auto;
  border-radius:14px;
  padding:12px 14px;
  color:#dbe5fb;
  background:transparent;
  border:1px solid transparent;
  transition:.2s ease;
}
.sidebar-link:hover{
  background:rgba(255,255,255,.03);
  border-color:var(--app-stroke-soft);
}
.sidebar-link.is-active{
  background:
    linear-gradient(180deg, rgba(123,82,255,.18), rgba(60,121,255,.12));
  border-color:rgba(162,138,255,.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 30px rgba(22,34,62,.35);
}
.sidebar-icon{
  width:28px;height:28px;
  border-radius:10px;
  display:grid;place-items:center;
  background:rgba(255,255,255,.03);
  border:1px solid var(--app-stroke-soft);
  font-size:13px;
}
.sidebar-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.sidebar-summary-card{
  min-height:78px;
  padding:14px;
  border-radius:18px;
  border:1px solid var(--app-stroke-soft);
  background:linear-gradient(180deg, rgba(12,22,42,.92), rgba(8,16,31,.92));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
}
.sidebar-summary-card__label{
  color:var(--app-muted);
  font-size:12px;
  margin-bottom:8px;
}
.sidebar-summary-card__value{
  font-size:28px;
  font-weight:800;
  letter-spacing:-.03em;
}
.sidebar-servers-card{
  border-radius:20px;
  padding:14px;
  background:linear-gradient(180deg, rgba(10,19,35,.96), rgba(8,16,31,.95));
  border:1px solid var(--app-stroke-soft);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
  overflow:visible;
}
.sidebar-servers-card__head{
  color:var(--app-muted);
  font-size:12px;
  letter-spacing:.08em;
}
.sidebar-servers-card__icon{
  width:32px;height:32px;border-radius:10px;
  background:rgba(255,255,255,.03);
  border:1px solid var(--app-stroke-soft);
}
.sidebar-server-row{
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.022);
  border:1px solid transparent;
  width:100%;
  color:inherit;
  cursor:pointer;
  font:inherit;
  text-align:left;
}
.sidebar-server-row:hover{
  border-color:var(--app-stroke-soft);
  background:rgba(255,255,255,.035);
}
.sidebar-server-item{
  display:grid;
  gap:8px;
}
.sidebar-server-actions{
  display:none;
  gap:8px;
  padding:0 2px 2px;
}
.sidebar-server-item.is-selected .sidebar-server-actions{
  display:grid;
}
.sidebar-server-item.is-selected .sidebar-server-row{
  border-color:rgba(100,143,255,.5);
  background:linear-gradient(135deg,rgba(56,102,227,.2),rgba(80,54,154,.12));
}
.sidebar-server-action{
  min-height:28px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:4px;
  border:1px solid rgba(220,230,255,.9);
  color:#f1f5ff;
  background:rgba(255,255,255,.03);
  text-decoration:none;
  font-size:11px;
  font-weight:700;
}
.sidebar-server-action:hover{
  border-color:#78a8ff;
  color:#dceaff;
  background:rgba(89,132,255,.12);
}
.sidebar-server-action--primary{
  border-color:#4e91ff;
  color:#7eb1ff;
  background:rgba(63,112,222,.18);
}
.sidebar-server-row__name{
  font-size:12px;
  font-weight:700;
}
.sidebar-server-row__meta{font-size:12px;color:var(--app-muted)}
.sidebar-server-row__badges{
  display:grid;
  grid-template-columns:auto;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  flex:0 0 auto;
  min-width:0;
}
.sidebar-server-row__players{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:0 8px;
  border-radius:5px;
  background:#4f86ff;
  color:#f7fbff;
  font-size:11px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.sidebar-server-row__players.is-offline{
  background:rgba(255,107,107,.12);
  color:#ffd5d5;
  border:1px solid rgba(255,107,107,.35);
}
.sidebar-server-row__status{
  width:26px;
  min-width:26px;
  min-height:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:26px;
  padding:0;
  border-radius:999px;
  font-size:0;
  font-weight:700;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.sidebar-server-row__status::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:999px;
  background:currentColor;
}
.dashboard-topbar{
  min-height:88px;
  padding:18px 24px;
  background:rgba(9,17,32,.72);
  border-bottom:1px solid var(--app-stroke-soft);
  position:relative;
  z-index:20;
}
.topbar-title-link{
  font-size:15px;
  font-weight:700;
  color:#f3f7ff;
}
.topbar-search input,
.lang-select,
.select,
.input{
  background:rgba(255,255,255,.03);
  border-color:var(--app-stroke-soft);
  color:var(--app-text);
}
.topbar-search input{
  height:46px;
  border-radius:14px;
}
.topbar-search::before{top:11px}
.topbar-bell,
.user-menu__summary,
.hamburger{
  border:1px solid var(--app-stroke-soft);
  background:rgba(255,255,255,.03);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.03);
  position:relative;
  z-index:22;
}
.dashboard-content{
  padding:28px;
  background:
    radial-gradient(circle at 14% 12%, rgba(43,99,255,.08), transparent 18%),
    radial-gradient(circle at 86% 14%, rgba(150,89,255,.10), transparent 14%);
}
.subpage-head{
  margin-bottom:20px;
}
.subpage-head--app{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
}
.subpage-head--app h1{
  margin:6px 0 0;
  font-size:38px;
  letter-spacing:-.04em;
}
.subpage-head__meta{
  color:var(--app-muted);
  margin-top:8px;
}
.subpage-head__actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.btn--control{
  min-width:104px;
  height:44px;
  border-radius:12px;
  font-size:14px;
}
.stats-banner,
.metric-card,
.panel,
.workspace-panel,
.settings-card,
.ticket-card,
.subscription-plan,
.profile-card,
.role-card,
.search-panel{
  background:linear-gradient(180deg, rgba(12,21,39,.9), rgba(9,16,30,.9));
  border:1px solid var(--app-stroke-soft);
  border-radius:22px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 24px 60px rgba(0,0,0,.25);
}
.stats-banner{
  grid-template-columns:repeat(3,minmax(0,1fr));
  padding:22px;
}
.stats-banner--app{
  margin-bottom:18px;
}
.stats-banner__label,
.metric-card__label,
.panel__header-meta,
.table-empty,
.muted-text,
.role-card__meta{
  color:var(--app-muted);
}
.stats-banner__value,
.metric-card__value{
  letter-spacing:-.04em;
}
.gauge-box{
  margin-left:auto;
  width:108px;
  height:108px;
  border-radius:24px;
  border:1px solid rgba(130,148,255,.18);
  background:
    radial-gradient(circle at 50% 30%, rgba(92,151,255,.28), transparent 54%),
    linear-gradient(180deg, rgba(130,92,255,.16), rgba(41,84,211,.08));
  display:grid;
  place-items:center;
}
.gauge-box__value{
  font-size:34px;
  font-weight:800;
}
.metric-grid{
  gap:14px;
}
.metric-grid--app{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
.metric-card{
  min-height:150px;
  padding:22px;
  position:relative;
  overflow:hidden;
}
.metric-card::before{
  content:"";
  position:absolute;
  inset:auto -30px -30px auto;
  width:120px;
  height:120px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(92,151,255,.18), transparent 68%);
  pointer-events:none;
}
.metric-card__value{
  margin-top:16px;
  font-size:36px;
}
.metric-card__value--success{color:var(--app-success)}
.metric-card__hint{
  margin-top:8px;
  color:var(--app-muted);
}
.panel--app{
  padding:24px;
}
.panel__header{
  margin-bottom:20px;
}
.panel__header h2{
  font-size:28px;
  letter-spacing:-.03em;
}
.data-table{
  border-collapse:separate;
  border-spacing:0 10px;
  margin-top:0;
}
.data-table thead th{
  border:none;
  padding:0 16px 8px;
  color:#7f91b4;
  font-size:11px;
  letter-spacing:.1em;
}
.data-table tbody td{
  padding:18px 16px;
  border-top:1px solid var(--app-stroke-soft);
  border-bottom:1px solid var(--app-stroke-soft);
  background:rgba(255,255,255,.02);
}
.data-table tbody td:first-child{
  border-left:1px solid var(--app-stroke-soft);
  border-top-left-radius:14px;
  border-bottom-left-radius:14px;
}
.data-table tbody td:last-child{
  border-right:1px solid var(--app-stroke-soft);
  border-top-right-radius:14px;
  border-bottom-right-radius:14px;
}
.status-badge,
.status-pill{
  background:rgba(85,221,136,.12);
  border:1px solid rgba(85,221,136,.2);
  color:#81f5ad;
}
.table-actions .btn,
.table-btn{
  height:36px;
  padding:0 14px;
  border-radius:10px;
  font-size:13px;
}

/* Selected-server dashboard overview */
.sidebar-server-row.is-selected,
.sidebar-server-item.is-selected .sidebar-server-row{
  border-color:rgba(100,143,255,.5);
  background:linear-gradient(135deg,rgba(56,102,227,.2),rgba(80,54,154,.12));
}
.dashboard-server-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:2px 0 20px;
}
.dashboard-server-head h1{
  margin:5px 0 0;
  font-size:32px;
  line-height:1.1;
  letter-spacing:0;
}
.dashboard-server-head__meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--app-muted);font-size:12px;margin-top:8px}
.dashboard-server-head__actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.dashboard-overview-grid{display:grid;grid-template-columns:1fr 1.08fr 1.08fr;gap:14px}
.dashboard-overview-card{
  min-width:0;
  padding:17px;
  border:1px solid var(--app-stroke-soft);
  border-radius:15px;
  background:linear-gradient(155deg,rgba(18,33,61,.92),rgba(8,17,32,.95));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
.dashboard-overview-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.dashboard-overview-card__head h2{font-size:15px;margin:0;letter-spacing:0}
.dashboard-overview-card__head > span,.dashboard-overview-card__head > a{color:var(--app-muted);font-size:12px;text-decoration:none}
.dashboard-overview-card__head > a:hover{color:#a9c5ff}
.dashboard-overview-card__status{font-size:16px;color:var(--app-success)}
.dashboard-overview-card__status.is-offline{color:#ff8093}
.status-dot{width:8px;height:8px;border-radius:50%;background:#6d778c;box-shadow:0 0 0 4px rgba(255,255,255,.035)}
.status-dot.is-online{background:#42d996;box-shadow:0 0 0 4px rgba(66,217,150,.12)}
.status-dot.is-maintenance{background:#ffbd4a}
.dashboard-overview-card__split{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}
.dashboard-overview-card__split > div{padding:11px;border:1px solid rgba(141,164,206,.13);border-radius:10px;background:rgba(4,11,23,.22)}
.dashboard-overview-card__split span,.dashboard-info-list dt,.dashboard-list small,.dashboard-player-list small{display:block;color:var(--app-muted);font-size:11px}
.dashboard-overview-card__split b{display:block;margin-top:5px;font-size:13px;overflow-wrap:anywhere}
.dashboard-info-list{display:grid;gap:8px;margin:0}
.dashboard-info-list div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;font-size:12px}
.dashboard-info-list dt{margin:0}.dashboard-info-list dd{margin:0;color:#e9f0ff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.dashboard-quick-actions{padding-bottom:9px}
.dashboard-quick-actions a{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:9px;min-height:35px;color:#dce7ff;text-decoration:none;font-size:12px;border-bottom:1px solid rgba(141,164,206,.1)}
.dashboard-quick-actions a:last-child{border-bottom:0}.dashboard-quick-actions a:hover{color:#91b9ff}.dashboard-quick-actions a b{font-size:18px;font-weight:400}
.dashboard-live-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,.85fr);gap:14px;margin-top:14px}
.dashboard-chart-wrap{height:210px;position:relative}.dashboard-chart-wrap svg{width:100%;height:184px;display:block;overflow:visible}
.dashboard-chart-axis{display:flex;justify-content:space-between;gap:8px;color:var(--app-muted);font-size:10px;margin:0 8px;white-space:nowrap;overflow:hidden}
.dashboard-chart-stats{display:flex;gap:24px;margin-top:10px;border-top:1px solid rgba(141,164,206,.12);padding-top:11px;color:var(--app-muted);font-size:11px}
.dashboard-chart-stats b{display:block;color:#f4f7ff;font-size:16px;margin-top:2px}
.dashboard-player-list,.dashboard-list{display:grid;gap:3px}
.dashboard-player-list a,.dashboard-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 0;color:#e7eeff;text-decoration:none;border-bottom:1px solid rgba(141,164,206,.1)}
.dashboard-list a{grid-template-columns:minmax(0,1fr) auto}.dashboard-player-list a:last-child,.dashboard-list a:last-child{border-bottom:0}
.dashboard-player-list strong,.dashboard-list strong{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-player-list time,.dashboard-list time{color:var(--app-muted);font-size:10px;white-space:nowrap}
.dashboard-player-avatar{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#5a8fff,#7155d8);font-size:10px;font-weight:800}
.dashboard-list-empty{padding:16px 0;color:var(--app-muted);font-size:12px}.dashboard-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding-top:11px;border-top:1px solid rgba(141,164,206,.12);color:#c7d9ff;text-decoration:none;font-size:12px}.dashboard-card-footer span{font-size:18px}
.dashboard-feed-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.dashboard-account-card{display:flex;flex-direction:column}.dashboard-account-card__value{font-size:30px;font-weight:800;margin-top:6px}.dashboard-account-card p{color:var(--app-muted);font-size:12px;margin:5px 0 0}.dashboard-account-card .dashboard-card-footer{margin-top:auto}
.dashboard-all-servers{margin-top:14px;border:1px solid var(--app-stroke-soft);border-radius:14px;background:rgba(8,16,31,.55);overflow:hidden}.dashboard-all-servers summary{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:14px 17px;font-weight:700;list-style:none}.dashboard-all-servers summary::-webkit-details-marker{display:none}.dashboard-all-servers summary span{color:var(--app-muted);font-size:12px}.dashboard-all-servers[open] summary{border-bottom:1px solid var(--app-stroke-soft)}.dashboard-all-servers td small{display:block;color:var(--app-muted);font-size:11px;margin-top:3px}
.dashboard-empty-state{max-width:620px}.dashboard-empty-state h1{margin:6px 0 8px}.dashboard-empty-state p{color:var(--app-muted);margin:0 0 16px}
@media (max-width:1120px){.dashboard-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-quick-actions{grid-column:1 / -1}.dashboard-live-grid{grid-template-columns:1fr}.dashboard-feed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-account-card{grid-column:1 / -1}}
@media (max-width:680px){.dashboard-server-head{flex-direction:column}.dashboard-server-head__actions{justify-content:flex-start}.dashboard-overview-grid,.dashboard-feed-grid{grid-template-columns:1fr}.dashboard-quick-actions,.dashboard-account-card{grid-column:auto}.dashboard-overview-card{padding:14px}.dashboard-chart-wrap{height:180px}.dashboard-chart-wrap svg{height:155px}.dashboard-chart-stats{gap:14px}.dashboard-server-head h1{font-size:27px}}
.user-menu__dropdown,
.notif-drawer{
  background:linear-gradient(180deg, #0c1426, #09101e);
  border:1px solid var(--app-stroke-soft);
  box-shadow:0 30px 80px rgba(0,0,0,.4);
}
.notif-item,
.member-row,
.role-card,
.team-summary,
.invite-card,
.ticket-card{
  border-color:var(--app-stroke-soft);
}
@media (max-width: 1180px){
  .dashboard-shell{grid-template-columns:1fr;padding:10px}
  .dashboard-sidebar{position:relative;height:auto}
  .metric-grid--app{grid-template-columns:repeat(2,minmax(0,1fr))}
  .subpage-head--app{flex-direction:column}
}
@media (max-width: 720px){
  .dashboard-content{padding:18px}
  .metric-grid--app,
  .stats-banner,
  .sidebar-summary-grid{grid-template-columns:1fr}
  .dashboard-topbar{padding:16px}
  .topbar-search{display:none}
  .subpage-head--app h1{font-size:28px}
}

/* Compact density pass across all app/admin pages */
html{
  font-size:14px;
}
body{
  line-height:1.45;
}
.btn,
.lang-select,
.select,
.input{
  min-height:40px;
  height:40px;
  font-size:13px;
  border-radius:12px;
}
.btn{
  padding:0 16px;
}
.badge,
.status-badge,
.status-pill,
.sidebar-server-row__status,
.role-badge,
.table-btn,
.topbar-bell,
.user-chip,
.notice-banner,
.notice{
  font-size:12px;
}
.dashboard-shell{
  grid-template-columns:260px minmax(0,1fr);
  gap:18px;
  padding:10px;
}
.dashboard-sidebar{
  border-radius:22px;
  padding:16px 14px;
  gap:14px;
}
.dashboard-sidebar .brand{
  padding:6px 8px 10px;
}
.dashboard-sidebar .brand__logo-image{height:28px}
.dashboard-sidebar .brand__title{font-size:16px}
.dashboard-sidebar .brand__subtitle{font-size:10px}
.sidebar-link{
  min-height:40px;
  padding:9px 12px;
  border-radius:12px;
  font-size:14px;
}
.sidebar-icon{
  width:24px;
  height:24px;
  border-radius:8px;
  font-size:12px;
}
.sidebar-summary-grid{gap:8px}
.sidebar-summary-card{
  min-height:68px;
  padding:12px;
  border-radius:16px;
}
.sidebar-summary-card__label{font-size:11px;margin-bottom:6px}
.sidebar-summary-card__value{font-size:22px}
.sidebar-servers-card{
  border-radius:16px;
  padding:12px;
}
.sidebar-servers-card__head{
  min-height:40px;
  font-size:11px;
}
.sidebar-server-row{
  padding:10px;
  border-radius:12px;
}
.sidebar-server-row__name{font-size:12px}
.sidebar-server-row__meta{font-size:11px}
.dashboard-main,
.app-main{
  min-width:0;
}
.dashboard-topbar,
.app-topbar{
  min-height:72px;
  padding:14px 18px;
}
.topbar-title-link,
.app-topbar__label{font-size:14px}
.topbar-search{max-width:480px}
.topbar-search input,
.top-search__input{
  height:40px;
  border-radius:12px;
  font-size:13px;
}
.topbar-search::before{top:8px;font-size:14px}
.topbar-bell,
.user-menu__summary,
.sidebar-toggle,
.icon-pill,
.profile-chip__avatar,
.profile-chip__fallback,
.topbar-avatar{
  width:38px;
  height:38px;
}
.dashboard-content{
  padding:20px;
}
.subpage-head,
.dashboard-head{
  margin-bottom:16px;
  gap:14px;
}
.eyebrow,
.dashboard-kicker,
.kicker,
.section-kicker{
  font-size:11px;
  letter-spacing:.08em;
}
.dashboard-title,
.subpage-head h1,
.subpage-head--app h1,
.page-title,
.section-title{
  font-size:28px;
  line-height:1.08;
}
.dashboard-subtitle,
.subpage-head__meta,
.page-sub,
.table-desc,
.subscription-hero__left p,
.pref-item__text,
.muted-text,
.message-bubble__body,
.ticket-row__meta,
.support-form label,
.label{
  font-size:13px;
}
.subpage-head__actions,
.top-actions,
.action-row,
.table-actions,
.inline-actions,
.inline-form{
  gap:8px;
}
.btn--control,
.btn--tiny,
.table-btn,
.table-actions .btn,
.plan-card .btn,
.support-form__footer .btn{
  min-width:auto;
  height:38px;
  padding:0 14px;
  border-radius:10px;
  font-size:12px;
}
.stats-banner,
.stats-banner--app,
.metric-strip,
.panel,
.panel--app,
.search-panel,
.support-create,
.support-list,
.support-thread,
.subscription-current,
.plan-card,
.profile-card,
.pref-item,
.role-card,
.feature-card,
.cta-panel,
.why-item,
.table-panel,
.server-table-panel{
  border-radius:18px;
}
.stats-banner,
.metric-strip{
  gap:16px;
  padding:16px 18px;
  margin-bottom:18px;
}
.stats-banner__label,
.metric-strip__label,
.metric-card__label,
.summary-card__label,
.plan-card__per,
.plan-card__stats,
.plan-card__desc,
.plan-card__features,
.table-headline,
.data-table th,
.server-table thead th,
.players-table th,
.ticket-row__title,
.notif-item__meta,
.notice,
.notice-banner{
  font-size:12px;
}
.stats-banner__value,
.metric-strip__value,
.summary-card__value,
.metric-card__value,
.plan-card__price,
.table-title,
.server-table-title,
.panel-title,
.subscription-current__name{
  font-size:24px;
}
.gauge-box{
  width:82px;
  height:82px;
  border-radius:18px;
}
.gauge-box__value{font-size:24px}
.metric-grid,
.metric-grid--app,
.summary-grid,
.plan-grid,
.feature-grid,
.profile-grid,
.prefs-grid,
.support-layout,
.dashboard-bottom-grid,
.roles-layout,
.subpage-layout{
  gap:16px;
}
.metric-grid--app{grid-template-columns:repeat(4,minmax(0,1fr))}
.metric-card,
.summary-card,
.saas-card{
  min-height:112px;
  padding:16px;
  border-radius:18px;
}
.metric-card__value{
  margin-top:12px;
}
.metric-card__hint,
.stats-banner__hint,
.saas-sub,
.summary-card__label,
.notification-item__text{
  margin-top:6px;
}
.metric-card::before{
  width:88px;
  height:88px;
}
.saas-card{padding:16px}
.saas-card__top{font-size:13px}
.saas-icon{
  width:30px;
  height:30px;
}
.saas-value{margin-top:18px;font-size:28px}
.panel,
.panel--app,
.table-panel,
.server-table-panel,
.form-panel,
.players-panel{
  padding:18px;
}
.panel__header{margin-bottom:16px}
.panel__header h2,
.support-thread__header h2,
.support-create .section-title,
.subscription-hero__left h1{
  font-size:22px;
}
.data-table thead th,
.server-table thead th,
.players-table th{
  letter-spacing:.08em;
}
.data-table tbody td,
.server-table th,
.server-table td,
.players-table th,
.players-table td,
.data-table th,
.data-table td{
  padding:14px 12px;
}
.data-table{border-spacing:0 8px}
.subscription-mini-card,
.subscription-current,
.plan-card,
.support-create,
.support-list,
.support-thread{
  padding:18px;
}
.subscription-mini-card__name,
.plan-card__name,
.subscription-current__name{font-size:22px}
.ticket-row,
.message-bubble,
.notif-item,
.drawer-card{
  border-radius:14px;
  padding:12px 14px;
}
.textarea{
  min-height:180px;
  padding:14px;
  font-size:14px;
}
.footer h4{font-size:16px}
.footer .brand__title{font-size:24px}
.footer p,
.footer li,
.footer__copy,
.auth-note{font-size:13px}
.auth-panels .panel,
.panel{padding:20px}
.panel h2{font-size:28px}
.hero{
  gap:28px;
  padding:40px 0 24px;
}
.hero__title{font-size:56px}
.hero__text{font-size:18px}
.hero__quick,.mock-cards{gap:14px}
.feature-card h3,.why-item h3{font-size:20px}
.cta-panel__title{font-size:32px}
@media (max-width: 1180px){
  .metric-grid--app,
  .summary-grid,
  .plan-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width: 720px){
  html{font-size:13px}
  .dashboard-content{padding:16px}
  .dashboard-title,
  .subpage-head h1,
  .subpage-head--app h1,
  .page-title,
  .section-title{font-size:24px}
}


.btn.is-active{
  background:linear-gradient(135deg, rgba(123,82,255,.22), rgba(60,121,255,.14));
  border-color:rgba(162,138,255,.28);
}


/* User menu header fix */
.user-menu{
  position:relative;
}
.user-menu__summary{
  width:auto !important;
  min-width:120px;
  height:44px !important;
  padding:0 12px !important;
  border-radius:14px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
}
.user-menu__summary span:last-child{
  display:inline-block;
  max-width:140px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:14px;
  font-weight:700;
  color:#eef4ff;
}
.user-menu__summary .user-chip__avatar{
  width:32px;
  height:32px;
  min-width:32px;
  border-radius:10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  object-fit:cover;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.08);
}
.user-menu__summary img.user-chip__avatar{
  display:block;
}
.user-menu__summary .user-chip__avatar--fallback{
  background:linear-gradient(135deg,var(--blue),var(--violet));
  color:#fff;
  font-size:13px;
  font-weight:800;
}
@media (max-width: 720px){
  .user-menu__summary{
    min-width:unset;
    padding:0 10px !important;
  }
  .user-menu__summary span:last-child{
    max-width:92px;
  }
}


/* CMS / web admin extras */
.cms-tabbar{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 18px;
}
.cms-tabbar .btn.is-active{
  background:linear-gradient(135deg, var(--violet), var(--blue-2));
  border-color:rgba(255,255,255,.08);
}
.cms-admin-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);
  gap:16px;
  align-items:start;
}
.cms-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 16px;
}
.cms-page-content{
  margin-top:18px;
  color:#d9e4fb;
  line-height:1.75;
  font-size:15px;
}
@media (max-width: 1100px){
  .cms-admin-grid,
  .cms-check-grid{
    grid-template-columns:1fr;
  }
}

/* Sidebar server card polish */
.sidebar-servers-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
}
.sidebar-servers-card__icon span{
  display:block;
  transform:translateY(-.5px);
}
.sidebar-server-row{
  align-items:stretch;
}
.sidebar-server-row__body{
  width:100%;
  min-width:0;
}
.sidebar-server-row__top{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.sidebar-server-row__name{
  min-width:0;
  line-height:1.25;
  word-break:break-word;
}
.sidebar-server-row__status{
  flex:0 0 auto;
}
.sidebar-servers-card__body{
  gap:6px;
  max-height:clamp(260px, calc(100vh - 230px), 520px);
  overflow-y:auto;
}
.sidebar-server-row{
  min-height:44px;
  padding:10px 12px;
}
.sidebar-server-row__top{
  align-items:center;
}
.sidebar-server-row__name{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.sidebar-server-row__chips,
.server-mini__chips{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:10px;
}
.sidebar-chip,
.server-mini__chip{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:#dce6fb;
  font-size:11px;
  font-weight:700;
}
.server-cell-title{
  font-weight:800;
  color:#f4f7ff;
}
.server-cell-meta{
  margin-top:4px;
  font-size:12px;
  color:var(--app-muted);
}
.server-cell-live{
  font-weight:700;
  color:#eef4ff;
  line-height:1.45;
  word-break:break-word;
}
.status-badge.is-online{
  background:rgba(40,199,111,.14);
  color:#9af1bb;
  border:1px solid rgba(40,199,111,.24);
}
.status-badge.is-offline{
  background:rgba(255,255,255,.06);
  color:#dbe5f8;
  border:1px solid rgba(255,255,255,.08);
}
.status-badge.is-maintenance{
  background:rgba(245,158,11,.14);
  color:#ffd688;
  border:1px solid rgba(245,158,11,.28);
}
.server-mini__body{
  min-width:0;
}
.server-mini__body strong{
  display:block;
  line-height:1.25;
  word-break:break-word;
}
.server-mini__players-badge.is-offline{
  background:rgba(255,107,107,.12);
  color:#ffd5d5;
  border:1px solid rgba(255,107,107,.35);
}

/* Mobile dashboard hardening */
@media (max-width: 860px){
  body:has(.dashboard-shell){overflow-x:hidden;}
  .dashboard-shell{display:block;min-height:100vh;padding:0;}
  .dashboard-sidebar{position:relative;inset:auto;width:100%;height:auto;transform:none;border-radius:0;border-width:0 0 1px;padding:12px;overflow:visible;}
  .dashboard-sidebar .brand{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;margin-bottom:12px;}
  .dashboard-sidebar .brand__subtitle{white-space:normal;}
  .sidebar-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
  .sidebar-link{min-height:44px;padding:10px;border-radius:12px;}
  .sidebar-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px;}
  .sidebar-summary-card{min-width:0;padding:10px 8px;}
  .sidebar-summary-card__label{font-size:10px;}
  .sidebar-summary-card__value{font-size:20px;}
  .sidebar-servers-card{margin-top:12px;}
  .sidebar-servers-card__body{display:grid;gap:8px;max-height:clamp(240px, 48vh, 420px);overflow-y:auto;overflow-x:hidden;}
  .dashboard-main{min-width:0;width:100%;}
  .dashboard-topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:1fr;gap:10px;padding:12px;border-radius:0;}
  .topbar-left,.topbar-right{min-width:0;width:100%;justify-content:space-between;}
  .topbar-search{order:3;width:100%;}
  .topbar-search input{width:100%;min-height:44px;}
  .user-menu__summary span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .dashboard-content{padding:14px;width:100%;max-width:100%;}
  .subpage-head,.subpage-head--app{display:grid;grid-template-columns:1fr;gap:14px;padding:16px;}
  .subpage-head h1,.subpage-head--app h1{font-size:clamp(24px,8vw,34px);line-height:1.05;overflow-wrap:anywhere;}
  .subpage-head__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;}
  .subpage-head__actions .btn,.btn--control{width:100%;min-height:42px;padding:10px 12px;}
  .stats-banner,.stats-banner--app,.metric-grid,.metric-strip,.form-grid,.two-col,.subpage-layout{grid-template-columns:1fr !important;gap:12px;}
  .stats-banner{padding:14px;}
  .stats-banner__value{font-size:clamp(24px,9vw,36px);}
  .dashboard-panel,.summary-card,.server-card,.table-panel,.server-table-panel,.form-card,.section-card{padding:14px;border-radius:14px;max-width:100%;}
  .server-table-panel,.table-panel,.log-table-shell{overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .server-table,.log-table{min-width:680px;}
  .notif-drawer{width:min(100vw,420px);}
}

@media (max-width: 520px){
  .sidebar-nav{grid-template-columns:1fr;}
  .sidebar-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .subpage-head__actions{grid-template-columns:1fr;}
  .topbar-right{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;}
  .lang-select{width:100%;}
}

/* Final dashboard header safeguards */
.dashboard-sidebar .brand__logo{
  width:34px;
  height:34px;
  min-width:34px;
}
.dashboard-sidebar .brand__logo-image{
  width:100%;
  height:100%;
  object-fit:contain;
}
.dashboard-topbar,
.dashboard-content,
.notif-overlay,
.notif-drawer{
  position:relative;
}
.notif-overlay,
.notif-drawer{
  position:fixed;
}
.dashboard-main{
  overflow:visible;
}
.dashboard-main .notif-overlay,
.dashboard-main .notif-drawer,
.notif-overlay,
.notif-drawer{
  position:fixed;
}
.dashboard-main .notif-overlay,
.notif-overlay{
  z-index:2147483646;
}
.dashboard-main .notif-drawer,
.notif-drawer{
  z-index:2147483647;
}

/* Team web presence */
.team-presence-panel{
  display:grid;
  gap:18px;
}
.team-presence-panel--compact{
  gap:12px;
  padding:16px 18px;
  margin-bottom:18px;
}
.team-presence-panel--compact .eyebrow{
  font-size:10px;
}
.team-presence-panel--compact .panel__header h2{
  margin-top:3px;
  font-size:20px;
}
.team-presence-panel--compact .panel__header-meta{
  margin-top:2px;
  font-size:11px;
}
.team-presence-panel__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-bottom:0;
}
.team-presence-panel__summary{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:40px;
  padding:0 14px;
  border:1px solid rgba(58,211,137,.22);
  border-radius:8px;
  background:rgba(58,211,137,.08);
  color:#a8b8d8;
  white-space:nowrap;
}
.team-presence-panel__summary strong{
  color:#f4f8ff;
  font-size:18px;
}
.team-presence-panel__pulse{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#36d68c;
  box-shadow:0 0 0 5px rgba(54,214,140,.12);
}
.team-presence-list{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
}
.team-presence-member{
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  min-width:0;
  padding:9px 10px;
  border:1px solid var(--app-stroke-soft);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}
.team-presence-member[data-team-chat-user]{cursor:pointer}
.team-presence-member[data-team-chat-user]:hover{
  border-color:rgba(104,132,255,.34);
  background:rgba(72,98,190,.12);
}
.team-message-badge{
  display:none;min-width:19px;height:19px;padding:0 5px;place-items:center;
  border-radius:10px;background:#ff5578;color:#fff;font-size:10px;font-weight:900;
}
.team-message-badge.is-visible{display:grid}
.team-chat{
  position:fixed;right:22px;bottom:18px;z-index:520;display:none;
  grid-template-rows:auto minmax(180px,1fr) auto;width:min(370px,calc(100vw - 32px));
  height:min(520px,calc(100vh - 110px));overflow:hidden;border:1px solid rgba(115,126,255,.32);
  border-radius:14px;background:#0b1530;box-shadow:0 24px 70px rgba(0,0,0,.48);
}
.team-chat.is-open{display:grid}
.team-chat.is-minimized{width:min(300px,calc(100vw - 32px));height:auto;grid-template-rows:auto}
.team-chat.is-minimized .team-chat__messages,
.team-chat.is-minimized .team-chat__form{display:none}
.team-chat.is-minimized .team-chat__head{border-bottom:0;cursor:pointer}
.team-chat__head{display:flex;align-items:center;gap:10px;min-width:0;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.08);background:#111e40}
.team-chat__avatar{width:34px;height:34px;display:grid;place-items:center;flex:0 0 auto;overflow:hidden;border-radius:8px;background:#26365d;color:#fff;font-weight:900}
.team-chat__avatar img{width:100%;height:100%;object-fit:cover}
.team-chat__identity{display:grid;min-width:0;gap:1px}
.team-chat__identity strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-chat__identity span{color:#8ee8b8;font-size:12px}
.team-chat__head-actions{display:flex;gap:6px;margin-left:auto}
.team-chat__minimize,.team-chat__close{width:32px;height:32px;border:0;border-radius:7px;background:rgba(255,255,255,.06);color:#dce6ff;font-size:20px;cursor:pointer}
.team-chat__minimize{font-size:16px}
.team-chat__messages{display:flex;flex-direction:column;gap:8px;overflow-y:auto;padding:14px;scrollbar-color:#42538c transparent}
.team-chat__empty{margin:auto;color:#7f90b5;font-size:13px;text-align:center}
.team-chat__message{align-self:flex-start;max-width:84%;padding:8px 10px;border-radius:10px;background:#172647;color:#eaf0ff;font-size:13px;line-height:1.4;overflow-wrap:anywhere}
.team-chat__message.is-mine{align-self:flex-end;background:#3d55b5}
.team-chat__sender{display:block;margin-bottom:3px;color:#8fb2ff;font-size:10px;font-weight:900}
.team-chat__time{display:block;margin-top:4px;color:#aab9dd;font-size:10px}
.team-chat__form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:10px;border-top:1px solid rgba(255,255,255,.08);background:#101c39}
.team-chat__form input{min-width:0;height:40px;padding:0 11px;border:1px solid rgba(149,174,255,.16);border-radius:8px;background:#09142c;color:#fff}
.team-chat__send{height:40px;padding:0 14px;border:0;border-radius:8px;background:#586dff;color:#fff;font-weight:800;cursor:pointer}
.team-chat__error{grid-column:1/-1;color:#ff9cae;font-size:11px}
.team-message-toast{
  position:fixed;right:22px;bottom:18px;z-index:130;display:none;max-width:320px;
  padding:12px 14px;border:1px solid rgba(115,126,255,.35);border-radius:10px;
  background:#14234a;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.4);cursor:pointer;
}
.team-message-toast.is-visible{display:block}
.team-message-toast strong{display:block;margin-bottom:3px}
.team-message-toast span{color:#afbee0;font-size:12px}
.team-chat-launch{
  min-height:34px;padding:0 12px;border:1px solid rgba(104,132,255,.32);border-radius:8px;
  background:rgba(72,98,190,.14);color:#dce6ff;font-size:12px;font-weight:800;cursor:pointer;
}
.fb-chat-dock{
  position:fixed;
  right:14px;
  bottom:12px;
  z-index:740;
  display:flex;
  flex-direction:row-reverse;
  align-items:flex-end;
  gap:10px;
  max-width:calc(100vw - 28px);
  pointer-events:none;
}
.fb-chat-window{
  width:300px;
  height:390px;
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid rgba(118,145,255,.28);
  border-radius:9px 9px 0 0;
  background:#0b1530;
  box-shadow:0 18px 42px rgba(0,0,0,.42);
  pointer-events:auto;
}
.fb-chat-window.is-minimized{
  width:230px;
  height:46px;
  grid-template-rows:auto;
}
.fb-chat-window.is-minimized .fb-chat-messages,
.fb-chat-window.is-minimized .fb-chat-form{
  display:none;
}
.fb-chat-head{
  min-height:46px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:7px 8px;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg,#15244a,#101d3f);
  cursor:pointer;
}
.fb-chat-window.is-minimized .fb-chat-head{
  border-bottom:0;
}
.fb-chat-avatar{
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border-radius:999px;
  background:#263b73;
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.fb-chat-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}
.fb-chat-title{
  min-width:0;
  display:grid;
  gap:1px;
}
.fb-chat-title strong{
  overflow:hidden;
  color:#f4f7ff;
  font-size:13px;
  line-height:1.1;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fb-chat-title span{
  overflow:hidden;
  color:#8ee8b8;
  font-size:10px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.fb-chat-actions{
  display:flex;
  gap:4px;
  margin-left:auto;
}
.fb-chat-actions button{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border:0;
  border-radius:6px;
  background:rgba(255,255,255,.06);
  color:#dce6ff;
  font-size:17px;
  line-height:1;
  cursor:pointer;
}
.fb-chat-actions button:hover{
  background:rgba(255,255,255,.12);
}
.fb-chat-messages{
  display:flex;
  flex-direction:column;
  gap:7px;
  overflow-y:auto;
  padding:10px;
  background:linear-gradient(180deg,#091329,#0b1530);
  scrollbar-color:#42538c transparent;
}
.fb-chat-empty{
  margin:auto;
  color:#7f90b5;
  font-size:12px;
  text-align:center;
}
.fb-chat-message{
  align-self:flex-start;
  max-width:84%;
  display:grid;
  gap:3px;
}
.fb-chat-message span{
  color:#8fb2ff;
  font-size:10px;
  font-weight:900;
}
.fb-chat-message p{
  margin:0;
  padding:7px 9px;
  border-radius:12px 12px 12px 3px;
  background:#172647;
  color:#eaf0ff;
  font-size:12px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.fb-chat-message.is-mine{
  align-self:flex-end;
}
.fb-chat-message.is-mine p{
  border-radius:12px 12px 3px 12px;
  background:#3d55b5;
}
.fb-chat-message time{
  color:#8b9abc;
  font-size:9px;
}
.fb-chat-message.is-mine time{
  text-align:right;
}
.fb-chat-form{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:7px;
  padding:8px;
  border-top:1px solid rgba(255,255,255,.08);
  background:#101c39;
}
.fb-chat-form input{
  min-width:0;
  height:34px;
  padding:0 10px;
  border:1px solid rgba(149,174,255,.16);
  border-radius:999px;
  background:#09142c;
  color:#fff;
  font-size:12px;
}
.fb-chat-form button{
  height:34px;
  padding:0 12px;
  border:0;
  border-radius:999px;
  background:#586dff;
  color:#fff;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}
.fb-chat-error{
  grid-column:1/-1;
  color:#ff9cae;
  font-size:11px;
}
.player-search-dialog{
  position:fixed;inset:76px 0 auto 0;z-index:600;display:none;place-items:start center;padding:10px 18px;
  pointer-events:none;
}
.player-search-dialog.is-open{display:grid}
.player-search-dialog__panel{
  width:min(820px,calc(100vw - 36px));max-height:min(720px,calc(100dvh - 96px));overflow:hidden;
  border:1px solid rgba(115,126,255,.3);border-radius:14px;background:#0b1530;
  box-shadow:0 28px 90px rgba(0,0,0,.55);pointer-events:auto;
}
.player-search-dialog__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.player-search-dialog__head h2{margin:0;font-size:20px}
.player-search-dialog__close{width:34px;height:34px;border:0;border-radius:8px;background:rgba(255,255,255,.06);color:#fff;font-size:20px;cursor:pointer}
.player-search-dialog__body{max-height:calc(100dvh - 130px);overflow-y:auto;padding:12px}
.player-search-result{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;border-bottom:1px solid rgba(255,255,255,.07)}
.player-search-result__avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:9px;background:#26365d;color:#fff;font-weight:900}
.player-search-result__avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}
.player-search-result__body{min-width:0}.player-search-result__body strong{display:block;color:#f4f7ff}.player-search-result__body span{display:block;color:#91a6cf;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-search-result__actions{display:flex;gap:7px}.player-search-result__actions a{padding:8px 10px;border:1px solid rgba(149,174,255,.18);border-radius:8px;color:#dce6ff;font-size:12px;font-weight:800}
.player-search-empty{padding:28px;color:#91a6cf;text-align:center}
@media (max-width:640px){
  .team-chat{right:8px;bottom:8px;width:calc(100vw - 16px);height:min(520px,calc(100vh - 80px))}
  .team-chat.is-minimized{width:min(320px,calc(100vw - 16px));height:auto}
  .fb-chat-dock{
    right:8px;
    bottom:8px;
    gap:8px;
    overflow-x:auto;
    align-items:flex-end;
  }
  .fb-chat-window{
    width:min(300px,calc(100vw - 16px));
    height:min(390px,calc(100vh - 86px));
    flex:0 0 auto;
  }
  .fb-chat-window.is-minimized{
    width:min(230px,calc(100vw - 16px));
    height:46px;
  }
  .team-message-toast{right:8px;bottom:8px;max-width:calc(100vw - 16px)}
  .player-search-dialog{inset:86px 0 auto 0;padding:8px}
  .player-search-dialog__panel{width:calc(100vw - 16px);max-height:calc(100dvh - 102px)}
  .player-search-result{grid-template-columns:36px minmax(0,1fr)}
  .player-search-result__actions{grid-column:1/-1}
}
.team-presence-member.is-offline{
  opacity:.7;
}
.team-presence-member__avatar{
  position:relative;
  width:36px;
  height:36px;
  border-radius:8px;
  display:grid;
  place-items:center;
  overflow:visible;
  background:#26365d;
  color:#f5f8ff;
  font-weight:900;
}
.team-presence-member__avatar img{
  width:100%;
  height:100%;
  border-radius:8px;
  object-fit:cover;
}
.team-presence-member__avatar i{
  position:absolute;
  right:-2px;
  bottom:-2px;
  width:12px;
  height:12px;
  border-radius:50%;
  border:2px solid #101a31;
  background:#65728d;
}
.team-presence-member.is-online .team-presence-member__avatar i{
  background:#36d68c;
  box-shadow:0 0 8px rgba(54,214,140,.55);
}
.team-presence-member__body{
  min-width:0;
  display:grid;
  gap:4px;
}
.team-presence-member__body strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#f4f7ff;
}
.team-presence-member__body span{
  color:var(--presence-role-color,#8da8e8);
  font-size:12px;
  font-weight:800;
}
.team-presence-member__state{
  display:grid;
  gap:3px;
  text-align:right;
}
.team-presence-member__state strong{
  color:#aab8d4;
  font-size:12px;
}
.team-presence-member.is-online .team-presence-member__state strong{
  color:#7aefb4;
}
.team-presence-member__state span{
  color:#7789ad;
  font-size:11px;
  white-space:nowrap;
}
.team-presence-panel__footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:#8092b6;
  font-size:12px;
}
.team-presence-panel__footer a{
  color:#8eacff;
  font-weight:800;
  text-decoration:none;
}
.team-member-status{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#8c9dbc;
  font-size:12px;
  font-weight:800;
}
.team-member-status i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#65728d;
}
.team-member-status.is-online{
  color:#7aefb4;
}
.team-member-status.is-online i{
  background:#36d68c;
  box-shadow:0 0 7px rgba(54,214,140,.5);
}
@media (max-width:1100px){
  .team-presence-list{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:700px){
  .team-presence-panel__header,
  .team-presence-panel__footer{align-items:flex-start;flex-direction:column;}
  .team-presence-list{grid-template-columns:1fr;}
  .team-presence-member{grid-template-columns:36px minmax(0,1fr);}
  .team-presence-member__state{grid-column:2;text-align:left;}
}

/* Admin user/server ownership */
.admin-server-summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}
.admin-server-summary article{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:72px;
  padding:14px 18px;
  border:1px solid var(--app-stroke-soft);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}
.admin-server-summary span{color:var(--app-muted);font-size:13px}
.admin-server-summary strong{color:#f5f8ff;font-size:25px}
.admin-user-server-list{display:grid;gap:12px}
.admin-user-server-card{
  border:1px solid var(--app-stroke-soft);
  border-radius:8px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(12,21,39,.92),rgba(8,16,30,.94));
}
.admin-user-server-card__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  border-bottom:1px solid var(--app-stroke-soft);
}
.admin-user-server-card__badges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.admin-user-server-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.admin-user-server-groups>section{min-width:0;padding:14px 16px}
.admin-user-server-groups>section+section{border-left:1px solid var(--app-stroke-soft)}
.admin-user-server-group__title{
  margin-bottom:9px;
  color:#829cff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.admin-server-row-list{display:grid;gap:6px}
.admin-server-row{
  display:grid;
  grid-template-columns:9px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:9px 10px;
  border:1px solid rgba(164,190,255,.08);
  border-radius:7px;
  background:rgba(255,255,255,.022);
}
.admin-server-row.is-shared{background:rgba(78,134,255,.045)}
.admin-server-row__status{width:8px;height:8px;border-radius:50%;background:#65728d}
.admin-server-row__status.is-online{background:#36d68c;box-shadow:0 0 7px rgba(54,214,140,.5)}
.admin-server-row__body{min-width:0;display:grid;gap:2px}
.admin-server-row__body strong,.admin-server-row__body span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.admin-server-row__body strong{color:#f2f6ff;font-size:13px}
.admin-server-row__body span{color:#7f91b4;font-size:11px}
.admin-server-row__meta{display:flex;align-items:center;gap:9px;color:#9eb0d3;font-size:11px;font-weight:800}
.admin-server-row__meta a{color:#89a9ff}
.admin-user-server-empty{padding:10px;color:#7586aa;font-size:12px}
@media (max-width:900px){
  .admin-user-server-groups{grid-template-columns:1fr}
  .admin-user-server-groups>section+section{border-left:0;border-top:1px solid var(--app-stroke-soft)}
}
@media (max-width:650px){
  .admin-server-summary{grid-template-columns:1fr}
  .admin-user-server-card__head{align-items:flex-start;flex-direction:column}
  .admin-user-server-card__badges{justify-content:flex-start}
  .admin-server-row{grid-template-columns:9px minmax(0,1fr)}
  .admin-server-row__meta{grid-column:2}
}
.ban-manager{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px}
.ban-manager__toolbar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:8px}
.ban-manager__table-wrap{min-width:0;border:1px solid var(--line);background:rgba(5,12,27,.35);border-radius:8px;overflow:hidden}
.ban-manager__summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--line)}
.ban-manager__summary h2{margin:5px 0 0;font-size:1.25rem}.ban-manager__summary>span{color:#9fb2dd;font-size:.86rem}
.ban-manager__settings{display:grid;align-content:start;gap:14px}
.ban-table{min-width:900px}.ban-table__head,.ban-table__row{display:grid;grid-template-columns:125px 80px minmax(220px,1.35fr) minmax(180px,1fr) 125px 190px;gap:14px;align-items:center;padding:13px 18px}
.ban-table__head{color:#8fa2ce;font-size:.7rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;background:rgba(255,255,255,.025)}
.ban-table__row{border-top:1px solid var(--line);font-size:.86rem}.ban-table__row:hover{background:rgba(79,140,255,.045)}
.ban-table__date{color:#aab8d8}.ban-table__reason{color:#dce5fa;overflow-wrap:anywhere}
.ban-status{display:inline-flex;padding:4px 7px;border-radius:5px;font-size:.68rem}.ban-status.is-active{color:#9cf4d0;background:rgba(21,190,135,.15)}.ban-status.is-inactive{color:#ffd688;background:rgba(245,158,11,.16)}
.ban-player{display:flex;align-items:center;gap:10px;min-width:0}.ban-player__avatar{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#26365f;color:#fff;font-weight:900}.ban-player>span:last-child{min-width:0}.ban-player a{display:block;color:#62a0ff;font-weight:900;overflow:hidden;text-overflow:ellipsis}.ban-player small{display:block;margin-top:3px;color:#8fa2ce;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ban-table__actions{display:flex;gap:6px;justify-content:flex-end}.workspace-job-mini-btn.is-warning{border-color:rgba(245,158,11,.45);background:rgba(245,158,11,.13);color:#ffd688}
.ban-dialog{width:min(700px,calc(100vw - 28px));padding:0;border:1px solid rgba(126,145,255,.32);border-radius:8px;background:#111b35;color:#eef4ff;box-shadow:0 24px 80px rgba(0,0,0,.55)}.ban-dialog::backdrop{background:rgba(1,5,15,.78);backdrop-filter:blur(4px)}
.ban-dialog__head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line)}.ban-dialog__head h2{margin:5px 0 0}.ban-dialog__head button{width:34px;height:34px;border:0;background:transparent;color:#aab8d8;font-size:1.5rem;cursor:pointer}
.ban-dialog__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:22px}.ban-dialog__actions{display:flex;justify-content:flex-end;gap:10px;padding:0 22px 22px}
.ban-detail-list{margin:0;padding:8px 22px 20px}.ban-detail-list>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:18px;padding:13px 0;border-bottom:1px solid var(--line)}.ban-detail-list dt{color:#aab8d8;font-size:.76rem;font-weight:900;text-transform:uppercase}.ban-detail-list dd{margin:0;overflow-wrap:anywhere}.ban-detail-list code{color:#76a8ff}.ban-dialog>a.action-btn{margin:0 22px 22px}
@media(max-width:1050px){.ban-manager{grid-template-columns:1fr}.ban-manager__table-wrap{overflow-x:auto}.ban-manager__settings{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.ban-manager__toolbar,.ban-manager__summary{align-items:stretch;flex-direction:column}.ban-manager__settings,.ban-dialog__grid{grid-template-columns:1fr}.ban-dialog__grid .workspace-job-field--full{grid-column:auto}.ban-detail-list>div{grid-template-columns:1fr;gap:5px}.ban-table{min-width:760px}.ban-table__head,.ban-table__row{grid-template-columns:110px 70px 190px 160px 110px 150px}}

/* Admin TODO board */
.todo-page { position: relative; }
.todo-toolbar { display: flex; gap: 14px; flex-wrap: wrap; align-items: center; margin-bottom: 18px; }
.todo-inline-form { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; flex: 1 1 420px; }
.todo-inline-form .input { min-width: 180px; }
.todo-board-wrap { position: relative; overflow: auto; padding: 8px 4px 28px; min-height: 520px; }
.todo-lines { position: absolute; inset: 0; pointer-events: none; z-index: 1; overflow: visible; }
.todo-lines marker path { fill: rgba(176, 91, 255, .95); }
.todo-line-path { fill: none; stroke: rgba(176, 91, 255, .78); stroke-width: 2.5; filter: drop-shadow(0 0 7px rgba(176, 91, 255, .75)); }
.todo-board { position: relative; z-index: 2; display: grid; grid-auto-flow: column; grid-auto-columns: minmax(285px, 330px); gap: 16px; align-items: start; min-height: 500px; }
.todo-column { border: 1px solid rgba(255,255,255,.12); border-radius: 22px; background: rgba(8, 14, 30, .72); box-shadow: 0 20px 55px rgba(0,0,0,.25); overflow: hidden; backdrop-filter: blur(14px); }
.todo-column__head { display: flex; align-items: center; gap: 8px; padding: 13px; border-bottom: 1px solid rgba(255,255,255,.08); background: linear-gradient(135deg, rgba(75, 138, 255, .18), rgba(176, 91, 255, .12)); }
.todo-title-form { flex: 1; }
.todo-column__title { width: 100%; border: 0; outline: 0; color: var(--text, #fff); background: transparent; font-weight: 800; font-size: 1rem; }
.todo-icon-btn { width: 32px; height: 32px; border: 1px solid rgba(255,255,255,.14); border-radius: 12px; color: rgba(255,255,255,.85); background: rgba(255,255,255,.06); cursor: pointer; }
.todo-card-list { min-height: 120px; padding: 12px; display: grid; gap: 12px; }
.todo-card { border: 1px solid rgba(255,255,255,.12); border-radius: 18px; padding: 12px; color: rgba(255,255,255,.92); cursor: grab; background: rgba(16, 26, 48, .92); box-shadow: 0 14px 32px rgba(0,0,0,.22); transition: transform .16s ease, border-color .16s ease, box-shadow .16s ease; }
.todo-card:hover { transform: translateY(-2px); border-color: rgba(120, 179, 255, .55); box-shadow: 0 18px 42px rgba(55, 120, 255, .22); }
.todo-card.is-dragging { opacity: .55; transform: rotate(1.5deg) scale(.98); }
.todo-card--purple { background: linear-gradient(135deg, rgba(92, 41, 160, .92), rgba(24, 20, 50, .94)); }
.todo-card--green { background: linear-gradient(135deg, rgba(29, 117, 86, .92), rgba(18, 42, 40, .94)); }
.todo-card--orange { background: linear-gradient(135deg, rgba(150, 88, 28, .92), rgba(48, 31, 16, .94)); }
.todo-card--red { background: linear-gradient(135deg, rgba(145, 45, 62, .92), rgba(50, 18, 30, .94)); }
.todo-card__top { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
.todo-card__top strong { line-height: 1.3; }
.todo-card__edit { border: 0; border-radius: 999px; padding: 5px 9px; background: rgba(255,255,255,.1); color: rgba(255,255,255,.86); cursor: pointer; font-size: .78rem; }
.todo-card p { margin: 10px 0 0; color: rgba(226,235,255,.78); font-size: .9rem; line-height: 1.45; }
.todo-card__thumbs { display: flex; gap: 6px; margin-top: 10px; }
.todo-card__thumbs img { width: 54px; height: 42px; object-fit: cover; border-radius: 10px; border: 1px solid rgba(255,255,255,.14); }
.todo-add-card { display: flex; gap: 8px; padding: 12px; border-top: 1px solid rgba(255,255,255,.08); }
.todo-add-card .input { min-width: 0; }
.todo-links-panel { margin-top: 18px; }
.todo-link-list { display: grid; gap: 10px; }
.todo-link-row { display: flex; gap: 12px; justify-content: space-between; align-items: center; padding: 10px 12px; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; background: rgba(255,255,255,.04); }
.todo-modal { width: min(760px, calc(100vw - 30px)); border: 1px solid rgba(255,255,255,.14); border-radius: 24px; color: var(--text, #fff); background: rgba(8, 14, 30, .98); box-shadow: 0 30px 90px rgba(0,0,0,.55); }
.todo-modal::backdrop { background: rgba(0,0,0,.68); backdrop-filter: blur(6px); }
.todo-modal__close { position: absolute; top: 14px; right: 14px; }
.todo-modal__body { padding: 24px; display: grid; gap: 18px; }
.todo-upload-form { display: flex; gap: 12px; align-items: end; flex-wrap: wrap; padding-top: 12px; border-top: 1px solid rgba(255,255,255,.08); }
.todo-image-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); gap: 12px; }
.todo-image-grid figure { margin: 0; padding: 10px; border: 1px solid rgba(255,255,255,.1); border-radius: 16px; background: rgba(255,255,255,.04); }
.todo-image-grid img { width: 100%; height: 105px; object-fit: cover; border-radius: 12px; }
.todo-image-grid figcaption { margin: 7px 0; color: rgba(226,235,255,.72); font-size: .8rem; word-break: break-word; }
.todo-toast { position: fixed; right: 18px; bottom: 18px; z-index: 9999; padding: 12px 16px; border-radius: 14px; color: #fff; background: rgba(49, 180, 110, .96); box-shadow: 0 12px 35px rgba(0,0,0,.3); }
.todo-toast--error { background: rgba(225, 74, 94, .96); }
@media (max-width: 760px) {
  .todo-board { grid-auto-columns: minmax(260px, 86vw); }
  .todo-toolbar, .todo-inline-form, .todo-link-row { align-items: stretch; flex-direction: column; }
}

/* TODO detail modal upgrade */
.todo-card[data-open-card] { cursor: pointer; }
.todo-modal { width: min(1120px, calc(100vw - 28px)); max-height: min(900px, calc(100vh - 28px)); }
.todo-modal__body { max-height: calc(100vh - 58px); overflow: auto; }
.todo-modal__hint { margin: 6px 0 0; color: rgba(226,235,255,.72); font-size: .92rem; }
.todo-modal__grid { display: grid; grid-template-columns: minmax(360px, 1.2fr) minmax(300px, .8fr); gap: 18px; align-items: start; }
.todo-card-detail-form .textarea { min-height: 320px; resize: vertical; }
.todo-modal__side { display: grid; gap: 14px; }
.todo-paste-zone { border: 1px dashed rgba(176,91,255,.65); border-radius: 18px; padding: 18px; min-height: 112px; display: grid; place-items: center; gap: 6px; text-align: center; background: linear-gradient(135deg, rgba(176,91,255,.12), rgba(55,120,255,.08)); color: rgba(255,255,255,.9); outline: none; }
.todo-paste-zone:focus, .todo-paste-zone:hover { border-color: rgba(176,91,255,.95); box-shadow: 0 0 0 3px rgba(176,91,255,.12), 0 16px 36px rgba(80,55,180,.22); }
.todo-paste-zone span { color: rgba(226,235,255,.72); font-size: .9rem; }
.todo-image-grid { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); }
.todo-image-grid img { height: 145px; }
@media (max-width: 820px) {
  .todo-modal__grid { grid-template-columns: 1fr; }
  .todo-card-detail-form .textarea { min-height: 240px; }
}

.role-card--stack {
    display: block;
}

.role-card--stack label {
    display: grid;
    gap: 8px;
    margin-top: 12px;
}

.role-card--stack code {
    padding: 2px 6px;
    border-radius: 6px;
    background: rgba(255,255,255,.08);
}

/* Admin RCON repair panel */
.admin-server-row--expanded {
    align-items: flex-start;
}

.admin-server-rcon-editor {
    margin: 0.55rem 0 1rem 2rem;
    padding: 0.75rem;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 14px;
    background: rgba(15, 23, 42, 0.28);
}

.admin-server-rcon-editor summary {
    cursor: pointer;
    font-weight: 700;
}

.admin-server-rcon-editor__form {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.75rem;
    margin-top: 0.75rem;
}

.admin-server-rcon-editor__form label span {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.78rem;
    color: var(--muted, #94a3b8);
}

.admin-server-rcon-editor__form input[type="text"],
.admin-server-rcon-editor__form input[type="number"],
.admin-server-rcon-editor__form input[type="password"] {
    width: 100%;
}

.admin-server-rcon-editor__wide {
    grid-column: 1 / -1;
}

.admin-server-rcon-editor__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    margin-top: 0.75rem;
}

/* Admin remote repair upgrade */
.admin-server-repair-page .notice-banner { white-space: normal; }
.admin-server-summary--repair { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.admin-server-filterbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin: 0 0 1rem;
}
.admin-filter-chip {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0.45rem 0.75rem;
    border: 1px solid rgba(148, 163, 184, 0.2);
    border-radius: 999px;
    color: #a9b8d8;
    background: rgba(15, 23, 42, 0.28);
    font-size: 0.82rem;
    font-weight: 800;
    text-decoration: none;
}
.admin-filter-chip:hover,
.admin-filter-chip.is-active {
    border-color: rgba(99, 145, 255, 0.55);
    color: #eaf1ff;
    background: rgba(75, 120, 255, 0.16);
}
.admin-user-server-groups--single { grid-template-columns: 1fr; }
.admin-user-server-groups--single > section + section { border-left: 0; border-top: 1px solid var(--app-stroke-soft); }
.admin-server-row.needs-attention {
    border-color: rgba(245, 158, 11, 0.35);
    background: linear-gradient(90deg, rgba(245, 158, 11, 0.08), rgba(255,255,255,0.02));
}
.admin-status-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin: 0.25rem 0;
}
.admin-status-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.16rem 0.42rem;
    border-radius: 999px;
    font-size: 0.68rem;
    font-weight: 900;
    letter-spacing: .02em;
    border: 1px solid rgba(255,255,255,0.08);
}
.admin-status-badge.is-success { color: #a7f3d0; background: rgba(16, 185, 129, 0.14); }
.admin-status-badge.is-info { color: #bfdbfe; background: rgba(59, 130, 246, 0.15); }
.admin-status-badge.is-warning { color: #fde68a; background: rgba(245, 158, 11, 0.16); }
.admin-status-badge.is-danger { color: #fecaca; background: rgba(239, 68, 68, 0.16); }
.admin-status-badge.is-muted { color: #cbd5e1; background: rgba(148, 163, 184, 0.12); }
.admin-repair-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
    margin-top: 0.9rem;
}
.admin-repair-card {
    min-width: 0;
    padding: 0.85rem;
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 14px;
    background: rgba(2, 6, 23, 0.26);
}
.admin-repair-card--wide { grid-column: 1 / -1; }
.admin-repair-card h3 {
    margin: 0 0 0.75rem;
    color: #f1f5ff;
    font-size: 0.95rem;
}
.admin-rcon-actions-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}
.admin-inline-form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    align-items: center;
    padding: 0.55rem;
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 12px;
    background: rgba(255,255,255,0.025);
}
.admin-inline-form--wide { grid-column: 1 / -1; }
.admin-inline-form .input { min-width: 90px; flex: 1 1 120px; }
.admin-note-form { display: grid; gap: 0.65rem; }
.admin-note-form .textarea {
    width: 100%;
    min-height: 110px;
    border: 1px solid rgba(148, 163, 184, 0.22);
    border-radius: 10px;
    padding: 0.65rem;
    color: #e5eefc;
    background: rgba(15, 23, 42, 0.4);
}
.admin-log-list { display: grid; gap: 0.5rem; max-height: 360px; overflow: auto; }
.admin-log-item {
    display: grid;
    gap: 0.25rem;
    padding: 0.6rem;
    border-left: 3px solid rgba(148, 163, 184, 0.3);
    border-radius: 10px;
    background: rgba(255,255,255,0.026);
}
.admin-log-item.is-ok { border-left-color: rgba(16, 185, 129, 0.8); }
.admin-log-item.is-fail { border-left-color: rgba(239, 68, 68, 0.85); }
.admin-log-item strong { color: #eaf1ff; font-size: 0.82rem; }
.admin-log-item span { color: #8fa2ce; font-size: 0.74rem; }
.admin-log-item code {
    display: block;
    overflow-wrap: anywhere;
    padding: 0.35rem 0.45rem;
    border-radius: 8px;
    color: #bfdbfe;
    background: rgba(15, 23, 42, 0.55);
}
.admin-log-item p {
    margin: 0;
    color: #cbd5e1;
    font-size: 0.78rem;
    overflow-wrap: anywhere;
}
.admin-log-empty { color: #8fa2ce; font-size: 0.82rem; }
@media (max-width: 1200px) {
    .admin-server-summary--repair { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 850px) {
    .admin-repair-grid,
    .admin-rcon-actions-grid { grid-template-columns: 1fr; }
    .admin-inline-form--wide,
    .admin-repair-card--wide { grid-column: auto; }
    .admin-server-summary--repair { grid-template-columns: 1fr; }
}

/* Admin remote repair v2: Discord, health checks, rollback */
.admin-discord-settings-card{
    margin:0 0 18px;
    border:1px solid rgba(108,132,255,.25);
    background:linear-gradient(135deg,rgba(88,101,242,.12),rgba(23,31,54,.8));
}
.admin-discord-settings-form{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:12px;
    align-items:end;
}
.admin-discord-settings-form label:not(.check-row){display:grid;gap:6px}
.admin-discord-settings-form label span{color:var(--app-muted);font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.admin-discord-settings-form input[type="url"],
.admin-discord-settings-form input[type="password"]{
    width:100%;
    border:1px solid rgba(148,163,184,.25);
    border-radius:12px;
    padding:10px 12px;
    background:rgba(10,15,28,.7);
    color:#f8fbff;
}
.admin-suggestions{
    display:grid;
    gap:8px;
    margin-top:12px;
}
.admin-suggestions div{
    border:1px solid rgba(251,191,36,.22);
    background:rgba(251,191,36,.08);
    color:#ffe7a3;
    border-radius:12px;
    padding:9px 11px;
    font-size:13px;
}
.admin-log-item form,
form.admin-log-item{margin:0}
.admin-log-item .action-btn{margin-top:8px;width:max-content}
.admin-repair-card code{
    color:#d6e3ff;
    background:rgba(148,163,184,.11);
    border:1px solid rgba(148,163,184,.14);
    border-radius:8px;
    padding:1px 6px;
}

.admin-discord-report-form {
    display: grid;
    gap: 12px;
    margin-top: 12px;
}

.admin-discord-report-form label,
.admin-discord-settings-form label {
    display: grid;
    gap: 6px;
}

.admin-discord-report-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
}

.admin-discord-report-form .textarea {
    min-height: 96px;
}

/* Clean Discord bot setup */
.admin-discord-settings-form__wide {
    grid-column: 1 / -1;
}
.admin-discord-settings-form small {
    display: block;
    margin-top: 6px;
    color: var(--muted, #9aa6bf);
    line-height: 1.35;
}
.admin-discord-clean-help {
    margin-top: 16px;
    padding: 14px;
    border: 1px solid rgba(148, 163, 184, .25);
    border-radius: 12px;
    background: rgba(15, 23, 42, .35);
}
.admin-discord-clean-help pre {
    overflow-x: auto;
    white-space: pre-wrap;
    padding: 12px;
    border-radius: 10px;
    background: rgba(0, 0, 0, .25);
}

.admin-discord-server-channel {
  border: 1px solid rgba(148, 163, 184, .25);
  border-radius: 12px;
  padding: 12px 14px;
  margin: 10px 0 14px;
  background: rgba(15, 23, 42, .35);
  display: grid;
  gap: 4px;
}
.admin-discord-server-channel strong {
  color: #e5e7eb;
}
.admin-discord-server-channel span {
  color: #bfdbfe;
  font-weight: 700;
}
.admin-discord-server-channel small {
  color: #94a3b8;
  line-height: 1.45;
}

/* Global responsive hardening */
html,
body{
  max-width:100%;
  overflow-x:hidden;
}

input,
select,
textarea,
button{
  max-width:100%;
}

.table-wrap,
.data-table-wrap,
.server-table-panel,
.table-panel,
.workspace-card,
.dashboard-panel,
.panel,
.form-card,
.section-card{
  min-width:0;
}

.table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.data-table{
  width:100%;
}

.rcon-test-dialog{
  width:min(720px, calc(100vw - 28px));
}

.rcon-test-output{
  margin:14px 0 0;
  padding:16px;
  max-height:min(58vh, 520px);
  overflow:auto;
  border:1px solid var(--line);
  border-radius:10px;
  background:#07101f;
  color:#dbe7ff;
  font:13px/1.55 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.audit-filter-bar{
  display:grid;
  grid-template-columns:minmax(150px,.8fr) minmax(120px,.55fr) minmax(100px,.45fr) minmax(190px,1fr) auto auto;
  gap:10px;
  align-items:end;
  margin:18px 0;
}

.audit-filter-bar label{
  display:grid;
  gap:6px;
  min-width:0;
}

.audit-filter-bar label span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}

.audit-filter-bar input,
.audit-filter-bar select{
  min-width:0;
}

.audit-table{
  display:grid;
  gap:8px;
}

.audit-table__head,
.audit-table__row{
  display:grid;
  grid-template-columns:150px 150px 110px minmax(220px,1fr) 80px 100px;
  gap:10px;
  align-items:start;
}

.audit-table__head{
  padding:0 10px;
  color:var(--muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.audit-table__row{
  padding:12px 10px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.audit-table__row > span{
  min-width:0;
  overflow-wrap:anywhere;
}

.audit-table__row small{
  display:block;
  margin-top:3px;
  color:var(--muted);
  font-size:11px;
  line-height:1.35;
}

.audit-chip{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  max-width:100%;
  padding:0 8px;
  border:1px solid rgba(141,164,206,.18);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  font-size:11px;
  overflow-wrap:anywhere;
}

.audit-details summary{
  cursor:pointer;
  color:#9ebcff;
  font-weight:800;
}

.audit-details pre{
  margin:8px 0 0;
  max-height:260px;
  overflow:auto;
  padding:10px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:8px;
  background:#07101f;
  color:#dbe7ff;
  font:12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.security-overview{
  display:grid;
  grid-template-columns:1.2fr repeat(4,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}

.security-overview article{
  min-width:0;
  padding:16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.03);
}

.security-overview article span,
.security-overview article small{
  display:block;
  color:var(--muted);
  font-size:12px;
  overflow-wrap:anywhere;
}

.security-overview article strong{
  display:block;
  margin:6px 0 4px;
  color:#eef4ff;
  font-size:24px;
}

.security-score-card.is-good{
  border-color:rgba(71,217,156,.34);
  background:linear-gradient(135deg, rgba(71,217,156,.16), rgba(255,255,255,.025));
}

.security-score-card.is-warn{
  border-color:rgba(255,189,74,.35);
  background:linear-gradient(135deg, rgba(255,189,74,.14), rgba(255,255,255,.025));
}

.security-score-card.is-danger{
  border-color:rgba(255,103,132,.38);
  background:linear-gradient(135deg, rgba(255,103,132,.14), rgba(255,255,255,.025));
}

.security-panel-grid,
.health-panel-grid{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  gap:14px;
  align-items:start;
}

.health-panel-grid{
  grid-template-columns:.85fr 1.4fr;
}

.security-check-list,
.security-mini-log,
.health-history{
  display:grid;
  gap:10px;
}

.security-check{
  display:grid;
  grid-template-columns:30px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:11px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(4,11,23,.18);
}

.security-check > span{
  width:26px;
  height:26px;
  display:grid;
  place-items:center;
  border-radius:999px;
  color:#07101f;
  background:#ffbd4a;
  font-size:11px;
  font-weight:900;
}

.security-check.is-ok > span{
  background:#47d99c;
}

.security-check.is-danger > span{
  color:#fff;
  background:#ff6784;
}

.security-check strong,
.security-mini-log strong,
.health-history__item strong{
  display:block;
  color:#eef4ff;
  font-size:13px;
  overflow-wrap:anywhere;
}

.security-check small,
.security-mini-log small,
.health-history__item small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.security-mini-log article,
.health-history__item{
  min-width:0;
  padding:12px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.security-mini-log article span{
  display:block;
  margin-top:4px;
  color:#bfcae7;
  font-size:12px;
  overflow-wrap:anywhere;
}

.health-history__item{
  display:grid;
  gap:8px;
}

.health-history__item.is-ok{
  border-color:rgba(71,217,156,.3);
}

.health-history__item.is-failed{
  border-color:rgba(255,103,132,.3);
}

.health-history__item.is-partial{
  border-color:rgba(255,189,74,.3);
}

.health-history__item > div:first-child{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.health-history__item > div:first-child span,
.health-history__meta span{
  color:var(--muted);
  font-size:12px;
}

.health-history__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.health-history__meta span{
  padding:4px 8px;
  border:1px solid rgba(141,164,206,.15);
  border-radius:999px;
  background:rgba(255,255,255,.03);
}

.health-history details summary{
  cursor:pointer;
  color:#9ebcff;
  font-weight:800;
}

.health-history pre{
  margin:8px 0 0;
  max-height:220px;
  overflow:auto;
  padding:10px;
  border-radius:8px;
  background:#07101f;
  color:#dbe7ff;
  font:12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.alert-rules-toolbar{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:18px 0;
  padding:14px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.alert-rule-list{
  display:grid;
  gap:10px;
}

.alert-rule-card{
  display:grid;
  grid-template-columns:minmax(0,1.4fr) 180px 160px;
  gap:12px;
  align-items:end;
  padding:14px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:8px;
  background:rgba(4,11,23,.18);
}

.alert-rule-card > div,
.alert-rule-card label{
  min-width:0;
}

.alert-rule-card label:not(.check-row){
  display:grid;
  gap:6px;
}

.alert-rule-card label:not(.check-row) span,
.alert-rule-card small{
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}

.alert-rule-card small{
  display:block;
  margin-top:5px;
  overflow-wrap:anywhere;
}

.incident-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:18px 0;
}

.incident-summary-grid article{
  padding:16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.03);
}

.incident-summary-grid span{
  display:block;
  color:var(--muted);
  font-size:12px;
}

.incident-summary-grid strong{
  display:block;
  margin-top:6px;
  color:#eef4ff;
  font-size:22px;
  overflow-wrap:anywhere;
}

.incident-timeline{
  position:relative;
  display:grid;
  gap:12px;
}

.incident-item{
  display:grid;
  grid-template-columns:22px minmax(0,1fr);
  gap:12px;
}

.incident-item__marker{
  width:14px;
  height:14px;
  margin-top:16px;
  border-radius:999px;
  background:#ffbd4a;
  box-shadow:0 0 0 5px rgba(255,189,74,.12);
}

.incident-item.is-critical .incident-item__marker{
  background:#ff6784;
  box-shadow:0 0 0 5px rgba(255,103,132,.12);
}

.incident-item.is-info .incident-item__marker{
  background:#7ea2ff;
  box-shadow:0 0 0 5px rgba(126,162,255,.12);
}

.incident-item.is-resolved .incident-item__marker{
  background:#47d99c;
  box-shadow:0 0 0 5px rgba(71,217,156,.12);
}

.incident-item__body{
  min-width:0;
  padding:14px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.incident-item.is-open .incident-item__body{
  border-color:rgba(255,189,74,.26);
}

.incident-item.is-critical.is-open .incident-item__body{
  border-color:rgba(255,103,132,.35);
}

.incident-item__top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.incident-item__top strong{
  display:block;
  color:#eef4ff;
  font-size:14px;
}

.incident-item__top span,
.incident-item small{
  color:var(--muted);
  font-size:12px;
  line-height:1.4;
}

.incident-item p{
  margin:10px 0;
  color:#c9d7f5;
  overflow-wrap:anywhere;
}

.incident-badge{
  flex:0 0 auto;
  padding:4px 8px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:#dbe7ff;
  font-size:11px;
  font-weight:800;
}

.incident-item details summary{
  cursor:pointer;
  color:#9ebcff;
  font-weight:800;
}

.incident-item pre{
  margin:8px 0 0;
  max-height:260px;
  overflow:auto;
  padding:10px;
  border-radius:8px;
  background:#07101f;
  color:#dbe7ff;
  font:12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}

.incident-actions{
  margin-top:12px;
}

.admin-center-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:0 0 18px;
}

.admin-nav-groups{
  display:grid;
  gap:10px;
  margin:0 0 18px;
}

.admin-breadcrumb{
  margin-top:8px;
  color:#b8c6df;
  font-size:13px;
  font-weight:800;
}

.admin-command-bar{
  position:relative;
  display:grid;
  grid-template-columns:minmax(260px,1.25fr) minmax(220px,.9fr) auto;
  gap:12px;
  align-items:end;
  margin:0 0 14px;
  padding:12px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.admin-command-bar label{
  display:block;
  margin:0 0 6px;
  color:#b8c6df;
  font-size:12px;
  font-weight:900;
}

.admin-search-results{
  position:absolute;
  z-index:50;
  display:grid;
  gap:6px;
  width:min(520px, calc(100vw - 40px));
  max-height:340px;
  overflow:auto;
  margin-top:6px;
  padding:8px;
  border:1px solid rgba(141,164,206,.18);
  border-radius:8px;
  background:#081225;
  box-shadow:0 20px 50px rgba(0,0,0,.35);
}

.admin-search-results[hidden]{
  display:none;
}

.admin-search-results a,
.admin-search-results .admin-empty-state{
  display:block;
  padding:10px;
  border:1px solid rgba(141,164,206,.12);
  border-radius:7px;
  color:#dce7ff;
  text-decoration:none;
  background:rgba(255,255,255,.025);
}

.admin-search-results a strong,
.admin-search-results a span{
  display:block;
}

.admin-search-results a span{
  margin-top:3px;
  color:#b8c6df;
  font-size:12px;
}

.admin-favorites-panel{
  margin:0 0 18px;
  padding:14px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.admin-command-palette{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:start center;
  padding-top:12vh;
  background:rgba(0,0,0,.55);
}

.admin-command-palette[hidden]{
  display:none;
}

.admin-command-palette__panel{
  position:relative;
  width:min(680px, calc(100vw - 28px));
  padding:14px;
  border:1px solid rgba(141,164,206,.2);
  border-radius:10px;
  background:#081225;
  box-shadow:0 28px 80px rgba(0,0,0,.55);
}

.admin-command-palette__panel .admin-search-results{
  position:static;
  width:100%;
  margin-top:10px;
  box-shadow:none;
}

.admin-empty-state{
  padding:12px;
  border:1px dashed rgba(141,164,206,.2);
  border-radius:8px;
  color:#b8c6df;
  background:rgba(255,255,255,.02);
}

.admin-status-pill{
  display:inline-flex !important;
  width:max-content;
  align-items:center;
  min-height:22px;
  padding:2px 8px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:999px;
  color:#dbe7ff !important;
  background:rgba(255,255,255,.045);
  font-size:11px !important;
  font-weight:900;
}

.admin-status-pill.is-online,
.admin-status-pill.is-active,
.admin-status-pill.is-enabled,
.admin-status-pill.is-ok,
.admin-status-pill.is-ready,
.admin-status-pill.is-resolved{
  border-color:rgba(71,217,156,.35);
  color:#b9ffe2 !important;
  background:rgba(71,217,156,.11);
}

.admin-status-pill.is-offline,
.admin-status-pill.is-critical,
.admin-status-pill.is-missing,
.admin-status-pill.is-revoked{
  border-color:rgba(255,107,107,.38);
  color:#ffd0d0 !important;
  background:rgba(255,107,107,.12);
}

.admin-status-pill.is-warning,
.admin-status-pill.is-open,
.admin-status-pill.is-disabled{
  border-color:rgba(255,189,74,.38);
  color:#ffe1a3 !important;
  background:rgba(255,189,74,.12);
}

.admin-primary-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:8px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.admin-primary-tabs a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  padding:0 14px;
  border:1px solid transparent;
  border-radius:8px;
  color:#cbd7f4;
  font-size:13px;
  font-weight:900;
  text-decoration:none;
}

.admin-primary-tabs a.is-active{
  border-color:rgba(112,135,255,.5);
  background:rgba(99,119,255,.2);
  color:#fff;
}

.admin-nav-group{
  min-width:0;
  padding:12px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.admin-nav-group.is-active{
  border-color:rgba(112,135,255,.45);
  background:rgba(99,119,255,.08);
}

.admin-nav-group h2{
  margin:0 0 10px;
  color:#eef4ff;
  font-size:13px;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.admin-nav-group .admin-center-tabs{
  margin:0;
}

.admin-center-tabs a{
  display:inline-flex;
  min-height:38px;
  align-items:center;
  gap:8px;
  padding:0 13px;
  border:1px solid var(--line);
  border-radius:8px;
  color:#cbd7f4;
  background:rgba(255,255,255,.025);
  font-weight:800;
  font-size:13px;
  text-decoration:none;
}

.admin-center-tabs a > span{
  display:inline-grid;
  width:24px;
  height:24px;
  place-items:center;
  border:1px solid rgba(141,164,206,.16);
  border-radius:6px;
  color:#9fb2ff;
  background:rgba(255,255,255,.035);
  font-size:10px;
}

.admin-center-tabs a.is-active{
  border-color:rgba(112,135,255,.55);
  background:rgba(99,119,255,.18);
  color:#fff;
}

.admin-center-tabs a.is-active > span{
  border-color:rgba(112,135,255,.55);
  color:#fff;
  background:rgba(112,135,255,.28);
}

.admin-center-tabs--compact{
  margin:0 0 12px;
}

.admin-center-metrics{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}

.admin-center-metrics article{
  min-width:0;
  padding:16px;
  border:1px solid var(--line);
  border-radius:8px;
  background:rgba(255,255,255,.03);
}

.admin-center-metrics span{
  display:block;
  color:#b7c5df;
  font-size:12px;
}

.admin-center-metrics strong{
  display:block;
  margin-top:6px;
  color:#eef4ff;
  font-size:25px;
}

.admin-center-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.admin-center-grid > .panel > .muted-text{
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  color:#b8c6df;
  line-height:1.45;
}

.admin-center-grid--approval{
  grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);
}

.admin-mini-list,
.admin-check-list{
  display:grid;
  gap:9px;
}

.admin-mini-list a,
.admin-mini-list article{
  display:block;
  min-width:0;
  padding:12px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
  color:#dce7ff;
  text-decoration:none;
}

.admin-mini-list strong{
  display:block;
  color:#eef4ff;
  overflow-wrap:anywhere;
}

.admin-mini-list span,
.admin-mini-list p{
  display:block;
  margin:5px 0 0;
  color:#b8c6df;
  font-size:12px;
  line-height:1.4;
  overflow-wrap:anywhere;
}

.admin-check-list{
  grid-template-columns:1fr;
}

.admin-check-list--wide{
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.admin-check-list > div{
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:12px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(255,255,255,.025);
}

.admin-check-list > div > span{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#ffbd4a;
  color:#161008;
  font-size:11px;
  font-weight:900;
}

.admin-check-list > div.is-ok > span{
  background:#47d99c;
}

.admin-check-list strong,
.admin-check-list small{
  display:block;
  overflow-wrap:break-word;
}

.admin-check-list small{
  grid-column:2;
  margin-top:4px;
  color:#b8c6df;
  font-size:12px;
  line-height:1.45;
}

.admin-table-wrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.admin-approval-actions{
  display:flex;
  gap:8px;
  margin-top:10px;
}

.admin-approval-form{
  display:grid;
  gap:12px;
}

.admin-approval-form label{
  display:grid;
  gap:6px;
}

.admin-approval-form label span{
  color:var(--muted);
  font-size:12px;
  font-weight:800;
}

.setup-health-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}

.setup-health-card{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:15px;
  border:1px solid var(--line);
  border-radius:10px;
  background:rgba(255,255,255,.03);
}

.setup-health-card strong,
.setup-checklist__item strong{
  display:block;
  color:#eef4ff;
  font-size:13px;
}

.setup-health-card small,
.setup-checklist__item small{
  display:block;
  margin-top:4px;
  color:var(--muted);
  font-size:12px;
  line-height:1.35;
  overflow-wrap:anywhere;
}

.setup-panel-grid{
  display:grid;
  grid-template-columns:1.1fr 1.2fr .9fr;
  gap:14px;
  margin-top:14px;
}

.setup-checklist{
  display:grid;
  gap:9px;
}

.setup-checklist__item{
  display:grid;
  grid-template-columns:28px minmax(0,1fr);
  gap:10px;
  align-items:start;
  padding:10px;
  border:1px solid rgba(141,164,206,.14);
  border-radius:8px;
  background:rgba(4,11,23,.18);
}

.setup-checklist__item > span{
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
}

.setup-checklist__item.is-ok > span{
  color:#0b2018;
  background:#47d99c;
}

.setup-checklist__item.is-warn > span{
  color:#261606;
  background:#ffbd4a;
}

.setup-kv{
  display:grid;
  gap:10px;
  margin:0 0 14px;
}

.setup-kv div{
  display:grid;
  gap:5px;
}

.setup-kv dt{
  color:var(--muted);
  font-size:11px;
}

.setup-kv dd{
  margin:0;
  min-width:0;
}

.setup-kv code{
  display:block;
  overflow:auto;
  padding:8px;
  border-radius:6px;
  background:rgba(0,0,0,.2);
}

.setup-actions-list{
  display:grid;
  gap:8px;
}

.setup-actions-list a{
  display:block;
  padding:10px 11px;
  border:1px solid rgba(141,164,206,.16);
  border-radius:8px;
  color:#dce8ff;
  text-decoration:none;
  background:rgba(255,255,255,.025);
}

.setup-actions-list a:hover{
  border-color:#78a8ff;
  color:#fff;
  background:rgba(89,132,255,.12);
}

.btn,
.action-btn,
.sidebar-server-action,
.server-mini-action{
  text-align:center;
}

@media (max-width: 760px){
  body{
    background:linear-gradient(180deg, #030c18 0%, #020916 100%);
  }

  body::before{
    display:none;
  }

  .container{
    width:min(var(--container), calc(100% - 24px));
  }

  .header{
    position:relative;
  }

  .header__inner{
    min-height:auto;
    padding:12px 0;
    gap:12px;
  }

  .brand{
    min-width:0;
    gap:10px;
  }

  .brand__title{
    font-size:17px;
  }

  .brand__subtitle{
    max-width:56vw;
    white-space:normal;
  }

  .nav{
    gap:18px;
    padding-bottom:4px;
    scrollbar-width:thin;
  }

  .header__actions{
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
  }

  .hero{
    gap:24px;
    padding-top:24px;
  }

  .hero__title{
    font-size:clamp(34px, 11vw, 56px);
    line-height:1.03;
  }

  .hero__text{
    font-size:16px;
  }

  .hero__actions,
  .action-row,
  .top-actions,
  .table-actions{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
  }

  .hero__actions .btn,
  .action-row .btn,
  .top-actions .btn,
  .table-actions .btn,
  .action-row .action-btn,
  .top-actions .action-btn,
  .table-actions .action-btn{
    width:100%;
  }

  .input,
  .select,
  .textarea,
  .lang-select{
    width:100%;
    min-width:0;
  }

  .form-grid,
  .form-grid--search,
  .auth-panels,
  .support-layout,
  .support-grid,
  .subscription-hero,
  .roles-layout,
  .profile-grid,
  .prefs-grid,
  .cms-admin-grid,
  .cms-check-grid,
  .admin-repair-grid,
  .admin-rcon-actions-grid{
    grid-template-columns:1fr !important;
  }

  .panel,
  .panel--app,
  .section-card,
  .form-card,
  .dashboard-panel,
  .summary-card,
  .server-card{
    padding:14px;
    border-radius:12px;
  }

  .data-table,
  .server-table,
  .log-table{
    min-width:680px;
  }

  .setup-health-grid,
  .setup-panel-grid{
    grid-template-columns:1fr;
  }

  .security-overview,
  .security-panel-grid,
  .health-panel-grid,
  .alert-rule-card,
  .incident-summary-grid,
  .admin-nav-groups,
  .admin-center-metrics,
  .admin-center-grid,
  .admin-center-grid--approval,
  .admin-check-list--wide{
    grid-template-columns:1fr;
  }

  .admin-nav-group{
    padding:10px;
  }

  .admin-command-bar{
    grid-template-columns:1fr;
  }

  .admin-primary-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .admin-primary-tabs a{
    flex:0 0 auto;
    white-space:nowrap;
  }

  .admin-nav-group .admin-center-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    padding-bottom:4px;
    -webkit-overflow-scrolling:touch;
  }

  .admin-center-tabs a{
    flex:0 0 auto;
    min-height:36px;
    white-space:nowrap;
  }

  .incident-item__top{
    flex-direction:column;
  }

  .audit-filter-bar{
    grid-template-columns:1fr;
  }

  .audit-table{
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  .audit-table__head,
  .audit-table__row{
    min-width:820px;
  }

  .notifications-drawer,
  .notif-drawer,
  .player-search-dialog__panel,
  .team-chat{
    width:calc(100vw - 20px);
    max-width:calc(100vw - 20px);
  }
}

@media (max-width: 480px){
  .container{
    width:min(var(--container), calc(100% - 18px));
  }

  .home-landing .container{
    width:calc(100% - 18px);
  }

  .brand__subtitle{
    display:none;
  }

  .btn,
  .action-btn{
    min-height:42px;
    padding-left:10px;
    padding-right:10px;
  }

  .dashboard-content,
  .app-content{
    padding-left:10px;
    padding-right:10px;
  }
}

@media (max-width: 1280px){
  .home-landing .container{
    width:min(1120px, calc(100% - 64px));
  }
  .ops-hero__inner{
    grid-template-columns:minmax(320px,.85fr) minmax(520px,1.15fr);
    gap:44px;
  }
  .ops-proof{
    grid-template-columns:minmax(320px,.7fr) minmax(520px,1.3fr);
    gap:34px;
  }
}

@media (max-width: 1040px){
  .home-landing .container{
    width:min(960px, calc(100% - 44px));
  }
  .ops-hero__inner{
    grid-template-columns:1fr;
    gap:34px;
    padding-top:46px;
  }
  .ops-dashboard-preview{
    max-width:820px;
    transform:rotateZ(2deg);
  }
  .ops-stack-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .ops-download{
    grid-template-columns:1fr;
    margin-top:0;
  }
  .ops-proof{
    grid-template-columns:1fr;
  }
  .ops-proof p{
    max-width:760px;
  }
}

@media (max-width: 820px){
  .ops-hero,
  .ops-hero__inner{
    min-height:0;
  }
  .ops-hero__inner{
    padding-top:34px;
    padding-bottom:34px;
  }
  .ops-hero h1{
    font-size:52px;
    line-height:.94;
  }
  .ops-hero__content p{
    font-size:16px;
    line-height:1.55;
  }
  .ops-dashboard-preview{
    transform:none;
    border-radius:16px;
  }
  .ops-dashboard-preview__glow{
    display:none;
  }
  .ops-stack-grid{
    grid-template-columns:1fr;
  }
  .ops-download{
    padding:18px;
  }
  .ops-section-head h2,
  .ops-proof h2{
    font-size:30px;
  }
  .ops-stack-grid article{
    min-height:0;
  }
  .ops-stack-grid h3{
    margin-top:20px;
  }
  .feature-grid,
  .why-panel{
    grid-template-columns:1fr;
  }
  .why-item + .why-item{
    border-left:0;
    border-top:1px solid var(--line-soft);
  }
  .section-title{
    font-size:28px;
  }
  .feature-card{
    min-height:0;
  }
  .ops-proof__panel,
  .cta-panel--home{
    padding:20px;
  }
  .ops-proof__story{
    display:grid;
    grid-template-columns:1fr;
  }
  .ops-proof__quote p{
    max-width:none;
  }
  .ops-proof__map{
    position:relative;
    right:auto;
    bottom:auto;
    width:100%;
    min-width:0;
    height:150px;
    margin-top:14px;
  }
  .ops-world-map{
    position:relative;
    min-width:0;
    width:100%;
  }
  .cta-panel--home{
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
  }
  .cta-panel--home .hero__actions{
    grid-column:1 / -1;
  }
}

@media (max-width: 560px){
  .home-landing .container{
    width:calc(100% - 18px);
  }
  .ops-hero__actions,
  .ops-hero__actions .btn,
  .ops-download__actions,
  .ops-download__actions .btn{
    width:100%;
  }
  .ops-hero h1{
    font-size:42px;
  }
  .ops-kicker,
  .ops-section-head span,
  .ops-proof span,
  .ops-panel-title{
    font-size:10px;
  }
  .cta-panel--home{
    grid-template-columns:1fr;
  }
}
