@tailwind base;@tailwind components;@tailwind utilities;:root{--foreground-rgb:0,0,0;--background-start-rgb:214,219,220;--background-end-rgb:255,255,255}@media (prefers-color-scheme:dark){:root{--foreground-rgb:255,255,255;--background-start-rgb:0,0,0;--background-end-rgb:0,0,0}}*,body,html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Roboto,Noto Sans,sans-serif!important}body{background:linear-gradient(135deg,#1a1a40,#2d0b3a 25%,#4a1b5a 50%,#2d0b3a 75%,#1a1a40);color:#fff;min-height:100vh;overflow-x:clip;position:relative}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 15% 25%,rgba(255,200,100,.15) 0,transparent 8%),radial-gradient(circle at 35% 40%,hsla(0,100%,79%,.12) 0,transparent 6%),radial-gradient(circle at 60% 30%,rgba(200,255,200,.1) 0,transparent 7%),radial-gradient(circle at 80% 60%,rgba(255,100,200,.08) 0,transparent 5%),radial-gradient(circle at 25% 70%,rgba(150,200,255,.1) 0,transparent 6%),radial-gradient(circle at 50% 50%,hsla(0,0%,100%,.02) 0,transparent 70%);pointer-events:none;z-index:-1;animation:glow-mushrooms 8s ease-in-out infinite}@keyframes glow-mushrooms{0%,to{opacity:.8}50%{opacity:1}}body:after{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 20% 35%,hsla(0,0%,100%,.05) 0,transparent 15%),radial-gradient(ellipse at 70% 25%,rgba(255,200,255,.04) 0,transparent 12%),radial-gradient(ellipse at 50% 80%,rgba(200,255,255,.03) 0,transparent 18%);pointer-events:none;z-index:-1;animation:subtle-flashes 12s ease-in-out infinite}@keyframes subtle-flashes{0%,to{opacity:.2}33%{opacity:.4}66%{opacity:.3}}body.light-bg{background:linear-gradient(135deg,#1a1a40,#2d0b3a 25%,#4a1b5a 50%,#2d0b3a 75%,#1a1a40),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cdefs%3E%3CradialGradient id='mushroom1' cx='20%25' cy='30%25' r='5%25'%3E%3Cstop offset='0%25' stop-color='rgba(255,100,100,0.3)'/%3E%3Cstop offset='100%25' stop-color='transparent'/%3E%3C/radialGradient%3E%3CradialGradient id='mushroom2' cx='80%25' cy='60%25' r='4%25'%3E%3Cstop offset='0%25' stop-color='rgba(100,255,100,0.2)'/%3E%3Cstop offset='100%25' stop-color='transparent'/%3E%3C/radialGradient%3E%3C/defs%3E%3Ccircle cx='20' cy='30' r='3' fill='url(%23mushroom1)'/%3E%3Ccircle cx='80' cy='60' r='2.5' fill='url(%23mushroom2)'/%3E%3C/svg%3E")}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px rgba(255,0,204,.3);transform:scale(1)}50%{box-shadow:0 0 30px rgba(255,0,204,.6);transform:scale(1.02)}}@keyframes progressFill{0%{width:0}to{width:var(--progress-width)}}@keyframes successPulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(40,167,69,.7)}70%{transform:scale(1.05);box-shadow:0 0 0 10px rgba(40,167,69,0)}to{transform:scale(1);box-shadow:0 0 0 0 rgba(40,167,69,0)}}@layer utilities{.text-balance{text-wrap:balance}.animate-bounce{animation:bounce 2s infinite}.animate-pulse-glow{animation:pulse-glow 2s infinite}.animate-success{animation:successPulse .6s ease-out}}input::placeholder{color:hsla(0,0%,100%,.7)!important;opacity:1}input:focus::placeholder{color:hsla(0,0%,100%,.9)!important}