@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;700;800&family=Outfit:wght@400;700;800&display=swap";:root{--primary: #5DB0E5;--primary-dark: #3498DB;--accent: #FFD93D;--success: #2ECC71;--error: #E74C3C;--wrong: #FF00FF;--text-dark: #1A1A1A;--text-light: #FFFFFF;--white: #FFFFFF;--glass-bg: rgba(255, 255, 255, .12);--glass-border: rgba(255, 255, 255, .25);--glass-shadow: 0 12px 40px 0 rgba(0, 0, 0, .15);--safe-top: env(safe-area-inset-top, 20px);--safe-bottom: env(safe-area-inset-bottom, 20px)}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:Outfit,Inter,sans-serif;overflow:hidden;height:100vh;width:100vw;background-color:#000}#root{height:100%;width:100%}.app-container{position:relative;height:100%;width:100%;display:flex;flex-direction:column;color:#fff}.background{position:absolute;top:0;left:0;width:100%;height:100%;background:url(/assets/background_soft_gradient.png) no-repeat center center;background-size:cover;z-index:-2}.scrim{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0000001a,#0003);z-index:-1}.screen{flex:1;padding:var(--safe-top) 16px var(--safe-bottom);display:flex;flex-direction:column;align-items:center;justify-content:flex-start;overflow-y:auto;gap:24px;text-align:center}.screen:before,.screen:after{content:"";flex:1;margin:auto}h1{font-size:4rem;font-weight:800;margin-bottom:8px;text-shadow:0 2px 4px rgba(0,0,0,.1)}.total-stars{font-size:1.5rem;font-weight:700;opacity:.9}.btn{background:var(--white);color:var(--primary);border:none;border-radius:16px;padding:12px 24px;font-size:1.2rem;font-weight:700;cursor:pointer;box-shadow:0 4px 8px #0003;transition:transform .2s,background .2s;height:48px;display:flex;align-items:center;justify-content:center}.btn:active{transform:scale(.95)}.btn-large{height:64px;padding:0 32px;font-size:1.4rem}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%;max-width:400px;padding:8px}.card{background:var(--white);border-radius:16px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--primary);box-shadow:0 8px 16px #0003;cursor:pointer;aspect-ratio:1}.card h2{font-size:2.5rem;margin-bottom:4px}.card .stars{display:flex;gap:2px;font-size:.8rem}.app-nav{display:flex;gap:12px;margin-bottom:24px;background:#ffffff1a;padding:6px;border-radius:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.nav-tab{padding:8px 20px;border-radius:30px;border:none;background:transparent;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.nav-tab.active{background:var(--primary);box-shadow:0 4px 15px #2980b966}.calendar-container{width:100%;max-width:500px;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:24px;border:1px solid rgba(255,255,255,.2);margin-top:10px}.calendar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px}.calendar-header h2{margin:0;font-size:1.5rem}.calendar-stats{width:100%;text-align:center;font-size:1rem;font-weight:600;color:#ffd93d;margin-top:5px}.nav-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:background .2s}.nav-btn:hover{background:#ffffff4d}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.weekday-label{text-align:center;font-size:.8rem;font-weight:700;opacity:.7;padding-bottom:5px}.calendar-day{aspect-ratio:1;background:#ffffff0d;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;position:relative;transition:all .2s ease;border:1px solid transparent}.calendar-day:hover{background:#ffffff26;transform:translateY(-2px)}.calendar-day.empty{background:transparent;cursor:default}.calendar-day.dry{background:#2980b91a;border-color:#ffffff4d}.day-marks{display:flex;flex-wrap:wrap;gap:2px;justify-content:center;align-items:center;min-height:20px;margin-top:4px}.mark-emoji{font-size:.9rem;line-height:1}.day-number{font-size:1rem;font-weight:600}.dry-icon{font-size:1rem}.game-top-bar{display:flex;justify-content:space-between;width:100%;padding-bottom:32px}.stats-card{background:#fff3;border-radius:16px;padding:8px 16px;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center}.back-btn{height:38px!important;font-size:.9rem!important;padding:0 16px!important;background:#ffffff4d!important;color:#fff!important}.flashcard{background:var(--white);width:100%;max-width:400px;height:250px;border-radius:24px;display:flex;align-items:center;justify-content:center;color:var(--text-dark);font-size:5rem;font-weight:800;box-shadow:0 12px 24px #0000004d;transition:transform .2s}.flashcard.pop{transform:scale(1.05)}.feedback{font-size:2.5rem;font-weight:800;height:48px}.feedback.correct{color:var(--success)}.feedback.wrong{color:var(--error)}.options-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;width:100%;max-width:400px}.option-btn{background:var(--white);height:80px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;font-weight:700;color:var(--text-dark);box-shadow:0 6px 12px #0003;border:none;cursor:pointer;transition:background .3s,color .3s}.option-btn.correct{background:var(--success);color:#fff}.option-btn.wrong{background:var(--wrong);color:#fff}.option-btn.disabled{background:#f2f2f2;opacity:.8}.profile-badge{position:absolute;top:max(16px,var(--safe-top));right:16px;background:#ffffff40;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid rgba(255,255,255,.4);color:#fff;padding:8px 16px;border-radius:24px;font-size:1rem;font-weight:800;display:flex;align-items:center;gap:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 20px #00000040;z-index:100;border-style:solid}.profile-badge:hover,.profile-badge:active{background:#ffffff59;transform:scale(1.05);border-color:#fff9;box-shadow:0 6px 25px #0000004d}.profile-badge span:first-child{font-size:1.4rem;line-height:1}.activity-tracker{width:100%;max-width:500px;display:flex;flex-direction:column;gap:20px}.stamp-bar{display:flex;gap:10px;overflow-x:auto;padding:10px 4px;scrollbar-width:none;-ms-overflow-style:none}.stamp-bar::-webkit-scrollbar{display:none}.stamp-btn{flex:0 0 auto;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:8px 16px;color:#fff;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative}.stamp-btn.active{background:var(--white);color:var(--primary);transform:scale(1.05);box-shadow:0 4px 15px #0003}.stamp-emoji{font-size:1.2rem}.stamp-name{font-weight:700;font-size:.9rem}.remove-stamp{position:absolute;top:-8px;right:-8px;background:var(--error);color:#fff;width:20px;height:20px;border-radius:50%;font-size:14px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003}.add-stamp-btn{font-size:1.5rem;font-weight:400;width:48px;justify-content:center;border-style:dashed}.active-tracker-stats{background:#ffffff26;padding:10px 20px;border-radius:30px;font-weight:700;color:#ffd93d;margin-bottom:10px}.stamp-form{background:#fffffff2!important;color:var(--text-dark)!important;border-radius:24px!important;padding:24px!important;width:90%!important;max-width:350px!important}.stamp-form h3{margin-bottom:20px}.stamp-preview{font-size:4rem;margin-bottom:20px}.emoji-picker.small{margin-top:10px;grid-template-columns:repeat(6,1fr);gap:8px}.emoji-picker.small .emoji-item{font-size:1.5rem;padding:4px}.btn-secondary{background:#eee!important;color:#666!important}.rewards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;width:100%;max-width:1000px;padding:16px;margin:16px auto}.reward-card{width:100%;aspect-ratio:1 / 1;background:var(--white);border-radius:16px;overflow:hidden;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 16px #0003}.reward-img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}.reward-overlay{position:absolute;bottom:0;width:100%;background:linear-gradient(transparent,#000c);color:#fff;padding:8px;font-weight:700;font-size:.8rem}.reward-locked{display:flex;flex-direction:column;gap:4px;color:#bdc3c7}.landing-page{width:100%;height:100%;overflow-y:auto;display:flex;flex-direction:column}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 20px;position:relative}.hero-content{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;width:100%;max-width:1200px;align-items:center}.hero-text-side{text-align:left}.hero-badge{display:inline-block;background:#ffffff40;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:8px 16px;border-radius:100px;font-weight:700;font-size:.9rem;margin-bottom:24px;border:1px solid rgba(255,255,255,.4);box-shadow:0 2px 8px #0000000d}.landing-page h1{font-size:5rem;line-height:1.1;margin-bottom:24px;background:linear-gradient(to bottom,#fff 40%,#ffffffb3);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-text{font-size:1.4rem;line-height:1.6;max-width:500px;margin-bottom:40px;opacity:.95;text-shadow:0 1px 2px rgba(0,0,0,.05)}.hero-visual-side{display:flex;justify-content:center;align-items:center;position:relative}.mascot-container{width:100%;max-width:450px;aspect-ratio:1;background:radial-gradient(circle at center,rgba(255,255,255,.2) 0%,transparent 70%);display:flex;align-items:center;justify-content:center;animation:float 6s ease-in-out infinite}.mascot-image{width:90%;height:90%;object-fit:contain;filter:drop-shadow(0 20px 40px rgba(0,0,0,.3))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.login-container.landing-login{background:linear-gradient(135deg,#fff3,#ffffff1a);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:1px solid var(--glass-border);padding:40px;border-radius:32px;box-shadow:var(--glass-shadow);width:100%;max-width:400px;margin-top:20px}.features-grid-section{padding:100px 20px;background:#ffffff0d;text-align:center}.features-grid-section h2{font-size:3rem;margin-bottom:60px}.features-showcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;max-width:1200px;margin:0 auto}.feature-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:40px;border-radius:24px;border:1px solid var(--glass-border);display:flex;flex-direction:column;align-items:center;text-align:center;transition:transform .3s ease}.feature-card:hover{transform:translateY(-10px);background:#fff3}.f-icon{font-size:3rem;margin-bottom:24px;filter:drop-shadow(0 4px 8px rgba(0,0,0,.1))}.feature-card h3{font-size:1.5rem;margin-bottom:16px}.feature-card p{opacity:.8;line-height:1.6}.landing-footer{padding:60px 20px;text-align:center;opacity:.6;border-top:1px solid rgba(255,255,255,.1)}.close-btn{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer}.profiles-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:24px;width:100%;max-width:500px;padding:20px;margin:0 auto}.profile-card{background:#ffffff26;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:24px;padding:24px;display:flex;flex-direction:column;align-items:center;gap:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 32px #0000001a}.profile-card:hover,.profile-card:active{transform:translateY(-8px) scale(1.02);background:#ffffff40;border-color:#fff6;box-shadow:0 12px 40px #0003}.profile-icon{font-size:3.5rem;line-height:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.profile-name{font-size:1.2rem;font-weight:700;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.add-profile{border-style:dashed;background:#ffffff0d}.add-profile .profile-icon{font-size:3rem;font-weight:400;color:#fff9}.profile-creation-form{background:#ffffff26;backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);border-radius:32px;padding:32px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:24px;border:1px solid rgba(255,255,255,.2);box-shadow:0 15px 45px #0003}.selected-icon-preview{font-size:5rem;background:#fff3;width:120px;height:120px;display:flex;align-items:center;justify-content:center;border-radius:50%;margin-bottom:8px;box-shadow:inset 0 0 15px #ffffff4d}.name-input{width:100%;padding:16px;border-radius:12px;border:1px solid rgba(255,255,255,.3);background:#ffffffe6;color:var(--text-dark);font-size:1.2rem;font-family:inherit;font-weight:700;outline:none;transition:border-color .2s}.name-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2980b94d}.emoji-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;width:100%}.emoji-item{font-size:2rem;cursor:pointer;padding:8px;border-radius:12px;display:flex;align-items:center;justify-content:center;transition:all .2s;background:#ffffff0d}.emoji-item:hover{background:#fff3;transform:scale(1.1)}.emoji-item.active{background:var(--white);box-shadow:0 4px 12px #00000026;transform:scale(1.2)}@media(max-width:380px){h1{font-size:3rem}.flashcard{font-size:4rem;height:180px}.card h2{font-size:2rem}.profiles-grid{grid-template-columns:repeat(2,1fr);gap:16px}}.login-container{background:#ffffff26;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:32px;padding:40px 24px;width:100%;max-width:400px;display:flex;flex-direction:column;align-items:center;gap:20px;box-shadow:0 20px 50px #0003}.login-icon{font-size:4rem;margin-bottom:10px}.login-subtitle{font-size:1.1rem;opacity:.9;line-height:1.5;margin-top:-10px}.login-form{width:100%;display:flex;flex-direction:column;gap:16px}.login-footer{font-size:.9rem;opacity:.7;margin-top:10px}.sent-message{flex-direction:column!important;background:#0009!important;padding:24px!important;border:2px solid rgba(255,255,255,.4)!important;text-align:center;gap:16px!important;width:100%!important;border-radius:20px!important}.sent-message h3{color:#2ecc71!important;font-size:1.5rem!important;margin:0!important;font-weight:800!important}.sent-message p{line-height:1.6!important;margin:0!important;color:#fff!important;font-weight:500!important}
