﻿/* ===== Base Reset & Globals ===== */
*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{height:100%;font-family:var(--font-sans);background:var(--bg);color:var(--text);overflow:hidden;font-size:14px}
input,textarea,select,button{font-family:inherit;font-size:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.08);border-radius:5px}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,0.15)}

/* Background Effects */
.bg-mesh{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.bg-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:0.15;animation:orbFloat 20s ease-in-out infinite}
.bg-orb-1{width:500px;height:500px;background:radial-gradient(circle,#6366f1,transparent 70%);top:-10%;left:-10%;animation-duration:25s}
.bg-orb-2{width:400px;height:400px;background:radial-gradient(circle,#a78bfa,transparent 70%);bottom:-10%;right:-10%;animation-duration:30s;animation-delay:-5s}
.bg-orb-3{width:300px;height:300px;background:radial-gradient(circle,#818cf8,transparent 70%);top:50%;left:50%;transform:translate(-50%,-50%);animation-duration:22s;animation-delay:-10s}
@keyframes orbFloat{0%,100%{transform:translate(0,0) scale(1)}25%{transform:translate(30px,-40px) scale(1.05)}50%{transform:translate(-20px,30px) scale(0.95)}75%{transform:translate(40px,20px) scale(1.02)}}
.bg-noise{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:0.03}
.bg-glow{position:fixed;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(99,102,241,0.08),transparent 70%);pointer-events:none;z-index:1;transform:translate(-50%,-50%);transition:left .3s,top .3s}
@keyframes appIn{from{opacity:0}to{opacity:1}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes lightboxIn{from{transform:scale(0.9);opacity:0}to{transform:scale(1);opacity:1}}