:root {
    --hq-ink: #0f172a;
    --hq-muted: #64748b;
    --hq-line: #e2e8f0;
    --hq-blue: #2563eb;
    --hq-indigo: #4f46e5;
    --hq-cyan: #06b6d4;
    --hq-green: #10b981;
    --hq-surface: #ffffff;
    --hq-soft: #f8fafc;
    --hq-radius: 18px;
}

html { scroll-behavior: smooth; }
body { color: var(--hq-ink); }

#main-nav {
    background: rgba(255, 255, 255, .92) !important;
    border-bottom-color: rgba(226, 232, 240, .9) !important;
    box-shadow: 0 4px 24px rgba(15, 23, 42, .06) !important;
}
#nav-container { min-height: 72px; }
#main-nav a { transition: color .2s ease, background-color .2s ease, transform .2s ease; }
#main-nav a:hover { transform: translateY(-1px); }

main > section:first-child,
main > div:first-child { isolation: isolate; }

.hq-glass {
    background: rgba(255,255,255,.72);
    border: 1px solid rgba(255,255,255,.65);
    box-shadow: 0 20px 50px rgba(15,23,42,.12);
    backdrop-filter: blur(18px);
}
.hq-card {
    border: 1px solid var(--hq-line);
    border-radius: var(--hq-radius);
    background: var(--hq-surface);
    box-shadow: 0 12px 35px rgba(15,23,42,.06);
    transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.hq-card:hover { transform: translateY(-4px); box-shadow: 0 18px 45px rgba(37,99,235,.12); border-color: #bfdbfe; }
.hq-gradient-text { background: linear-gradient(110deg, #2563eb, #4f46e5 45%, #06b6d4); -webkit-background-clip: text; background-clip: text; color: transparent; }
.hq-section-label { color: var(--hq-blue); text-transform: uppercase; letter-spacing: .14em; font-size: .72rem; font-weight: 800; }

footer { margin-top: 0 !important; }
footer a { transition: color .2s ease, transform .2s ease; }
footer a:hover { transform: translateX(2px); }

input:not([type="checkbox"]):not([type="radio"]), select, textarea {
    border-radius: 12px !important;
    border-color: #cbd5e1 !important;
    transition: border-color .2s ease, box-shadow .2s ease;
}
input:not([type="checkbox"]):not([type="radio"]):focus, select:focus, textarea:focus {
    border-color: #60a5fa !important;
    box-shadow: 0 0 0 4px rgba(59,130,246,.12) !important;
    outline: none !important;
}
button, a[class*="bg-primary"], a[class*="bg-blue"] { transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease; }
button:hover, a[class*="bg-primary"]:hover, a[class*="bg-blue"]:hover { transform: translateY(-1px); }

body > .flex.h-screen > aside,
.admin-sidebar { box-shadow: 10px 0 30px rgba(15,23,42,.08); }
body > .flex.h-screen > .relative.flex,
.admin-content { background: linear-gradient(180deg, #f8fafc 0%, #f1f5f9 100%); }
.hq-portal h1, .hq-portal h2, .hq-portal h3, .hq-portal h4 { letter-spacing: -.03em; }
.hq-portal .bg-primary { box-shadow: 0 8px 20px rgba(37,99,235,.18); }
.hq-portal .rounded-2xl, .hq-portal .rounded-3xl { box-shadow: 0 10px 30px rgba(15,23,42,.05); }
.hq-stat-card { transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease; }
.hq-stat-card:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(37,99,235,.10); border-color: #bfdbfe; }
.hq-stat-icon { width: 42px; height: 42px; border-radius: 13px; display: inline-flex; align-items: center; justify-content: center; }

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
