/* GearVN Dashboard Theme v1.0 — Shared across all pages */
body{background:#0f1117;color:#e2e8f0;font-family:'Segoe UI',system-ui,sans-serif;margin:0}
.gradient-text{background:linear-gradient(135deg,var(--accent,#60a5fa),#a78bfa,#f472b6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.card{background:#1e2130;border:1px solid #2d3748;border-radius:12px;transition:transform .2s,box-shadow .2s}
.card:hover{transform:translateY(-2px);box-shadow:0 4px 20px rgba(96,165,250,0.1)}
.card-glow{box-shadow:0 0 20px rgba(96,165,250,0.1)}
.nav-link{transition:all 0.2s;border-bottom:2px solid transparent}
.nav-link:hover,.nav-link.active{border-bottom-color:var(--accent,#60a5fa);color:var(--accent,#60a5fa)}
.progress-bar{height:8px;border-radius:4px;background:#2d3748}
.progress-fill{height:100%;border-radius:4px;transition:width 0.8s ease}
.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600}
.milestone-line{position:relative}
.milestone-line::before{content:'';position:absolute;left:16px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--accent,#60a5fa),#a78bfa)}
.pulse{animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:0.5}}
::-webkit-scrollbar{width:6px;height:6px}
::-webkit-scrollbar-track{background:#1e2130}
::-webkit-scrollbar-thumb{background:#4a5568;border-radius:3px}
@media(max-width:767px){body{padding-bottom:70px}}
