/* ============================================
   Uranium Gym — Luxury Theme System
   Light (default) / Dark toggle — رنگ‌ها RGB triplet
   ============================================ */

:root {
  /* — حالت روشن: سفید خنثی + سبز برند اورانیوم — */
  --c-bg:      246 248 246;
  --c-panel:   255 255 255;
  --c-inner:   242 245 242;
  --c-border:  226 231 226;
  --c-border2: 202 210 203;
  --c-strong:  38 39 40;
  --c-t1:      52 54 55;
  --c-t2:      82 85 86;
  --c-t3:      114 118 119;
  --c-t4:      145 150 151;
  --c-t5:      178 183 184;
  --c-gold:    47 152 66;
  --c-goldl:   98 200 106;
  --c-goldd:   30 116 46;
  color-scheme: light;
}

html.dark {
  --c-bg:      13 15 14;
  --c-panel:   22 25 23;
  --c-inner:   30 34 31;
  --c-border:  43 49 44;
  --c-border2: 63 71 65;
  --c-strong:  255 255 255;
  --c-t1:      229 231 235;
  --c-t2:      209 213 219;
  --c-t3:      156 163 175;
  --c-t4:      107 114 128;
  --c-t5:      75 85 99;
  --c-gold:    85 201 94;
  --c-goldl:   138 225 143;
  --c-goldd:   52 156 66;
  color-scheme: dark;
}

/* پنل‌های همیشه‌تیره (سایدبار، پنل برند لاگین) — مستقل از تم */
.force-dark {
  --c-bg:      13 15 14;
  --c-panel:   22 25 23;
  --c-inner:   30 34 31;
  --c-border:  45 51 46;
  --c-border2: 63 71 65;
  --c-strong:  255 255 255;
  --c-t1:      229 231 235;
  --c-t2:      209 213 219;
  --c-t3:      156 163 175;
  --c-t4:      118 126 120;
  --c-t5:      85 94 88;
  --c-gold:    85 201 94;
  --c-goldl:   138 225 143;
  --c-goldd:   52 156 66;
}
.luxe-side {
  background:
    radial-gradient(500px 260px at 100% 0%, rgb(85 201 94 / .10), transparent 60%),
    linear-gradient(180deg, #171b18 0%, #0d100e 100%);
}

body {
  background-color: rgb(var(--c-bg));
  background-image:
    radial-gradient(1100px 480px at 88% -12%, rgb(var(--c-gold) / .08), transparent 60%),
    radial-gradient(800px 400px at -10% 110%, rgb(var(--c-gold) / .04), transparent 55%);
  background-attachment: fixed;
  font-feature-settings: "ss01";
  position: relative;
}
/* بافت نقطه‌ای بسیار ظریف — حس متریال پریمیوم */
body::after {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image: radial-gradient(rgb(var(--c-strong) / .045) 1px, transparent 1.2px);
  background-size: 24px 24px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.7), rgba(0,0,0,.25) 40%, transparent 75%);
  -webkit-mask-image: linear-gradient(180deg, rgba(0,0,0,.7), rgba(0,0,0,.25) 40%, transparent 75%);
}
body > * { position: relative; z-index: 1; }

h1, h2, h3 { letter-spacing: -0.015em; }
.tabular { font-variant-numeric: tabular-nums; }

/* شیشه‌ای */
.glass {
  background: rgb(var(--c-panel) / .68);
  backdrop-filter: blur(16px) saturate(1.5);
  -webkit-backdrop-filter: blur(16px) saturate(1.5);
}

/* پنل قهرمان تیره با هاله سبز برند */
.luxe-hero {
  background:
    radial-gradient(640px 320px at 85% -10%, rgb(85 201 94 / .18), transparent 60%),
    radial-gradient(400px 240px at 0% 110%, rgb(85 201 94 / .08), transparent 60%),
    linear-gradient(135deg, #1b201c 0%, #0d100e 100%);
}

/* بوردر گرادیانی طلایی */
.grad-border { position: relative; }
.grad-border::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgb(var(--c-goldl) / .8), rgb(var(--c-gold) / .12) 45%, rgb(var(--c-goldd) / .7));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
  pointer-events: none;
}

/* ---------- گرادیان‌ها و خط‌های برند ---------- */
.gold-gradient {
  background: linear-gradient(135deg, rgb(var(--c-goldl)) 0%, rgb(var(--c-gold)) 55%, rgb(var(--c-goldd)) 100%);
  color: #ffffff !important;
}
.gold-gradient * { color: inherit !important; }

button.gold-gradient, a.gold-gradient {
  box-shadow: inset 0 1px 0 rgb(255 255 255 / .38), 0 8px 22px -6px rgb(var(--c-gold) / .55);
}
button.gold-gradient:hover, a.gold-gradient:hover { filter: brightness(1.06); transform: translateY(-1px); }
button.gold-gradient:active, a.gold-gradient:active { transform: translateY(0); }

.gold-text {
  background: linear-gradient(120deg, rgb(var(--c-goldl)), rgb(var(--c-gold)));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.hairline {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgb(var(--c-gold) / .55), transparent);
}

/* ---------- جزئیات مدرن ---------- */
button, a, input, select, textarea { transition: all .18s cubic-bezier(.4,0,.2,1); }

input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: rgb(var(--c-gold) / .6) !important;
  box-shadow: 0 0 0 3px rgb(var(--c-gold) / .14);
}

thead tr { background: rgb(var(--c-inner) / .55); }
thead th:first-child { border-radius: 0 .65rem .65rem 0; }
thead th:last-child  { border-radius: .65rem 0 0 .65rem; }
tbody tr { transition: background .12s ease; }
tbody tr:hover { background: rgb(var(--c-inner) / .6); }

.nav-active { box-shadow: inset 0 0 0 1px rgb(var(--c-gold) / .28); }

code {
  background: rgb(24 20 12 / .92) !important;
  color: #f2e9d2 !important;
}

@media (prefers-reduced-motion: no-preference) {
  @keyframes fadeUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
  main > * { animation: fadeUp .32s cubic-bezier(.4,0,.2,1) both; }
  main > *:nth-child(2) { animation-delay: .04s; }
  main > *:nth-child(3) { animation-delay: .08s; }
  main > *:nth-child(4) { animation-delay: .12s; }
}

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: rgb(var(--c-bg)); }
::-webkit-scrollbar-thumb { background: rgb(var(--c-border2)); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgb(var(--c-gold)); }

[x-cloak] { display: none !important; }

@media print {
  .no-print { display: none !important; }
  body { background: #fff !important; color: #000 !important; }
  .print-area, .print-area * { color: #000 !important; background: #fff !important; border-color: #ccc !important; }
}
