@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@400;700;900&family=Cinzel:wght@400;600;900&family=Rajdhani:wght@300;400;600;700&family=Crimson+Pro:ital,wght@0,400;0,600;1,400&display=swap');

:root {
  --gold:        #e8a230;
  --gold2:       #c97a1a;
  --gold-light:  #f5c842;
  --gold-pale:   #fde99a;
  --copper:      #b85c2a;
  --amber:       #d4621e;
  --crimson:     #8b1a2e;
  --crimson2:    #c0283f;
  --sapphire:    #1a3a6b;
  --sapphire2:   #2558a8;
  --teal:        #1a7a6e;
  --teal2:       #22a897;
  --dark:        #080608;
  --dark2:       #0f0c10;
  --dark3:       #160f18;
  --panel:       rgba(10,7,12,0.92);
  --panel2:      rgba(18,12,22,0.85);
  --glass:       rgba(255,255,255,0.04);
  --border:      rgba(232,162,48,0.20);
  --border2:     rgba(232,162,48,0.35);
  --border-dim:  rgba(255,255,255,0.07);
  --glow:        0 0 20px rgba(232,162,48,0.3);
  --glow-strong: 0 0 35px rgba(232,162,48,0.5);
  --glow-red:    0 0 25px rgba(139,26,46,0.5);
  --glow-blue:   0 0 25px rgba(37,88,168,0.5);
  --shadow:      0 8px 40px rgba(0,0,0,0.7);
  
  /* Nuevos colores mágicos */
  --fire-start:  #ff6b35;
  --fire-mid:    #f7931e;
  --fire-end:    #ffd700;
  --magic-purple:#a855f7;
  --magic-blue:  #3b82f6;
  --magic-cyan:  #06b6d4;
}

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body, html {
  font-family:'Rajdhani', sans-serif;
  background:var(--dark);
  min-height:100vh;
  -webkit-font-smoothing:antialiased;
  color:#e8ddd0;
  overflow-x:hidden;
  cursor:default;
}
a, button, .class-card, .spell-icon, .level-tab, .nav-link, .btn-h, .btn-hero-primary, .btn-hero-secondary, .buy-btn, .dropdown-item, .stat-pill, .feature-card, .ranking-panel, .store-item, .news-card {
  cursor:pointer;
}
body::before {
  content:''; position:fixed; inset:0; z-index:0;
  background-image:
    radial-gradient(ellipse at 15% 25%, rgba(139,26,46,0.07) 0%, transparent 50%),
    radial-gradient(ellipse at 85% 75%, rgba(26,58,107,0.07) 0%, transparent 50%),
    radial-gradient(ellipse at 50% 50%, rgba(232,162,48,0.02) 0%, transparent 70%);
  pointer-events:none;
}
::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:var(--dark2); }
::-webkit-scrollbar-thumb { background:linear-gradient(180deg, #a855f7, #ec4899, #f97316); border-radius:3px; }

/* ===== HEADER ===== */
header {
  position:fixed; top:0; left:0; right:0; z-index:101;
  padding:0 48px; height:75px;
  display:grid; grid-template-columns:220px 1fr 220px; align-items:center;
  background:linear-gradient(180deg, rgba(8,4,10,0.98) 0%, rgba(12,6,14,0.96) 100%);
  backdrop-filter:blur(30px);
  box-shadow:0 2px 0 rgba(168,85,247,0.2), 0 4px 40px rgba(0,0,0,0.7);
  border-bottom:1px solid rgba(168,85,247,0.25);
}
header::after {
  content:''; position:absolute; bottom:0; left:8%; right:8%; height:2px;
  background:linear-gradient(90deg, transparent, #a855f7, #ec4899, #f97316, #f59e0b, #10b981, #06b6d4, #3b82f6, transparent);
  opacity:0.6; filter:blur(1px);
}
.logo {
  display:flex; align-items:center; height:60px;
  cursor:pointer; transition:all 0.3s; text-decoration:none;
  position:relative;
}
.logo img {
  height:100%; width:auto; object-fit:contain;
  transition:all 0.3s;
  filter:drop-shadow(0 0 15px rgba(168,85,247,0.6)) drop-shadow(0 0 25px rgba(236,72,153,0.4)) brightness(1.1) contrast(1.15);
  background:transparent;
}
.logo:hover {
  transform:scale(1.08);
}
.logo:hover img {
  filter:drop-shadow(0 0 20px rgba(168,85,247,0.8)) drop-shadow(0 0 35px rgba(236,72,153,0.6)) brightness(1.15) contrast(1.2);
}

nav { display:flex; gap:4px; justify-content:center; }
nav a {
  color:rgba(200,180,255,0.7); text-decoration:none; font-size:0.82em;
  font-weight:700; letter-spacing:1.8px; text-transform:uppercase;
  padding:8px 15px; border-radius:8px; transition:all 0.3s; position:relative;
  background:rgba(168,85,247,0.04);
}
nav a::before {
  content:''; position:absolute; inset:0; border-radius:8px;
  background:linear-gradient(135deg, rgba(168,85,247,0.15), rgba(236,72,153,0.1), rgba(59,130,246,0.08));
  opacity:0; transition:opacity 0.3s;
}
nav a:hover::before, nav a.active::before { opacity:1; }
nav a::after {
  content:''; position:absolute; bottom:4px; left:50%; right:50%; height:2px;
  background:linear-gradient(90deg, #a855f7, #ec4899, #f97316);
  transition:all 0.3s; opacity:0; box-shadow:0 0 8px #a855f7;
}
nav a:hover::after, nav a.active::after { left:15%; right:15%; opacity:1; }
nav a:hover {
  color:#c4b5fd;
  text-shadow:0 0 10px rgba(168,85,247,0.6);
  transform:translateY(-2px);
}
nav a.active {
  color:#e9d5ff;
  text-shadow:0 0 15px rgba(168,85,247,0.8);
  background:rgba(168,85,247,0.12);
}

/* ===== HEADER USER AREA ===== */
.header-user { display:flex; align-items:center; gap:8px; position:relative; justify-content:flex-end; }
#guestPanel { display:block; }
#userPanel { display:none; position:relative; }

.user-profile-btn {
  display:flex; align-items:center; gap:10px; padding:8px 16px;
  background:linear-gradient(135deg, rgba(168,85,247,0.15), rgba(59,130,246,0.12), rgba(6,182,212,0.08));
  border:1px solid rgba(168,85,247,0.3);
  border-radius:10px; color:#c4b5fd; font-weight:800; font-size:0.88em;
  cursor:pointer; transition:all 0.3s; position:relative; overflow:hidden;
  box-shadow:0 0 20px rgba(168,85,247,0.3), inset 0 1px 0 rgba(168,85,247,0.2);
}
.user-profile-btn::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, #a855f7, #3b82f6, #06b6d4);
  opacity:0; transition:opacity 0.3s; z-index:-1;
}
.user-profile-btn::after {
  content:''; position:absolute; top:-50%; left:-50%; width:200%; height:200%;
  background:radial-gradient(circle, rgba(168,85,247,0.3) 0%, transparent 70%);
  animation:pulse-glow 3s ease-in-out infinite; opacity:0.4;
}
@keyframes pulse-glow {
  0%, 100% { transform:scale(0.8); opacity:0.3; }
  50% { transform:scale(1.1); opacity:0.6; }
}
.user-profile-btn:hover {
  background:linear-gradient(135deg, rgba(168,85,247,0.25), rgba(59,130,246,0.2), rgba(6,182,212,0.15));
  box-shadow:0 0 30px rgba(168,85,247,0.5), 0 0 50px rgba(59,130,246,0.3), inset 0 1px 0 rgba(168,85,247,0.3);
  transform:translateY(-2px);
}
.user-profile-btn .chevron { transition:transform 0.3s; position:relative; z-index:1; }
.user-profile-btn.active .chevron { transform:rotate(180deg); }

.user-dropdown {
  display:none; position:absolute; top:calc(100% + 10px); right:0;
  min-width:260px; background:rgba(7,5,9,0.98);
  border:1px solid var(--border2); border-radius:12px;
  box-shadow:0 16px 50px rgba(0,0,0,0.85), 0 0 30px rgba(232,162,48,0.1);
  backdrop-filter:blur(25px); overflow:hidden;
  animation:dropdownSlide 0.25s ease; z-index:1000;
}
.user-dropdown.show { display:block; }
@keyframes dropdownSlide {
  from { opacity:0; transform:translateY(-10px) scale(0.97); }
  to   { opacity:1; transform:translateY(0) scale(1); }
}
.dropdown-header {
  padding:18px 20px; border-bottom:1px solid rgba(168,85,247,0.3);
  background:linear-gradient(135deg, rgba(168,85,247,0.15), rgba(236,72,153,0.1), rgba(249,115,22,0.08));
  position:relative; overflow:hidden;
}
.dropdown-header::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, #a855f7, #ec4899, #f97316, transparent);
  opacity:0.5;
}
.dropdown-header .username {
  font-size:1.1em; font-weight:800;
  background:linear-gradient(135deg, #a855f7, #ec4899, #f97316);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text; margin-bottom:6px; display:block; font-family:'Cinzel', serif;
  filter:drop-shadow(0 0 8px rgba(168,85,247,0.4));
}
.dropdown-header .balance {
  display:flex; align-items:center; gap:8px; font-size:0.9em;
  color:rgba(59,130,246,0.9);
}
.dropdown-header .balance i {
  color:#3b82f6;
  filter:drop-shadow(0 0 6px rgba(59,130,246,0.5));
}
.dropdown-header .balance img {
  width:20px; height:20px; object-fit:contain;
  filter:drop-shadow(0 0 6px rgba(59,130,246,0.5));
}
.dropdown-menu { padding:6px 0; }
.dropdown-item {
  display:flex; align-items:center; gap:14px; padding:12px 20px;
  color:rgba(232,221,208,0.8); text-decoration:none; font-size:0.92em; font-weight:600;
  transition:all 0.2s; cursor:pointer; border:none; background:transparent;
  width:100%; text-align:left; font-family:'Rajdhani',sans-serif; letter-spacing:0.5px;
}
.dropdown-item:hover { background:rgba(232,162,48,0.1); color:var(--gold-pale); padding-left:26px; }
.dropdown-item i { width:20px; text-align:center; color:var(--gold2); font-size:0.9em; }
.dropdown-item.logout { border-top:1px solid var(--border-dim); color:rgba(220,80,80,0.85); }
.dropdown-item.logout:hover { background:rgba(200,40,60,0.12); color:#ff7070; }
.dropdown-item.logout i { color:#e05555; }

.btn-h {
  display:inline-flex; align-items:center; gap:6px; padding:9px 18px; border-radius:10px;
  font-family:'Rajdhani',sans-serif; font-size:0.85em; font-weight:700; letter-spacing:1px;
  text-transform:uppercase; cursor:pointer; transition:all 0.3s; text-decoration:none;
  border:1px solid rgba(6,182,212,0.4);
  background:linear-gradient(135deg, rgba(6,182,212,0.12), rgba(16,185,129,0.08));
  color:#5eead4; position:relative; overflow:hidden; z-index:1;
}
.btn-h::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(6,182,212,0.2), rgba(16,185,129,0.15));
  opacity:0; transition:opacity 0.3s; z-index:-1;
}
.btn-h:hover::before { opacity:1; }
.btn-h:hover {
  border-color:#06b6d4; color:#5eead4;
  box-shadow:0 0 25px rgba(6,182,212,0.5), 0 0 40px rgba(16,185,129,0.3);
  transform:translateY(-2px);
}
.btn-h:active {
  transform:translateY(-1px);
}
.btn-h.gold-btn {
  background:linear-gradient(135deg, #10b981, #06b6d4, #3b82f6);
  color:#ffffff; border:none;
  box-shadow:0 4px 20px rgba(16,185,129,0.4), 0 0 30px rgba(6,182,212,0.3);
  font-weight:800; text-shadow:0 1px 2px rgba(0,0,0,0.2);
}
.btn-h.gold-btn::before {
  background:linear-gradient(135deg, #3b82f6, #10b981);
}
.btn-h.gold-btn:hover {
  color:#ffffff;
  box-shadow:0 6px 30px rgba(16,185,129,0.6), 0 0 50px rgba(6,182,212,0.5), 0 0 80px rgba(59,130,246,0.3);
  transform:translateY(-3px) scale(1.03);
}
.btn-h.gold-btn:active {
  transform:translateY(-1px) scale(1.01);
}

/* ===== MOBILE NAV ===== */
.mobile-menu-btn {
  display:none; background:transparent; border:none;
  color:var(--gold); font-size:1.4em; cursor:pointer; padding:5px; z-index:103;
}
.mobile-nav {
  position:fixed; top:0; left:-100%; width:280px; height:100vh;
  background:rgba(5,3,7,0.99); backdrop-filter:blur(25px); z-index:102;
  display:flex; flex-direction:column; padding:80px 0 20px;
  box-shadow:5px 0 40px rgba(0,0,0,0.9); border-right:1px solid var(--border);
  transition:left 0.35s cubic-bezier(0.4,0,0.2,1); overflow-y:auto;
}
.mobile-nav.show { left:0; }
.mobile-nav-logo {
  display:flex; align-items:center; justify-content:center;
  text-align:center; text-decoration:none;
  padding:0 25px 20px; border-bottom:1px solid var(--border); margin-bottom:8px;
  filter:drop-shadow(0 0 10px rgba(168,85,247,0.3));
}
.mobile-nav a {
  color:rgba(232,221,208,0.65); text-decoration:none; font-size:0.88em; font-weight:700;
  letter-spacing:1.5px; text-transform:uppercase; padding:15px 25px;
  border-bottom:1px solid rgba(255,255,255,0.04); transition:all 0.25s;
  display:flex; align-items:center; gap:12px;
}
.mobile-nav a:hover, .mobile-nav a.active {
  color:#c4b5fd; background:rgba(168,85,247,0.1);
  padding-left:32px; border-left:3px solid #a855f7;
}

/* ===== MAIN CONTENT ===== */
main {
  min-height:100vh; padding:90px 40px 60px;
  max-width:1200px; margin:0 auto; position:relative; z-index:10;
}

/* ===== PAGE HERO ===== */
.page-hero { text-align:center; margin-bottom:40px; padding:50px 20px 30px; position:relative; }
.page-hero::after {
  content:''; position:absolute; bottom:0; left:30%; right:30%; height:2px;
  background:linear-gradient(90deg, transparent, #a855f7, #ec4899, #f97316, transparent); opacity:0.5;
}
.page-hero h1 {
  font-family:'Cinzel', serif; font-size:2.8em; font-weight:900;
  background:linear-gradient(135deg, #a855f7, #ec4899, #f97316, #f59e0b);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  filter:drop-shadow(0 0 30px rgba(168,85,247,0.4)) drop-shadow(0 0 40px rgba(236,72,153,0.3));
  margin-bottom:12px; letter-spacing:2px;
}
.page-hero p { font-size:1.05em; color:rgba(232,221,208,0.55); font-style:italic; font-family:'Crimson Pro', serif; }

@keyframes shimmer { to { background-position:200% center; } }

/* ===== CARD ===== */
.card {
  background:var(--panel); backdrop-filter:blur(20px);
  border:1px solid var(--border); border-radius:16px; padding:32px;
  box-shadow:var(--shadow), inset 0 1px 0 rgba(255,255,255,0.04); position:relative;
}
.card::before {
  content:''; position:absolute; top:0; left:20px; right:20px; height:1px;
  background:linear-gradient(90deg, transparent, rgba(168,85,247,0.3), rgba(236,72,153,0.25), rgba(249,115,22,0.2), transparent);
}

/* ===== BADGES ===== */
.badge {
  display:inline-flex; align-items:center; gap:6px; padding:4px 12px; border-radius:4px;
  font-size:0.72em; font-weight:700; letter-spacing:1px; text-transform:uppercase;
}
.badge-gold   { background:rgba(245,158,11,0.15); color:#fbbf24; border:1px solid rgba(245,158,11,0.35); }
.badge-red    { background:rgba(239,68,68,0.18); color:#fca5a5; border:1px solid rgba(239,68,68,0.35); }
.badge-blue   { background:rgba(59,130,246,0.22); color:#93c5fd; border:1px solid rgba(59,130,246,0.35); }
.badge-teal   { background:rgba(20,184,166,0.18); color:#5eead4; border:1px solid rgba(20,184,166,0.35); }
.badge-copper { background:rgba(249,115,22,0.18); color:#fdba74; border:1px solid rgba(249,115,22,0.35); }

/* ===== SECTION TITLE ===== */
.section-title {
  font-family:'Cinzel', serif; font-size:1.6em; font-weight:900;
  background:linear-gradient(135deg, #10b981, #06b6d4, #3b82f6);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  letter-spacing:2px; margin-bottom:6px;
  position:relative; display:inline-block;
  filter:drop-shadow(0 0 15px rgba(16,185,129,0.3));
}
.section-title::after {
  content:''; position:absolute; bottom:-6px; left:0; right:0; height:2px;
  background:linear-gradient(90deg, #10b981, #06b6d4, #3b82f6); border-radius:1px;
}
.section-subtitle {
  font-family:'Crimson Pro', serif; font-style:italic;
  color:rgba(232,221,208,0.5); font-size:1.05em; margin-top:14px;
}

/* ===== FORMS ===== */
form { display:flex; flex-direction:column; gap:10px; }
form label {
  font-size:0.75em; text-transform:uppercase; letter-spacing:1.5px;
  color:rgba(168,85,247,0.7); font-weight:700; margin-bottom:-5px;
}
input, select {
  padding:11px 14px; border-radius:8px; border:1px solid var(--border-dim); outline:none;
  font-size:0.97em; font-family:'Rajdhani',sans-serif;
  background:rgba(255,255,255,0.03); color:#e8ddd0; transition:all 0.2s; width:100%;
}
input:focus, select:focus {
  border-color:rgba(168,85,247,0.5); background:rgba(168,85,247,0.05);
  box-shadow:0 0 0 3px rgba(168,85,247,0.1), 0 0 20px rgba(168,85,247,0.15);
}
select option { background:#0f0c10; }
.input-row { display:flex; gap:8px; width:100%; }
.input-row select { flex:1; min-width:0; }

.btn-primary {
  width:100%; padding:13px; border-radius:12px; border:none;
  background:linear-gradient(135deg, #a855f7, #ec4899, #f97316);
  color:#fff; font-weight:800; font-size:1em; font-family:'Rajdhani',sans-serif;
  letter-spacing:1.5px; text-transform:uppercase; cursor:pointer;
  transition:all 0.3s; position:relative; overflow:hidden;
  box-shadow:0 4px 20px rgba(168,85,247,0.4), 0 0 30px rgba(236,72,153,0.25);
  text-shadow:0 2px 4px rgba(0,0,0,0.3);
  z-index:1;
}
.btn-primary::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg, #ec4899, #f97316, #f59e0b);
  opacity:0; transition:opacity 0.3s; z-index:-1;
}
.btn-primary:hover::before { opacity:1; }
.btn-primary::after {
  content:''; position:absolute; top:0; left:-100%; width:100%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent);
  transition:left 0.5s; z-index:-1;
}
.btn-primary:hover::after { left:100%; }
.btn-primary:hover {
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 6px 35px rgba(168,85,247,0.6), 0 0 50px rgba(236,72,153,0.4), 0 0 80px rgba(249,115,22,0.2);
}
.btn-primary:active {
  transform:translateY(-1px) scale(1.01);
}
.btn-secondary {
  padding:10px 18px; border-radius:8px; border:1px solid var(--border-dim);
  background:transparent; color:rgba(232,221,208,0.5); font-weight:600;
  font-family:'Rajdhani',sans-serif; cursor:pointer; transition:all 0.2s;
}
.btn-secondary:hover { border-color:rgba(232,221,208,0.4); color:#e8ddd0; }

/* ===== TOAST ===== */
.toast {
  position:fixed; top:90px; right:20px; z-index:2000;
  background:rgba(6,4,8,0.97); border:1px solid var(--border);
  padding:14px 20px; border-radius:10px; color:#e8ddd0;
  box-shadow:var(--shadow), var(--glow);
  animation:slideInRight 0.3s ease; max-width:360px; font-size:0.92em;
}
@keyframes slideInRight { from{opacity:0;transform:translateX(100px)} to{opacity:1;transform:translateX(0)} }
.toast.success { border-color:var(--teal2); }
.toast.error   { border-color:var(--crimson2); }
.toast.warning { border-color:var(--gold); }

/* ===== MODAL ===== */
.modal {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,0.88); justify-content:center; align-items:center;
  z-index:999; backdrop-filter:blur(14px);
}
.modal.show { display:flex; }
.modal-box {
  background:rgba(7,5,9,0.99); border:1px solid rgba(168,85,247,0.3);
  padding:40px 42px; border-radius:18px;
  box-shadow:0 0 80px rgba(0,0,0,0.9), 0 0 40px rgba(168,85,247,0.2);
  text-align:center; width:390px; max-width:94vw;
  max-height:85vh; overflow-y:auto;
  animation:mIn 0.3s cubic-bezier(0.34,1.56,0.64,1); position:relative;
}
.modal-box::before {
  content:''; position:absolute; top:0; left:20%; right:20%; height:1px;
  background:linear-gradient(90deg, transparent, #a855f7, #ec4899, transparent);
}
@keyframes mIn { from{opacity:0;transform:scale(0.88) translateY(20px)} to{opacity:1;transform:scale(1) translateY(0)} }
.modal-box h2 {
  font-family:'Cinzel',serif; 
  background:linear-gradient(135deg, #a855f7, #ec4899, #f97316);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  font-size:1.45em;
  margin-bottom:20px; letter-spacing:1px;
  filter:drop-shadow(0 0 10px rgba(168,85,247,0.3));
}
.modal-box input { display:block; width:100%; margin-bottom:9px; text-align:center; }
.modal-box .btn-primary { width:100%; margin-bottom:7px; }
.modal-box .btn-secondary { width:100%; }

/* ===== FLOATING SOCIAL ===== */
.floating-social { position:fixed; right:28px; bottom:28px; display:flex; flex-direction:column; gap:12px; z-index:99; }
.floating-btn {
  width:52px; height:52px; border-radius:12px;
  display:flex; align-items:center; justify-content:center;
  text-decoration:none; font-size:1.3em; color:#fff;
  box-shadow:0 4px 20px rgba(0,0,0,0.5); transition:all 0.3s; border:1px solid rgba(255,255,255,0.08);
}
.floating-btn:hover { transform:translateY(-4px) scale(1.08); }
.floating-btn.whatsapp { background:linear-gradient(135deg, #25D366, #128C7E); }
.floating-btn.youtube  { background:linear-gradient(135deg, #FF0000, #900000); }
.floating-btn.discord  { background:linear-gradient(135deg, #5865F2, #3a47c5); }

/* ===== FOOTER ===== */
footer {
  background:rgba(4,3,6,0.98); backdrop-filter:blur(20px);
  border-top:1px solid var(--border); padding:36px 48px; margin-top:60px;
  position:relative; z-index:10;
}
footer::before {
  content:''; position:absolute; top:0; left:5%; right:5%; height:1px;
  background:linear-gradient(90deg, transparent, #a855f7, #ec4899, #f97316, #10b981, #06b6d4, transparent);
  opacity:0.3;
}
.footer-content { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:center; }
.footer-logo { 
  font-family:'Cinzel Decorative', serif; font-size:1.2em; font-weight:700; 
  background:linear-gradient(135deg, #a855f7, #ec4899, #f97316);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  background-clip:text;
  letter-spacing:2px; margin-bottom:6px; 
  filter:drop-shadow(0 0 10px rgba(168,85,247,0.3));
}
.footer-text { color:rgba(232,221,208,0.4); font-size:0.82em; line-height:1.6; }
.footer-section { text-align:center; }
.footer-section.left { text-align:left; }
.footer-section.right { text-align:right; }
.footer-social { display:flex; gap:12px; justify-content:flex-end; }
.footer-social-btn {
  width:38px; height:38px; border-radius:8px;
  display:flex; align-items:center; justify-content:center;
  background:rgba(168,85,247,0.08); border:1px solid rgba(168,85,247,0.25);
  color:rgba(168,85,247,0.8); text-decoration:none; font-size:1em; transition:all 0.3s;
}
.footer-social-btn:hover { 
  background:linear-gradient(135deg, #a855f7, #ec4899); 
  color:#fff; border-color:#a855f7; transform:translateY(-3px); 
  box-shadow:0 4px 15px rgba(168,85,247,0.4);
}
.footer-copyright { text-align:center; color:rgba(232,221,208,0.28); font-size:0.75em; margin-top:16px; padding-top:14px; border-top:1px solid var(--border-dim); }
.footer-links { display:flex; gap:20px; justify-content:center; flex-wrap:wrap; }
.footer-links a { color:rgba(232,221,208,0.4); text-decoration:none; font-size:0.8em; font-weight:600; letter-spacing:1px; text-transform:uppercase; transition:color 0.2s; }
.footer-links a:hover { color:#a855f7; }

/* ===== RESPONSIVE ===== */
@media(max-width:1024px) { header { padding:0 24px; grid-template-columns:180px 1fr 180px; } }
@media(max-width:768px) {
  header { padding:0 16px; height:60px; grid-template-columns:1fr auto auto; }
  .logo { font-size:1.2em; }
  .mobile-menu-btn { display:block; }
  nav { display:none; }
  main { padding:76px 18px 50px; }
  .page-hero h1 { font-size:2em; }
  .card { padding:20px 18px; }
  .footer-content { grid-template-columns:1fr; gap:24px; }
  .footer-section.left, .footer-section.right { text-align:center; }
  .footer-social { justify-content:center; }
  footer { padding:24px 18px; }
  .floating-social { right:14px; bottom:14px; }
  .floating-btn { width:46px; height:46px; font-size:1.1em; }
}
