:root{--brand-50:#eff6ff;--brand-500:#3b82f6;--brand-600:#2563eb;--brand-900:#1e3a8a;--glass-bg:rgba(255,255,255,0.2);--glass-border:rgba(255,255,255,0.3);--glass-shadow:0 8px 32px 0 rgba(31,38,135,0.15);--radius-sm:0.375rem;--radius-md:0.75rem;--radius-lg:1.5rem;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem}*,*::before,*::after{box-sizing:border-box}html,body{overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:rgba(15,23,42,0.15);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:rgba(15,23,42,0.3)}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(15,23,42,0.15) transparent}::selection{background-color:var(--brand-600);color:#fff}:focus-visible{outline:3px solid #0f172a!important;outline-offset:2px!important}h1,h2,h3,h4,h5,h6,p,span,a,label,li,button,input,textarea{word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;hyphens:auto}img,video,canvas,iframe,svg,picture{max-width:100%;height:auto;display:block}.hidden{display:none!important}

/* === Components, Animations & UX Defenses === */

.bg-glass-light{background:linear-gradient(135deg,rgba(255,255,255,0.45),rgba(255,255,255,0.15));backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.4)}.shadow-glass{box-shadow:0 8px 32px 0 rgba(31,38,135,0.15),inset 0 0 0 1px rgba(255,255,255,0.2)}@keyframes skeleton{0%{background-position:100% 50%}100%{background-position:0 50%}}.animate-skeleton{background:linear-gradient(90deg,rgba(255,255,255,0.1) 25%,rgba(255,255,255,0.4) 50%,rgba(255,255,255,0.1) 75%);background-size:400% 100%;animation:skeleton 1.5s ease-in-out infinite}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .3s ease-out forwards}@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .4s cubic-bezier(0.16,1,0.3,1) forwards}@keyframes scaleBounce{0%{transform:scale(0.95)}50%{transform:scale(1.03)}100%{transform:scale(1)}}.animate-scale-bounce{animation:scaleBounce .3s cubic-bezier(0.175,0.885,0.32,1.275) forwards}.dark .bg-glass-light{background:linear-gradient(135deg,rgba(15,23,42,0.65),rgba(15,23,42,0.25));border-color:rgba(255,255,255,0.1)}.dark .shadow-glass{box-shadow:0 8px 32px 0 rgba(0,0,0,0.4),inset 0 0 0 1px rgba(255,255,255,0.05)}.dark input,.dark textarea{background:rgba(15,23,42,0.4);border-color:rgba(255,255,255,0.1);color:#f8fafc}.dark input:focus,.dark textarea:focus{background:rgba(15,23,42,0.7);border-color:#3b82f6;box-shadow:0 0 0 2px rgba(59,130,246,0.25)}.z-bg{z-index:5}.z-sticky{z-index:25}.z-fab{z-index:35}.z-overlay{z-index:42}.z-modal{z-index:48}.z-toast{z-index:9999!important}.overlay-hidden{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.overlay-active{opacity:1;pointer-events:auto;visibility:visible}button,a,[role="button"],input[type="submit"]{cursor:pointer;transition:transform .15s cubic-bezier(0.4,0,0.2,1),box-shadow .15s ease}button:active,a:active,[role="button"]:active{transform:scale(0.96)}button:disabled,a[disabled]{cursor:not-allowed;opacity:0.6;transform:none!important;pointer-events:none}input:focus,textarea:focus{box-shadow:0 0 15px rgba(59,130,246,0.15),inset 0 0 0 1px rgba(255,255,255,0.5)}