.res-scope{--bg-base:#0b0b14;--bg-raised:#141425;--bg-elevated:#1c1c33;--border-subtle:rgba(139,92,246,0.14);--border-strong:rgba(139,92,246,0.35);--accent-300:#c4b5fd;--accent-500:#8b5cf6;--accent-600:#7c3aed;--accent-glow:rgba(139,92,246,0.25);--text-primary:#f4f2ff;--text-secondary:#a7a3c7;--text-muted:#6e6a8f;--font-display:"Sora","Space Grotesk",system-ui,sans-serif;--font-body:"Inter",system-ui,-apple-system,sans-serif;--radius-lg:20px;--radius-md:14px;--radius-sm:10px;--shadow-card:0 8px 32px rgba(0,0,0,0.35);--shadow-glow:0 0 40px var(--accent-glow);font-family:var(--font-body)}.res-atmosphere{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse 80% 50% at 50% -10%,rgba(124,58,237,.18),transparent)}@keyframes res-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.res-fade-up{animation:res-fade-up .25s ease-out both}.res-fade-up-1{animation-delay:60ms}.res-fade-up-2{animation-delay:.12s}.res-card{background:var(--bg-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:transform .2s ease-out,border-color .2s ease-out,box-shadow .2s ease-out;position:relative;overflow:hidden}.res-card-hover:hover,a.res-card:hover,button.res-card:hover{border-color:var(--border-strong);transform:translateY(-4px);box-shadow:var(--shadow-card),var(--shadow-glow)}a.res-card:active,button.res-card:active{transform:translateY(-4px) scale(.98)}.res-card:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(196,181,253,.09) 50%,transparent 60%);transform:translateX(-120%);pointer-events:none}.res-card:hover:after{transform:translateX(120%);transition:transform .6s ease-out}.res-card .res-cover{transition:transform .2s ease-out}.res-card:hover .res-cover{transform:scale(1.04)}.res-cta-arrow{transition:transform .2s ease-out;display:inline-flex}.res-card:hover .res-cta-arrow{transform:translateX(4px)}.res-tilt-wrap{perspective:1000px}.res-tilt{transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .2s ease-out;transform-style:preserve-3d}.res-btn-primary{background:linear-gradient(135deg,#7c3aed,#8b5cf6);border-radius:var(--radius-md);font-weight:600;transition:filter .2s ease-out,transform .15s ease-out,opacity .2s}.res-btn-primary:hover:not(:disabled){filter:brightness(1.12);transform:scale(1.01)}.res-btn-primary:active:not(:disabled){transform:scale(.98)}.res-btn-primary:disabled{opacity:.7}.res-input{background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);transition:border-color .2s,box-shadow .2s}.res-input:focus{outline:none;border-color:var(--border-strong);box-shadow:0 0 0 3px rgba(139,92,246,.15)}.res-input::-moz-placeholder{color:var(--text-muted)}.res-input::placeholder{color:var(--text-muted)}.res-otp-box{width:48px;height:56px;text-align:center;font-size:22px;font-weight:700;background:var(--bg-base);border:1px solid var(--border-subtle);border-radius:var(--radius-sm);color:var(--text-primary);caret-color:var(--accent-500);transition:border-color .2s,box-shadow .2s}.res-otp-box:focus{outline:none;border-color:var(--accent-500);box-shadow:0 0 0 3px rgba(139,92,246,.2),0 0 24px rgba(139,92,246,.25)}@media (max-width:400px){.res-otp-box{width:42px;height:52px;font-size:20px}}@keyframes res-pulse{0%,to{background-color:var(--bg-raised)}50%{background-color:var(--bg-elevated)}}.res-skeleton{animation:res-pulse 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.res-fade-mask{-webkit-mask-image:linear-gradient(180deg,#000 55%,transparent);mask-image:linear-gradient(180deg,#000 55%,transparent)}.res-scope a:focus-visible,.res-scope button:focus-visible,.res-scope input:focus-visible{outline:2px solid var(--accent-500);outline-offset:2px}@keyframes res-pop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08);opacity:1}to{transform:scale(1);opacity:1}}.res-pop{animation:res-pop .3s ease-out both}@media (prefers-reduced-motion:reduce){.res-fade-up,.res-fade-up-1,.res-fade-up-2{animation:none}.res-card,.res-card .res-cover,.res-tilt{transition:none}.res-card:hover{transform:none}.res-card:after{display:none}.res-cta-arrow{transition:none}.res-skeleton{animation-duration:3s}}