:root { --logo-blue:#0002EF; }
/* Glow background */
.glows{position:fixed; inset:0; pointer-events:none; z-index:0;}
.glow{position:absolute; filter:blur(70px); opacity:.22; border-radius:9999px;}
.glow.pink{background:#f472b6; top:-120px; left:-100px; width:340px; height:340px;}
.glow.cyan{background:#22d3ee; top:160px; right:-140px; width:360px; height:360px; opacity:.18;}
.glow.amber{background:#fbbf24; bottom:40px; left:60px; width:300px; height:300px; opacity:.14; filter:blur(80px);}
.card-soft{box-shadow:0 10px 30px rgba(2,6,23,.10), 0 2px 8px rgba(2,6,23,.06);}
/* Header nav + CTA hovers */
.nav a{transition:all .2s ease-in-out}
.nav a:not(.active):hover{background:var(--logo-blue)!important;color:#fff!important;border-color:var(--logo-blue)!important;}
.btn-cta{transition:all .2s ease-in-out}
.btn-cta:hover{background:var(--logo-blue)!important;color:#fff!important;border-color:var(--logo-blue)!important;}
/* Tables/forms for admin too */
.table{width:100%; border-collapse:separate; border-spacing:0}
.table th,.table td{padding:.65rem .75rem; border-bottom:1px solid rgba(15,23,42,.08)}
.table th{text-align:left; font-weight:700; color:#0f172a; font-size:.9rem}
input[type="text"], input[type="email"], input[type="password"], input[type="url"], input[type="date"], input[type="tel"]{border:1px solid rgba(15,23,42,.15); border-radius:.6rem; padding:.55rem .7rem; width:100%}
textarea{border:1px solid rgba(15,23,42,.15); border-radius:.6rem; padding:.55rem .7rem; width:100%; min-height:130px}