

@font-face { font-family: "Mono"; src: url(fonts/BerkeleyMono-Regular.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Mono"; src: url(fonts/BerkeleyMono-Italic.woff2) format("woff2"); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: "DIN"; src: url(fonts/DINish.woff2) format("woff2"); font-variation-settings: "wdth" 125; font-weight: 100 900; font-stretch: 50% 125%; font-style: oblique 0deg 12deg; font-display: swap; }
@font-face { font-family: "Digital-7"; src: url(fonts/Digital-7MonoItalic.woff2) format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --green: #FFDD2D;
  --green-dim: #FDBF0F;
  --green-soft: #FFE066;
  --red: #f87171;
  --yellow: #facc15;
  --blue: #60a5fa;
  --purple: #a855f7;

  --bg: #000000;
  --surface-1: rgba(255,255,255,0.02);
  --surface-2: rgba(255,255,255,0.04);
  --surface-3: rgba(255,255,255,0.06);
  --surface-4: rgba(255,255,255,0.08);
  --surface-5: rgba(255,255,255,0.12);
  --surface-hover: rgba(255,255,255,0.065);
  --surface-card: rgba(0,0,0,0.7);

  --border-1: rgba(255,255,255,0.04);
  --border-2: rgba(255,255,255,0.06);
  --border-3: rgba(255,255,255,0.08);
  --border-4: rgba(255,255,255,0.12);
  --border-hover: rgba(255,255,255,0.18);

  --text: #ffffff;
  --text-2: #cccccc;
  --text-3: #bbbbbb;
  --text-muted: #6b7280;
  --text-dim: #9ca3af;
  --text-placeholder: #555555;

  --accent-bg-1: rgba(255,221,45,0.02);
  --accent-bg-2: rgba(255,221,45,0.03);
  --accent-bg-3: rgba(255,221,45,0.06);
  --accent-bg-4: rgba(255,221,45,0.08);
  --accent-bg-5: rgba(255,221,45,0.12);
  --accent-bg-6: rgba(255,221,45,0.15);
  --accent-border-1: rgba(255,221,45,0.15);
  --accent-border-2: rgba(255,221,45,0.25);
  --accent-border-3: rgba(255,221,45,0.3);

  --overlay: rgba(0,0,0,0.7);
  --modal-bg: #101418;
  --nav-bg: rgba(0,0,0,0.7);
  --input-bg: rgba(255,255,255,0.04);
  --input-border: rgba(255,255,255,0.1);

  --shadow-card: 0 4px 24px rgba(0,0,0,0.2);
  --shadow-glow: 0 0 60px rgba(255,221,45,0.35);
  --shadow-glow-sm: 0 0 30px rgba(255,221,45,0.08);
  --shadow-glow-md: 0 8px 40px rgba(255,221,45,0.35);

  --scrollbar: rgba(255,221,45,0.35);
  --scrollbar-hover: rgba(255,221,45,0.55);

  --accent-gradient: linear-gradient(135deg, #fff 30%, #FFDD2D);
  --btn-gradient: linear-gradient(135deg, #FFDD2D, #FDBF0F);
  --dot-gradient: linear-gradient(135deg, #FFDD2D, #FFE066);

  --status-open-bg: rgba(250,204,21,0.12);
  --status-open-text: #facc15;
  --status-progress-bg: rgba(253,191,15,0.12);
  --status-progress-text: #FFE066;
  --status-closed-bg: rgba(255,255,255,0.06);
  --status-closed-text: #666666;

  --red-bg: rgba(239,68,68,0.06);
  --red-border: rgba(239,68,68,0.2);
  --red-icon-bg: rgba(239,68,68,0.12);
  --red-icon-border: rgba(239,68,68,0.25);
  --yellow-icon-bg: rgba(250,204,21,0.12);
  --blue-icon-bg: rgba(59,130,246,0.12);
  --purple-icon-bg: rgba(168,85,247,0.12);
  --gold-bg: rgba(255,215,0,0.15);
  --gold-border: rgba(255,215,0,0.2);
  --admin-tag-bg: rgba(255,80,80,0.12);
  --admin-tag-border: rgba(255,80,80,0.2);
  --rp-tag-bg: rgba(168,85,247,0.12);
  --rp-tag-border: rgba(168,85,247,0.2);
  --game-tag-bg: rgba(59,130,246,0.12);
  --game-tag-border: rgba(59,130,246,0.2);

  --msg-me: rgba(255,221,45,0.12);
  --msg-staff: rgba(255,255,255,0.05);
  --thread-line: rgba(255,255,255,0.06);
  --tm-staff: #60a5fa;

  color-scheme: dark;
}

body.light {
  --bg: #f5f5f7;
  --surface-1: rgba(0,0,0,0.015);
  --surface-2: rgba(0,0,0,0.025);
  --surface-3: rgba(0,0,0,0.04);
  --surface-4: rgba(0,0,0,0.06);
  --surface-5: rgba(0,0,0,0.08);
  --surface-hover: rgba(0,0,0,0.03);
  --surface-card: #ffffff;

  --border-1: rgba(0,0,0,0.04);
  --border-2: rgba(0,0,0,0.06);
  --border-3: rgba(0,0,0,0.08);
  --border-4: rgba(0,0,0,0.10);
  --border-hover: rgba(0,0,0,0.16);

  --text: #111827;
  --text-2: #374151;
  --text-3: #4b5563;
  --text-muted: #6b7280;
  --text-dim: #4b5563;
  --text-placeholder: #9ca3af;

  --green: #B45309;
  --green-dim: #CA8A04;
  --green-soft: #FDBF0F;

  --accent-bg-1: rgba(253,191,15,0.02);
  --accent-bg-2: rgba(253,191,15,0.03);
  --accent-bg-3: rgba(253,191,15,0.05);
  --accent-bg-4: rgba(253,191,15,0.07);
  --accent-bg-5: rgba(253,191,15,0.10);
  --accent-bg-6: rgba(253,191,15,0.13);
  --accent-border-1: rgba(253,191,15,0.15);
  --accent-border-2: rgba(253,191,15,0.22);
  --accent-border-3: rgba(253,191,15,0.30);

  --overlay: rgba(0,0,0,0.30);
  --modal-bg: #ffffff;
  --nav-bg: rgba(255,255,255,0.88);
  --input-bg: #ffffff;
  --input-border: rgba(0,0,0,0.12);

  --shadow-card: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
  --shadow-glow: 0 2px 8px rgba(0,0,0,0.06);
  --shadow-glow-sm: 0 1px 3px rgba(0,0,0,0.06);
  --shadow-glow-md: 0 4px 12px rgba(0,0,0,0.08);

  --scrollbar: rgba(0,0,0,0.15);
  --scrollbar-hover: rgba(0,0,0,0.25);

  --accent-gradient: linear-gradient(135deg, #111827 30%, #B45309);
  --btn-gradient: linear-gradient(135deg, #B45309, #CA8A04);
  --dot-gradient: linear-gradient(135deg, #CA8A04, #FDBF0F);

  --status-open-bg: rgba(234,179,8,0.10);
  --status-open-text: #b45309;
  --status-progress-bg: rgba(253,191,15,0.10);
  --status-progress-text: #B45309;
  --status-closed-bg: rgba(0,0,0,0.05);
  --status-closed-text: #9ca3af;

  --red: #dc2626;
  --red-bg: rgba(239,68,68,0.06);
  --red-border: rgba(239,68,68,0.18);
  --red-icon-bg: rgba(239,68,68,0.08);
  --red-icon-border: rgba(239,68,68,0.18);
  --yellow: #ca8a04;
  --yellow-icon-bg: rgba(234,179,8,0.08);
  --blue: #2563eb;
  --blue-icon-bg: rgba(59,130,246,0.08);
  --purple: #7c3aed;
  --purple-icon-bg: rgba(168,85,247,0.08);
  --gold-bg: rgba(234,179,8,0.10);
  --gold-border: rgba(234,179,8,0.18);
  --admin-tag-bg: rgba(239,68,68,0.08);
  --admin-tag-border: rgba(239,68,68,0.15);
  --rp-tag-bg: rgba(168,85,247,0.08);
  --rp-tag-border: rgba(168,85,247,0.15);
  --game-tag-bg: rgba(59,130,246,0.08);
  --game-tag-border: rgba(59,130,246,0.15);

  --msg-me: rgba(253,191,15,0.08);
  --msg-staff: rgba(0,0,0,0.04);
  --thread-line: rgba(0,0,0,0.06);
  --tm-staff: #2563eb;

  color-scheme: light;
}

html { scroll-behavior: smooth; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  position: relative;
  transition: background 0.4s, color 0.4s;
}

body::before {
  content: '';
  position: fixed; inset: 0; z-index: 0;
  background:
    radial-gradient(ellipse 120% 80% at 80% 30%, rgba(255,221,45,0.08) 0%, transparent 50%),
    radial-gradient(ellipse 100% 60% at 20% 70%, rgba(255,221,45,0.06) 0%, transparent 50%),
    radial-gradient(ellipse 80% 50% at 60% 50%, rgba(253,191,15,0.05) 0%, transparent 60%),
    radial-gradient(1px 1px at 10% 20%, rgba(255,255,255,0.5) 0%, transparent 100%),
    radial-gradient(1px 1px at 30% 65%, rgba(255,255,255,0.4) 0%, transparent 100%),
    radial-gradient(1px 1px at 55% 15%, rgba(255,255,255,0.35) 0%, transparent 100%),
    radial-gradient(1px 1px at 70% 80%, rgba(255,255,255,0.45) 0%, transparent 100%),
    radial-gradient(1px 1px at 85% 30%, rgba(255,255,255,0.3) 0%, transparent 100%),
    radial-gradient(1.5px 1.5px at 50% 30%, rgba(255,221,45,0.5) 0%, transparent 100%),
    radial-gradient(1.5px 1.5px at 25% 75%, rgba(255,221,45,0.4) 0%, transparent 100%),
    radial-gradient(1.5px 1.5px at 80% 15%, rgba(253,191,15,0.4) 0%, transparent 100%);
  pointer-events: none;
  transition: opacity 0.5s;
}
body.light::before { opacity: 0.06; }

body::after {
  content: '';
  position: fixed; inset: 0; z-index: 0;
  background:
    radial-gradient(ellipse 40% 30% at 75% 25%, rgba(255,221,45,0.05) 0%, transparent 70%),
    radial-gradient(ellipse 35% 25% at 25% 75%, rgba(255,221,45,0.04) 0%, transparent 70%);
  animation: aurora 20s ease-in-out infinite alternate;
  pointer-events: none;
  transition: opacity 0.5s;
}
body.light::after { opacity: 0.04; }

@keyframes aurora {
  0%   { opacity: 0.6; transform: translate(0, 0) scale(1); }
  50%  { opacity: 1;   transform: translate(-20px, 10px) scale(1.05); }
  100% { opacity: 0.7; transform: translate(15px, -15px) scale(0.97); }
}
@keyframes twinkle { 0%, 100% { opacity: 0.3; } 50% { opacity: 1; } }
@keyframes spin { to { transform: rotate(360deg); } }
@keyframes fadeUp { from { opacity: 0; transform: translateY(28px); } to { opacity: 1; transform: translateY(0); } }
@keyframes blink { 0%,100% { opacity: 1; } 50% { opacity: 0.2; } }
@keyframes cursorBlink { 0%, 100% { opacity: 1; } 50% { opacity: 0; } }
@keyframes msgIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
@keyframes pageIn { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
@keyframes scanBeam { 0% { top: -2px; } 100% { top: 100vh; } }
@keyframes glowPulse { 0%,100% { box-shadow: 0 0 20px rgba(255,221,45,0.15); } 50% { box-shadow: 0 0 40px rgba(255,221,45,0.35); } }
@keyframes glowBorder { 0%,100% { border-color: rgba(255,221,45,0.15); } 50% { border-color: rgba(255,221,45,0.4); } }
@keyframes float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
@keyframes shimmer { 0% { background-position: -200% 0; } 100% { background-position: 200% 0; } }
@keyframes scaleIn { from { opacity:0; transform:scale(0.92); } to { opacity:1; transform:scale(1); } }
@keyframes slideInLeft { from { opacity:0; transform:translateX(-20px); } to { opacity:1; transform:translateX(0); } }
@keyframes slideInRight { from { opacity:0; transform:translateX(20px); } to { opacity:1; transform:translateX(0); } }
@keyframes borderPulse { 0%,100% { border-color: var(--accent-border-1); } 50% { border-color: var(--accent-border-3); } }
@keyframes gradientShift { 0% { background-position:0% 50%; } 50% { background-position:100% 50%; } 100% { background-position:0% 50%; } }
@keyframes textGlow { 0%,100% { text-shadow: 0 0 20px rgba(255,221,45,0.3); } 50% { text-shadow: 0 0 40px rgba(255,221,45,0.6), 0 0 80px rgba(255,221,45,0.2); } }

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: var(--scrollbar); border-radius: 99px; }
::-webkit-scrollbar-thumb:hover { background: var(--scrollbar-hover); }

.cyber-grid-overlay, .scanlines, .scan-beam, .corner-bracket,
.cyber-grid, .cyber-scanlines, .cyber-scan-beam {
  transition: opacity 0.5s;
}
body.light .cyber-grid-overlay, body.light .scanlines,
body.light .scan-beam, body.light .corner-bracket,
body.light .cyber-grid, body.light .cyber-scanlines,
body.light .cyber-scan-beam { opacity: 0; pointer-events: none; }

nav {
  position: fixed; top: 0; left: 0; right: 0; z-index: 200;
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 60px;
  background: var(--nav-bg);
  backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
  border-bottom: 1px solid var(--accent-border-1);
  transition: background 0.4s, border-color 0.4s;
}
.nav-brand { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.nav-logo-wrap {
  width: 38px; height: 38px; border-radius: 10px;
  background: var(--btn-gradient);
  display: flex; align-items: center; justify-content: center; flex-shrink: 0;
  box-shadow: var(--shadow-glow-sm); transition: box-shadow 0.3s;
}
.nav-logo-wrap:hover { box-shadow: 0 0 25px rgba(255,221,45,0.4), 0 0 50px rgba(255,221,45,0.15); transform: scale(1.05); }
.nav-logo-wrap img { width: 100%; height: 100%; object-fit: contain; border-radius: 10px; }
.nav-name { font-size: 18px; font-weight: 800; letter-spacing: -0.5px; }
.nav-right { display: flex; gap: 8px; align-items: center; }
.nav-link {
  color: var(--text-dim); font-size: 14px; font-weight: 500;
  text-decoration: none; transition: color 0.2s;
  padding: 8px 14px; border-radius: 8px;
}
.nav-link:hover { color: var(--green); background: var(--accent-bg-4); }
.nav-btn {
  background: var(--surface-4); border: 1px solid var(--border-4);
  color: var(--text); font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 13px; font-weight: 600;
  padding: 8px 20px; border-radius: 8px;
  text-decoration: none; transition: all 0.2s;
  backdrop-filter: blur(8px);
}
.nav-btn:hover { background: var(--surface-5); border-color: var(--border-hover); transform: translateY(-1px); }
.nav-btn-green {
  background: var(--accent-bg-6) !important;
  border-color: var(--accent-border-2) !important;
  color: var(--green) !important;
}
.nav-btn-green:hover {
  background: var(--accent-bg-5) !important;
  border-color: var(--accent-border-3) !important;
}
.nav-btn-blue {
  background: var(--accent-bg-6) !important;
  border-color: var(--accent-border-2) !important;
  color: var(--green) !important;
}
.nav-btn-blue:hover {
  background: var(--accent-bg-5) !important;
  border-color: var(--accent-border-3) !important;
}
.nav-btn-purple {
  background: rgba(168,85,247,.15) !important;
  border-color: rgba(168,85,247,.4) !important;
  color: #a855f7 !important;
}
.nav-btn-purple:hover {
  background: rgba(168,85,247,.25) !important;
  border-color: rgba(168,85,247,.6) !important;
}

.burger { display: none; background: none; border: none; cursor: pointer; padding: 8px; z-index: 210; }
.burger span { display: block; width: 22px; height: 2px; background: var(--text); margin: 5px 0; transition: all 0.3s; border-radius: 2px; }
.burger.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.burger.active span:nth-child(2) { opacity: 0; }
.burger.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }

.mobile-menu {
  display: none; position: fixed; inset: 0; z-index: 190;
  background: var(--nav-bg);
  backdrop-filter: blur(30px); -webkit-backdrop-filter: blur(30px);
  flex-direction: column; align-items: center; justify-content: center; gap: 24px;
  opacity: 0; pointer-events: none; transition: opacity 0.3s, background 0.4s;
}
.mobile-menu.active { opacity: 1; pointer-events: all; }
.mm-link { color: var(--text); font-size: 20px; font-weight: 700; text-decoration: none; transition: color 0.2s; }
.mm-link:hover { color: var(--green-dim); }

.theme-toggle {
  background: none; border: none; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; border-radius: 10px;
  transition: background 0.2s; flex-shrink: 0; color: var(--text-dim);
}
.theme-toggle:hover { background: var(--surface-4); color: var(--text); }
.theme-toggle svg { width: 18px; height: 18px; }
body.light .theme-toggle .icon-sun { display: none; }
body.light .theme-toggle .icon-moon { display: block; }
body:not(.light) .theme-toggle .icon-sun { display: block; }
body:not(.light) .theme-toggle .icon-moon { display: none; }

.page {
  position: relative; z-index: 1;
  padding: 140px 60px 80px;
  max-width: 1200px; width: 100%; margin: 0 auto;
  animation: pageIn 0.5s cubic-bezier(0.4, 0, 0.2, 1) both;
}
.section-inner { max-width: 1140px; margin: 0 auto; padding: 100px 60px; }

.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  width: 100%; padding: 16px;
  background: var(--btn-gradient); color: #fff;
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 16px; font-weight: 800;
  border: none; border-radius: 12px; cursor: pointer;
  transition: transform 0.2s, box-shadow 0.2s, opacity 0.2s;
  position: relative; overflow: hidden;
}
.btn::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.15), transparent);
  opacity: 0; transition: opacity 0.2s; border-radius: inherit;
}
.btn:hover::before { opacity: 1; }
.btn:hover { transform: translateY(-3px); box-shadow: 0 0 25px rgba(255,221,45,0.35), 0 12px 40px rgba(255,221,45,0.2); }
.btn:active { transform: translateY(0) scale(0.98); box-shadow: 0 0 10px rgba(255,221,45,0.2); }
.btn:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }

.btn-glow {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  background: var(--btn-gradient); color: #fff;
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 16px; font-weight: 800;
  padding: 17px 48px; border-radius: 14px;
  text-decoration: none; border: none; cursor: pointer; letter-spacing: -0.3px;
  box-shadow: var(--shadow-glow);
  transition: transform 0.25s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.25s;
  position: relative; overflow: hidden;
}
.btn-glow::after {
  content:''; position:absolute; inset:-2px; border-radius:inherit;
  background: var(--btn-gradient); z-index:-1; opacity:0; filter:blur(16px);
  transition: opacity 0.3s;
}
.btn-glow:hover { transform: translateY(-4px) scale(1.02); box-shadow: 0 0 40px rgba(255,221,45,0.45), 0 12px 40px rgba(255,221,45,0.25); }
.btn-glow:hover::after { opacity:0.5; }
.btn-glow:active { transform: translateY(-1px) scale(0.98); }
.btn-glow:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }

.btn-primary {
  display: inline-flex; align-items: center; gap: 10px;
  background: var(--text); color: var(--bg);
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 15px; font-weight: 800;
  padding: 15px 36px; border-radius: 12px;
  text-decoration: none; width: fit-content; letter-spacing: -0.3px;
  transition: opacity 0.2s, transform 0.25s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.25s;
}
.btn-primary:hover { transform: translateY(-3px) scale(1.02); box-shadow: 0 0 30px rgba(255,255,255,0.15), 0 12px 40px rgba(0,0,0,0.3); }

.btn-sm {
  padding: 6px 12px; border-radius: 6px; border: none;
  font-size: 12px; font-weight: 600; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  cursor: pointer; transition: opacity 0.2s, transform 0.15s;
}
.btn-sm:hover { opacity: 0.85; transform: translateY(-1px); }
.btn-green { background: var(--green); color: #000; }
.btn-red { background: var(--red); color: #fff; }
.btn-purple { background: var(--green); color: #000; }
.btn-yellow { background: var(--yellow); color: #000; }
.btn-blue { background: var(--green-dim); color: #000; }

.btn-outline {
  background: var(--surface-3); border: 1px solid var(--border-3);
  color: var(--text-dim); font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  font-size: 13px; font-weight: 600;
  padding: 8px 16px; border-radius: 8px;
  cursor: pointer; transition: all 0.2s;
}
.btn-outline:hover { background: var(--surface-4); color: var(--text); border-color: var(--border-hover); }

.badge {
  display: inline-block; padding: 4px 10px; border-radius: 99px;
  font-size: 11px; font-weight: 700; letter-spacing: 0.05em;
  text-transform: uppercase; transition: all 0.25s;
}
.badge:hover { transform: scale(1.05); }
.badge-green { background: var(--accent-bg-5); border: 1px solid var(--accent-border-2); color: var(--green); box-shadow: 0 0 10px rgba(255,221,45,0.08); }
.badge-red { background: var(--red-icon-bg); border: 1px solid var(--red-border); color: var(--red); }
.badge-yellow { background: var(--yellow-icon-bg); border: 1px solid rgba(250,204,21,0.25); color: var(--yellow); }
.badge-purple { background: var(--accent-bg-6); border: 1px solid var(--accent-border-3); color: var(--green); }
.badge-blue { background: var(--accent-bg-4); border: 1px solid var(--accent-border-1); color: var(--green-soft); }

.role-badge {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 5px 12px; border-radius: 99px;
  font-size: 11px; font-weight: 700; letter-spacing: 0.05em;
  text-transform: uppercase; transition: all 0.25s;
}
.role-badge:hover { transform: scale(1.08); }
.role-owner { background: var(--accent-bg-6); border: 1px solid var(--accent-border-3); color: var(--green); }
.role-admin { background: var(--accent-bg-5); border: 1px solid var(--accent-border-2); color: var(--green); }
.role-moder { background: var(--accent-bg-4); border: 1px solid var(--accent-border-1); color: var(--green-soft); }
.role-user { background: var(--surface-3); border: 1px solid var(--border-3); color: var(--text-dim); }

.form-group { margin-bottom: 20px; }
.form-label { display: block; font-size: 13px; font-weight: 600; color: var(--text-dim); margin-bottom: 8px; letter-spacing: 0.03em; }
.form-input {
  width: 100%; padding: 14px 18px;
  background: var(--input-bg); border: 1px solid var(--input-border);
  border-radius: 12px; color: var(--text);
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 14px;
  outline: none; transition: border-color 0.3s, background 0.4s, box-shadow 0.3s, color 0.4s;
}
.form-input::placeholder { color: var(--text-placeholder); }
.form-input:focus { border-color: var(--green); box-shadow: 0 0 0 4px rgba(255,221,45,0.1), 0 0 20px rgba(255,221,45,0.08); }

.form-select {
  width: 100%; padding: 10px 14px;
  border-radius: 8px; border: 1px solid var(--border-3);
  background: var(--input-bg); color: var(--text);
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 14px;
  outline: none; transition: border-color 0.2s, background 0.4s, color 0.4s;
  -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%23999' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center;
}
.form-select option { background: var(--modal-bg); color: var(--text); padding: 8px 12px; }
.form-select:focus { border-color: var(--green); }

.custom-select { position: relative; width: 100%; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 14px; }
.custom-select__selected {
  width: 100%; padding: 14px 42px 14px 18px; cursor: pointer;
  background: var(--input-bg); border: 1px solid var(--input-border);
  border-radius: 12px; color: var(--text); user-select: none;
  transition: border-color 0.3s, background 0.4s, color 0.4s, box-shadow 0.3s;
  position: relative;
}
.custom-select__selected::after {
  content: ''; position: absolute; right: 16px; top: 50%; transform: translateY(-50%);
  width: 0; height: 0;
  border-left: 5px solid transparent; border-right: 5px solid transparent;
  border-top: 6px solid var(--text-dim); transition: transform 0.2s;
}
.custom-select.open .custom-select__selected::after { transform: translateY(-30%) rotate(180deg); }
.custom-select__selected:hover, .custom-select.open .custom-select__selected {
  border-color: var(--green); box-shadow: 0 0 0 4px rgba(255,221,45,0.1), 0 0 20px rgba(255,221,45,0.08);
}
body.light .custom-select__selected::after { border-top-color: var(--text-dim); }
body.light .custom-select__selected:hover, body.light .custom-select.open .custom-select__selected {
  border-color: var(--green);
}
.custom-select__dropdown {
  display: none; position: absolute; top: calc(100% + 6px); left: 0; right: 0;
  border-radius: 12px; overflow: hidden; z-index: 200;
  background: var(--modal-bg); border: 1px solid var(--border-3);
  box-shadow: 0 12px 40px rgba(0,0,0,0.45), 0 0 0 1px rgba(255,255,255,0.04);
}
body.light .custom-select__dropdown {
  box-shadow: 0 12px 40px rgba(0,0,0,0.12), 0 0 0 1px rgba(0,0,0,0.04);
}
.custom-select__dropdown.open { display: block; animation: ddFadeIn 0.15s ease; }
@keyframes ddFadeIn { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
.custom-select__option {
  padding: 12px 18px; color: var(--text); cursor: pointer; font-size: 14px;
  transition: background 0.15s, color 0.15s; border-bottom: 1px solid var(--border-1);
}
.custom-select__option:last-child { border-bottom: none; }
.custom-select__option:hover { background: var(--accent-bg-4); color: var(--green); }
.custom-select__option:first-child:hover { border-radius: 12px 12px 0 0; }
.custom-select__option:last-child:hover { border-radius: 0 0 12px 12px; }

.form-textarea {
  width: 100%; padding: 12px 14px;
  border-radius: 8px; border: 1px solid var(--border-3);
  background: var(--input-bg); color: var(--text);
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; font-size: 14px;
  outline: none; resize: vertical; transition: border-color 0.2s, background 0.4s, color 0.4s;
}
.form-textarea:focus { border-color: var(--green); }

.form-input, .form-select, .form-textarea {
  transition: border-color 0.3s, background 0.4s, box-shadow 0.3s, transform 0.2s, color 0.4s;
}
.form-input:focus, .form-select:focus, .form-textarea:focus { transform: translateY(-1px); }

.tabs {
  display: flex; gap: 4px; margin-bottom: 24px;
  background: var(--surface-1); border: 1px solid var(--border-3);
  border-radius: 12px; padding: 4px;
  overflow-x: auto; -webkit-overflow-scrolling: touch;
  transition: background 0.4s, border-color 0.4s;
}
.tab {
  flex: 1; padding: 10px; text-align: center;
  font-size: 13px; font-weight: 600;
  color: var(--text-dim); border: none; background: none;
  border-radius: 8px; cursor: pointer;
  transition: all 0.25s; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  white-space: nowrap; position: relative; overflow: hidden;
}
.tab:hover:not(.active) { color: var(--text); background: var(--surface-2); }
.tab.active { background: var(--btn-gradient); color: #fff; box-shadow: 0 0 20px rgba(255,221,45,0.25), 0 4px 15px rgba(255,221,45,0.15); }
.tab::before {
  content: ''; position: absolute; inset: 0;
  background: linear-gradient(135deg, var(--accent-bg-6), var(--accent-bg-5));
  opacity: 0; transition: opacity 0.3s;
}
.tab:hover:not(.active)::before { opacity: 1; }
.tab.active::before { opacity: 0; }
#tabContent { animation: fadeUp 0.35s cubic-bezier(0.4, 0, 0.2, 1) both; }

.grid {
  display: grid; gap: 2px;
  background: var(--border-2); border-radius: 16px;
  overflow: hidden; border: 1px solid var(--border-3);
  margin-bottom: 24px; transition: background 0.4s, border-color 0.4s;
}
.grid-3 { grid-template-columns: repeat(3, 1fr); }
.grid-2 { grid-template-columns: repeat(2, 1fr); }
.card {
  background: var(--surface-2); padding: 24px 20px;
  display: flex; flex-direction: column; gap: 8px;
  transition: background 0.2s;
}
.card:hover { background: var(--surface-3); }
.card-label { font-size: 11px; font-weight: 600; color: var(--text-dim); text-transform: uppercase; letter-spacing: 0.1em; }
.card-value {
  font-size: clamp(22px, 3vw, 32px); font-weight: 900; letter-spacing: -1px;
  background: var(--accent-gradient);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.card-sub { font-size: 11px; color: var(--text-muted); }

.list {
  display: flex; flex-direction: column; gap: 2px;
  background: var(--border-2); border-radius: 16px;
  overflow: hidden; border: 1px solid var(--border-3);
  margin-bottom: 24px; transition: background 0.4s;
}
.list-item {
  background: var(--surface-2); padding: 14px 20px;
  display: flex; justify-content: space-between; align-items: center;
  font-size: 14px; gap: 16px; transition: background 0.2s;
}
.list-item:hover { background: var(--surface-3); box-shadow: 0 0 12px rgba(255,221,45,0.04); }
.list-item .left { display: flex; flex-direction: column; gap: 4px; }
.list-item .title { font-weight: 600; color: var(--text); }
.list-item .sub { font-size: 12px; color: var(--text-muted); }

.stats-row {
  display: grid; grid-template-columns: repeat(4, 1fr);
  gap: 16px; margin-bottom: 32px;
}
.stat-card {
  background: var(--surface-card); border: 1px solid var(--accent-bg-5);
  border-radius: 16px; padding: 24px; text-align: center;
  backdrop-filter: blur(8px);
  transition: background 0.3s, border-color 0.3s, box-shadow 0.3s, transform 0.3s;
  position: relative; overflow: hidden;
}
.stat-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: var(--btn-gradient); opacity: 0; transition: opacity 0.3s;
}
.stat-card::after {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background: radial-gradient(circle at 50% 0%, rgba(255,221,45,0.08) 0%, transparent 70%);
  opacity:0; transition: opacity 0.3s; pointer-events:none;
}
.stat-card:hover { border-color: var(--accent-border-2); box-shadow: 0 0 30px rgba(255,221,45,0.15); transform: translateY(-4px); }
.stat-card:hover::before { opacity: 1; }
.stat-card:hover::after { opacity: 1; }
.stat-card .num {
  font-size: 32px; font-weight: 800;
  background: var(--btn-gradient);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.stat-card .label { font-size: 12px; color: var(--text-dim); margin-top: 4px; text-transform: uppercase; letter-spacing: 0.1em; font-weight: 600; }

.data-table { width: 100%; border-collapse: collapse; display: block; overflow-x: auto; }
.data-table th {
  text-align: left; padding: 12px 16px;
  font-size: 11px; font-weight: 600; color: var(--text-muted);
  text-transform: uppercase; letter-spacing: 0.1em;
  border-bottom: 1px solid var(--border-3); white-space: nowrap;
}
.data-table td {
  padding: 12px 16px; font-size: 14px;
  border-bottom: 1px solid var(--border-1); white-space: nowrap; color: var(--text);
}
.data-table tr { transition: background 0.2s; }
.data-table tr:hover td { background: var(--surface-hover); }

.modal-overlay {
  position: fixed; inset: 0; z-index: 300;
  background: var(--overlay);
  backdrop-filter: blur(8px);
  display: flex; align-items: center; justify-content: center;
  opacity: 0; pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.modal-overlay.active { opacity: 1; pointer-events: all; }
.modal {
  background: var(--modal-bg);
  border: 1px solid var(--accent-border-1);
  border-radius: 20px; padding: 36px; width: 440px; max-width: 90vw;
  box-shadow: 0 24px 80px rgba(0,0,0,0.3);
  backdrop-filter: blur(20px);
  transform: scale(0.9) translateY(20px); opacity: 0;
  transition: all 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.4s, border-color 0.4s;
}
.modal-overlay.active .modal { transform: scale(1) translateY(0); opacity: 1; box-shadow: 0 24px 80px rgba(0,0,0,0.3), 0 0 60px rgba(255,221,45,0.08); }
.modal h2 { font-size: 20px; font-weight: 700; margin-bottom: 16px; }
.modal input, .modal select, .modal textarea {
  width: 100%; padding: 12px 14px; border-radius: 10px;
  border: 1px solid var(--input-border); background: var(--input-bg);
  color: var(--text); font-size: 14px; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  outline: none; margin-bottom: 12px;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.4s, color 0.4s;
}
.modal input:focus, .modal select:focus, .modal textarea:focus {
  border-color: var(--green); box-shadow: 0 0 0 3px var(--accent-bg-4);
}
.modal input::placeholder, .modal textarea::placeholder { color: var(--text-placeholder); }
.modal .modal-actions { display: flex; gap: 8px; margin-top: 8px; }
.modal .modal-actions button {
  flex: 1; padding: 12px; border-radius: 10px; border: none;
  font-size: 14px; font-weight: 600; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  cursor: pointer; transition: all 0.2s;
}
.btn-cancel { background: var(--surface-4); color: var(--text-dim); }
.btn-cancel:hover { background: var(--surface-5); color: var(--text); }
.btn-confirm { background: var(--btn-gradient); color: #fff; transition: all 0.2s; }
.btn-confirm:hover { box-shadow: 0 0 20px rgba(255,221,45,0.25); transform: translateY(-1px); }

.pagination { display: flex; justify-content: center; gap: 8px; margin-top: 20px; flex-wrap: wrap; }
.pagination button {
  padding: 8px 14px; border-radius: 8px;
  border: 1px solid var(--border-3); background: var(--surface-1);
  color: var(--text-dim); font-size: 13px; font-weight: 600;
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; cursor: pointer;
  transition: all 0.25s;
}
.pagination button.active { background: var(--btn-gradient); border-color: var(--green); color: #fff; box-shadow: 0 0 15px rgba(255,221,45,0.2); }
.pagination button:hover:not(.active) { border-color: var(--green); color: var(--green); transform: translateY(-2px); box-shadow: 0 0 10px rgba(255,221,45,0.08); }

.search-bar { display: flex; gap: 8px; margin-bottom: 20px; }
.search-bar input {
  flex: 1; padding: 12px 16px; border-radius: 10px;
  border: 1px solid var(--input-border); background: var(--input-bg);
  color: var(--text); font-size: 14px; font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif;
  outline: none; transition: border-color 0.2s, box-shadow 0.2s, background 0.4s, color 0.4s;
}
.search-bar input::placeholder { color: var(--text-placeholder); }
.search-bar input:focus { border-color: var(--green); box-shadow: 0 0 0 4px rgba(255,221,45,0.1), 0 0 20px rgba(255,221,45,0.08); }
.search-bar button {
  padding: 12px 20px; border-radius: 10px; border: none;
  background: var(--btn-gradient);
  color: #fff; font-size: 14px; font-weight: 600;
  font-family: "DIN", Helvetica Neue, Helvetica, Arial, sans-serif; cursor: pointer;
  transition: box-shadow 0.2s;
}
.search-bar button:hover { box-shadow: var(--shadow-glow-md); }

.section-title { font-size: 18px; font-weight: 700; margin-bottom: 16px; letter-spacing: -0.3px; color: var(--text); }
.section-label { font-size: 11px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; color: var(--green-dim); margin-bottom: 16px; }
.empty { text-align: center; padding: 48px; color: var(--text-muted); font-size: 14px; }
.deny-msg { text-align: center; padding: 80px 20px; color: var(--red); font-size: 18px; font-weight: 600; }
.actions { display: flex; gap: 6px; }
.spinner {
  display: inline-block; width: 20px; height: 20px;
  border: 2px solid var(--border-4); border-top-color: var(--green);
  border-radius: 50%; animation: spin 0.6s linear infinite;
}

#loginSection { display: flex; align-items: center; justify-content: center; min-height: 70vh; }
.login-card {
  max-width: 520px; width: 100%;
  background: var(--surface-card);
  border: 1px solid var(--accent-border-1);
  border-radius: 24px; padding: 48px 40px; text-align: center;
  backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px);
  box-shadow: var(--shadow-card);
  transition: background 0.4s, border-color 0.4s, box-shadow 0.4s, transform 0.3s;
}
.login-card:hover {
  box-shadow: 0 0 40px rgba(255,221,45,0.1), 0 16px 60px rgba(0,0,0,0.3);
  border-color: var(--accent-border-2); transform: translateY(-4px);
}
.login-card h1 {
  font-size: 28px; font-weight: 800; letter-spacing: -1px; margin-bottom: 8px;
  background: var(--accent-gradient);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.login-card p { color: var(--text-dim); font-size: 14px; margin-bottom: 32px; }
.login-card .form-input { margin-bottom: 16px; }
.login-card .btn, .login-card .btn-glow { margin-top: 8px; margin-bottom: 8px; }
.login-hint { font-size: 12px; color: var(--text-muted); margin-top: 20px; line-height: 1.6; }
.login-hint a { color: var(--green-dim); text-decoration: none; }
.login-hint a:hover { text-decoration: underline; }

.toggle-wrap { display: flex; align-items: center; gap: 12px; margin-left: auto; }
.toggle { position: relative; width: 52px; height: 28px; cursor: pointer; }
.toggle input { opacity: 0; width: 0; height: 0; }
.toggle-slider {
  position: absolute; inset: 0;
  background: var(--surface-4); border: 1px solid var(--input-border);
  border-radius: 99px; transition: all 0.35s;
}
.toggle-slider::before {
  content: ''; position: absolute; width: 20px; height: 20px;
  border-radius: 50%; background: var(--text); top: 3px; left: 3px;
  transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.toggle input:checked + .toggle-slider { background: var(--btn-gradient); border-color: transparent; box-shadow: 0 0 12px rgba(255,221,45,0.2); }
.toggle input:checked + .toggle-slider::before { transform: translateX(24px); }

footer {
  border-top: 1px solid var(--border-3); padding: 32px 60px;
  display: flex; align-items: center; justify-content: space-between;
  color: var(--text-muted); font-size: 13px;
  position: relative; z-index: 1; transition: border-color 0.4s;
}
footer a { color: var(--text-muted); text-decoration: none; transition: color 0.2s; position: relative; }
footer a:hover { color: var(--text); }
footer a::after {
  content: ''; position: absolute; bottom: -2px; left: 50%; width: 0; height: 1px;
  background: var(--green-dim); border-radius: 1px;
  transition: all 0.3s; transform: translateX(-50%);
}
footer a:hover::after { width: 100%; }
.footer-left { display: flex; align-items: center; gap: 10px; }
.footer-links { display: flex; gap: 24px; }

.glass-panel {
  background: var(--surface-card);
  border: 1px solid var(--accent-border-1);
  border-radius: 16px;
  backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px);
  box-shadow: var(--shadow-card);
  transition: background 0.4s, border-color 0.4s, box-shadow 0.3s, transform 0.3s;
}
.glass-panel:hover {
  box-shadow: 0 8px 40px rgba(255,221,45,0.12), 0 0 60px rgba(255,221,45,0.06);
  transform: translateY(-3px); border-color: var(--accent-border-2);
}

.dash-header { display: flex; align-items: center; gap: 20px; margin-bottom: 32px; padding: 24px 28px; animation: fadeUp 0.5s 0.1s both; }
.dash-avatar { width: 60px; height: 60px; border-radius: 50%; border: 2px solid var(--green); object-fit: cover; }
.dash-info { display: flex; flex-direction: column; gap: 4px; }
.dash-info h2 { font-size: 20px; font-weight: 800; letter-spacing: -0.5px; color: var(--text); }
.dash-info span { font-size: 13px; color: var(--text-dim); }
.support-form-row { display: flex; gap: 12px; margin-bottom: 12px; }
.support-form-row select { width: 160px; }
#dashboardSection { display: none; }

.report-card {
  background: var(--surface-1); border: 1px solid var(--border-2);
  border-radius: 16px; padding: 20px 24px;
  transition: background 0.2s, border-color 0.4s;
}
.report-card:hover { background: var(--surface-hover); }
.admin-reply {
  background: var(--accent-bg-4); border: 1px solid var(--accent-border-1);
  border-radius: 10px; padding: 12px 16px; margin-top: 8px; width: 100%;
}
.admin-reply-label { font-size: 11px; font-weight: 600; color: var(--green-dim); margin-bottom: 4px; }
.admin-reply-text { font-size: 13px; color: var(--text-3); line-height: 1.6; }

.token-form {
  margin-bottom: 0; padding: 0 24px;
  background: var(--surface-card); border: 1px solid var(--accent-border-1);
  border-radius: 16px; max-height: 0; overflow: hidden; opacity: 0;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1), background 0.4s, border-color 0.4s;
}
.token-form.open { max-height: 250px; padding: 24px; margin-bottom: 24px; opacity: 1; }
.dash-btns { display: flex; gap: 8px; margin-bottom: 24px; }

.sup-tabs { display:flex; gap:8px; margin-bottom:24px; flex-wrap:wrap; align-items:center; }
.sup-tab {
  padding:10px 18px; border-radius:12px; border:1px solid var(--border-3);
  background:var(--surface-1); color:var(--text-dim); font-size:13px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
  display:inline-flex; align-items:center; gap:8px;
  position:relative; overflow:hidden;
}
.sup-tab::before {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:var(--accent-bg-4); opacity:0; transition:opacity 0.2s;
}
.sup-tab:hover { border-color:var(--accent-border-2); box-shadow: 0 0 16px rgba(255,221,45,0.08); transform:translateY(-1px); }
.sup-tab:hover::before { opacity:1; }
.sup-tab.active { background:var(--accent-bg-6); color:var(--green); border-color:var(--green); box-shadow: 0 0 20px rgba(255,221,45,0.12); }
.sup-tab.active::before { opacity:0; }
.sup-tab-badge { font-size:11px; font-weight:800; background:var(--surface-4); padding:2px 8px; border-radius:8px; min-width:20px; text-align:center; transition:all 0.25s; }
.sup-tab.active .sup-tab-badge { background:var(--accent-bg-5); color:var(--green); }
.sup-tabs .spacer { flex:1; }
.sup-new-btn {
  padding:10px 22px; border-radius:12px; border:1px solid var(--accent-border-2);
  background:transparent; color:var(--green); font-size:13px; font-weight:800;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
  position:relative; overflow:hidden;
}
.sup-new-btn::before {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:var(--accent-bg-4); opacity:0; transition:opacity 0.2s;
}
.sup-new-btn:hover { background:var(--accent-bg-4); border-color:var(--green); transform:translateY(-2px); box-shadow: 0 0 20px rgba(255,221,45,0.12); }
.sup-new-btn:hover::before { opacity:1; }

.ticket-list { display:flex; flex-direction:column; gap:10px; }
.ticket-row {
  background:var(--surface-1); border:1px solid var(--border-2); border-radius:16px;
  padding:18px 22px; cursor:pointer; display:flex; align-items:center; gap:16px;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative; overflow:hidden;
}
.ticket-row::before {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(135deg, rgba(255,221,45,0.03) 0%, transparent 60%);
  opacity:0; transition:opacity 0.3s; pointer-events:none;
}
.ticket-row:hover { border-color:var(--accent-border-2); background:var(--accent-bg-2); box-shadow: 0 4px 24px rgba(255,221,45,0.08); transform:translateY(-2px); }
.ticket-row:hover::before { opacity:1; }
.ticket-icon {
  width:46px; height:46px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  font-size:20px; flex-shrink:0; background:var(--surface-2); border:1px solid var(--border-2);
  transition:all 0.3s; filter: grayscale(1); opacity: 0.85;
}
.ticket-row:hover .ticket-icon { transform:scale(1.08); box-shadow: 0 0 16px rgba(255,221,45,0.1); }
.ticket-icon.bug { background:var(--red-icon-bg); border-color:var(--red-border); }
.ticket-icon.payments { background:var(--yellow-icon-bg); border-color:rgba(250,204,21,0.2); }
.ticket-icon.other { background:var(--blue-icon-bg); border-color:rgba(59,130,246,0.2); }
.ticket-icon.question { background:var(--purple-icon-bg); border-color:rgba(168,85,247,0.2); }
.ticket-body { flex:1; min-width:0; }
.ticket-cat-date { font-weight:600; font-size:14px; margin-bottom:4px; color:var(--text); display:flex; align-items:center; gap:6px; flex-wrap:wrap; }
.ticket-cat-date .dot { color:var(--border-4); }
.ticket-uuid { font-size:12px; color:var(--text-dim); font-family:"Mono","SF Mono","Fira Code",monospace; }
.ticket-user-name { font-size:12px; color:var(--text-dim); margin-top:2px; }
.ticket-user-name code { background:var(--surface-2); padding:1px 5px; border-radius:4px; font-size:11px; }
.status-pill {
  font-size:11px; font-weight:700; padding:5px 14px; border-radius:99px; white-space:nowrap;
  letter-spacing:0.03em; border:1px solid transparent; flex-shrink:0;
  transition:all 0.25s;
}
.status-open { background:var(--status-open-bg); color:var(--status-open-text); border-color:rgba(250,204,21,0.2); }
.status-in_progress { background:var(--status-progress-bg); color:var(--status-progress-text); border-color:rgba(253,191,15,0.2); }
.status-closed { background:var(--status-closed-bg); color:var(--status-closed-text); border-color:rgba(255,255,255,0.06); }

.empty-state { text-align:center; padding:60px 20px; display:flex; flex-direction:column; align-items:center; animation:fadeUp 0.4s ease both; }
.empty-state .empty-icon {
  width:72px; height:72px; border-radius:20px; background:var(--surface-2);
  display:flex; align-items:center; justify-content:center; font-size:32px;
  margin-bottom:20px; border:1px solid var(--border-2);
  box-shadow:0 0 30px rgba(255,221,45,0.04); filter: grayscale(1); opacity: 0.85;
}
.empty-state h3 { font-size:17px; font-weight:700; margin-bottom:8px; color:var(--text); }
.empty-state p { font-size:13px; color:var(--text-dim); line-height:1.6; margin-bottom:20px; max-width:360px; }
.empty-state .btn-outline {
  padding:10px 22px; border-radius:12px; border:1px solid var(--border-3);
  background:transparent; color:var(--text-dim); font-size:13px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
}
.empty-state .btn-outline:hover { border-color:var(--green); color:var(--green); box-shadow:0 0 16px rgba(255,221,45,0.08); }

.kb-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:14px; }
.kb-card {
  background:var(--surface-1); border:1px solid var(--border-2); border-radius:16px;
  padding:22px; cursor:pointer; transition:all 0.3s cubic-bezier(0.4,0,0.2,1);
  position:relative; overflow:hidden;
}
.kb-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  background:linear-gradient(90deg, var(--green), var(--green-soft));
  opacity:0; transition:opacity 0.3s;
}
.kb-card:hover { border-color:var(--accent-border-2); transform:translateY(-3px); box-shadow: 0 8px 30px rgba(255,221,45,0.1), 0 0 0 1px rgba(255,221,45,0.05); }
.kb-card:hover::before { opacity:1; }
.kb-card h4 {
  font-size:14px; font-weight:700; margin-bottom:8px; display:flex; align-items:center; gap:10px;
  color:var(--text); transition:color 0.2s;
}
.kb-card:hover h4 { color:var(--green); }
.kb-card h4::before {
  content:'?'; width:26px; height:26px; border-radius:8px;
  background:var(--accent-bg-5); color:var(--green);
  display:flex; align-items:center; justify-content:center; font-size:13px; font-weight:900; flex-shrink:0;
}
.kb-card p { font-size:12px; color:var(--text-muted); line-height:1.5; margin:0; transition:color 0.2s; }
.kb-card:hover p { color:var(--text-dim); }
.kb-answer {
  display:none; margin-top:16px; padding-top:16px; border-top:1px solid var(--border-2);
  font-size:13px; color:var(--text-dim); line-height:1.8;
  animation:fadeUp 0.3s ease both;
}
.kb-card.open .kb-answer { display:block; }

.modal-head { padding:22px 28px; border-bottom:1px solid var(--border-2); display:flex; align-items:center; justify-content:space-between; }
.modal-head h2 { font-size:18px; font-weight:800; margin:0; letter-spacing:-0.3px; }
.modal-close {
  width:34px; height:34px; border-radius:10px; border:none;
  background:var(--surface-3); color:var(--text-dim); font-size:18px;
  cursor:pointer; display:flex; align-items:center; justify-content:center; transition:all 0.2s;
}
.modal-close:hover { background:var(--surface-5); color:var(--text); transform:scale(1.05); }
.modal-body { padding:28px; overflow-y:auto; max-height:calc(85vh - 80px); }
.modal-body label { display:block; font-size:13px; font-weight:600; color:var(--text-dim); margin-bottom:8px; letter-spacing:0.02em; }
.cat-btn-row { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px; }
.cat-btn {
  padding:10px 16px; border-radius:10px; border:1px solid var(--border-3);
  background:var(--surface-1); color:var(--text-dim); font-size:12px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
  position:relative; overflow:hidden;
}
.cat-btn::before {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:var(--accent-bg-4); opacity:0; transition:opacity 0.2s;
}
.cat-btn:hover { border-color:var(--accent-border-1); }
.cat-btn:hover::before { opacity:1; }
.cat-btn.active { background:var(--accent-bg-6); color:var(--green); border-color:var(--green); }
.cat-btn.active::before { opacity:0; }

.thread-page { min-height:100vh; display:flex; flex-direction:column; background:var(--bg); }
.thread-top {
  padding:16px 24px; border-bottom:1px solid var(--border-2);
  display:flex; align-items:center; gap:14px; background:var(--surface-card);
  transition:background 0.4s; position:sticky; top:0; z-index:10;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
}
.thread-back {
  padding:8px 16px; border-radius:10px; border:1px solid var(--border-3);
  background:transparent; color:var(--text-dim); font-size:13px; font-weight:600;
  font-family:inherit; cursor:pointer; transition:all 0.25s; text-decoration:none;
  display:inline-flex; align-items:center; gap:6px;
}
.thread-back:hover { border-color:var(--green); color:var(--green); box-shadow:0 0 12px rgba(255,221,45,0.08); }
.thread-info {
  padding:18px 24px; border-bottom:1px solid var(--border-2);
  display:flex; align-items:center; gap:16px; background:var(--surface-card);
  transition:background 0.4s;
}
.thread-info-icon {
  width:46px; height:46px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  font-size:20px; flex-shrink:0; background:var(--surface-2); border:1px solid var(--border-2);
}
.thread-info-text { flex:1; min-width:0; }
.thread-info-cat { font-size:15px; font-weight:700; margin-bottom:3px; color:var(--text); }
.thread-info-sub { font-size:12px; color:var(--text-dim); font-family:"Mono","SF Mono","Fira Code",monospace; }
.thread-chat {
  flex:1; overflow-y:auto; padding:20px 24px; display:flex; flex-direction:column; gap:12px;
}
.thread-msg {
  padding:14px 18px; border-radius:16px; font-size:14px; line-height:1.65; max-width:78%;
  animation:msgIn 0.25s ease both;
  position:relative;
}
.thread-msg.me {
  background:linear-gradient(135deg, rgba(255,221,45,0.1), rgba(255,221,45,0.06));
  border:1px solid rgba(255,221,45,0.12);
  margin-left:auto; border-bottom-right-radius:4px;
}
.thread-msg.staff {
  background:var(--surface-2); border:1px solid var(--border-2);
  margin-right:auto; border-bottom-left-radius:4px;
}
.tm-label {
  font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.06em; margin-bottom:5px;
}
.thread-msg.me .tm-label { color:var(--green); text-align:right; }
.thread-msg.staff .tm-label { color:var(--tm-staff); }
.tm-text { white-space:pre-wrap; word-break:break-word; color:var(--text); }
.tm-time { font-size:11px; color:var(--text-muted); margin-top:6px; }
.thread-msg.me .tm-time { text-align:right; }
.thread-msg-system {
  display:flex; align-items:center; gap:12px; padding:8px 0; max-width:100%;
}
.thread-msg-system::before, .thread-msg-system::after { content:''; flex:1; height:1px; background:var(--border-2); }
.thread-msg-system span { font-size:12px; color:var(--text-muted); white-space:nowrap; }
.thread-waiting {
  text-align:center; padding:20px; font-size:13px; color:var(--text-muted);
  animation:fadeUp 0.3s ease both;
}
.thread-reply {
  padding:16px 24px; border-top:1px solid var(--border-2);
  display:flex; gap:10px; background:var(--surface-card); transition:background 0.4s;
  position:sticky; bottom:0;
  backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
}
.thread-reply input {
  flex:1; padding:14px 18px; border-radius:12px; border:1px solid var(--border-3);
  background:var(--input-bg); color:var(--text); font-size:14px; font-family:inherit; outline:none;
  transition:all 0.3s;
}
.thread-reply input:focus { border-color:var(--green); box-shadow:0 0 0 3px rgba(255,221,45,0.08); }
.thread-reply input::placeholder { color:var(--text-placeholder); }
.thread-reply button {
  padding:14px 24px; border-radius:12px; border:none;
  background:var(--btn-gradient); color:#fff; font-size:14px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
  box-shadow:0 0 16px rgba(255,221,45,0.15);
}
.thread-reply button:hover { opacity:0.9; transform:translateY(-1px); box-shadow:0 0 24px rgba(255,221,45,0.25); }
.thread-reply button:disabled { opacity:0.4; cursor:not-allowed; transform:none; box-shadow:none; }
.thread-closed-bar {
  text-align:center; padding:14px 20px; font-size:13px; color:var(--text-muted);
  background:var(--surface-2); border-radius:12px; margin-top:10px;
  border:1px solid var(--border-2);
}
.cmd-page { position:relative; z-index:1; min-height:100vh; padding:120px 60px 80px; max-width:1140px; margin:0 auto; }

.cmd-header { text-align:center; margin-bottom:48px; }
.cmd-header h1 { font-size:clamp(32px,4vw,52px); font-weight:900; letter-spacing:-2px; margin-bottom:12px; color:var(--text); }
.cmd-header h1 .accent {
  background: linear-gradient(90deg, var(--green), var(--green-soft));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.cmd-header p { color:var(--text-dim); font-size:16px; line-height:1.6; }
.cmd-header code { color:var(--green); background:var(--accent-bg-4); padding:2px 8px; border-radius:4px; font-size:14px; }
.cmd-badge {
  display:inline-block; padding:6px 16px; border-radius:20px;
  background:linear-gradient(135deg,rgba(255,221,45,0.15),rgba(255,221,45,0.05));
  border:1px solid rgba(255,221,45,0.25); color:var(--green); font-size:13px; font-weight:600;
  margin-bottom:20px; letter-spacing:0.3px;
}

.cmd-controls { display:flex; gap:16px; align-items:center; justify-content:center; margin-bottom:32px; flex-wrap:wrap; }

.cmd-search { position:relative; flex:1; max-width:420px; min-width:240px; }
.cmd-search input {
  width:100%; padding:12px 16px 12px 40px;
  background:var(--input-bg); border:1px solid var(--border-3);
  border-radius:12px; color:var(--text); font-size:14px; font-family:inherit;
  outline:none; transition:border-color 0.2s,background 0.4s,color 0.4s;
}
.cmd-search input:focus { border-color:var(--green); box-shadow: 0 0 0 4px rgba(255,221,45,0.08), 0 0 20px rgba(255,221,45,0.06); }
.cmd-search input::placeholder { color:var(--text-placeholder); }
.cmd-search svg { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--text-dim); opacity:0.5; }
.search-hint {
  position:absolute; right:10px; top:50%; transform:translateY(-50%);
  padding:2px 8px; border-radius:4px; background:var(--accent-bg-4);
  color:var(--text-muted); font-size:11px; font-family:inherit; font-weight:600;
  pointer-events:none; border:1px solid var(--accent-border-1);
}

.cmd-stats-row { display:flex; gap:10px; flex-shrink:0; }
.cmd-stat-item {
  padding:8px 16px; border-radius:10px;
  background:linear-gradient(135deg,var(--accent-bg-3),var(--accent-bg-4));
  border:1px solid var(--accent-border-1);
  font-size:12px; color:var(--text-dim); white-space:nowrap;
  transition:all 0.3s;
}
.cmd-stat-item:hover { border-color:var(--accent-border-2); box-shadow:0 0 15px rgba(255,221,45,0.06); }
.cmd-stat-item .stat-num { color:var(--green); font-weight:700; font-size:14px; }

.cat-filters-wrap { position:relative; margin-bottom:36px; }
.cat-filters {
  display:flex; gap:6px; overflow-x:auto; padding:4px 0;
  scrollbar-width:none; -ms-overflow-style:none;
}
.cat-filters::-webkit-scrollbar { display:none; }
.cat-filters .cat-btn {
  flex-shrink:0; padding:0; border-radius:10px; border:1px solid var(--border-3);
  background:transparent; color:var(--text-dim); font-size:12px; font-weight:700;
  font-family:inherit; cursor:pointer; transition:all 0.25s;
  position:relative; overflow:hidden;
}
.cat-filters .cat-btn span {
  display:block; padding:8px 16px; border-radius:10px;
  transition:all 0.25s;
}
.cat-filters .cat-btn:hover { border-color:var(--accent-border-1); }
.cat-filters .cat-btn:hover span { background:var(--accent-bg-4); }
.cat-filters .cat-btn.active { border-color:var(--green); background:transparent; color:var(--green); }
.cat-filters .cat-btn.active span {
  background:linear-gradient(135deg,rgba(255,221,45,0.12),rgba(255,221,45,0.04));
  box-shadow:inset 0 0 20px rgba(255,221,45,0.05);
}

.cmd-category { margin-bottom:40px; }

.cat-title {
  display:flex; align-items:center; gap:10px;
  font-size:12px; font-weight:700; color:var(--green); letter-spacing:0.08em;
  text-transform:uppercase; margin-bottom:14px; padding-bottom:8px;
  border-bottom:1px solid var(--accent-border-1);
}
.cat-count {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:20px; height:20px; padding:0 6px; border-radius:6px;
  background:var(--accent-bg-4); color:var(--text-muted);
  font-size:11px; font-weight:600; letter-spacing:0;
}

.cmd-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(340px,1fr)); gap:8px; }

.cmd-item {
  display:flex; gap:10px; align-items:center;
  padding:14px 16px; border-radius:12px;
  background:var(--surface-1); border:1px solid var(--border-1);
  transition:all 0.25s cubic-bezier(0.4,0,0.2,1);
  cursor:pointer; position:relative; overflow:hidden;
}
.cmd-item::before {
  content:''; position:absolute; inset:0; border-radius:inherit;
  background:linear-gradient(135deg,var(--accent-bg-4),transparent);
  opacity:0; transition:opacity 0.3s;
}
.cmd-item:hover { border-color:var(--accent-border-2); transform: translateY(-2px); box-shadow: 0 8px 25px rgba(0,0,0,0.3); }
.cmd-item:hover::before { opacity:1; }
.cmd-item.copied { border-color:var(--green); box-shadow:0 0 20px rgba(255,221,45,0.12); }

.cmd-left { flex:1; min-width:0; z-index:1; }
.cmd-names { display:flex; gap:8px; align-items:baseline; margin-bottom:4px; flex-wrap:wrap; }
.cmd-name { font-family:"Mono","SF Mono","Fira Code",monospace; font-size:14px; color:var(--green); font-weight:600; }
.cmd-name .cmd-slash { opacity:0.4; }
.cmd-name-ru { color:var(--green-dim); font-size:12px; font-family:"Mono","SF Mono","Fira Code",monospace; }
.cmd-name-ru .cmd-slash { opacity:0.3; }
.cmd-desc { font-size:13px; color:var(--text-dim); line-height:1.55; z-index:1; position:relative; }

.cmd-copy-btn {
  width:32px; height:32px; border-radius:8px; display:flex; align-items:center; justify-content:center;
  color:var(--text-muted); background:var(--accent-bg-4); border:1px solid var(--accent-border-1);
  transition:all 0.25s; flex-shrink:0; z-index:1;
  opacity:0; transform:translateX(4px);
}
.cmd-item:hover .cmd-copy-btn { opacity:1; transform:translateX(0); }
.cmd-copy-btn:hover { background:var(--accent-bg-5); color:var(--green); border-color:var(--green); }

.cmd-tag {
  display:inline-block; padding:2px 7px; border-radius:4px; font-size:10px;
  font-weight:700; text-transform:uppercase; letter-spacing:0.04em;
  vertical-align:middle; margin-left:4px;
}
.cmd-tag.premium { background:linear-gradient(135deg,rgba(250,204,21,0.15),rgba(250,204,21,0.05)); color:var(--yellow); border:1px solid rgba(250,204,21,0.25); box-shadow:0 0 8px rgba(250,204,21,0.08); }
.cmd-tag.admin { background:linear-gradient(135deg,rgba(248,113,113,0.15),rgba(248,113,113,0.05)); color:var(--red); border:1px solid rgba(248,113,113,0.2); }
.cmd-tag.rp { background:linear-gradient(135deg,rgba(168,85,247,0.15),rgba(168,85,247,0.05)); color:var(--purple); border:1px solid rgba(168,85,247,0.2); }

.no-results { display:none; flex-direction:column; align-items:center; padding:80px 0; text-align:center; }
.no-results-icon { margin-bottom:16px; color:var(--text-muted); opacity:0.3; }
.no-results-title { font-size:18px; font-weight:700; color:var(--text-dim); margin-bottom:6px; }
.no-results-sub { font-size:14px; color:var(--text-muted); }

.stat-tiles { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:20px; }
.stat-tile {
  position:relative; overflow:hidden;
  padding:24px 20px 20px; border-radius:16px;
  background: var(--surface-card);
  border: 1px solid var(--border-3);
  backdrop-filter: blur(12px);
  transition: transform 0.3s cubic-bezier(0.34,1.56,0.64,1), box-shadow 0.3s, border-color 0.3s;
}
.stat-tile::before {
  content:''; position:absolute; top:0; left:0; right:0; height:3px;
  border-radius:16px 16px 0 0;
}
.stat-tile::after {
  content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%;
  border-radius:50%; opacity:0; transition:opacity 0.4s;
  pointer-events:none;
}
.stat-tile:hover { transform:translateY(-4px) scale(1.02); }
.stat-tile:hover::after { opacity:1; }

.stat-tile__icon {
  width:40px; height:40px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  font-size:18px; margin-bottom:14px;
  position:relative; z-index:1;
  filter: grayscale(1); opacity: 0.85;
}
.stat-tile__label {
  font-size:11px; font-weight:700; letter-spacing:0.12em;
  text-transform:uppercase; color:var(--text-muted);
  margin-bottom:6px; position:relative; z-index:1;
}
.stat-tile__value {
  font-size:26px; font-weight:900; letter-spacing:-1px;
  line-height:1; position:relative; z-index:1;
}
.stat-tile__sub {
  font-size:11px; color:var(--text-muted);
  margin-top:6px; position:relative; z-index:1;
}

.stat-tile--status::before { background:linear-gradient(90deg, #FFDD2D, #FDBF0F); }
.stat-tile--status::after { background:radial-gradient(circle, rgba(255,221,45,0.06) 0%, transparent 70%); }
.stat-tile--status .stat-tile__icon { background:rgba(255,221,45,0.12); border:1px solid rgba(255,221,45,0.25); color:#FFDD2D; }
.stat-tile--status .stat-tile__value { color:#FFDD2D; }

.stat-tile--bot::before { background:linear-gradient(90deg, #FDBF0F, #CA8A04); }
.stat-tile--bot::after { background:radial-gradient(circle, rgba(253,191,15,0.06) 0%, transparent 70%); }
.stat-tile--bot .stat-tile__icon { background:rgba(253,191,15,0.12); border:1px solid rgba(253,191,15,0.25); color:#FDBF0F; }
.stat-tile--bot .stat-tile__value { color:#FDBF0F; }
.stat-tile--bot-off .stat-tile__icon { background:rgba(107,114,128,0.12); border:1px solid rgba(107,114,128,0.25); color:#6b7280; }
.stat-tile--bot-off .stat-tile__value { color:var(--text-muted); }

.stat-tile--premium::before { background:linear-gradient(90deg, #facc15, #eab308); }
.stat-tile--premium::after { background:radial-gradient(circle, rgba(250,204,21,0.06) 0%, transparent 70%); }
.stat-tile--premium .stat-tile__icon { background:rgba(250,204,21,0.12); border:1px solid rgba(250,204,21,0.25); color:#facc15; }
.stat-tile--premium .stat-tile__value { color:#facc15; }
.stat-tile--premium-off .stat-tile__icon { background:rgba(107,114,128,0.12); border:1px solid rgba(107,114,128,0.25); color:#6b7280; }
.stat-tile--premium-off .stat-tile__value { color:var(--text-muted); }

.stat-tile--money::before { background:linear-gradient(90deg, #60a5fa, #3b82f6); }
.stat-tile--money::after { background:radial-gradient(circle, rgba(96,165,250,0.06) 0%, transparent 70%); }
.stat-tile--money .stat-tile__icon { background:rgba(96,165,250,0.12); border:1px solid rgba(96,165,250,0.25); color:#60a5fa; }
.stat-tile--money .stat-tile__value { color:#60a5fa; }

.stat-tile--exp::before { background:linear-gradient(90deg, #a855f7, #9333ea); }
.stat-tile--exp::after { background:radial-gradient(circle, rgba(168,85,247,0.06) 0%, transparent 70%); }
.stat-tile--exp .stat-tile__icon { background:rgba(168,85,247,0.12); border:1px solid rgba(168,85,247,0.25); color:#a855f7; }
.stat-tile--exp .stat-tile__value { color:#a855f7; }

.stat-tile--clickers::before { background:linear-gradient(90deg, #f97316, #ea580c); }
.stat-tile--clickers::after { background:radial-gradient(circle, rgba(249,115,22,0.06) 0%, transparent 70%); }
.stat-tile--clickers .stat-tile__icon { background:rgba(249,115,22,0.12); border:1px solid rgba(249,115,22,0.25); color:#f97316; }
.stat-tile--clickers .stat-tile__value { color:#f97316; }

.stat-tile--prefix::before { background:linear-gradient(90deg, #14b8a6, #0d9488); }
.stat-tile--prefix::after { background:radial-gradient(circle, rgba(20,184,166,0.06) 0%, transparent 70%); }
.stat-tile--prefix .stat-tile__icon { background:rgba(20,184,166,0.12); border:1px solid rgba(20,184,166,0.25); color:#14b8a6; }
.stat-tile--prefix .stat-tile__value { color:#14b8a6; font-family:"Mono","SF Mono","Fira Code",monospace; font-size:22px; }

.stat-tile--trusted::before { background:linear-gradient(90deg, #ec4899, #db2777); }
.stat-tile--trusted::after { background:radial-gradient(circle, rgba(236,72,153,0.06) 0%, transparent 70%); }
.stat-tile--trusted .stat-tile__icon { background:rgba(236,72,153,0.12); border:1px solid rgba(236,72,153,0.25); color:#ec4899; }
.stat-tile--trusted .stat-tile__value { color:#ec4899; }

.stat-tile--banned::before { background:linear-gradient(90deg, #ef4444, #dc2626); }
.stat-tile--banned::after { background:radial-gradient(circle, rgba(239,68,68,0.06) 0%, transparent 70%); }
.stat-tile--banned .stat-tile__icon { background:rgba(239,68,68,0.12); border:1px solid rgba(239,68,68,0.25); color:#ef4444; }
.stat-tile--banned .stat-tile__value { color:#ef4444; }

@media (max-width:900px) { .stat-tiles { grid-template-columns:1fr 1fr; } }
@media (max-width:480px) { .stat-tiles { grid-template-columns:1fr; gap:10px; } .stat-tile { padding:18px 16px 16px; } }

.hero { position:relative; min-height:100vh; overflow:hidden; }
.hero-left {
  position:relative; z-index:2; padding:0 60px 0 80px;
  display:flex; flex-direction:column; gap:0; align-items:flex-start;
  height:100vh; justify-content:center; max-width:50%;
  animation: fadeUp 0.9s ease both;
}
canvas#particles { position:absolute; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:0; }
canvas#matrixRain { position:absolute; top:0; left:0; width:100%; height:100%; pointer-events:none; z-index:0; opacity:0.35; }
.tag-pill {
  display:inline-flex; align-items:center; gap:8px;
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  padding:6px 14px; border-radius:99px;
  font-size:12px; font-weight:600; letter-spacing:0.08em;
  text-transform:uppercase; color:var(--green);
  width:fit-content; margin-bottom:28px;
  box-shadow: 0 0 15px rgba(255,221,45,0.08);
  animation: borderPulse 3s ease-in-out infinite;
}
.tag-pill::before {
  content:''; width:6px; height:6px; border-radius:50%;
  background:var(--green); animation:blink 1.8s ease-in-out infinite;
}
.typewriter-line { display:flex; align-items:center; gap:10px; margin-bottom:20px; font-size:15px; color:var(--text-muted); }
.tw-static { color:var(--text-muted); }
.tw-word {
  background:linear-gradient(90deg, var(--green), var(--green-soft));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; font-weight:700;
}
.tw-cursor { color:var(--green); font-weight:300; animation:cursorBlink 0.7s step-end infinite; }
h1 { font-size:clamp(38px,5vw,68px); font-weight:900; line-height:1.06; letter-spacing:-2.5px; color:var(--text); margin-bottom:26px; text-shadow: 0 0 60px rgba(255,221,45,0.08); }
h1 .accent {
  background:linear-gradient(90deg, var(--green) 0%, var(--green-soft) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  animation: textGlow 3s ease-in-out infinite;
}
.hero-sub { font-size:16px; font-weight:400; line-height:1.8; color:var(--text-dim); max-width:440px; margin-bottom:48px; }
.hero-sub strong { color:var(--text-2); font-weight:500; }
section { position:relative; z-index:1; }
.divider-line { width:100%; height:1px; background:var(--border-3); margin:0; transition:background 0.4s; }

.stats-grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:2px;
  background:var(--border-2); border-radius:20px; overflow:hidden;
  border:1px solid var(--border-3); transition:background 0.4s, border-color 0.4s;
}
.stats-grid .stat-card { background:var(--surface-1); padding:40px 36px; display:flex; flex-direction:column; gap:8px; position:relative; overflow:hidden; transition:background 0.2s; }
.stats-grid .stat-card:hover { background:var(--accent-bg-2); box-shadow: 0 0 30px rgba(255,221,45,0.08); }
.stat-num {
  font-size:clamp(36px,4vw,54px); font-weight:900; letter-spacing:-2px;
  background:var(--accent-gradient);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.stat-label { font-size:14px; font-weight:500; color:var(--text-dim); line-height:1.5; }

.features-grid {
  display:grid; grid-template-columns:repeat(2,1fr); gap:2px;
  background:var(--border-2); border-radius:20px; overflow:hidden;
  border:1px solid var(--border-3); transition:background 0.4s, border-color 0.4s;
}
.feature-card {
  background:var(--surface-1); padding:36px;
  display:flex; flex-direction:column; gap:12px;
  transition:all 0.3s cubic-bezier(0.4,0,0.2,1); position:relative; overflow:hidden;
}
.feature-card:hover { background:var(--accent-bg-2); transform:translateY(-4px); box-shadow: 0 0 30px rgba(255,221,45,0.08); }
.feature-icon {
  width:44px; height:44px; border-radius:12px;
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  display:flex; align-items:center; justify-content:center; margin-bottom:6px;
  box-shadow: 0 0 15px rgba(255,221,45,0.1);
  transition: box-shadow 0.3s, transform 0.3s;
}
.feature-card:hover .feature-icon { box-shadow: 0 0 25px rgba(255,221,45,0.2); transform: scale(1.1); }
.feature-title { font-size:17px; font-weight:700; color:var(--text); letter-spacing:-0.3px; }
.feature-desc { font-size:14px; font-weight:400; color:var(--text-dim); line-height:1.7; }

.changelog-list { display:flex; flex-direction:column; gap:2px; }
.cl-item {
  background:var(--surface-1); border:1px solid var(--border-3);
  border-radius:16px; padding:28px 32px;
  display:flex; gap:20px; align-items:flex-start; transition:background 0.2s;
}
.cl-item:hover { background:var(--accent-bg-1); box-shadow: 0 0 15px rgba(255,221,45,0.05); }
.cl-item + .cl-item { border-top:1px solid var(--border-3); border-radius:0; }
.cl-item:first-child { border-radius:16px 16px 0 0; }
.cl-item:last-child { border-radius:0 0 16px 16px; }
.cl-dot { width:8px; height:8px; border-radius:50%; background:var(--dot-gradient); flex-shrink:0; margin-top:6px; }
.cl-text { font-size:15px; line-height:1.75; color:var(--text-3); }
.cl-text strong { color:var(--text); font-weight:600; }
.cl-text a { color:var(--green-dim); text-decoration:none; border-bottom:1px solid var(--accent-border-1); }
.cl-text a:hover { border-color:var(--green); }

.news-card {
  background:var(--red-bg); border:1px solid var(--red-border);
  border-radius:20px; padding:36px;
  display:flex; gap:24px; align-items:flex-start;
}
.news-icon {
  width:48px; height:48px; border-radius:12px;
  background:var(--red-icon-bg); border:1px solid var(--red-icon-border);
  display:flex; align-items:center; justify-content:center; flex-shrink:0;
}
.news-body { display:flex; flex-direction:column; gap:10px; }
.news-badge {
  display:inline-block; background:var(--red-icon-bg);
  border:1px solid var(--red-border); color:var(--red);
  font-size:11px; font-weight:700; letter-spacing:0.1em;
  text-transform:uppercase; padding:4px 10px; border-radius:99px; width:fit-content;
}
.news-title { font-size:18px; font-weight:700; color:var(--text); }
.news-text { font-size:15px; line-height:1.75; color:var(--text-dim); }

.future-card {
  background:linear-gradient(135deg, var(--accent-bg-5), var(--accent-bg-3));
  border:1px solid var(--accent-border-2);
  border-radius:20px; padding:48px;
  display:flex; justify-content:space-between; align-items:center; gap:40px;
  box-shadow: 0 0 40px rgba(255,221,45,0.06);
  transition: box-shadow 0.3s, transform 0.3s, border-color 0.3s;
}
.future-card:hover { box-shadow: 0 0 60px rgba(255,221,45,0.12); transform: translateY(-3px); border-color: var(--accent-border-3); }
.future-left { max-width:520px; }
.future-year {
  font-size:clamp(60px,8vw,100px); font-weight:900;
  letter-spacing:-5px; line-height:1;
  background:linear-gradient(90deg, rgba(255,221,45,0.4), rgba(96,165,250,0.2));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  margin-bottom:16px;
}
body.light .future-year {
  background:linear-gradient(90deg, rgba(253,191,15,0.4), rgba(37,99,235,0.2));
  -webkit-background-clip:text; background-clip:text;
}
.future-title { font-size:22px; font-weight:700; color:var(--text); margin-bottom:12px; }
.future-desc { font-size:15px; line-height:1.75; color:var(--text-dim); }

.cta-section {
  background:linear-gradient(135deg, var(--accent-bg-5) 0%, var(--accent-bg-3) 100%);
  border-top:1px solid var(--accent-border-1);
  transition: background 0.4s, border-color 0.4s;
  position:relative; overflow:hidden;
}
.cta-section::before {
  content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%;
  background: radial-gradient(circle at center, rgba(255,221,45,0.05) 0%, transparent 50%);
  animation: aurora 15s ease-in-out infinite alternate;
  pointer-events:none;
}
.cta-inner { max-width:1140px; margin:0 auto; padding:100px 60px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px; }
.cta-title { font-size:clamp(28px,4vw,48px); font-weight:900; letter-spacing:-2px; color:var(--text); }
.cta-sub { font-size:16px; color:var(--text-dim); margin-bottom:36px; }
.billing-inline {
  color:var(--green-dim); text-decoration:none;
  border-bottom:1px dashed var(--accent-border-1); transition:border-color 0.2s;
}
.billing-inline:hover { border-color:var(--green); }
.section-desc { font-size:16px; line-height:1.75; color:var(--text-dim); max-width:560px; margin-bottom:56px; }
.section-title .acc {
  background:linear-gradient(90deg, var(--green), var(--green-soft));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

.connect-page {
  position:relative; z-index:1;
  display:flex; align-items:center; justify-content:center;
  min-height:100vh; padding:120px 24px 80px;
}
.connect-card {
  max-width:560px; width:100%; padding:48px 40px;
  border-radius:24px;
}
.connect-icon {
  width:64px; height:64px; border-radius:16px;
  background:linear-gradient(135deg, var(--accent-bg-5), var(--accent-bg-4));
  border:1px solid var(--accent-border-1);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:28px; box-shadow:var(--shadow-glow-sm);
  animation: float 4s ease-in-out infinite;
}
.connect-title { font-size:28px; font-weight:800; letter-spacing:-1px; margin-bottom:12px; color:var(--text); }
.connect-desc { font-size:15px; line-height:1.7; color:var(--text-dim); margin-bottom:32px; }
.connect-desc strong { color:var(--text-2); font-weight:500; }
.connect-desc a { color:var(--green-dim); text-decoration:none; border-bottom:1px dashed var(--accent-border-1); }
.connect-desc a:hover { border-color:var(--green); }
.steps { margin-top:32px; }
.steps-title { font-size:13px; font-weight:700; color:var(--text-dim); letter-spacing:0.1em; text-transform:uppercase; margin-bottom:16px; }
.step { display:flex; gap:14px; align-items:flex-start; padding:14px 0; border-bottom:1px solid var(--border-3); }
.step:last-child { border-bottom:none; }
.step-num {
  width:28px; height:28px; border-radius:8px; flex-shrink:0;
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  display:flex; align-items:center; justify-content:center;
  font-size:12px; font-weight:800; color:var(--green);
}
.step-text { font-size:14px; line-height:1.6; color:var(--text-3); }
.step-text a { color:var(--green-dim); text-decoration:none; border-bottom:1px dashed var(--accent-border-1); }
.step-text a:hover { border-color:var(--green); }
.result { display:none; margin-top:24px; padding:20px; border-radius:14px; font-size:14px; line-height:1.7; }
.result.success { display:block; background:var(--accent-bg-4); border:1px solid var(--accent-border-2); color:var(--green-soft); }
.result.error { display:block; background:var(--red-bg); border:1px solid var(--red-border); color:var(--red); }
.result.loading { display:block; background:var(--accent-bg-4); border:1px solid var(--accent-border-2); color:var(--green); }

.panel-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:32px; padding:24px 28px; }
.panel-header h1 { font-size:32px; font-weight:800; letter-spacing:-1px; color:var(--text); }
.panel-header .user-info { display:flex; align-items:center; gap:12px; }
.panel-header .user-info img { width:40px; height:40px; border-radius:50%; border:2px solid var(--green); }
.panel-header .user-info span { font-size:14px; color:var(--text-dim); }
#adminPanel { display:none; }
.setting-row { margin-bottom:16px; }
.setting-row label { display:block; font-size:13px; font-weight:600; color:var(--text-dim); margin-bottom:6px; }
.setting-row .setting-row-inner { display:flex; gap:8px; }
.setting-row .setting-row-inner input { flex:1; }
.setting-row .setting-row-inner .btn-sm { padding:10px 18px; }
.csv-link {
  display:inline-block; padding:12px 24px;
  background:var(--btn-gradient);
  color:#fff; font-weight:700; font-size:14px;
  border-radius:10px; text-decoration:none;
  transition:transform 0.2s, box-shadow 0.2s;
}
.csv-link:hover { transform:translateY(-2px); box-shadow:var(--shadow-glow-md); }

.reveal { opacity:0; transform:translateY(30px); transition:all 0.8s cubic-bezier(0.16,1,0.3,1); }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-delay-1 { transition-delay:0.1s; }
.reveal-delay-2 { transition-delay:0.2s; }
.reveal-delay-3 { transition-delay:0.3s; }
.dash-header { animation:fadeUp 0.5s 0.1s both; }
.search-bar { animation:fadeUp 0.4s both; }
.csv-link { transition:all 0.3s; }
.csv-link:hover { box-shadow:var(--shadow-glow-sm); }

.admin-only { display:none !important; }
body.is-admin .admin-only { display:flex !important; }
.dev-only { display:none !important; }
body.is-owner .dev-only { display:flex !important; }
.mod-only { display:none !important; }
body.is-admin .mod-only, body.is-owner .mod-only { display:flex !important; }
.auth-only { display:flex !important; }
.logged-in-only { display:none !important; }
body.is-logged-in .auth-only { display:none !important; }
body.is-logged-in .logged-in-only { display:flex !important; }


@media (max-width: 900px) {
  nav { padding:12px 16px; }
  .nav-right { display:none; }
  .burger { display:block; }
  .mobile-menu { display:flex; }
  .page { padding:100px 16px 40px; }
  .grid-3, .grid-2 { grid-template-columns:1fr; }
  .stats-row { grid-template-columns:repeat(2,1fr); gap:10px; }
  .stat-card { padding:16px 12px; }
  .stat-card .num { font-size:24px; }
  .section-inner { padding:48px 16px; }
  footer { flex-direction:column; gap:12px; text-align:center; padding:20px 16px; }
  .footer-links { gap:16px; flex-wrap:wrap; justify-content:center; }
  .login-card { padding:28px 20px; border-radius:20px; }
  .login-card h1 { font-size:22px; }
  .btn { padding:14px; font-size:15px; }
  .btn-glow { padding:14px 32px; font-size:15px; }
  .tabs { gap:2px; padding:3px; border-radius:10px; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .tab { padding:8px 6px; font-size:12px; min-width:0; }
  .dash-btns { flex-direction:column; gap:8px; }
  .dash-btns .btn-outline { width:100%; text-align:center; }
  .data-table { font-size:13px; }
  .data-table th, .data-table td { padding:10px 12px; }
  .list-item { flex-direction:column; align-items:flex-start; gap:8px; padding:12px 16px; }
  .actions { flex-wrap:wrap; }
  .modal { padding:24px; width:95vw; border-radius:16px; }
  .modal h2 { font-size:18px; }
  .token-form.open { padding:16px; }
  .search-bar { flex-direction:column; }
  .search-bar button { width:100%; }
  .pagination { gap:4px; }
  .pagination button { padding:6px 10px; font-size:12px; }
  .grid { border-radius:12px; }
  .list { border-radius:12px; }
  .report-card { padding:16px; border-radius:12px; }
  .empty { padding:32px 16px; font-size:13px; }
  .hero-left { max-width:100%; height:auto; padding:120px 24px 60px; }
  .hero { min-height:auto; }
  .stats-grid, .features-grid { grid-template-columns:1fr; }
  .future-card { flex-direction:column; }
  .cta-inner { padding:64px 24px; }
  .cmd-page { padding:100px 20px 60px; }
  .cmd-list { grid-template-columns:1fr; }
  .cmd-controls { flex-direction:column; align-items:stretch; }
  .cmd-stats-row { justify-content:center; }
  .search-hint { display:none; }
  .cmd-item { padding:12px 14px; }
  .cmd-copy-btn { opacity:1; transform:translateX(0); }
  .connect-card { padding:32px 20px; }
}

@media (max-width: 480px) {
  .stats-row { grid-template-columns:1fr 1fr; gap:8px; }
  .stat-card { padding:14px 10px; }
  .stat-card .num { font-size:20px; }
  .stat-card .label { font-size:10px; }
  .tabs { overflow-x:auto; }
  .tab { font-size:11px; padding:8px 8px; white-space:nowrap; }
  .role-badge { font-size:10px; padding:4px 8px; }
  .badge { font-size:10px; padding:3px 8px; }
  .btn-sm { font-size:11px; padding:5px 10px; }
  .login-card { padding:24px 16px; }
  .login-card h1 { font-size:20px; }
  .login-card p { font-size:13px; }
  .form-input, .form-select, .form-textarea { font-size:13px; padding:12px 14px; }
  .section-title { font-size:16px; }
  .grid { gap:1px; border-radius:10px; }
  .card { padding:16px 14px; }
  .sup-tabs { flex-direction:column; gap:6px; }
  .sup-tab { width:100%; justify-content:center; }
  .sup-new-btn { width:100%; text-align:center; }
  .ticket-row { padding:14px 16px; gap:12px; }
  .ticket-icon { width:40px; height:40px; border-radius:12px; font-size:16px; }
  .status-pill { font-size:10px; padding:4px 10px; }
  .kb-grid { grid-template-columns:1fr; }
  .thread-msg { max-width:88%; font-size:13px; padding:12px 14px; }
  .thread-reply { padding:12px 16px; }
  .thread-reply input { font-size:13px; padding:12px 14px; }
  .thread-reply button { padding:12px 18px; font-size:13px; }
  .modal-body { padding:20px; }
  .cat-filters .cat-btn span { padding:6px 12px; font-size:11px; }
  .cmd-stat-item { padding:6px 12px; font-size:11px; }
  .cmd-stat-item .stat-num { font-size:12px; }
  .empty-state { padding:40px 16px; }
  .stat-tiles { grid-template-columns:1fr 1fr; gap:10px; }
}
/* ===== LP 2.0 hero ===== */
.hero-lp2 {
  display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(ellipse 80% 60% at 80% 40%, rgba(255,221,45,0.07), transparent 60%),
    radial-gradient(ellipse 60% 50% at 10% 80%, rgba(255,221,45,0.04), transparent 60%);
}
.hero-lp2-glow {
  position:absolute; right:-10%; top:10%; width:50vw; height:50vw; max-width:700px; max-height:700px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,221,45,0.12), rgba(255,221,45,0.04) 45%, transparent 70%);
  filter:blur(40px); pointer-events:none; z-index:0;
  animation:heroGlow 7s ease-in-out infinite;
}
@keyframes heroGlow {
  0%,100% { transform:translate(0,0) scale(1); opacity:0.9; }
  50% { transform:translate(-30px,20px) scale(1.08); opacity:1; }
}
.hero-wrap {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1.05fr 0.95fr; gap:64px; align-items:center;
  max-width:1200px; width:100%; margin:0 auto; padding:0 48px;
}
.hero-lp2-left { height:auto; max-width:none; padding:0; }
.hero-lp2-note {
  display:flex; align-items:center; gap:10px; margin-top:28px;
  font-size:13px; font-weight:500; color:var(--text-dim);
}
.hero-lp2-dot {
  width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 10px rgba(255,221,45,0.6); animation:blink 1.8s ease-in-out infinite;
}
.hero-card-wrap { perspective:1200px; display:flex; justify-content:center; }
.hero-card {
  position:relative; width:100%; max-width:420px;
  background:var(--surface-1); border:1px solid var(--border-3);
  border-radius:24px; padding:32px;
  display:flex; flex-direction:column; gap:24px;
  box-shadow:0 30px 80px rgba(0,0,0,0.45);
  transition:transform 0.25s ease, box-shadow 0.4s ease, border-color 0.4s;
  transform-style:preserve-3d;
}
.hero-card:hover { border-color:var(--accent-border-2); box-shadow:0 30px 80px rgba(0,0,0,0.5), 0 0 60px rgba(255,221,45,0.1); }
.hero-card::before {
  content:''; position:absolute; inset:0; border-radius:24px; pointer-events:none;
  background:linear-gradient(135deg, rgba(255,221,45,0.06), transparent 40%);
}
.hero-card-head { display:flex; align-items:center; gap:16px; }
.hero-card-logo {
  width:64px; height:64px; border-radius:16px; overflow:hidden;
  background:var(--surface-2); border:1px solid var(--border-2);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 0 25px rgba(255,221,45,0.12);
}
.hero-card-logo img { width:100%; height:100%; object-fit:cover; }
.hero-card-name { display:flex; flex-direction:column; gap:6px; }
.hero-card-title { font-size:26px; font-weight:900; letter-spacing:-1px; color:var(--text); }
.hero-card-status {
  display:inline-flex; align-items:center; gap:8px; width:fit-content;
  font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.08em; color:var(--green);
}
.hero-card-pulse {
  width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 10px rgba(255,221,45,0.7); animation:blink 1.6s ease-in-out infinite;
}
.hero-card-rows { display:flex; flex-direction:column; gap:12px; }
.hero-card-row {
  display:flex; align-items:center; gap:12px;
  padding:12px 14px; border-radius:12px;
  background:var(--surface-2); border:1px solid var(--border-2);
  font-size:14px; font-weight:500; color:var(--text-2);
  transition:border-color 0.3s, transform 0.2s;
}
.hero-card-row svg { color:var(--green); flex-shrink:0; }
.hero-card-row:hover { border-color:var(--accent-border-2); transform:translateX(4px); }
.hero-card-foot {
  display:flex; gap:10px; padding-top:4px;
}
.hero-card-chip {
  padding:6px 14px; border-radius:99px;
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  font-size:12px; font-weight:800; letter-spacing:0.06em; color:var(--green);
}

@media (max-width: 900px) {
  .hero-wrap { grid-template-columns:1fr; gap:48px; padding:0 24px; }
  .hero-card-wrap { order:2; }
  .hero-card { max-width:100%; }
}
@media (max-width: 480px) {
  .hero-wrap { padding:0 16px; gap:36px; }
  .hero-card { padding:24px 20px; }
  .hero-card-title { font-size:22px; }
}

/* ===== LP 2.0 sections (без карточек) ===== */
.lp2-sec { max-width:1140px; margin:0 auto; padding:110px 60px; }
.lp2-head { max-width:760px; margin-bottom:64px; }
.lp2-label {
  display:inline-flex; align-items:center; gap:12px;
  font-size:12px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase;
  color:var(--green); margin-bottom:20px;
}
.lp2-label::before { content:''; width:24px; height:2px; background:var(--green); border-radius:2px; }
.lp2-title {
  font-size:clamp(30px,4.5vw,44px); font-weight:900; letter-spacing:-2px;
  line-height:1.12; margin-bottom:20px; color:var(--text);
}
.lp2-title .acc {
  background:linear-gradient(90deg, var(--green), var(--green-soft));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.lp2-desc { font-size:16px; line-height:1.8; color:var(--text-dim); max-width:560px; }

.lp2-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.lp2-stat { padding:0 48px; }
.lp2-stat:first-child { padding-left:0; }
.lp2-stat:last-child { padding-right:0; }
.lp2-stat:nth-child(2) { border-left:1px solid var(--border-3); border-right:1px solid var(--border-3); }
.lp2-stat-num {
  font-size:clamp(44px,6vw,72px); font-weight:900; letter-spacing:-3px; line-height:1;
  background:var(--accent-gradient);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  margin-bottom:16px;
}
.lp2-stat-label { font-size:15px; font-weight:600; color:var(--text-2); line-height:1.5; margin-bottom:6px; }
.lp2-stat-sub { font-size:13px; color:var(--text-dim); }

.lp2-features { display:grid; grid-template-columns:1fr 1fr; gap:56px 72px; }
.lp2-feature { display:flex; flex-direction:column; gap:14px; align-items:flex-start; }
.lp2-feature-icon {
  width:46px; height:46px; border-radius:14px; color:var(--green);
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  display:flex; align-items:center; justify-content:center;
  transition:transform 0.25s ease, box-shadow 0.3s ease;
}
.lp2-feature:hover .lp2-feature-icon { transform:translateY(-3px); box-shadow:0 0 20px rgba(255,221,45,0.18); }
.lp2-feature-title { font-size:19px; font-weight:800; letter-spacing:-0.3px; color:var(--text); }
.lp2-feature-desc { font-size:15px; line-height:1.75; color:var(--text-dim); max-width:440px; }
.lp2-feature-desc a { color:var(--green); }

.lp2-changelog { position:relative; max-width:760px; }
.lp2-changelog::before {
  content:''; position:absolute; left:7px; top:8px; bottom:8px; width:2px;
  background:linear-gradient(180deg, var(--green) 0%, rgba(255,221,45,0.08) 100%);
  border-radius:2px;
}
.lp2-cl-item { position:relative; padding:0 0 44px 44px; }
.lp2-cl-item:last-child { padding-bottom:0; }
.lp2-cl-dot {
  position:absolute; left:0; top:4px; width:16px; height:16px; border-radius:50%;
  background:var(--surface-1); border:2px solid var(--green);
  box-shadow:0 0 14px rgba(255,221,45,0.35);
}
.lp2-cl-text { font-size:16px; line-height:1.8; color:var(--text-3); }
.lp2-cl-text strong { color:var(--text); font-weight:700; }
.lp2-cl-text a { color:var(--green); text-decoration:none; border-bottom:1px solid var(--accent-border-2); }
.lp2-cl-text a:hover { border-color:var(--green); }

.lp2-news { max-width:800px; }
.lp2-news-badge {
  display:inline-flex; align-items:center; gap:10px;
  font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--green); margin-bottom:20px;
}
.lp2-news-badge::before {
  content:''; width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 12px rgba(255,221,45,0.6); animation:blink 1.8s ease-in-out infinite;
}
.lp2-news-title { font-size:clamp(22px,3vw,30px); font-weight:800; letter-spacing:-0.8px; color:var(--text); margin-bottom:16px; }
.lp2-news-text { font-size:15px; line-height:1.85; color:var(--text-dim); max-width:700px; }
.lp2-news-text a { color:var(--green); text-decoration:none; border-bottom:1px dashed rgba(255,221,45,0.4); }
.lp2-news-text a:hover { border-color:var(--green); }

.lp2-plans { display:flex; align-items:flex-start; gap:64px; }
.lp2-plans-year {
  font-size:clamp(84px,12vw,150px); font-weight:900; letter-spacing:-8px; line-height:0.9; flex-shrink:0;
  background:linear-gradient(135deg, var(--green) 0%, rgba(255,221,45,0.12) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.lp2-plans-body { padding-top:14px; max-width:520px; }
.lp2-plans-title { font-size:24px; font-weight:800; letter-spacing:-0.5px; color:var(--text); margin-bottom:14px; }
.lp2-plans-desc { font-size:15px; line-height:1.8; color:var(--text-dim); }

.lp2-cta { position:relative; overflow:hidden; }
.lp2-cta-glow {
  position:absolute; left:50%; bottom:-45%; transform:translateX(-50%);
  width:70vw; height:45vw; max-width:900px; max-height:600px;
  background:radial-gradient(ellipse, rgba(255,221,45,0.1), transparent 65%);
  filter:blur(30px); pointer-events:none;
}
.lp2-cta-inner {
  max-width:1140px; margin:0 auto; padding:130px 60px;
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;
  position:relative; z-index:1;
}
.lp2-cta-title { font-size:clamp(32px,5vw,56px); font-weight:900; letter-spacing:-2px; color:var(--text); margin-bottom:8px; }
.lp2-cta-sub { font-size:16px; color:var(--text-dim); margin-bottom:40px; }

@media (max-width: 900px) {
  .lp2-sec { padding:80px 24px; }
  .lp2-stats { grid-template-columns:1fr; }
  .lp2-stat { padding:32px 0; }
  .lp2-stat:nth-child(2) { border-left:none; border-right:none; border-top:1px solid var(--border-3); border-bottom:1px solid var(--border-3); }
  .lp2-features { grid-template-columns:1fr; gap:44px; }
  .lp2-plans { flex-direction:column; gap:32px; }
  .lp2-cta-inner { padding:90px 24px; }
}
@media (max-width: 480px) {
  .lp2-sec { padding:64px 20px; }
  .lp2-head { margin-bottom:44px; }
  .lp2-cl-item { padding-left:36px; }
}

body.lp2 .page { padding:120px 60px 80px; }
body.lp2 #loginSection { min-height:75vh; }
body.lp2 .login-card {
  background:none; border:none; box-shadow:none; backdrop-filter:none;
  border-radius:0; padding:0; max-width:520px;
}
body.lp2 .login-card:hover { transform:none; box-shadow:none; border-color:transparent; }
body.lp2 .login-card h1 {
  font-size:clamp(32px,4.5vw,46px); font-weight:900; letter-spacing:-2px; margin-bottom:12px;
  background:none; -webkit-text-fill-color:var(--text); color:var(--text);
}
body.lp2 .login-card p { margin-bottom:36px; }
.lp2-auth-logo {
  width:76px; height:76px; border-radius:22px; overflow:hidden;
  border:1px solid var(--border-2); margin:0 auto 28px;
  box-shadow:0 0 40px rgba(255,221,45,0.14);
}
.lp2-auth-logo img { width:100%; height:100%; object-fit:cover; }
body.lp2 .dash-header { padding:0 0 28px; margin-bottom:28px; border-bottom:1px solid var(--border-3); }
body.lp2 .dash-avatar { width:72px; height:72px; }
body.lp2 .dash-info h2 { font-size:28px; font-weight:900; letter-spacing:-1px; }
body.lp2 .dash-btns { gap:12px; margin-bottom:32px; }
.lp2-btn-sm { width:auto; padding:10px 20px; font-size:13px; font-weight:600; }
.lp2-btn-danger { color:var(--red); border-color:rgba(239,68,68,0.4); }
.lp2-btn-danger:hover { background:rgba(239,68,68,0.08); box-shadow:0 0 16px rgba(239,68,68,0.15); }

.tk-head {
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  padding-bottom:32px; margin-bottom:32px; border-bottom:1px solid #242424;
}
.tk-head-left { display:flex; align-items:center; gap:20px; }
.tk-avatar { width:72px; height:72px; border-radius:50%; object-fit:cover; border:3px solid var(--green); }
.tk-name { font-size:clamp(26px,3.5vw,36px); font-weight:900; letter-spacing:-2px; margin:0; }
.tk-id { font-size:13px; color:var(--text-dim); margin-top:4px; }
.tk-head-right { display:flex; align-items:center; gap:16px; }
.tk-bot { display:flex; align-items:center; gap:10px; font-size:13px; font-weight:700; color:var(--text-dim); }

.tk-account {
  background:#161616; border-radius:24px;
  padding:32px 36px; margin-bottom:28px;
}
.tk-account-label { font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase; color:var(--text-dim); margin-bottom:12px; }
.tk-account-num { font-size:clamp(44px,7vw,64px); font-weight:900; letter-spacing:-4px; color:var(--green); line-height:1; margin-bottom:24px; }
.tk-metrics { display:flex; gap:0; border-top:1px solid #262626; padding-top:24px; flex-wrap:wrap; }
.tk-metric { flex:1; min-width:130px; padding:0 24px; border-left:1px solid #262626; }
.tk-metric:first-child { padding-left:0; border-left:none; }
.tk-metric-num { font-size:30px; font-weight:900; letter-spacing:-1.5px; color:var(--text); }
.tk-metric-label { font-size:11px; color:var(--text-dim); margin-top:6px; font-weight:700; }

.tk-actions { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px; }
.tk-btn {
  background:#262626; color:var(--text);
  padding:12px 22px; border-radius:999px; font-size:13px; font-weight:700; cursor:pointer; transition:background .2s;
  border:none;
}
.tk-btn:hover { background:#333; }
.tk-btn-danger { background:rgba(255,80,80,0.14); color:#ff6b6b; }
.tk-btn-danger:hover { background:rgba(255,80,80,0.24); }

.tk-form { display:none; }
.tk-form.open { display:block; background:#161616; border-radius:20px; padding:28px; margin-bottom:28px; }
.tk-form h3 { font-size:18px; font-weight:900; letter-spacing:-0.5px; margin:0 0 20px; }

body.lp2 .tabs { background:none; border:none; border-radius:0; padding:0; gap:28px; border-bottom:1px solid #242424; margin-bottom:36px; }
body.lp2 .tab { flex:0 0 auto; padding:14px 2px; border-radius:0; font-weight:800; }
body.lp2 .tab:hover:not(.active) { background:none; color:var(--text); }
body.lp2 .tab.active { background:none; color:var(--green); box-shadow:none; border-bottom:3px solid var(--green); margin-bottom:-1px; }
body.lp2 .tab.active::before { display:none; }

.tk-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:14px; margin-bottom:28px; }
.tk-card {
  background:#161616; border-radius:20px; padding:24px;
  transition:background .2s;
}
.tk-card:hover { background:#1d1d1d; }
.tk-card-label { font-size:11px; font-weight:800; letter-spacing:0.1em; text-transform:uppercase; color:var(--text-dim); margin-bottom:10px; }
.tk-card-num { font-size:34px; font-weight:900; letter-spacing:-2px; }
.tk-card-sub { font-size:12px; color:var(--text-dim); margin-top:8px; }
.tk-card .tk-card-num.tk-green { color:var(--green); }
.tk-card .tk-card-num.tk-blue { color:#60a5fa; }
.tk-card .tk-card-num.tk-purple { color:#a78bfa; }
.tk-card .tk-card-num.tk-orange { color:#fb923c; }
.tk-card .tk-card-num.tk-red { color:#ff6b6b; }
.tk-card .tk-card-num.tk-teal { color:#2dd4bf; }
.tk-card .tk-card-num.tk-pink { color:#f472b6; }

.tk-list { margin-bottom:32px; }
.tk-row {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:18px 0; border-bottom:1px solid #222;
}
.tk-row:last-child { border-bottom:none; }
.tk-row-main { display:flex; flex-direction:column; gap:4px; }
.tk-row-title { font-weight:800; font-size:15px; }
.tk-row-sub { font-size:12px; color:var(--text-dim); }
.tk-badge {
  font-size:12px; font-weight:800; padding:7px 14px; border-radius:999px;
  background:#262626; color:var(--text); white-space:nowrap;
}
.tk-badge-green { background:rgba(255,221,45,0.16); color:var(--green); }
.tk-badge-red { background:rgba(255,80,80,0.16); color:#ff6b6b; }
.tk-badge-purple { background:rgba(167,139,250,0.16); color:#a78bfa; }

.tk-empty { padding:48px 0; text-align:center; color:var(--text-dim); font-size:14px; }
.tk-section-title { font-size:20px; font-weight:900; letter-spacing:-0.5px; margin:32px 0 6px; }

.tk-premium { background:#161616; border-radius:24px; padding:32px; margin-bottom:28px; }
.tk-premium-head { display:flex; align-items:center; gap:14px; padding-bottom:24px; border-bottom:1px solid #262626; margin-bottom:28px; }
.tk-premium-title { font-size:18px; font-weight:900; letter-spacing:-0.5px; }
.tk-premium-settings { display:grid; gap:24px; }

body.lp2 .sup-tabs { background:none; border:none; border-radius:0; padding:0; gap:24px; border-bottom:1px solid #242424; margin-bottom:28px; }
body.lp2 .sup-tab { background:none; border:none; border-radius:0; padding:12px 2px; font-weight:800; }
body.lp2 .sup-tab:hover { border-color:transparent; box-shadow:none; transform:none; }
body.lp2 .sup-tab.active { background:none; color:var(--green); border:none; box-shadow:none; border-bottom:3px solid var(--green); margin-bottom:-1px; }
body.lp2 .sup-tab.active::before { display:none; }
body.lp2 .sup-tab-badge { background:none; border:1px solid var(--border-3); border-radius:999px; }
body.lp2 .sup-tab.active .sup-tab-badge { background:none; color:var(--green); border-color:var(--green); }

.tk-ticket { background:#161616; border-radius:20px; padding:20px 24px; margin-bottom:12px; cursor:pointer; transition:background .2s; }
.tk-ticket:hover { background:#1d1d1d; }
.tk-ticket-top { display:flex; align-items:center; gap:10px; margin-bottom:10px; flex-wrap:wrap; }
.tk-ticket-title { font-size:16px; font-weight:800; }
.tk-ticket-meta { font-size:12px; color:var(--text-dim); }
.tk-status { font-size:11px; font-weight:800; padding:5px 12px; border-radius:999px; text-transform:uppercase; letter-spacing:.05em; }
.tk-status-open { background:rgba(255,221,45,0.16); color:var(--green); }
.tk-status-in_progress { background:rgba(96,165,250,0.16); color:#60a5fa; }
.tk-status-closed { background:rgba(139,139,139,0.18); color:#8b8b8b; }

.tk-kb { display:grid; gap:12px; }
.tk-kb-item { background:#161616; border-radius:20px; padding:20px 24px; cursor:pointer; transition:background .2s; }
.tk-kb-item:hover { background:#1d1d1d; }
.tk-kb-item h4 { font-size:16px; font-weight:800; margin:0 0 4px; }
.tk-kb-item p { font-size:12px; color:var(--text-dim); margin:0; }
.tk-kb-answer { display:none; font-size:13px; line-height:1.7; color:var(--text-2); padding-top:16px; margin-top:16px; border-top:1px solid #262626; }
.tk-kb-item.open .tk-kb-answer { display:block; }

.tk-chat { display:flex; flex-direction:column; gap:10px; margin:20px 0; max-height:360px; overflow-y:auto; }
.tk-msg { max-width:78%; padding:14px 18px; border-radius:20px; font-size:14px; line-height:1.55; }
.tk-msg .tk-msg-label { font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; }
.tk-msg .tk-msg-time { font-size:10px; color:var(--text-dim); margin-top:6px; }
.tk-msg.me { align-self:flex-start; background:#262626; border-bottom-left-radius:6px; }
.tk-msg.staff { align-self:flex-end; background:rgba(255,221,45,0.14); border-bottom-right-radius:6px; }
.tk-msg.staff .tk-msg-label { color:var(--green); }
.tk-reply { display:flex; gap:10px; margin-top:18px; }
.tk-reply input { flex:1; background:#161616; border:1px solid #262626; border-radius:16px; padding:14px 18px; color:var(--text); font-size:14px; }
.tk-reply input:focus { outline:none; border-color:var(--green); }
.tk-reply button { background:var(--green); color:#000; border:none; border-radius:999px; padding:0 20px; font-size:18px; font-weight:800; cursor:pointer; }

@media (max-width: 900px) {
  nav { padding:12px 16px; }
  .nav-right { display:none; }
  .burger { display:block; }
  .mobile-menu { display:flex; }
  .page { padding:100px 16px 40px; }
  .grid-3, .grid-2 { grid-template-columns:1fr; }
  .stats-row { grid-template-columns:repeat(2,1fr); gap:10px; }
  .stat-card { padding:16px 12px; }
  .stat-card .num { font-size:24px; }
  .section-inner { padding:48px 16px; }
  footer { flex-direction:column; gap:12px; text-align:center; padding:20px 16px; }
  .footer-links { gap:16px; flex-wrap:wrap; justify-content:center; }
  .login-card { padding:28px 20px; border-radius:20px; }
  .login-card h1 { font-size:22px; }
  .btn { padding:14px; font-size:15px; }
  .btn-glow { padding:14px 32px; font-size:15px; }
  .tabs { gap:2px; padding:3px; border-radius:10px; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  .tab { padding:8px 6px; font-size:12px; min-width:0; }
  .dash-btns { flex-direction:column; gap:8px; }
  .dash-btns .btn-outline { width:100%; text-align:center; }
  .data-table { font-size:13px; }
  .data-table th, .data-table td { padding:10px 12px; }
  .list-item { flex-direction:column; align-items:flex-start; gap:8px; padding:12px 16px; }
  .actions { flex-wrap:wrap; }
  .modal { padding:24px; width:95vw; border-radius:16px; }
  .modal h2 { font-size:18px; }
  .token-form.open { padding:16px; }
  .search-bar { flex-direction:column; }
  .search-bar button { width:100%; }
  .pagination { gap:4px; }
  .pagination button { padding:6px 10px; font-size:12px; }
  .grid { border-radius:12px; }
  .list { border-radius:12px; }
  .report-card { padding:16px; border-radius:12px; }
  .empty { padding:32px 16px; font-size:13px; }
  .hero-left { max-width:100%; height:auto; padding:120px 24px 60px; }
  .hero { min-height:auto; }
  .stats-grid, .features-grid { grid-template-columns:1fr; }
  .future-card { flex-direction:column; }
  .cta-inner { padding:64px 24px; }
  .cmd-page { padding:100px 20px 60px; }
  .cmd-list { grid-template-columns:1fr; }
  .cmd-controls { flex-direction:column; align-items:stretch; }
  .cmd-stats-row { justify-content:center; }
  .search-hint { display:none; }
  .cmd-item { padding:12px 14px; }
  .cmd-copy-btn { opacity:1; transform:translateX(0); }
  .connect-card { padding:32px 20px; }
}

@media (max-width: 480px) {
  .stats-row { grid-template-columns:1fr 1fr; gap:8px; }
  .stat-card { padding:14px 10px; }
  .stat-card .num { font-size:20px; }
  .stat-card .label { font-size:10px; }
  .tabs { overflow-x:auto; }
  .tab { font-size:11px; padding:8px 8px; white-space:nowrap; }
  .role-badge { font-size:10px; padding:4px 8px; }
  .badge { font-size:10px; padding:3px 8px; }
  .btn-sm { font-size:11px; padding:5px 10px; }
  .login-card { padding:24px 16px; }
  .login-card h1 { font-size:20px; }
  .login-card p { font-size:13px; }
  .form-input, .form-select, .form-textarea { font-size:13px; padding:12px 14px; }
  .section-title { font-size:16px; }
  .grid { gap:1px; border-radius:10px; }
  .card { padding:16px 14px; }
  .sup-tabs { flex-direction:column; gap:6px; }
  .sup-tab { width:100%; justify-content:center; }
  .sup-new-btn { width:100%; text-align:center; }
  .ticket-row { padding:14px 16px; gap:12px; }
  .ticket-icon { width:40px; height:40px; border-radius:12px; font-size:16px; }
  .status-pill { font-size:10px; padding:4px 10px; }
  .kb-grid { grid-template-columns:1fr; }
  .thread-msg { max-width:88%; font-size:13px; padding:12px 14px; }
  .thread-reply { padding:12px 16px; }
  .thread-reply input { font-size:13px; padding:12px 14px; }
  .thread-reply button { padding:12px 18px; font-size:13px; }
  .modal-body { padding:20px; }
  .cat-filters .cat-btn span { padding:6px 12px; font-size:11px; }
  .cmd-stat-item { padding:6px 12px; font-size:11px; }
  .cmd-stat-item .stat-num { font-size:12px; }
  .empty-state { padding:40px 16px; }
  .stat-tiles { grid-template-columns:1fr 1fr; gap:10px; }
}
/* ===== LP 2.0 hero ===== */
.hero-lp2 {
  display:flex; align-items:center; justify-content:center;
  background:
    radial-gradient(ellipse 80% 60% at 80% 40%, rgba(255,221,45,0.07), transparent 60%),
    radial-gradient(ellipse 60% 50% at 10% 80%, rgba(255,221,45,0.04), transparent 60%);
}
.hero-lp2-glow {
  position:absolute; right:-10%; top:10%; width:50vw; height:50vw; max-width:700px; max-height:700px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,221,45,0.12), rgba(255,221,45,0.04) 45%, transparent 70%);
  filter:blur(40px); pointer-events:none; z-index:0;
  animation:heroGlow 7s ease-in-out infinite;
}
@keyframes heroGlow {
  0%,100% { transform:translate(0,0) scale(1); opacity:0.9; }
  50% { transform:translate(-30px,20px) scale(1.08); opacity:1; }
}
.hero-wrap {
  position:relative; z-index:1;
  display:grid; grid-template-columns:1.05fr 0.95fr; gap:64px; align-items:center;
  max-width:1200px; width:100%; margin:0 auto; padding:0 48px;
}
.hero-lp2-left { height:auto; max-width:none; padding:0; }
.hero-lp2-note {
  display:flex; align-items:center; gap:10px; margin-top:28px;
  font-size:13px; font-weight:500; color:var(--text-dim);
}
.hero-lp2-dot {
  width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 10px rgba(255,221,45,0.6); animation:blink 1.8s ease-in-out infinite;
}
.hero-card-wrap { perspective:1200px; display:flex; justify-content:center; }
.hero-card {
  position:relative; width:100%; max-width:420px;
  background:var(--surface-1); border:1px solid var(--border-3);
  border-radius:24px; padding:32px;
  display:flex; flex-direction:column; gap:24px;
  box-shadow:0 30px 80px rgba(0,0,0,0.45);
  transition:transform 0.25s ease, box-shadow 0.4s ease, border-color 0.4s;
  transform-style:preserve-3d;
}
.hero-card:hover { border-color:var(--accent-border-2); box-shadow:0 30px 80px rgba(0,0,0,0.5), 0 0 60px rgba(255,221,45,0.1); }
.hero-card::before {
  content:''; position:absolute; inset:0; border-radius:24px; pointer-events:none;
  background:linear-gradient(135deg, rgba(255,221,45,0.06), transparent 40%);
}
.hero-card-head { display:flex; align-items:center; gap:16px; }
.hero-card-logo {
  width:64px; height:64px; border-radius:16px; overflow:hidden;
  background:var(--surface-2); border:1px solid var(--border-2);
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 0 25px rgba(255,221,45,0.12);
}
.hero-card-logo img { width:100%; height:100%; object-fit:cover; }
.hero-card-name { display:flex; flex-direction:column; gap:6px; }
.hero-card-title { font-size:26px; font-weight:900; letter-spacing:-1px; color:var(--text); }
.hero-card-status {
  display:inline-flex; align-items:center; gap:8px; width:fit-content;
  font-size:12px; font-weight:600; text-transform:uppercase; letter-spacing:0.08em; color:var(--green);
}
.hero-card-pulse {
  width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 10px rgba(255,221,45,0.7); animation:blink 1.6s ease-in-out infinite;
}
.hero-card-rows { display:flex; flex-direction:column; gap:12px; }
.hero-card-row {
  display:flex; align-items:center; gap:12px;
  padding:12px 14px; border-radius:12px;
  background:var(--surface-2); border:1px solid var(--border-2);
  font-size:14px; font-weight:500; color:var(--text-2);
  transition:border-color 0.3s, transform 0.2s;
}
.hero-card-row svg { color:var(--green); flex-shrink:0; }
.hero-card-row:hover { border-color:var(--accent-border-2); transform:translateX(4px); }
.hero-card-foot {
  display:flex; gap:10px; padding-top:4px;
}
.hero-card-chip {
  padding:6px 14px; border-radius:99px;
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  font-size:12px; font-weight:800; letter-spacing:0.06em; color:var(--green);
}

@media (max-width: 900px) {
  .hero-wrap { grid-template-columns:1fr; gap:48px; padding:0 24px; }
  .hero-card-wrap { order:2; }
  .hero-card { max-width:100%; }
}
@media (max-width: 480px) {
  .hero-wrap { padding:0 16px; gap:36px; }
  .hero-card { padding:24px 20px; }
  .hero-card-title { font-size:22px; }
}

/* ===== LP 2.0 sections (без карточек) ===== */
.lp2-sec { max-width:1140px; margin:0 auto; padding:110px 60px; }
.lp2-head { max-width:760px; margin-bottom:64px; }
.lp2-label {
  display:inline-flex; align-items:center; gap:12px;
  font-size:12px; font-weight:800; letter-spacing:0.18em; text-transform:uppercase;
  color:var(--green); margin-bottom:20px;
}
.lp2-label::before { content:''; width:24px; height:2px; background:var(--green); border-radius:2px; }
.lp2-title {
  font-size:clamp(30px,4.5vw,44px); font-weight:900; letter-spacing:-2px;
  line-height:1.12; margin-bottom:20px; color:var(--text);
}
.lp2-title .acc {
  background:linear-gradient(90deg, var(--green), var(--green-soft));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.lp2-desc { font-size:16px; line-height:1.8; color:var(--text-dim); max-width:560px; }

.lp2-stats { display:grid; grid-template-columns:repeat(3,1fr); gap:0; }
.lp2-stat { padding:0 48px; }
.lp2-stat:first-child { padding-left:0; }
.lp2-stat:last-child { padding-right:0; }
.lp2-stat:nth-child(2) { border-left:1px solid var(--border-3); border-right:1px solid var(--border-3); }
.lp2-stat-num {
  font-size:clamp(44px,6vw,72px); font-weight:900; letter-spacing:-3px; line-height:1;
  background:var(--accent-gradient);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  margin-bottom:16px;
}
.lp2-stat-label { font-size:15px; font-weight:600; color:var(--text-2); line-height:1.5; margin-bottom:6px; }
.lp2-stat-sub { font-size:13px; color:var(--text-dim); }

.lp2-features { display:grid; grid-template-columns:1fr 1fr; gap:56px 72px; }
.lp2-feature { display:flex; flex-direction:column; gap:14px; align-items:flex-start; }
.lp2-feature-icon {
  width:46px; height:46px; border-radius:14px; color:var(--green);
  background:var(--accent-bg-6); border:1px solid var(--accent-border-2);
  display:flex; align-items:center; justify-content:center;
  transition:transform 0.25s ease, box-shadow 0.3s ease;
}
.lp2-feature:hover .lp2-feature-icon { transform:translateY(-3px); box-shadow:0 0 20px rgba(255,221,45,0.18); }
.lp2-feature-title { font-size:19px; font-weight:800; letter-spacing:-0.3px; color:var(--text); }
.lp2-feature-desc { font-size:15px; line-height:1.75; color:var(--text-dim); max-width:440px; }
.lp2-feature-desc a { color:var(--green); }

.lp2-changelog { position:relative; max-width:760px; }
.lp2-changelog::before {
  content:''; position:absolute; left:7px; top:8px; bottom:8px; width:2px;
  background:linear-gradient(180deg, var(--green) 0%, rgba(255,221,45,0.08) 100%);
  border-radius:2px;
}
.lp2-cl-item { position:relative; padding:0 0 44px 44px; }
.lp2-cl-item:last-child { padding-bottom:0; }
.lp2-cl-dot {
  position:absolute; left:0; top:4px; width:16px; height:16px; border-radius:50%;
  background:var(--surface-1); border:2px solid var(--green);
  box-shadow:0 0 14px rgba(255,221,45,0.35);
}
.lp2-cl-text { font-size:16px; line-height:1.8; color:var(--text-3); }
.lp2-cl-text strong { color:var(--text); font-weight:700; }
.lp2-cl-text a { color:var(--green); text-decoration:none; border-bottom:1px solid var(--accent-border-2); }
.lp2-cl-text a:hover { border-color:var(--green); }

.lp2-news { max-width:800px; }
.lp2-news-badge {
  display:inline-flex; align-items:center; gap:10px;
  font-size:12px; font-weight:800; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--green); margin-bottom:20px;
}
.lp2-news-badge::before {
  content:''; width:8px; height:8px; border-radius:50%; background:var(--green);
  box-shadow:0 0 12px rgba(255,221,45,0.6); animation:blink 1.8s ease-in-out infinite;
}
.lp2-news-title { font-size:clamp(22px,3vw,30px); font-weight:800; letter-spacing:-0.8px; color:var(--text); margin-bottom:16px; }
.lp2-news-text { font-size:15px; line-height:1.85; color:var(--text-dim); max-width:700px; }
.lp2-news-text a { color:var(--green); text-decoration:none; border-bottom:1px dashed rgba(255,221,45,0.4); }
.lp2-news-text a:hover { border-color:var(--green); }

.lp2-plans { display:flex; align-items:flex-start; gap:64px; }
.lp2-plans-year {
  font-size:clamp(84px,12vw,150px); font-weight:900; letter-spacing:-8px; line-height:0.9; flex-shrink:0;
  background:linear-gradient(135deg, var(--green) 0%, rgba(255,221,45,0.12) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}
.lp2-plans-body { padding-top:14px; max-width:520px; }
.lp2-plans-title { font-size:24px; font-weight:800; letter-spacing:-0.5px; color:var(--text); margin-bottom:14px; }
.lp2-plans-desc { font-size:15px; line-height:1.8; color:var(--text-dim); }

.lp2-cta { position:relative; overflow:hidden; }
.lp2-cta-glow {
  position:absolute; left:50%; bottom:-45%; transform:translateX(-50%);
  width:70vw; height:45vw; max-width:900px; max-height:600px;
  background:radial-gradient(ellipse, rgba(255,221,45,0.1), transparent 65%);
  filter:blur(30px); pointer-events:none;
}
.lp2-cta-inner {
  max-width:1140px; margin:0 auto; padding:130px 60px;
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:12px;
  position:relative; z-index:1;
}
.lp2-cta-title { font-size:clamp(32px,5vw,56px); font-weight:900; letter-spacing:-2px; color:var(--text); margin-bottom:8px; }
.lp2-cta-sub { font-size:16px; color:var(--text-dim); margin-bottom:40px; }

@media (max-width: 900px) {
  .lp2-sec { padding:80px 24px; }
  .lp2-stats { grid-template-columns:1fr; }
  .lp2-stat { padding:32px 0; }
  .lp2-stat:nth-child(2) { border-left:none; border-right:none; border-top:1px solid var(--border-3); border-bottom:1px solid var(--border-3); }
  .lp2-features { grid-template-columns:1fr; gap:44px; }
  .lp2-plans { flex-direction:column; gap:32px; }
  .lp2-cta-inner { padding:90px 24px; }
}
@media (max-width: 480px) {
  .lp2-sec { padding:64px 20px; }
  .lp2-head { margin-bottom:44px; }
  .lp2-cl-item { padding-left:36px; }
}

body.lp2 .page { padding:120px 60px 80px; }
body.lp2 #loginSection { min-height:75vh; }
body.lp2 .login-card {
  background:none; border:none; box-shadow:none; backdrop-filter:none;
  border-radius:0; padding:0; max-width:520px;
}
body.lp2 .login-card:hover { transform:none; box-shadow:none; border-color:transparent; }
body.lp2 .login-card h1 {
  font-size:clamp(32px,4.5vw,46px); font-weight:900; letter-spacing:-2px; margin-bottom:12px;
  background:none; -webkit-text-fill-color:var(--text); color:var(--text);
}
body.lp2 .login-card p { margin-bottom:36px; }
.lp2-auth-logo {
  width:76px; height:76px; border-radius:22px; overflow:hidden;
  border:1px solid var(--border-2); margin:0 auto 28px;
  box-shadow:0 0 40px rgba(255,221,45,0.14);
}
.lp2-auth-logo img { width:100%; height:100%; object-fit:cover; }
body.lp2 .dash-header { padding:0 0 28px; margin-bottom:28px; border-bottom:1px solid var(--border-3); }
body.lp2 .dash-avatar { width:72px; height:72px; }
body.lp2 .dash-info h2 { font-size:28px; font-weight:900; letter-spacing:-1px; }
body.lp2 .dash-btns { gap:12px; margin-bottom:32px; }
.lp2-btn-sm { width:auto; padding:10px 20px; font-size:13px; font-weight:600; }
.lp2-btn-danger { color:var(--red); border-color:rgba(239,68,68,0.4); }
.lp2-btn-danger:hover { background:rgba(239,68,68,0.08); box-shadow:0 0 16px rgba(239,68,68,0.15); }

.tk-head {
  display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap;
  padding-bottom:28px; margin-bottom:28px; border-bottom:1px solid var(--border-3);
}
.tk-head-left { display:flex; align-items:center; gap:18px; }
.tk-avatar { width:64px; height:64px; border-radius:50%; object-fit:cover; border:2px solid var(--green); }
.tk-name { font-size:clamp(24px,3vw,32px); font-weight:900; letter-spacing:-1.5px; margin:0; }
.tk-id { font-size:13px; color:var(--text-dim); margin-top:4px; }
.tk-head-right { display:flex; align-items:center; gap:16px; }
.tk-bot { display:flex; align-items:center; gap:10px; font-size:13px; font-weight:600; color:var(--text-dim); }

.tk-account {
  background:#141414; border:1px solid #262626; border-radius:20px;
  padding:28px 32px; margin-bottom:28px;
}
.tk-account-label { font-size:12px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:var(--text-dim); margin-bottom:10px; }
.tk-account-num { font-size:clamp(40px,6vw,58px); font-weight:900; letter-spacing:-3px; color:var(--green); line-height:1; margin-bottom:20px; }
.tk-metrics { display:flex; gap:0; border-top:1px solid #262626; padding-top:20px; flex-wrap:wrap; }
.tk-metric { flex:1; min-width:130px; padding:0 24px; border-left:1px solid #262626; }
.tk-metric:first-child { padding-left:0; border-left:none; }
.tk-metric-num { font-size:26px; font-weight:800; letter-spacing:-1px; color:var(--text); }
.tk-metric-label { font-size:11px; color:var(--text-dim); margin-top:4px; font-weight:600; }

.tk-actions { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:32px; }
.tk-btn {
  background:#1a1a1a; border:1px solid #2e2e2e; color:var(--text);
  padding:10px 20px; border-radius:12px; font-size:13px; font-weight:600; cursor:pointer; transition:all .2s;
}
.tk-btn:hover { border-color:var(--green); color:var(--green); }
.tk-btn-danger { color:#f87171; border-color:rgba(248,113,113,0.35); }
.tk-btn-danger:hover { border-color:#f87171; color:#f87171; background:rgba(248,113,113,0.08); }

.tk-form { display:none; }
.tk-form.open { display:block; background:#141414; border:1px solid #262626; border-radius:16px; padding:24px; margin-bottom:28px; }
.tk-form h3 { font-size:17px; font-weight:800; margin:0 0 16px; }

body.lp2 .tabs { background:none; border:none; border-radius:0; padding:0; gap:28px; border-bottom:1px solid var(--border-3); margin-bottom:36px; }
body.lp2 .tab { flex:0 0 auto; padding:12px 2px; border-radius:0; font-weight:700; }
body.lp2 .tab:hover:not(.active) { background:none; color:var(--text); }
body.lp2 .tab.active { background:none; color:var(--green); box-shadow:none; border-bottom:2px solid var(--green); margin-bottom:-1px; }
body.lp2 .tab.active::before { display:none; }

.tk-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:14px; margin-bottom:28px; }
.tk-card {
  background:#141414; border:1px solid #262626; border-radius:16px; padding:20px;
  transition:border-color .2s;
}
.tk-card:hover { border-color:#3a3a3a; }
.tk-card-label { font-size:11px; font-weight:700; letter-spacing:0.1em; text-transform:uppercase; color:var(--text-dim); margin-bottom:8px; }
.tk-card-num { font-size:30px; font-weight:900; letter-spacing:-1.5px; }
.tk-card-sub { font-size:12px; color:var(--text-dim); margin-top:6px; }
.tk-card .tk-card-num.tk-green { color:var(--green); }
.tk-card .tk-card-num.tk-blue { color:#60a5fa; }
.tk-card .tk-card-num.tk-purple { color:#a78bfa; }
.tk-card .tk-card-num.tk-orange { color:#fb923c; }
.tk-card .tk-card-num.tk-red { color:#f87171; }
.tk-card .tk-card-num.tk-teal { color:#2dd4bf; }
.tk-card .tk-card-num.tk-pink { color:#f472b6; }

.tk-list { margin-bottom:32px; }
.tk-row {
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding:16px 0; border-bottom:1px solid #1f1f1f;
}
.tk-row:last-child { border-bottom:none; }
.tk-row-main { display:flex; flex-direction:column; gap:4px; }
.tk-row-title { font-weight:700; font-size:15px; }
.tk-row-sub { font-size:12px; color:var(--text-dim); }
.tk-badge {
  font-size:12px; font-weight:700; padding:6px 12px; border-radius:999px;
  background:#1f1f1f; color:var(--text); white-space:nowrap;
}
.tk-badge-green { background:rgba(255,221,45,0.12); color:var(--green); }
.tk-badge-red { background:rgba(248,113,113,0.12); color:#f87171; }
.tk-badge-purple { background:rgba(167,139,250,0.12); color:#a78bfa; }

.tk-empty { padding:48px 0; text-align:center; color:var(--text-dim); font-size:14px; }
.tk-section-title { font-size:15px; font-weight:800; margin:28px 0 4px; }

.tk-premium { background:#141414; border:1px solid #262626; border-radius:20px; padding:28px; margin-bottom:28px; }
.tk-premium-head { display:flex; align-items:center; gap:12px; padding-bottom:20px; border-bottom:1px solid #262626; margin-bottom:24px; }
.tk-premium-title { font-size:17px; font-weight:800; }
.tk-premium-settings { display:grid; gap:20px; }

body.lp2 .sup-tabs { background:none; border:none; border-radius:0; padding:0; gap:24px; border-bottom:1px solid var(--border-3); margin-bottom:28px; }
body.lp2 .sup-tab { background:none; border:none; border-radius:0; padding:10px 2px; font-weight:700; }
body.lp2 .sup-tab:hover { border-color:transparent; box-shadow:none; transform:none; }
body.lp2 .sup-tab.active { background:none; color:var(--green); border:none; box-shadow:none; border-bottom:2px solid var(--green); margin-bottom:-1px; }
body.lp2 .sup-tab.active::before { display:none; }
body.lp2 .sup-tab-badge { background:none; border:1px solid var(--border-3); }
body.lp2 .sup-tab.active .sup-tab-badge { background:none; color:var(--green); border-color:var(--green); }

.tk-ticket { background:#141414; border:1px solid #262626; border-radius:16px; padding:18px 20px; margin-bottom:12px; cursor:pointer; transition:border-color .2s; }
.tk-ticket:hover { border-color:var(--green); }
.tk-ticket-top { display:flex; align-items:center; gap:10px; margin-bottom:8px; flex-wrap:wrap; }
.tk-ticket-title { font-size:15px; font-weight:700; }
.tk-ticket-meta { font-size:12px; color:var(--text-dim); }
.tk-status { font-size:11px; font-weight:700; padding:4px 10px; border-radius:999px; text-transform:uppercase; letter-spacing:.05em; }
.tk-status-open { background:rgba(255,221,45,0.12); color:var(--green); }
.tk-status-in_progress { background:rgba(96,165,250,0.12); color:#60a5fa; }
.tk-status-closed { background:rgba(139,139,139,0.15); color:#8b8b8b; }

.tk-kb { display:grid; gap:12px; }
.tk-kb-item { background:#141414; border:1px solid #262626; border-radius:16px; padding:18px 20px; cursor:pointer; transition:border-color .2s; }
.tk-kb-item:hover { border-color:var(--green); }
.tk-kb-item h4 { font-size:15px; font-weight:700; margin:0 0 4px; }
.tk-kb-item p { font-size:12px; color:var(--text-dim); margin:0; }
.tk-kb-answer { display:none; font-size:13px; line-height:1.7; color:var(--text-2); padding-top:14px; margin-top:14px; border-top:1px solid #262626; }
.tk-kb-item.open .tk-kb-answer { display:block; }

.tk-chat { display:flex; flex-direction:column; gap:10px; margin:20px 0; max-height:340px; overflow-y:auto; }
.tk-msg { max-width:78%; padding:12px 16px; border-radius:16px; font-size:14px; line-height:1.55; }
.tk-msg .tk-msg-label { font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; }
.tk-msg .tk-msg-time { font-size:10px; color:var(--text-dim); margin-top:6px; }
.tk-msg.me { align-self:flex-start; background:#1a1a1a; border:1px solid #262626; border-bottom-left-radius:4px; }
.tk-msg.staff { align-self:flex-end; background:rgba(255,221,45,0.1); border:1px solid rgba(255,221,45,0.25); border-bottom-right-radius:4px; }
.tk-msg.staff .tk-msg-label { color:var(--green); }
.tk-reply { display:flex; gap:10px; margin-top:18px; }
.tk-reply input { flex:1; background:#141414; border:1px solid #262626; border-radius:12px; padding:12px 16px; color:var(--text); font-size:14px; }
.tk-reply input:focus { outline:none; border-color:var(--green); }
.tk-reply button { background:var(--green); color:#000; border:none; border-radius:12px; padding:0 18px; font-size:18px; font-weight:800; cursor:pointer; }

@media (max-width: 900px) {
  body.lp2 .page { padding:110px 24px 60px; }
  body.lp2 .tabs { gap:16px; overflow-x:auto; }
}
@media (max-width: 480px) {
  body.lp2 .page { padding:100px 20px 48px; }
  .tk-metric { padding:8px 16px; border-left:none; border-top:1px solid #262626; min-width:100%; }
  .tk-metric:first-child { padding-left:16px; border-top:none; }
  .tk-account { padding:22px; }
}

/* ===== LP 2.0 подключай/заявка/админка ===== */
body.lp2 .connect-card { padding:0; border:none; box-shadow:none; background:none; backdrop-filter:none; }
body.lp2 .connect-title { font-size:clamp(28px,4vw,40px); font-weight:900; letter-spacing:-2px; margin-bottom:16px; }
body.lp2 .connect-icon { display:none; }
body.lp2 .steps { margin-top:40px; }
body.lp2 .steps-title { color:var(--green); letter-spacing:0.14em; }
body.lp2 .step { border-bottom:1px solid var(--border-3); }
body.lp2 .step:last-child { border-bottom:none; }
body.lp2 .step-num { background:none; border:1px solid var(--border-2); }
body.lp2 .panel-header {
  padding:0 0 24px; border-bottom:1px solid var(--border-3); margin-bottom:28px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
body.lp2 .panel-header h1 { font-size:clamp(28px,4vw,40px); font-weight:900; letter-spacing:-2px; margin:0; }
body.lp2 .user-info { display:flex; align-items:center; gap:12px; }
body.lp2 .user-info img { width:44px; height:44px; border-radius:50%; object-fit:cover; border:2px solid var(--green); }
body.lp2 .stats-row { gap:0; border-bottom:1px solid var(--border-3); padding-bottom:8px; margin-bottom:28px; }
body.lp2 .stats-row .stat-card { background:none; border:none; border-radius:0; padding:8px 28px; backdrop-filter:none; box-shadow:none; }
body.lp2 .stats-row .stat-card:first-child { padding-left:0; }
body.lp2 .stats-row .stat-card:hover { transform:none; border-color:transparent; box-shadow:none; }
body.lp2 .stats-row .stat-card::before, body.lp2 .stats-row .stat-card::after { display:none; }
body.lp2 .stats-row .stat-card .num { font-size:30px; }
body.lp2 .stats-row .stat-card .label { color:var(--text-dim); }
body.lp2 .pagination button { background:none; border:1px solid var(--border-3); }
body.lp2 .pagination button.active { border-color:var(--green); color:var(--green); }

/* ===== LP 2.0 админка (без карточек) ===== */
body.lp2 .glass-panel { padding:0 0 24px !important; margin-bottom:8px !important; border-radius:0 !important; border:none; border-bottom:1px solid var(--border-3); background:none; backdrop-filter:none; box-shadow:none; }
body.lp2 .search-bar input { background:transparent; border:none; border-bottom:1px solid var(--border-3); border-radius:0; padding:10px 2px; }
body.lp2 .search-bar input:focus { outline:none; border-bottom-color:var(--green); box-shadow:none; }
body.lp2 .search-bar button { background:var(--green); color:#000; border:none; border-radius:6px; font-weight:700; }
body.lp2 .actions { display:flex; gap:6px; justify-content:flex-end; }
body.lp2 .csv-link { color:var(--green); border-bottom:1px solid transparent; }
body.lp2 .csv-link:hover { border-bottom-color:var(--green); }
body.lp2 table { border-collapse:collapse; }
body.lp2 table tr { border-bottom:1px solid var(--border-1); }
body.lp2 table th { color:var(--text-dim); font-size:12px; text-transform:uppercase; letter-spacing:.08em; }
body.lp2 .settings-block { border-top:1px solid var(--border-3); padding-top:20px; }
body.lp2 .tk-nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  display:flex; align-items:center; gap:28px; padding:0 40px; height:68px;
  background:rgba(10,10,10,0.85); backdrop-filter:blur(16px);
  border-bottom:1px solid #1f1f1f;
}
.tk-nav-logo { width:42px; height:42px; border-radius:13px; overflow:hidden; flex:0 0 auto; border:1px solid #2a2a2a; }
.tk-nav-logo img { width:100%; height:100%; object-fit:cover; }
.tk-nav-links { display:flex; gap:26px; }
.tk-nav-link { font-size:14px; font-weight:700; color:#8a8a8a; text-decoration:none; transition:color .2s; }
.tk-nav-link:hover { color:#fff; }
.tk-nav-right { display:flex; align-items:center; gap:10px; margin-left:auto; }
.tk-nav-btn {
  display:inline-flex; align-items:center; justify-content:center;
  padding:10px 20px; border-radius:999px; background:#262626; color:#fff;
  font-size:13px; font-weight:800; text-decoration:none; transition:background .2s;
}
.tk-nav-btn:hover { background:#333; }
.tk-nav-btn-active { background:var(--green); color:#000; }
.tk-nav-btn-active:hover { background:#ffe14d; }
.tk-nav-icon {
  width:38px; height:38px; border-radius:999px; background:#1f1f1f; border:none;
  color:#fff; font-size:11px; font-weight:800; cursor:pointer; transition:background .2s;
  display:inline-flex; align-items:center; justify-content:center;
}
.tk-nav-icon:hover { background:#2b2b2b; }
.tk-nav-icon svg { width:16px; height:16px; }
.tk-nav-icon .icon-moon { display:none; }
body.lp2.light .tk-nav-icon .icon-moon { display:block; }
body.lp2.light .tk-nav-icon .icon-sun { display:none; }
.tk-burger { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:8px; margin-left:auto; }
.tk-burger span { width:22px; height:2px; background:#fff; border-radius:2px; transition:all .25s; }
.tk-burger.active span:nth-child(1) { transform:translateY(7px) rotate(45deg); }
.tk-burger.active span:nth-child(2) { opacity:0; }
.tk-burger.active span:nth-child(3) { transform:translateY(-7px) rotate(-45deg); }
.tk-mnav {
  position:fixed; top:68px; left:0; right:0; z-index:999;
  background:rgba(10,10,10,0.97); backdrop-filter:blur(16px);
  border-bottom:1px solid #1f1f1f; padding:16px 24px 24px;
  display:none; flex-direction:column; gap:4px;
}
.tk-mnav.active { display:flex; }
.tk-mnav-link { padding:12px 8px; font-size:15px; font-weight:700; color:#ccc; text-decoration:none; border-bottom:1px solid #1a1a1a; }
.tk-mnav-link:hover { color:var(--green); }

.tk-footer {
  border-top:1px solid #1f1f1f; padding:36px 40px; margin-top:48px;
  display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap;
}
.tk-footer-logo { display:flex; align-items:center; gap:12px; font-weight:900; letter-spacing:-0.5px; font-size:15px; }
.tk-footer-links { display:flex; gap:24px; }
.tk-footer-links a { font-size:13px; font-weight:600; color:#8a8a8a; text-decoration:none; transition:color .2s; }
.tk-footer-links a:hover { color:#fff; }

body.lp2 .form-input {
  background:#161616; border:1px solid #262626; border-radius:14px;
  padding:14px 16px; color:var(--text); font-size:14px;
  box-shadow:none; margin-bottom:12px;
}
body.lp2 .form-input:focus { border-color:var(--green); box-shadow:none; transform:none; }
body.lp2 .btn {
  background:var(--green); color:#000; border:none; border-radius:999px;
  padding:14px 28px; font-size:14px; font-weight:800; cursor:pointer;
  transition:background .2s; width:100%;
}
body.lp2 .btn:hover { background:#ffe14d; box-shadow:none; transform:none; }
body.lp2 .btn:disabled { opacity:0.5; cursor:default; }
body.lp2 .login-hint { font-size:13px; color:var(--text-dim); margin:14px 0 0; text-align:center; }
body.lp2 .login-hint a { color:var(--green); text-decoration:none; font-weight:700; }
body.lp2 .login-card p { color:var(--text-dim); }

body.lp2 .tk-modal-overlay {
  position:fixed; inset:0; z-index:2000; background:rgba(0,0,0,0.72);
  backdrop-filter:blur(6px); display:flex; align-items:center; justify-content:center;
  opacity:0; pointer-events:none; transition:opacity .2s;
}
body.lp2 .tk-modal-overlay.active { opacity:1; pointer-events:all; }
.tk-modal {
  background:#161616; border-radius:24px; width:92%; max-width:520px;
  padding:0; max-height:84vh; overflow-y:auto; box-shadow:0 24px 80px rgba(0,0,0,0.5);
}
.tk-modal-head { padding:24px 28px 18px; border-bottom:1px solid #242424; display:flex; align-items:center; justify-content:space-between; }
.tk-modal-head h2 { font-size:19px; font-weight:900; letter-spacing:-0.5px; margin:0; }
.tk-modal-close { background:none; border:none; color:#8a8a8a; font-size:22px; cursor:pointer; line-height:1; }
.tk-modal-close:hover { color:#fff; }
.tk-modal-body { padding:24px 28px 28px; }
.tk-modal-body label { display:block; font-size:12px; font-weight:800; color:var(--text-dim); margin:0 0 8px; text-transform:uppercase; letter-spacing:0.06em; }
body.lp2 .cat-btn {
  background:#1f1f1f; color:#aaa; border:none; border-radius:999px;
  padding:9px 16px; font-size:12px; font-weight:700; cursor:pointer; transition:all .2s;
}
body.lp2 .cat-btn.active { background:var(--green); color:#000; }
body.lp2 .cat-btn-row { display:flex; gap:8px; flex-wrap:wrap; margin-bottom:20px; }
body.lp2 .tk-btn-block { width:100%; }
body.lp2 .sup-new-btn {
  background:var(--green); color:#000; border:none; border-radius:999px;
  padding:10px 20px; font-size:13px; font-weight:800; cursor:pointer; margin-left:auto; transition:background .2s;
}
body.lp2 .sup-new-btn:hover { background:#ffe14d; }
body.lp2 .sup-new-btn::before { display:none; }
body.lp2 .thread-back { color:var(--green); text-decoration:none; font-size:13px; font-weight:700; }
body.lp2 .thread-back:hover { text-decoration:underline; }
body.lp2 .thread-top { padding-bottom:16px; }

@media (max-width: 900px) {
  body.lp2 .tk-nav { padding:0 20px; }
  .tk-nav-links { display:none; }
  .tk-nav-right { display:none; }
  .tk-burger { display:flex; }
  .tk-footer { padding:28px 20px; }
}
