*{margin:0;padding:0;box-sizing:border-box}:root{--sakura-primary: #E91E63;--sakura-light: #F48FB1;--sakura-dark: #C2185B;--sakura-secondary: #9C27B0;--sakura-accent: #FF4081;--bg-dark: #0a0a1a;--bg-darker: #1a1a2e;--bg-card: #16213e;--text-primary: #ffffff;--text-secondary: rgba(255, 255, 255, .7)}html{scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-dark);color:var(--text-primary);overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--sakura-primary),var(--sakura-secondary));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--sakura-light),var(--sakura-primary))}.sakura-petals{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.petal{position:absolute;background:linear-gradient(135deg,#F48FB1,#E91E63);border-radius:100% 0;opacity:.6;animation:sakura-fall linear infinite;filter:drop-shadow(0 0 8px rgba(233,30,99,.5))}@keyframes sakura-fall{0%{transform:translateY(-10vh) rotate(0) translate(0) scale(.8);opacity:0}10%{opacity:.8}50%{transform:translateY(50vh) rotate(360deg) translate(50px) scale(1)}90%{opacity:.6}to{transform:translateY(110vh) rotate(720deg) translate(100px) scale(.8);opacity:0}}.hero-section{position:relative;background:linear-gradient(135deg,#1a1a2e 0%,#16213e 50%,#2d1b4e 100%);overflow:hidden}.hero-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(233,30,99,.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(156,39,176,.15) 0%,transparent 50%);pointer-events:none}.hero-section:after{content:"";position:absolute;top:-50%;right:-20%;width:800px;height:800px;background:radial-gradient(circle,rgba(233,30,99,.1) 0%,transparent 70%);animation:hero-glow 8s ease-in-out infinite;pointer-events:none}@keyframes hero-glow{0%,to{transform:scale(1) translate(0);opacity:.5}50%{transform:scale(1.1) translate(-20px,20px);opacity:.8}}.glass-card{background:rgba(26,26,46,.7);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px #0000004d,inset 0 1px #ffffff1a}.glass-card-hover{transition:all .4s cubic-bezier(.4,0,.2,1)}.glass-card-hover:hover{transform:translateY(-8px);border-color:#e91e634d;box-shadow:0 20px 60px #e91e6333,inset 0 1px #ffffff26}.gradient-text{background:linear-gradient(135deg,#E91E63,#F48FB1,#9C27B0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:gradient-shift 5s ease infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.sakura-button{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1)}.sakura-button:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width .6s,height .6s}.sakura-button:hover:before{width:300px;height:300px}.sakura-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e91e6366}.sakura-button:active{transform:translateY(0)}.sakura-input{transition:all .3s ease}.sakura-input:focus{transform:translateY(-2px);box-shadow:0 8px 25px #e91e6333}.sakura-loader{width:50px;height:50px;border:3px solid rgba(233,30,99,.2);border-top-color:var(--sakura-primary);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .6s ease-out forwards}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slideInLeft .6s ease-out forwards}.slide-in-right{animation:slideInRight .6s ease-out forwards}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}}.float{animation:float 6s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.shimmer{background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.1) 50%,rgba(255,255,255,0) 100%);background-size:200% 100%;animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.tooltip{position:relative}.tooltip:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-5px);padding:8px 12px;background:rgba(26,26,46,.95);border:1px solid rgba(233,30,99,.3);border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .3s ease;z-index:1000}.tooltip:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(-10px)}.notification-badge{position:relative}.notification-badge:before{content:"";position:absolute;top:-5px;right:-5px;width:10px;height:10px;background:linear-gradient(135deg,#ff4081,#ff80ab);border-radius:50%;border:2px solid var(--bg-dark);animation:badge-pulse 2s ease-in-out infinite}@keyframes badge-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.page-enter{opacity:0;transform:translateY(20px)}.page-enter-active{opacity:1;transform:translateY(0);transition:opacity .4s,transform .4s}.page-exit{opacity:1}.page-exit-active{opacity:0;transition:opacity .3s}@media (max-width: 768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:focus-visible{outline:2px solid var(--sakura-primary);outline-offset:2px}::selection{background:rgba(233,30,99,.3);color:var(--text-primary)}::-moz-selection{background:rgba(233,30,99,.3);color:var(--text-primary)}
