:root{--color-primary: #4f46e5;--color-secondary: #f8fafc;--color-surface: #ffffff;--color-background: #f1f5f9;--color-text: #0f172a;--color-text-muted: #64748b;--color-border: #e2e8f0}.bg-surface{background-color:var(--color-surface)}.bg-background{background-color:var(--color-background)}.bg-secondary{background-color:var(--color-secondary)}.text-text{color:var(--color-text)}.text-text-muted{color:var(--color-text-muted)}body{background-color:var(--color-background);color:var(--color-text);-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font-family:Plus Jakarta Sans,sans-serif}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}*{transition:background-color .2s ease-in-out,border-color .2s ease-in-out,color .2s ease-in-out,transform .1s ease-out}button:active,.active-press:active{transform:scale(.97)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes springPop{0%{transform:scale(.95) translateY(10px);opacity:0}70%{transform:scale(1.02) translateY(-2px);opacity:1}to{transform:scale(1) translateY(0);opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideInRight{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(1.05);opacity:0}to{transform:scale(1);opacity:1}}.glass{background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.3)}.dark .glass{background:#0f172ab3;border:1px solid rgba(255,255,255,.1)}.glass-premium{background:linear-gradient(135deg,#fff6,#ffffff1a);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border);box-shadow:0 8px 32px #0000000d}.dark .glass-premium{background:linear-gradient(135deg,#0f172a99,#0f172a4d);border:1px solid rgba(255,255,255,.05);box-shadow:0 8px 32px #0000004d}.stagger-1{animation:springPop .5s cubic-bezier(.175,.885,.32,1.275) .1s both}.stagger-2{animation:springPop .5s cubic-bezier(.175,.885,.32,1.275) .2s both}.stagger-3{animation:springPop .5s cubic-bezier(.175,.885,.32,1.275) .3s both}.stagger-4{animation:springPop .5s cubic-bezier(.175,.885,.32,1.275) .4s both}.stagger-5{animation:springPop .5s cubic-bezier(.175,.885,.32,1.275) .5s both}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);background-size:200% 100%;animation:shimmer 2s infinite linear}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;display:flex;align-items:flex-end;justify-content:center;padding:0;background-color:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:fadeIn .2s ease-out forwards}@media(min-width:768px){.modal-overlay{align-items:center;padding:1rem}}.modal-content{background-color:var(--color-surface);width:100%;border-top-left-radius:2.5rem;border-top-right-radius:2.5rem;padding:1.5rem 1.5rem 3rem;box-shadow:0 25px 50px -12px #00000040;border:1px solid var(--color-border);overflow-y:auto;max-height:95vh;animation:springPop .4s cubic-bezier(.175,.885,.32,1.275) forwards}@media(min-width:768px){.modal-content{max-width:36rem;border-radius:3rem;padding:2.5rem}}.form-group{display:flex;flex-direction:column;gap:.375rem;width:100%}.form-label{font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);padding-left:.25rem}.form-group input,.form-group select,.form-group textarea{height:3.5rem;background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:1rem;padding-left:1.25rem;padding-right:1.25rem;font-size:.875rem;font-weight:700;color:var(--color-text);outline:none;width:100%;box-sizing:border-box;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary)}.input-with-icon{position:relative;display:flex;align-items:center;width:100%}.input-icon-inner{position:absolute;left:1.25rem;color:var(--color-text-muted);pointer-events:none;z-index:10}.input-with-icon input,.input-with-icon select{height:3.5rem;background-color:var(--color-secondary);border:2px solid var(--color-border);border-radius:1rem;padding-left:3.5rem;padding-right:1.25rem;font-size:.875rem;font-weight:700;color:var(--color-text);outline:none;width:100%;box-sizing:border-box;transition:all .2s}.input-with-icon input:focus,.input-with-icon select:focus{border-color:var(--color-primary)}
