/* ═══════════════════════════════════════════════
   RUNNING JACK ICT ACADEMY — SHARED STYLES
   Brand: Pink #e8186d | Gold #d4920a | Violet #7c2d8e
═══════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@300;400;500;600;700&display=swap');

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{
  --pink:#e8186d; --rose:#c0003a; --gold:#d4920a;
  --violet:#7c2d8e; --violet2:#9b3daf;
  --green:#10b981;
  --surface:#0a0c1a; --card:#10132b; --card2:#141729;
  --line:rgba(255,255,255,.07); --text:#e2e4f0; --muted:rgba(226,228,240,.45);
  --fd:'DM Serif Display','Georgia','Times New Roman',serif; --fb:'DM Sans','Inter','Segoe UI','Helvetica Neue',Arial,sans-serif;
  --ease:cubic-bezier(.22,1,.36,1);
}
[data-theme="light"]{
  --surface:#f0ece5; --card:#fff; --card2:#f8f5f0;
  --line:rgba(0,0,0,.1); --text:#12141f; --muted:rgba(18,20,31,.6);
}

/* ── LIGHT MODE: Global text visibility fixes ── */
[data-theme="light"] body { color: #12141f; }
[data-theme="light"] h1,[data-theme="light"] h2,[data-theme="light"] h3,
[data-theme="light"] h4,[data-theme="light"] h5,[data-theme="light"] h6 { color: #12141f; }
[data-theme="light"] p,[data-theme="light"] span,[data-theme="light"] li,
[data-theme="light"] td,[data-theme="light"] th,[data-theme="light"] label,
[data-theme="light"] small { color: inherit; }

/* Cards & surfaces */
[data-theme="light"] .card,[data-theme="light"] [class*="card"],
[data-theme="light"] .wid,[data-theme="light"] .stat-card,
[data-theme="light"] .glass { background: #fff; color: #12141f; }

/* Tables */
[data-theme="light"] .table th { color: rgba(18,20,31,.55); background: rgba(0,0,0,.03); }
[data-theme="light"] .table td { color: #12141f; }
[data-theme="light"] .table tr:hover td { background: rgba(0,0,0,.025); }

/* Muted / secondary text - ensure readability */
[data-theme="light"] .muted,[data-theme="light"] [class*="muted"],
[data-theme="light"] .text-muted,[data-theme="light"] .sub,
[data-theme="light"] .hint,[data-theme="light"] .caption { color: rgba(18,20,31,.6); }

/* Sidebar section labels */
[data-theme="light"] .sidebar-section { color: rgba(18,20,31,.45); }

/* Nav links in sidebar */
[data-theme="light"] .nav-link { color: rgba(18,20,31,.6); }
[data-theme="light"] .nav-link:hover { color: #12141f; background: rgba(0,0,0,.05); }
[data-theme="light"] .nav-link.active { color: var(--pink); background: rgba(232,24,109,.1); }

/* Sidebar footer user info */
[data-theme="light"] .su-name { color: #12141f; }
[data-theme="light"] .su-role { color: rgba(18,20,31,.55); }

/* Page titles and headings */
[data-theme="light"] .ptitle,[data-theme="light"] .page-title { color: #12141f; }

/* Widget numbers */
[data-theme="light"] .wid-n { color: #12141f; }
[data-theme="light"] .wid-label { color: rgba(18,20,31,.6); }

/* Card titles */
[data-theme="light"] .card-title { color: #12141f; }

/* Form labels and inputs */
[data-theme="light"] .field label { color: rgba(18,20,31,.65); }
[data-theme="light"] .field input,[data-theme="light"] .field select,
[data-theme="light"] .field textarea { color: #12141f; background: rgba(0,0,0,.035); border-color: rgba(0,0,0,.12); }

/* Mobile nav items */
[data-theme="light"] .mob-bn-item { color: rgba(18,20,31,.55); }
[data-theme="light"] .mob-bn-item:hover { color: #12141f; }
[data-theme="light"] .mob-bn-item.active { color: var(--pink); }

/* More tray */
[data-theme="light"] .mob-more-tray-title { color: rgba(18,20,31,.5); }
[data-theme="light"] .mob-more-item { color: rgba(18,20,31,.6); background: rgba(0,0,0,.03); border-color: rgba(0,0,0,.08); }

/* Drawer nav */
[data-theme="light"] .mob-drawer-brand span { color: #12141f; }

/* Theme label */
[data-theme="light"] .theme-label { color: rgba(18,20,31,.55); }

/* Aurora: hide / tone down in light mode */
[data-theme="light"] #aurora { opacity: .18; }
[data-theme="light"] .grain { opacity: .01; }
html{scroll-behavior:smooth;}
body{font-family:var(--fb);background:var(--surface);color:var(--text);cursor:none;transition:background .4s,color .4s;}
*,a,button,input,select,textarea{cursor:none!important;}
::-webkit-scrollbar{width:4px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:var(--pink);border-radius:4px;}

/* CURSOR */
#dot{position:fixed;width:9px;height:9px;border-radius:50%;background:var(--pink);pointer-events:none;z-index:9999;translate:-50% -50%;box-shadow:0 0 14px rgba(232,24,109,.8);will-change:left,top;transition:width .2s var(--ease),height .2s var(--ease),background .2s;}
#ring{position:fixed;width:34px;height:34px;border-radius:50%;border:1.5px solid rgba(232,24,109,.4);pointer-events:none;z-index:9998;translate:-50% -50%;transition:width .3s var(--ease),height .3s var(--ease),border-color .25s;will-change:left,top;}
body.hov #dot{width:42px;height:42px;background:rgba(232,24,109,.1);box-shadow:none;}
body.hov #ring{width:58px;height:58px;border-color:var(--pink);}

/* AURORA */
#aurora{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.55;}
.grain{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.022;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='f'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23f)'/%3E%3C/svg%3E");}

/* SHARED COMPONENTS */
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 32px;border-radius:12px;border:none;font-family:var(--fb);font-size:.9rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--pink),var(--rose));box-shadow:0 6px 24px rgba(232,24,109,.35);position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s;}
.btn-primary::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.15),transparent 55%);}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(232,24,109,.5);}
.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.03);font-family:var(--fb);font-size:.9rem;font-weight:500;color:var(--text);transition:all .25s;}
[data-theme="light"] .btn-ghost{background:rgba(0,0,0,.04);color:#12141f;}
.btn-ghost:hover{border-color:var(--pink);color:var(--pink);background:rgba(232,24,109,.05);}

.field{margin-bottom:18px;}
.field label{display:block;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1.8px;color:var(--muted);margin-bottom:8px;}
.field input,.field select,.field textarea{width:100%;padding:13px 16px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);font-family:var(--fb);font-size:.9rem;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;-webkit-appearance:none;}
[data-theme="light"] .field input,[data-theme="light"] .field select,[data-theme="light"] .field textarea{background:rgba(0,0,0,.03);}
.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(124,45,142,.65);box-shadow:0 0 0 3px rgba(124,45,142,.14);background:rgba(124,45,142,.04);}
.field input::placeholder,.field textarea::placeholder{color:rgba(226,228,240,.3);}
[data-theme="light"] .field input::placeholder,[data-theme="light"] .field textarea::placeholder{color:rgba(18,20,31,.35);}

.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;}
.badge-pink{background:rgba(232,24,109,.1);color:var(--pink);border:1px solid rgba(232,24,109,.22);}
.badge-gold{background:rgba(212,146,10,.1);color:var(--gold);border:1px solid rgba(212,146,10,.2);}
.badge-violet{background:rgba(124,45,142,.1);color:var(--violet2);border:1px solid rgba(124,45,142,.22);}
.badge-green{background:rgba(16,185,129,.1);color:var(--green);border:1px solid rgba(16,185,129,.2);}
.badge-dot{width:5px;height:5px;border-radius:50%;background:currentColor;}

.rv{opacity:0;transform:translateY(28px);transition:opacity .7s var(--ease),transform .7s var(--ease);}
.rv.in{opacity:1;transform:translateY(0);}
.rv-1{transition-delay:.08s;}.rv-2{transition-delay:.16s;}.rv-3{transition-delay:.24s;}.rv-4{transition-delay:.32s;}

/* THEME TOGGLE */
.theme-btn{width:44px;height:24px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.04);position:relative;}
[data-theme="light"] .theme-btn{background:rgba(0,0,0,.05);}
.t-knob{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--rose));transition:transform .4s var(--ease);display:flex;align-items:center;justify-content:center;}
[data-theme="light"] .t-knob{transform:translateX(20px);}
.t-knob svg{width:9px;height:9px;stroke:#fff;fill:none;stroke-width:2.5;}
