:root {
  --bg: #031106;
  --bg-soft: rgba(5, 28, 11, 0.72);
  --card: rgba(8, 37, 15, 0.62);
  --line: rgba(121, 255, 149, 0.24);
  --text: #eaffef;
  --muted: #b6dcbc;
  --green: #66ff8f;
  --green-2: #a8ff78;
  --green-3: #00ff85;
  --danger: #ff4e4e;
  --shadow: 0 0 30px rgba(85, 255, 146, 0.22), inset 0 0 0 1px rgba(150,255,179,.08);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0; color: var(--text); background:
  radial-gradient(circle at top, rgba(12, 99, 33, .22), transparent 30%),
  linear-gradient(180deg, #06160a, #020b04 55%, #051008);
  min-height: 100vh; font-family: Inter, system-ui, sans-serif; overflow-x: hidden;
}
body::before {
  content: ""; position: fixed; inset: 0; pointer-events: none;
  background: repeating-linear-gradient(90deg, rgba(121,255,149,.02) 0 2px, transparent 2px 80px);
  opacity: .25;
}
.forest-bg {
  position: fixed; inset: 0; pointer-events: none;
  background:
    linear-gradient(to top, rgba(4, 26, 9, .95), rgba(4, 26, 9, .1)),
    radial-gradient(circle at 10% 100%, rgba(31, 189, 87, .18), transparent 20%),
    radial-gradient(circle at 80% 10%, rgba(31, 189, 87, .16), transparent 22%);
}
.forest-bg::after {
  content: ""; position: absolute; inset: auto 0 0; height: 34vh;
  background: linear-gradient(transparent, rgba(0,0,0,.5)),
    radial-gradient(circle at 5% 95%, #07170a 0 7%, transparent 8%),
    radial-gradient(circle at 15% 95%, #07170a 0 10%, transparent 11%),
    radial-gradient(circle at 28% 95%, #07170a 0 8%, transparent 9%),
    radial-gradient(circle at 38% 95%, #07170a 0 11%, transparent 12%),
    radial-gradient(circle at 54% 95%, #07170a 0 9%, transparent 10%),
    radial-gradient(circle at 70% 95%, #07170a 0 8%, transparent 9%),
    radial-gradient(circle at 84% 95%, #07170a 0 12%, transparent 13%);
  filter: blur(3px);
}
.mist, .glow-orb, .fireflies { position: fixed; inset: 0; pointer-events: none; }
.mist::before, .mist::after {
  content: ""; position: absolute; inset: auto -10% 0 -10%; height: 28vh;
  background: radial-gradient(circle, rgba(110,255,157,.12), transparent 60%);
  filter: blur(30px); animation: drift 18s linear infinite;
}
.mist-b::before { animation-duration: 28s; animation-direction: reverse; opacity: .8; }
.glow-orb { width: 16rem; height: 16rem; border-radius: 50%; filter: blur(80px); opacity: .25; }
.orb-a { top: 10%; left: -2rem; background: var(--green); animation: floaty 7s ease-in-out infinite; }
.orb-b { right: -3rem; bottom: 15%; background: #22ffcc; animation: floaty 11s ease-in-out infinite reverse; }
.fireflies { background-image:
 radial-gradient(circle, rgba(182,255,196,.95) 0 1px, transparent 2px),
 radial-gradient(circle, rgba(126,255,140,.9) 0 1.5px, transparent 2px),
 radial-gradient(circle, rgba(221,255,226,.95) 0 1px, transparent 2px);
 background-size: 180px 180px, 220px 220px, 300px 300px;
 animation: sparkle 12s linear infinite;
 opacity: .5;
}
.shell { width: min(1180px, calc(100% - 24px)); margin: 0 auto; padding: 18px 0 64px; position: relative; z-index: 2; }
.topbar {
  margin: 12px auto 10px; width: min(1180px, calc(100% - 24px)); display: flex; align-items: center; justify-content: space-between;
  padding: 12px 16px; border-radius: 24px; position: sticky; top: 10px; z-index: 12;
}
.brand { display: flex; align-items: center; gap: 12px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.brand-icon, .icon-badge, .player-icon { display:grid; place-items:center; background: rgba(120,255,149,.14); border: 1px solid var(--line); box-shadow: var(--shadow); }
.brand-icon { width: 46px; height: 46px; border-radius: 16px; font-size: 24px; }
.icon-badge { width: 74px; height: 74px; border-radius: 24px; font-size: 34px; margin-bottom: 18px; }
.player-icon { width: 58px; height: 58px; border-radius: 18px; font-size: 28px; }
.glass { background: var(--card); backdrop-filter: blur(12px); border: 1px solid var(--line); box-shadow: var(--shadow); }
.mobile-scroll-menu {
  display: flex; gap: 12px; overflow-x: auto; white-space: nowrap; padding: 14px; margin: 8px auto 18px; width: min(1180px, calc(100% - 24px)); border-radius: 22px;
}
.mobile-scroll-menu::-webkit-scrollbar { height: 6px; }
.mobile-scroll-menu a {
  color: var(--text); text-decoration: none; padding: 14px 18px; border-radius: 18px; background: rgba(135,255,167,.1); border: 1px solid rgba(135,255,167,.16); min-width: max-content; font-weight: 700;
}
.hero-grid, .two-col, .three-col, .player-grid { display: grid; gap: 18px; }
.hero-grid { grid-template-columns: 1.5fr 1fr; align-items: stretch; }
.two-col { grid-template-columns: 1fr 1fr; }
.three-col { grid-template-columns: repeat(3, 1fr); }
.player-grid { grid-template-columns: repeat(3, 1fr); }
.hero-card, .stats-card, .panel { padding: 22px; border-radius: 30px; }
.hero-card h1 { font-size: clamp(2.2rem, 5vw, 4.5rem); line-height: .95; margin: 8px 0 14px; text-shadow: 0 0 18px rgba(123,255,167,.38); }
.eyebrow { color: var(--green-2); font-weight: 800; letter-spacing: .15em; text-transform: uppercase; font-size: .8rem; }
.cta-row { display:flex; gap:12px; flex-wrap:wrap; margin-top: 18px; }
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:52px; padding: 0 18px; border-radius: 18px; font-weight: 800; text-decoration:none; border:1px solid transparent; cursor:pointer;
}
.btn-primary { background: linear-gradient(135deg, var(--green), var(--green-2)); color: #03210b; box-shadow: 0 0 25px rgba(121,255,149,.4); }
.btn-outline { color: var(--text); border-color: var(--line); background: rgba(255,255,255,.03); }
.stats-card { display:grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.stat { padding:16px; border-radius:22px; background: rgba(141,255,166,.08); border:1px solid rgba(141,255,166,.12); }
.stat span { display:block; font-size: clamp(1.8rem, 4vw, 3rem); font-weight: 900; color: var(--green-2); }
.stat small, p, .meta, li { color: var(--muted); }
.section { margin-top: 22px; }
.section-title { margin-bottom: 14px; }
.section-title h2 { margin:0 0 6px; font-size: clamp(1.5rem, 3vw, 2.6rem); }
.player-card { padding: 18px; border-radius: 24px; }
.glow-name {
  font-size: 1.3rem; font-weight: 900; margin-top: 14px; color: white;
  text-shadow: 0 0 8px var(--glow, #79ff95), 0 0 20px var(--glow, #79ff95), 0 0 38px var(--glow, #79ff95);
  animation: pulseGlow 2.8s ease-in-out infinite;
}
.case-list, .feature-stack { display:grid; gap: 12px; }
.case-item, .feature { display:flex; justify-content:space-between; align-items:center; gap:16px; padding: 14px; border-radius: 18px; background: rgba(121,255,149,.06); border:1px solid rgba(121,255,149,.12); }
.feature { justify-content:flex-start; }
.feature span { font-size: 2rem; }
.pill { padding: 8px 12px; border-radius: 999px; background: rgba(115,255,136,.15); border:1px solid rgba(115,255,136,.18); color: var(--green-2); font-weight: 700; }
.clean-list { margin:0; padding-left: 18px; display:grid; gap: 10px; }
.danger-panel { border-color: rgba(255,78,78,.25); box-shadow: 0 0 30px rgba(255,78,78,.15); }
.blocked-preview { color: #ff7d7d; font-weight: 800; padding: 18px; border-radius: 18px; background: rgba(255,78,78,.08); border:1px solid rgba(255,78,78,.2); }
.alert { padding: 14px 16px; border-radius: 16px; margin: 14px 0; font-weight: 700; }
.alert.success { background: rgba(73,255,146,.14); color: #afffc4; border:1px solid rgba(73,255,146,.25); }
.alert.danger { background: rgba(255,78,78,.14); color: #ffc0c0; border:1px solid rgba(255,78,78,.25); }
.grid-form { display:grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 14px; }
.grid-form label { display:grid; gap: 8px; font-weight: 700; color: #d7ffe0; }
.grid-form input {
  height: 52px; border-radius: 16px; border: 1px solid var(--line); padding: 0 14px; background: rgba(2,15,5,.74); color: white; outline: none;
}
.grid-form button { grid-column: 1 / -1; }
.install-shell { display:grid; place-items:center; min-height: 100vh; padding-top: 40px; }
.reveal { opacity: 0; transform: translateY(20px) scale(.98); animation: reveal .8s ease forwards; }
.delay-1 { animation-delay: .12s; } .delay-2 { animation-delay: .24s; }
@keyframes drift { from { transform: translateX(-8%) translateY(0); } to { transform: translateX(8%) translateY(-2%); } }
@keyframes pulseGlow { 50% { text-shadow: 0 0 12px var(--glow, #79ff95), 0 0 30px var(--glow, #79ff95), 0 0 56px var(--glow, #79ff95); } }
@keyframes floaty { 50% { transform: translateY(-25px) translateX(10px); } }
@keyframes sparkle { 50% { transform: translateY(-10px) scale(1.02); opacity: .7; } }
@keyframes reveal { to { opacity:1; transform: translateY(0) scale(1); } }
@media (max-width: 920px) {
  .hero-grid, .two-col, .three-col, .player-grid, .grid-form, .stats-card { grid-template-columns: 1fr; }
  .hero-card h1 { font-size: clamp(2rem, 12vw, 3.1rem); }
  .topbar { border-radius: 20px; }
  .mobile-scroll-menu a { padding: 14px 16px; font-size: .96rem; }
  .hero-card, .stats-card, .panel, .player-card { padding: 18px; border-radius: 24px; }
}

a, button, input, select, textarea { font: inherit; }
.topbar-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; justify-content: flex-end; }
.user-chip {
  display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 14px;
  border-radius: 999px; background: rgba(121,255,149,.10); border: 1px solid rgba(121,255,149,.18); color: var(--text); font-weight: 800;
}
.single-col-form { grid-template-columns: 1fr; }
.single-col-form button { grid-column: auto; }
.single-col-form select,
.single-col-form textarea,
.single-col-form input {
  width: 100%; border-radius: 16px; border: 1px solid var(--line); padding: 12px 14px;
  background: rgba(2,15,5,.74); color: white; outline: none;
}
.single-col-form textarea { min-height: 108px; resize: vertical; }
.auth-card { width: min(640px, 100%); }
.auth-links { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 14px; }
.table-wrap { overflow-x: auto; border-radius: 24px; padding: 10px; }
.admin-table { width: 100%; border-collapse: collapse; min-width: 820px; }
.admin-table th, .admin-table td { padding: 14px 12px; border-bottom: 1px solid rgba(121,255,149,.10); text-align: left; vertical-align: top; }
.admin-table th { color: var(--green-2); font-size: .9rem; text-transform: uppercase; letter-spacing: .06em; }
.status-pill { display: inline-block; padding: 8px 12px; border-radius: 999px; font-weight: 800; }
.status-ok { background: rgba(73,255,146,.12); color: #afffc4; border: 1px solid rgba(73,255,146,.24); }
.status-danger { background: rgba(255,78,78,.12); color: #ffb0b0; border: 1px solid rgba(255,78,78,.24); }
.compact-form { margin-top: 0; }
@media (max-width: 920px) {
  .topbar-actions { width: 100%; justify-content: stretch; }
  .topbar-actions .btn, .topbar-actions .user-chip { width: 100%; }
}


.dashboard-hero { align-items: stretch; }
.meter-list { display: grid; gap: 14px; }
.meter-card { padding: 14px; border-radius: 20px; background: rgba(121,255,149,.06); border:1px solid rgba(121,255,149,.12); }
.meter-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:10px; font-weight:800; }
.meter { height: 14px; border-radius: 999px; background: rgba(255,255,255,.06); overflow:hidden; border:1px solid rgba(121,255,149,.12); }
.meter span { display:block; height:100%; border-radius:999px; background: linear-gradient(90deg, var(--green), var(--green-2)); box-shadow: 0 0 18px rgba(121,255,149,.35); }
.case-card, .inventory-card { padding: 16px; border-radius: 22px; background: rgba(121,255,149,.06); border:1px solid rgba(121,255,149,.12); }
.case-head { display:flex; justify-content:space-between; gap:14px; align-items:flex-start; margin-bottom:10px; }
.mini-grid, .inventory-grid { display:grid; gap:12px; }
.mini-grid { grid-template-columns: repeat(3, 1fr); margin: 12px 0; }
.mini-tile { padding: 12px; border-radius: 18px; background: rgba(255,255,255,.04); border:1px solid rgba(121,255,149,.08); display:grid; gap:6px; }
.mini-tile span { font-size: 1.4rem; }
.compact-inline-form { margin-top: 12px; }
.compact-inline-form-right { margin-top: 0; }
.compact-inline-form .btn { min-height: 46px; }
.restore-list { color: var(--green-2); font-weight: 700; margin: 10px 0 12px; }
.timeline { display:grid; gap:14px; }
.timeline-item { display:grid; grid-template-columns: 18px 1fr; gap:14px; align-items:flex-start; }
.timeline-dot { width: 14px; height: 14px; border-radius: 50%; margin-top: 8px; background: var(--green-2); box-shadow: 0 0 20px rgba(121,255,149,.6); }
.clue-box { align-items:flex-start; }
.shop-grid { max-height: 900px; overflow:auto; padding-right: 4px; }
.stack-mobile { align-items:center; }
@media (max-width: 920px) {
  .mini-grid { grid-template-columns: 1fr; }
  .case-head, .stack-mobile { flex-direction: column; }
  .compact-inline-form-right { width: 100%; }
  .compact-inline-form-right .btn { width: 100%; }
}

.phase-night {
  background:
    radial-gradient(circle at top, rgba(17, 42, 118, .20), transparent 30%),
    linear-gradient(180deg, #05101d, #02060d 55%, #04110a);
}
.phase-night .forest-bg {
  background:
    linear-gradient(to top, rgba(2, 12, 26, .95), rgba(4, 26, 9, .1)),
    radial-gradient(circle at 15% 20%, rgba(97, 128, 255, .12), transparent 20%),
    radial-gradient(circle at 80% 10%, rgba(31, 189, 87, .10), transparent 22%);
}
.day-feature, .night-feature { border-width: 1px; }
.day-feature { border-color: rgba(255, 233, 123, .18); background: rgba(255, 233, 123, .07); }
.night-feature { border-color: rgba(122, 140, 255, .25); background: rgba(88, 103, 222, .12); }
.action-row { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
.no-margin { margin: 0; }
.top-space { margin-top: 14px; }
@media (max-width: 920px) {
  .action-row > * { width: 100%; }
  .action-row .btn { width: 100%; }
}

.btn-danger {
  background: linear-gradient(135deg, rgba(255,92,92,.95), rgba(180,34,34,.92));
  color: #fff;
  border: 1px solid rgba(255,140,140,.35);
  box-shadow: 0 10px 24px rgba(255,82,82,.22);
}
.btn-danger:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(255,82,82,.28);
}
.btn-small {
  min-height: 40px;
  padding: 10px 14px;
  font-size: .92rem;
}

.hero-grid-xl { grid-template-columns: 1.35fr .85fr; }
.hero-poster { position: relative; overflow: hidden; }
.hero-poster::after { content:''; position:absolute; inset:auto -10% -35% auto; width:240px; height:240px; border-radius:50%; background:radial-gradient(circle, rgba(102,255,143,.18), transparent 70%); }
.hero-side-stack { display:grid; gap:16px; align-content:start; }
@media (max-width: 920px) { .hero-grid-xl { grid-template-columns: 1fr; } }


.menu-toggle {
  display:none; align-items:center; justify-content:center; width:54px; height:54px;
  border-radius:18px; border:1px solid var(--line); background: rgba(255,255,255,.05); color:var(--text);
  font-size:1.35rem; box-shadow: var(--shadow);
}
.mobile-scroll-menu { scroll-snap-type:x proximity; }
.mobile-scroll-menu a { scroll-snap-align:start; }
@media (max-width: 920px) {
  .topbar { display:grid; grid-template-columns:1fr auto; gap:12px; align-items:center; }
  .menu-toggle { display:inline-flex; }
  .topbar-actions {
    display:none; grid-column:1 / -1; width:100%; padding-top:8px;
    border-top:1px solid rgba(121,255,149,.12);
  }
  body.menu-open .topbar-actions { display:flex; flex-direction:column; align-items:stretch; }
  body.menu-open .topbar-actions .btn, body.menu-open .topbar-actions .user-chip { width:100%; }
  .mobile-scroll-menu {
    position:sticky; top:94px; z-index:30; padding:10px; gap:10px; border-radius:20px;
  }
  .mobile-scroll-menu a { min-width:max-content; padding:12px 14px; border-radius:14px; }
}


.alert.info { background: rgba(86,174,255,.14); color: #cde9ff; border:1px solid rgba(86,174,255,.25); }
.alert.warning { background: rgba(255,202,86,.12); color: #ffe8b1; border:1px solid rgba(255,202,86,.24); }
.badge { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background: rgba(121,255,149,.12); border:1px solid rgba(121,255,149,.18); color: var(--green-2); font-weight:800; }
.grid-form select, .grid-form textarea { min-height: 52px; border-radius: 16px; border: 1px solid var(--line); padding: 12px 14px; background: rgba(2,15,5,.74); color: white; outline: none; width:100%; }
.grid-form textarea { min-height: 110px; resize: vertical; }
.vip-timer { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 18px; border-radius:22px; }
.vip-countdown { font-size: clamp(1.2rem, 3vw, 2rem); font-weight: 900; color: var(--green-2); text-shadow: 0 0 18px rgba(121,255,149,.30); white-space: nowrap; }
.mod-action-grid { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap:10px; margin-top:10px; }
.mod-card-head { display:flex; justify-content:space-between; gap:12px; align-items:center; flex-wrap:wrap; width:100%; }
.mod-card-head-start { align-items:flex-start; }
.mod-ticket-card { display:block; }
@media (max-width: 920px) {
  .vip-timer { flex-direction:column; align-items:flex-start; }
  .vip-countdown { white-space: normal; }
  .mod-action-grid { grid-template-columns:1fr; }
  .mod-action-grid .compact-inline-form, .mod-action-grid .compact-inline-form .btn, .mod-action-grid input, .mod-action-grid select { width:100%; }
  .compact-inline-form { display:grid; gap:10px; }
}


/* Unified jobs / crime / shop pages */
.page-hero-compact{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:20px 22px}
.page-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.compact-stat{padding:14px 16px;display:flex;align-items:center;gap:12px}
.compact-stat span{font-size:1.35rem}
.compact-stat div{display:grid;gap:2px}
.compact-stat strong{font-size:.95rem}
.compact-stat small{opacity:.82}
.page-two-col-tight{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px}
.page-panel-main,.page-panel-side{height:100%}
.job-grid-unified,.action-grid-unified,.shop-grid-unified,.inventory-grid-unified{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.action-card,.inventory-card-compact{padding:16px 16px 14px;border-radius:20px;border:1px solid rgba(121,255,149,.12);background:linear-gradient(180deg,rgba(10,28,16,.92),rgba(6,18,10,.98));box-shadow:0 14px 28px rgba(0,0,0,.18)}
.action-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.action-card-head div{display:grid;gap:4px}
.action-card-head strong{font-size:1rem;color:#f5fff3}
.action-card-head small,.shop-card-meta small,.npc-mini-card small,.mini-item small,.activity-mini-row small,.mini-empty{color:#b5cdb8;line-height:1.45}
.npc-mini-card{margin-top:12px;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid rgba(121,255,149,.10);display:grid;gap:4px}
.action-stack{display:grid;gap:8px;margin-top:12px}
.btn-full-left{width:100%;justify-content:flex-start;text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:2px}
.btn-full-left small{opacity:.78;font-weight:600}
.mini-list{display:grid;gap:10px}
.mini-item{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid rgba(121,255,149,.08)}
.mini-item span{font-size:1.15rem}
.compact-timeline .timeline-item{padding:8px 0}
.compact-timeline .timeline-item strong,.activity-mini-row strong{display:block;font-size:.96rem}
.activity-mini-list{display:grid;gap:8px}
.activity-mini-row{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(121,255,149,.08)}
.mini-empty{padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.035);border:1px dashed rgba(121,255,149,.16)}
.crime-hero .icon-badge{box-shadow:0 0 0 8px rgba(255,120,120,.08),0 18px 34px rgba(0,0,0,.24)}
.mini-risk-row{display:flex;justify-content:space-between;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid rgba(121,255,149,.08);font-size:.88rem;color:#bfd5c2}
.shop-card-meta{margin-top:12px;padding:10px 12px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid rgba(121,255,149,.07)}
.compact-head{margin-bottom:6px}
@media (max-width: 920px){
  .page-hero-compact{grid-template-columns:1fr;align-items:flex-start}
  .page-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .page-two-col-tight{grid-template-columns:1fr}
  .job-grid-unified,.action-grid-unified,.shop-grid-unified,.inventory-grid-unified{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .page-summary-grid{grid-template-columns:1fr 1fr;gap:10px}
  .compact-stat{padding:12px 13px;border-radius:16px}
  .compact-stat strong{font-size:.9rem}
  .compact-stat small{font-size:.8rem}
  .action-card,.inventory-card-compact{padding:14px 14px 12px;border-radius:18px}
  .action-card-head{flex-direction:column;align-items:flex-start}
  .mini-risk-row,.activity-mini-row{flex-direction:column}
  .compact-mobile-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
  .compact-mobile-row .btn:last-child{grid-column:1 / -1}
}

#homepage-live-notices:empty{display:none}.phase-day .forest-bg{filter:brightness(1)}.phase-evening .forest-bg{filter:brightness(.82) saturate(1.05)}.phase-night .forest-bg{filter:brightness(.62) saturate(.9)}


/* Premium unified admin + moderator console */
body.admin-body, body.moderator-body {
  background:
    radial-gradient(circle at top, rgba(18, 110, 51, .18), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(82, 210, 255, .10), transparent 18%),
    linear-gradient(180deg, #07140b, #030a05 58%, #07120a);
}
.admin-shell, .mod-shell { gap: 22px; }
.premium-hero {
  position: relative; overflow: hidden; padding: 28px; border-radius: 32px;
  background:
    radial-gradient(circle at 0% 0%, rgba(121,255,149,.16), transparent 32%),
    radial-gradient(circle at 100% 0%, rgba(107,186,255,.14), transparent 24%),
    linear-gradient(180deg, rgba(10,31,16,.96), rgba(4,15,8,.96));
  border: 1px solid rgba(121,255,149,.16);
  box-shadow: 0 24px 60px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.05);
}
.premium-hero::after {
  content:''; position:absolute; right:-60px; top:-60px; width:220px; height:220px; border-radius:50%;
  background: radial-gradient(circle, rgba(121,255,149,.12), transparent 65%);
  filter: blur(6px); pointer-events:none;
}
.premium-hero .icon-badge {
  box-shadow: 0 0 0 10px rgba(121,255,149,.06), 0 24px 50px rgba(0,0,0,.24), var(--shadow);
}
.premium-hero p { max-width: 900px; }
.premium-nav, .premium-toolbar {
  display:flex; flex-wrap:wrap; gap:12px; margin-top:18px;
}
.premium-nav a, .premium-toolbar a {
  display:inline-flex; align-items:center; gap:10px; min-height:46px; padding:0 16px; border-radius:16px;
  color:var(--text); text-decoration:none; font-weight:800;
  background: rgba(255,255,255,.04); border:1px solid rgba(121,255,149,.12);
}
.premium-nav a:hover, .premium-toolbar a:hover, .premium-nav a.is-active {
  transform: translateY(-1px); box-shadow: 0 14px 28px rgba(0,0,0,.18); background: rgba(121,255,149,.10);
}
.premium-kpi-grid {
  display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap:14px;
}
.premium-kpi {
  padding:18px; border-radius:24px;
  background: linear-gradient(180deg, rgba(121,255,149,.10), rgba(8,26,12,.94));
  border:1px solid rgba(121,255,149,.14);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 18px 32px rgba(0,0,0,.16);
}
.premium-kpi small { display:block; margin-bottom:8px; color:var(--green-2); text-transform:uppercase; letter-spacing:.08em; font-weight:800; }
.premium-kpi strong { display:block; font-size:2rem; line-height:1; color:#fff; margin-bottom:8px; }
.premium-kpi span { color:var(--muted); }
.admin-shell .panel, .admin-shell .hero-card, .mod-shell .panel {
  background: linear-gradient(180deg, rgba(10,29,15,.92), rgba(5,17,9,.96));
  border:1px solid rgba(121,255,149,.14);
  box-shadow: 0 20px 42px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.04);
}
.admin-shell .section-title, .mod-shell .section-title {
  display:flex; justify-content:space-between; align-items:flex-start; gap:14px; margin-bottom:16px;
  padding-bottom:14px; border-bottom:1px solid rgba(121,255,149,.10);
}
.admin-shell .section-title h2, .mod-shell .section-title h2 { margin:0; }
.admin-shell .section-title p, .mod-shell .section-title p { margin:4px 0 0; }
.admin-shell .feature, .admin-shell .case-item, .mod-shell .mod-card, .mod-shell .mod-review-card {
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(121,255,149,.10);
}
.admin-shell .feature, .admin-shell .case-item {
  border-radius: 20px;
}
.admin-shell .cta-row { margin-top: 20px; }
.admin-shell .cta-row .btn, .mod-shell .mod-toolbar .btn {
  min-height: 48px; border-radius: 16px;
}
.admin-shell .grid-form input, .admin-shell .grid-form select, .admin-shell .grid-form textarea,
.mod-shell .mod-action-grid input, .mod-shell .mod-action-grid select, .mod-shell .mod-review-card input, .mod-shell .mod-review-card select {
  background: rgba(2,12,6,.78);
}
.admin-shell .badge, .mod-shell .badge {
  background: rgba(121,255,149,.12); border:1px solid rgba(121,255,149,.18);
}
.premium-note {
  margin-top:14px; padding:14px 16px; border-radius:18px;
  background: rgba(255,255,255,.04); border:1px solid rgba(121,255,149,.12); color:var(--muted);
}
@media (max-width: 1100px) {
  .premium-kpi-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 760px) {
  .premium-kpi-grid { grid-template-columns: 1fr; }
  .premium-nav a, .premium-toolbar a { width:100%; justify-content:center; }
  .admin-shell .section-title, .mod-shell .section-title { flex-direction:column; }
}


/* Age verified badge */
.age-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:linear-gradient(135deg,#29d67a,#8cffb7);color:#042a12;font-weight:900;font-size:11px;line-height:1.1;letter-spacing:.01em;box-shadow:0 0 0 1px rgba(185,255,210,.30) inset,0 0 10px rgba(76,255,157,.22),0 0 18px rgba(76,255,157,.10);}
.age-badge .age-badge-check{font-size:12px;line-height:1;}
.age-badge-soft{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:rgba(95,255,163,.10);border:1px solid rgba(138,255,188,.18);color:#bdf7d2;font-weight:800;font-size:11px;}

.support-ticket-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;}
.support-ticket-card{display:block;}
.support-ticket-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;}
.support-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);font-size:11px;font-weight:800;}
.support-status-pending{background:rgba(255,204,0,.12);border-color:rgba(255,204,0,.18);color:#ffe48a;}
.support-status-approved{background:rgba(57,221,120,.12);border-color:rgba(57,221,120,.18);color:#baf7cd;}
.support-status-rejected{background:rgba(255,88,88,.12);border-color:rgba(255,88,88,.18);color:#ffc3c3;}
.support-message-box{margin-top:10px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);white-space:pre-wrap;}
@media (max-width:900px){.support-ticket-grid{grid-template-columns:1fr;}}


.support-thread { display:grid; gap:10px; }
.support-bubble { padding:12px 14px; border-radius:16px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.04); }
.support-bubble strong { display:block; margin-bottom:4px; }
.support-bubble small { display:block; opacity:.7; margin-bottom:6px; }
.support-bubble.staff { background:rgba(76,175,80,.12); border-color:rgba(120,220,140,.24); }
.support-bubble.user { background:rgba(255,255,255,.04); }


.ticket-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;border:1px solid rgba(255,255,255,.12)}
.ticket-status-badge.status-pending{background:rgba(255,170,0,.18);color:#ffd56a;border-color:rgba(255,170,0,.3)}
.ticket-status-badge.status-answered,.ticket-status-badge.status-approved{background:rgba(0,200,120,.16);color:#8cffc4;border-color:rgba(0,200,120,.28)}
.ticket-status-badge.status-closed,.ticket-status-badge.status-rejected{background:rgba(255,80,80,.16);color:#ffb1b1;border-color:rgba(255,80,80,.28)}

.badge-row-flex{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.user-badge-pill{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;font-weight:800;font-size:12px;line-height:1;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#f2fff4}
.user-badge-pill.badge-forum-mod{background:rgba(109,173,255,.14);border-color:rgba(109,173,255,.3)}
.user-badge-pill.badge-moderator{background:rgba(103,255,145,.14);border-color:rgba(103,255,145,.3)}
.user-badge-pill.badge-verified-profile{background:rgba(255,214,92,.16);border-color:rgba(255,214,92,.32);color:#fff1b6}
.user-badge-pill.badge-support{background:rgba(173,129,255,.16);border-color:rgba(173,129,255,.34)}
.user-badge-pill.badge-bughunter{background:rgba(255,127,127,.16);border-color:rgba(255,127,127,.34)}
.user-badge-pill.badge-trusted{background:rgba(94,226,210,.16);border-color:rgba(94,226,210,.34)}
.user-badge-pill.badge-veteran{background:rgba(255,170,93,.16);border-color:rgba(255,170,93,.34)}
.user-badge-pill.badge-vip-legend{background:rgba(255,102,214,.16);border-color:rgba(255,102,214,.34)}
.user-badge-pill.badge-event{background:rgba(255,232,120,.18);border-color:rgba(255,232,120,.36);color:#fff3c8}
.badge-checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.badge-choice{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:16px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06)}
@media (max-width:760px){.badge-checkbox-grid{grid-template-columns:1fr}}


@media (max-width: 700px){
  .hero-clean{padding:18px !important;border-radius:22px !important}
  .hero-clean h1{font-size:clamp(2rem,10vw,3rem) !important;line-height:1.02 !important}
  .metric-card,.story-card,.history-card,.forecast-card,.online-card{padding:16px !important;border-radius:20px !important}
  #homepage-live-notices{top:84px !important;left:12px !important;right:12px !important;width:auto !important;max-width:none !important}
  #homepage-live-notices .notice-card{padding:14px 16px !important;border-radius:18px !important}
}
