@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700&display=swap";:root{--primary: #FF6B6B;--primary-light: #e28b75;--primary-dark: #c65d44;--primary-gradient: linear-gradient(135deg, #FF6B6B 0%, #e28b75 100%);--hero-gradient: linear-gradient(135deg, #FF6B6B 0%, #FF7B5C 25%, #FF8A4D 50%, #FC8019 75%, #F97316 100%);--primary-solid: #FF6B6B;--accent: #F97316;--accent-light: #FB923C;--accent-dark: #EA580C;--success: #10B981;--success-light: #34D399;--warning: #F59E0B;--danger: #EF4444;--info: #3B82F6;--gray-50: #FAFAF9;--gray-100: #F5F5F4;--gray-200: #E7E5E4;--gray-300: #D6D3D1;--gray-400: #A8A29E;--gray-500: #78716C;--gray-600: #57534E;--gray-700: #44403C;--gray-800: #292524;--gray-900: #1C1917;--text-dark: #1C1917;--text-medium: #44403C;--text-light: #78716C;--text-white: #ffffff;--bg-light: #FAFAF9;--bg-white: #ffffff;--bg-subtle: #F5F5F4;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px rgba(0, 0, 0, .07), 0 2px 4px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .1), 0 4px 6px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .1), 0 10px 10px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px rgba(0, 0, 0, .15);--glow-primary: 0 8px 16px rgba(255, 107, 107, .3), 0 2px 4px rgba(0, 0, 0, .05);--glow-accent: 0 8px 16px rgba(249, 115, 22, .3), 0 2px 4px rgba(0, 0, 0, .05);--glow-success: 0 8px 16px rgba(16, 185, 129, .25), 0 2px 4px rgba(0, 0, 0, .05);--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--text-xs: 12px;--text-sm: 14px;--text-base: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 30px;--text-4xl: 36px;--text-5xl: 48px;--radius-sm: 8px;--radius-base: 12px;--radius-md: 16px;--radius-lg: 20px;--radius-xl: 24px;--radius-full: 9999px;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out-back: cubic-bezier(.68, -.25, .265, 1.25);--spring: cubic-bezier(.34, 1.56, .64, 1);--status-bar-overlay-height: 120px;--restaurant-primary: #D4691A;--restaurant-bg: #FFF8F0;--shopping-primary: #FF6B9D;--shopping-bg: #FFF5F8;--interview-primary: #2C5F8D;--interview-bg: #F0F4F8;--doctor-primary: #10B981;--doctor-bg: #F0FDF4;--casual-primary: #D97706;--casual-bg: #FFFBEB;--travel-primary: #8B5CF6;--travel-bg: #F5F3FF;--datenight-primary: #EC4899;--datenight-bg: #FFF1F2}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-light);position:relative;min-height:100vh;overflow-x:hidden;color:var(--text-dark);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;left:0;right:0;height:calc(env(safe-area-inset-top,0px) + var(--status-bar-overlay-height));background:var(--hero-gradient);pointer-events:none;z-index:0}h1,h2,h3,h4,h5,h6{font-family:Poppins,sans-serif;font-weight:600;line-height:1.2;letter-spacing:-.025em}#app{width:100%;height:100vh;overflow:hidden;position:relative;z-index:1}.screen{display:none;position:fixed;inset:0;height:100vh;overflow-y:auto;-webkit-overflow-scrolling:touch;animation:slideIn .4s cubic-bezier(.4,0,.2,1);z-index:1}.screen.active{display:flex;flex-direction:column;z-index:10}@keyframes slideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}#home-screen{background:var(--bg-light)}.hero-section{position:relative;height:45vh;min-height:320px;max-height:400px;background:var(--hero-gradient);display:flex;align-items:center;justify-content:center;border-radius:0 0 32px 32px;box-shadow:0 8px 32px #ff6b6b40,inset 0 -1px #ffffff1a;overflow:hidden}.hero-section:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,200,100,.15) 0%,transparent 50%);animation:breathe 8s ease-in-out infinite}@keyframes breathe{0%,to{opacity:1}50%{opacity:.7}}.hero-content{position:relative;z-index:1;text-align:center;padding:2rem 1.5rem;animation:fadeInUp .8s cubic-bezier(.4,0,.2,1)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-illustration{margin-bottom:2rem;display:flex;justify-content:center;align-items:center}.sound-wave{display:flex;align-items:center;justify-content:center;gap:8px;height:100px;padding:1rem}.wave-bar{width:6px;background:linear-gradient(180deg,#fffffff2,#fffc);border-radius:3px;box-shadow:0 4px 12px #00000026;animation:waveAnimation 1.2s ease-in-out infinite}.wave-bar:nth-child(1){height:30px;animation-delay:0s}.wave-bar:nth-child(2){height:55px;animation-delay:.1s}.wave-bar:nth-child(3){height:70px;animation-delay:.2s}.wave-bar:nth-child(4){height:50px;animation-delay:.3s}.wave-bar:nth-child(5){height:35px;animation-delay:.4s}@keyframes waveAnimation{0%,to{transform:scaleY(1);opacity:.8}50%{transform:scaleY(1.5);opacity:1}}.hero-title{font-size:3rem;font-weight:900;color:#fff;margin-bottom:.5rem;letter-spacing:-1.5px;text-shadow:0 4px 16px rgba(0,0,0,.15);line-height:1}.hero-subtitle{font-size:1.1rem;font-weight:600;color:#fffffff2;letter-spacing:.3px;text-shadow:0 2px 8px rgba(0,0,0,.1)}.content-section{flex:1;background:var(--bg-light);padding:1.75rem 1rem 2rem;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-top:-16px;position:relative;z-index:2}.welcome-header{margin-bottom:2rem;padding:0 .5rem}.welcome-header h2{font-size:1.75rem;font-weight:800;color:var(--text-dark);margin-bottom:.35rem;letter-spacing:-.5px}.welcome-header p{font-size:.95rem;color:#64748b;font-weight:500}.scenarios-container{max-width:480px;margin:0 auto}.scenarios-scroll{display:flex;flex-direction:column;gap:1rem;padding:1.5rem 1.5rem 5rem}.scenario-card{background:var(--bg-white);border-radius:22px;padding:1.375rem 1.5rem;display:flex;align-items:center;gap:1.25rem;box-shadow:0 2px 8px #0000000a,0 1px 3px #00000005;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);border:2px solid transparent;position:relative;overflow:hidden}.scenario-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(252,128,25,.05) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.scenario-card:active{transform:scale(.98)}.scenario-card.selected{border-color:var(--primary);box-shadow:0 8px 24px #fc801933,0 4px 12px #fc80191a;transform:translateY(-2px)}.scenario-card.selected:before{opacity:1}.scenario-icon{font-size:2.5rem;flex-shrink:0;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#fff7ed,#ffedd5);border-radius:16px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.scenario-card.selected .scenario-icon{background:linear-gradient(135deg,#fed7aa,#fdba74);transform:scale(1.08) rotate(-3deg);box-shadow:0 4px 12px #fc801940}.scenario-content{flex:1;position:relative;z-index:1}.scenario-content h4{font-size:1.063rem;font-weight:700;color:var(--text-dark);margin-bottom:.25rem;letter-spacing:-.3px;line-height:1.2}.scenario-content p{font-size:.813rem;color:#64748b;line-height:1.4;font-weight:500}.scenario-arrow{font-size:1.5rem;color:var(--primary);font-weight:600;opacity:.3;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;z-index:1}.scenario-card.selected .scenario-arrow{opacity:1;transform:translate(4px)}#level-screen{background:var(--bg-light);display:block;overflow-y:auto!important;-webkit-overflow-scrolling:touch}.level-hero{position:relative;height:35vh;min-height:280px;background:var(--hero-gradient);border-radius:0 0 32px 32px;overflow:hidden;box-shadow:0 10px 40px #ff6b6b4d}.level-hero-bg{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,255,255,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,200,100,.2) 0%,transparent 50%);animation:breathe 8s ease-in-out infinite}.level-hero-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;padding:calc(env(safe-area-inset-top) + 1rem) 1.5rem 2rem}.level-back-btn{width:44px;height:44px;border-radius:14px;background:#fff3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);margin-bottom:auto}.level-back-btn:active{transform:scale(.92);background:#ffffff4d}.level-hero-info{display:flex;flex-direction:column;gap:.5rem;animation:fadeInUp .6s cubic-bezier(.34,1.56,.64,1)}.level-hero-emoji{font-size:3.5rem;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15));margin-left:-4px}#level-scenario-title{font-size:2.5rem;font-weight:800;color:#fff;letter-spacing:-1px;line-height:1;text-shadow:0 2px 10px rgba(0,0,0,.1)}.level-hero-subtitle{font-size:1rem;color:#ffffffe6;font-weight:500;margin-top:.25rem}.level-content-scroll{padding:2rem 1.5rem 4rem;margin-top:-3rem;position:relative;z-index:5}.level-cards-container{display:flex;flex-direction:column;gap:1.25rem}.level-card-modern{background:#fff;border-radius:24px;padding:1.5rem;position:relative;border:2px solid transparent;box-shadow:0 4px 6px #00000005,0 10px 15px #00000008;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;gap:1.25rem;cursor:pointer;overflow:hidden}.level-card-modern:active{transform:scale(.98)}.level-card-modern.recommended{border-color:#f973164d;background:linear-gradient(145deg,#fff,#fff7ed);box-shadow:0 10px 25px #f9731626,0 4px 10px #f973160d}.level-card-tag{position:absolute;top:0;right:0;background:var(--accent);color:#fff;font-size:.7rem;font-weight:700;padding:.3rem .8rem;border-bottom-left-radius:16px;text-transform:uppercase;letter-spacing:.5px}.level-card-icon{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.75rem;flex-shrink:0}.beginner-icon{background:#ecfdf5;color:#10b981}.intermediate-icon{background:#fff7ed;color:#f97316}.advanced-icon{background:#fef2f2;color:#ef4444}.level-card-content{flex:1}.level-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.35rem}.level-card-header h3{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin:0}.level-badge-modern{font-size:.7rem;font-weight:700;padding:.2rem .6rem;border-radius:99px;text-transform:uppercase}.level-badge-modern.beginner{background:#d1fae5;color:#065f46}.level-badge-modern.intermediate{background:#ffedd5;color:#9a3412}.level-badge-modern.advanced{background:#fee2e2;color:#991b1b}.level-desc{font-size:.85rem;color:var(--text-light);line-height:1.4;margin-bottom:.75rem}.level-features-modern{display:flex;gap:.75rem;flex-wrap:wrap}.level-features-modern span{font-size:.75rem;font-weight:600;color:var(--text-medium);background:var(--bg-subtle);padding:.2rem .5rem;border-radius:6px}.level-card-arrow{font-size:1.5rem;color:var(--gray-300);font-weight:600;transition:transform .2s ease}.level-card-modern:active .level-card-arrow{transform:translate(4px);color:var(--primary)}#practice-screen{background:var(--bg-light)}.practice-header{background:var(--bg-white);box-shadow:0 2px 8px #0000000d;position:sticky;top:0;z-index:10}.practice-info{padding:1rem 1.5rem;display:flex;align-items:center;gap:1rem}.close-practice-btn{background:var(--bg-light);border:none;width:36px;height:36px;border-radius:50%;font-size:1.2rem;color:var(--text-dark);cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;transition:all .2s ease}.close-practice-btn:active{transform:scale(.9);background:#e0e0e0}.practice-title{flex:1;font-size:1.1rem;font-weight:700;color:var(--text-dark);display:flex;align-items:center;gap:.5rem}#practice-scenario-emoji{font-size:1.4rem}.practice-timer{font-size:.9rem;font-weight:600;color:var(--primary);font-family:Courier New,monospace;background:var(--bg-light);padding:.4rem .8rem;border-radius:12px}.chat-container{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem 1.5rem 120px}.chat-messages{display:flex;flex-direction:column;gap:1rem}.message{max-width:80%;padding:1rem 1.25rem;border-radius:20px;font-size:.95rem;line-height:1.5;animation:messageSlide .3s cubic-bezier(.4,0,.2,1);word-wrap:break-word}@keyframes messageSlide{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{align-self:flex-end;background:var(--primary);color:var(--text-light);border-bottom-right-radius:6px;box-shadow:0 4px 12px #ff6b354d}.message.ai{align-self:flex-start;background:var(--bg-white);color:var(--text-dark);border-bottom-left-radius:6px;box-shadow:0 2px 8px #00000014}.message.system{align-self:center;background:linear-gradient(135deg,#4ecdc426,#4ecdc41a);color:#0d8c7f;border:1px solid rgba(78,205,196,.3);font-size:.85rem;text-align:center;max-width:90%;border-radius:16px}.practice-controls{position:fixed;bottom:0;left:0;right:0;padding:1.25rem 1.5rem;background:var(--bg-white);box-shadow:0 -4px 12px #00000014;display:flex;align-items:center;justify-content:space-between;gap:1rem}.status-indicator{display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem;background:var(--bg-light);border-radius:24px;flex:1}.status-dot{width:12px;height:12px;border-radius:50%;background:#ccc;animation:dotPulse 2s ease-in-out infinite}.status-indicator.connected .status-dot{background:var(--success)}.status-indicator.connecting .status-dot{background:var(--accent)}.status-indicator.error .status-dot{background:var(--danger)}@keyframes dotPulse{0%,to{opacity:1}50%{opacity:.5}}#status-text{font-size:.9rem;font-weight:600;color:var(--text-dark)}.fab-hint{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--accent) 0%,#F9C74F 100%);border:none;font-size:1.5rem;cursor:pointer;box-shadow:0 6px 16px #ffe66d66;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;flex-shrink:0}.fab-hint:active{transform:scale(.9)}.hint-popup{position:fixed;bottom:100px;left:1.5rem;right:1.5rem;background:linear-gradient(135deg,#ffe66d,#ffc107);border-radius:20px;padding:1.25rem;box-shadow:var(--shadow-lg);transform:translateY(20px);opacity:0;pointer-events:none;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:100}.hint-popup.show{transform:translateY(0);opacity:1;pointer-events:auto}.hint-content h4{font-size:1rem;font-weight:700;color:#78350f;margin-bottom:.5rem}.hint-content p{font-size:.95rem;color:#78350f;font-weight:500}#practice-screen.theme-restaurant{background:var(--restaurant-bg)}#practice-screen.theme-restaurant .practice-header{background:linear-gradient(135deg,var(--restaurant-primary) 0%,var(--restaurant-accent) 100%)}#practice-screen.theme-restaurant .message.ai{background:#fff;border-left:4px solid var(--restaurant-primary)}#practice-screen.theme-restaurant .message.user,#practice-screen.theme-restaurant .status-indicator.connected .status-dot{background:var(--restaurant-primary)}#practice-screen.theme-restaurant .fab-hint{background:linear-gradient(135deg,var(--restaurant-primary) 0%,var(--restaurant-accent) 100%);box-shadow:0 6px 16px #d4691a66}#practice-screen.theme-shopping{background:var(--shopping-bg)}#practice-screen.theme-shopping .practice-header{background:linear-gradient(135deg,var(--shopping-primary) 0%,var(--shopping-accent) 100%)}#practice-screen.theme-shopping .message.ai{background:#fff;border-left:4px solid var(--shopping-primary)}#practice-screen.theme-shopping .message.user,#practice-screen.theme-shopping .status-indicator.connected .status-dot{background:var(--shopping-primary)}#practice-screen.theme-shopping .fab-hint{background:linear-gradient(135deg,var(--shopping-primary) 0%,var(--shopping-accent) 100%);box-shadow:0 6px 16px #ff6b9d66}#practice-screen.theme-interview{background:var(--interview-bg)}#practice-screen.theme-interview .practice-header{background:linear-gradient(135deg,var(--interview-primary) 0%,var(--interview-accent) 100%)}#practice-screen.theme-interview .message.ai{background:#fff;border-left:4px solid var(--interview-primary)}#practice-screen.theme-interview .message.user,#practice-screen.theme-interview .status-indicator.connected .status-dot{background:var(--interview-primary)}#practice-screen.theme-interview .fab-hint{background:linear-gradient(135deg,var(--interview-primary) 0%,var(--interview-accent) 100%);box-shadow:0 6px 16px #2c5f8d66}#practice-screen.theme-doctor{background:var(--doctor-bg)}#practice-screen.theme-doctor .practice-header{background:linear-gradient(135deg,var(--doctor-primary) 0%,var(--doctor-accent) 100%)}#practice-screen.theme-doctor .message.ai{background:#fff;border-left:4px solid var(--doctor-primary)}#practice-screen.theme-doctor .message.user,#practice-screen.theme-doctor .status-indicator.connected .status-dot{background:var(--doctor-primary)}#practice-screen.theme-doctor .fab-hint{background:linear-gradient(135deg,var(--doctor-primary) 0%,var(--doctor-accent) 100%);box-shadow:0 6px 16px #0ea5e966}#practice-screen.theme-casual{background:var(--casual-bg)}#practice-screen.theme-casual .practice-header{background:linear-gradient(135deg,var(--casual-primary) 0%,var(--casual-accent) 100%)}#practice-screen.theme-casual .message.ai{background:#fff;border-left:4px solid var(--casual-primary)}#practice-screen.theme-casual .message.user,#practice-screen.theme-casual .status-indicator.connected .status-dot{background:var(--casual-primary)}#practice-screen.theme-casual .fab-hint{background:linear-gradient(135deg,var(--casual-primary) 0%,var(--casual-accent) 100%);box-shadow:0 6px 16px #d9770666}#practice-screen.theme-travel{background:var(--travel-bg)}#practice-screen.theme-travel .practice-header{background:linear-gradient(135deg,var(--travel-primary) 0%,var(--travel-accent) 100%)}#practice-screen.theme-travel .message.ai{background:#fff;border-left:4px solid var(--travel-primary)}#practice-screen.theme-travel .message.user,#practice-screen.theme-travel .status-indicator.connected .status-dot{background:var(--travel-primary)}#practice-screen.theme-travel .fab-hint{background:linear-gradient(135deg,var(--travel-primary) 0%,var(--travel-accent) 100%);box-shadow:0 6px 16px #3b82f666}.loading-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;flex-direction:column;gap:1.5rem;z-index:1000}.loading-overlay.show{display:flex}.loading-spinner{width:60px;height:60px;border:4px solid rgba(255,255,255,.2);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.loading-overlay p{color:#fff;font-size:1.1rem;font-weight:600}.message .word{display:inline;cursor:pointer;transition:all .2s ease;border-radius:4px;padding:1px 2px;position:relative}.word.correct{color:var(--success);font-weight:600}.word.error-minor{color:#f59e0b;border-bottom:2px dotted #F59E0B;cursor:help}.word.error-major{color:#ef4444;border-bottom:2px solid #EF4444;cursor:help;font-weight:600}.word.vocabulary{color:#3b82f6;border-bottom:2px dashed #3B82F6;cursor:pointer;font-weight:500}.word.vocabulary.saved{color:var(--success);border-bottom:2px solid var(--success)}.error-tooltip{background:var(--bg-white);border:2px solid #EF4444;border-radius:12px;padding:.75rem 1rem;box-shadow:0 8px 24px #0003;z-index:1000;max-width:280px;animation:tooltipFadeIn .2s ease}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.tooltip-correction{font-size:.95rem;font-weight:700;color:var(--success);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.tooltip-explanation{font-size:.85rem;color:#666;line-height:1.4}.vocab-tooltip{background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:12px;padding:.75rem 1rem;box-shadow:0 8px 24px #3b82f64d;z-index:1000;max-width:240px;animation:tooltipFadeIn .2s ease}.tooltip-word{font-size:1rem;font-weight:700;color:#fff;margin-bottom:.75rem}.tooltip-action{display:flex;justify-content:center}.save-vocab-btn{background:#fff;border:none;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#3b82f6;cursor:pointer;transition:all .2s ease;font-family:inherit}.save-vocab-btn:active{transform:scale(.95);background:#f0f0f0}.vocab-saved-toast{position:fixed;top:20px;left:50%;transform:translate(-50%);background:var(--success);color:#fff;padding:.75rem 1.5rem;border-radius:24px;font-size:.9rem;font-weight:600;box-shadow:0 8px 24px #06d6a066;z-index:2000;animation:toastSlideIn .3s ease}@keyframes toastSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.message.user .word.error-minor,.message.user .word.error-major{color:#fffffff2;background:#ffffff26;padding:2px 4px;border-radius:4px;border-bottom-color:#fff9}.summary-overlay{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;opacity:0;transition:opacity .3s ease;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1rem}.summary-overlay.show{opacity:1}.summary-container{background:var(--bg-white);border-radius:24px;max-width:600px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0000004d;animation:summarySlideUp .4s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes summarySlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.summary-header{position:relative;text-align:center;padding:2.5rem 2rem 2rem;border-radius:24px 24px 0 0;color:#fff;overflow:hidden;flex-shrink:0}.summary-header-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787 25%,#9775fa 75%,#ffa985);background-size:200% 200%;animation:summaryGradientFlow 6s ease infinite;z-index:0}@keyframes summaryGradientFlow{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.summary-header-content{position:relative;z-index:1}.summary-icon{font-size:4rem;margin-bottom:.75rem;animation:celebrationBounce .8s cubic-bezier(.34,1.56,.64,1);display:inline-block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15))}@keyframes celebrationBounce{0%,to{transform:scale(1) rotate(0)}25%{transform:scale(1.15) rotate(-5deg)}75%{transform:scale(1.15) rotate(5deg)}}.summary-header h2{font-size:1.75rem;font-weight:800;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.15)}.summary-subtitle{font-size:1rem;opacity:.95;font-weight:500;text-shadow:0 1px 4px rgba(0,0,0,.1)}.summary-scroll-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.summary-section{padding:1.5rem 2rem;border-bottom:1px solid rgba(0,0,0,.05)}.summary-section:last-of-type{border-bottom:none;padding-bottom:1rem}.summary-section h3{font-size:1.3rem;font-weight:800;color:var(--text-dark);margin-bottom:1.5rem;display:flex;align-items:center;gap:.75rem}.summary-section-icon{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.stat-card{position:relative;border-radius:20px;padding:0;text-align:center;overflow:hidden;opacity:0;transform:translateY(20px) scale(.95);transition:all .4s cubic-bezier(.4,0,.2,1)}.stat-card.stat-card-visible{opacity:1;transform:translateY(0) scale(1)}.stat-card.primary{grid-column:1 / -1}.stat-card-bg{position:absolute;inset:0;opacity:.12;z-index:0}.stat-card-content{position:relative;z-index:1;padding:1.5rem;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:2px solid transparent;background-clip:padding-box}.stat-card.primary .stat-card-content{padding:2rem 1.5rem;border:2px solid rgba(255,107,107,.3)}.stat-icon-wrapper{width:3.5rem;height:3.5rem;margin:0 auto 1rem;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.75rem;box-shadow:0 4px 16px #0000001a}.stat-card.primary .stat-icon-wrapper{width:4.5rem;height:4.5rem;font-size:2.25rem}.stat-value{font-size:2.25rem;font-weight:800;color:#2d3748;margin-bottom:.25rem;line-height:1;display:inline}.stat-card.primary .stat-value{font-size:3.5rem}.stat-value-text{font-size:1.75rem;font-weight:800;color:#2d3748;margin-bottom:.5rem;line-height:1}.stat-unit{font-size:2.25rem;font-weight:800;color:#2d3748;display:inline;margin-left:.125rem}.stat-card.primary .stat-unit{font-size:3.5rem}.stat-label{font-size:.8rem;color:#718096;font-weight:700;text-transform:uppercase;letter-spacing:.75px;margin-top:.5rem}.stat-sublabel{font-size:1rem;color:#ff6b6b;font-weight:700;margin-top:.75rem}.no-errors-card{background:linear-gradient(135deg,#51cf661a,#51cf660d);border:2px solid #51CF66;border-radius:20px;padding:2.5rem 2rem;text-align:center}.no-errors-icon{font-size:4rem;margin-bottom:1rem;filter:drop-shadow(0 4px 12px rgba(81,207,102,.3))}.no-errors-card h3{font-size:1.5rem;font-weight:800;color:#2d3748;margin-bottom:.75rem}.no-errors-text{font-size:1.05rem;color:#51cf66;font-weight:600;margin:0}.errors-list{display:flex;flex-direction:column;gap:1rem}.error-item{background:var(--bg-light);border-radius:16px;padding:1.25rem;border-left:4px solid #FFD43B;box-shadow:0 2px 8px #0000000a;animation:errorSlideIn .4s cubic-bezier(.4,0,.2,1) both;transition:all .3s ease}@keyframes errorSlideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.error-item:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.error-item.error-major{border-left-color:#ff6b6b;background:#ff6b6b0d}.error-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.error-icon-wrapper{width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:8px;background:#00000008}.error-icon{font-size:1.125rem}.error-type{font-size:.75rem;font-weight:800;color:#718096;text-transform:uppercase;letter-spacing:1px}.error-details{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding:1rem;background:#ffffffb3;border-radius:12px}.error-wrong,.error-correct{display:flex;flex-direction:column;gap:.375rem}.error-label{font-size:.7rem;font-weight:700;color:#a0aec0;text-transform:uppercase;letter-spacing:.75px;display:flex;align-items:center;gap:.375rem}.error-text{font-size:1rem;font-weight:600;color:var(--text-dark);line-height:1.5}.error-wrong .error-text{color:#ff6b6b}.error-correct .error-text{color:#51cf66}.error-explanation{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;color:#4a5568;line-height:1.6;padding:1rem;background:#ffd70014;border-radius:12px;border:1px solid rgba(255,215,0,.2)}.error-explanation-icon{font-size:1.25rem;flex-shrink:0;margin-top:.125rem}.error-explanation-text{flex:1}.more-errors{text-align:center;padding:1rem;font-size:.95rem;color:#718096;font-weight:700;background:var(--bg-light);border-radius:12px;display:flex;align-items:center;justify-content:center;gap:.5rem}.vocabulary-list{display:flex;flex-wrap:wrap;gap:.75rem}.vocab-chip{background:linear-gradient(135deg,#4dabf7,#3b82f6);color:#fff;padding:.625rem 1.25rem;border-radius:24px;font-size:.95rem;font-weight:700;box-shadow:0 4px 16px #4dabf74d;animation:vocabFadeIn .4s cubic-bezier(.4,0,.2,1) both;transition:all .3s ease}@keyframes vocabFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.vocab-chip:hover{transform:translateY(-2px);box-shadow:0 6px 20px #4dabf766}.feedback-list{display:flex;flex-direction:column;gap:1rem}.feedback-item{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--bg-light);border-radius:16px;box-shadow:0 2px 8px #0000000a;animation:feedbackSlideIn .4s cubic-bezier(.4,0,.2,1) both;transition:all .3s ease}@keyframes feedbackSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.feedback-item:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.feedback-icon-wrapper{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#fffc;flex-shrink:0;box-shadow:0 2px 8px #0000000f}.feedback-icon{font-size:1.5rem}.feedback-text{flex:1;font-size:1rem;color:var(--text-dark);line-height:1.6;font-weight:600;padding-top:.5rem}.summary-actions{padding:1.5rem 2rem;padding-bottom:calc(1.5rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:.875rem;background:var(--bg-white);border-top:1px solid rgba(0,0,0,.06);flex-shrink:0;box-shadow:0 -4px 16px #0000000a}.summary-btn{padding:.875rem 1.25rem;border-radius:14px;font-size:.95rem;font-weight:700;border:none;cursor:pointer;font-family:Inter,sans-serif;display:flex;align-items:center;justify-content:center;gap:.625rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.summary-btn-icon{font-size:1.125rem;transition:transform .3s ease}.summary-btn:hover .summary-btn-icon{transform:scale(1.15)}.summary-btn-primary{background:linear-gradient(135deg,#ff6b6b,#ff8787);color:#fff;box-shadow:0 4px 16px #ff6b6b4d}.summary-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #ff6b6b66}.summary-btn-primary:active{transform:translateY(0) scale(.98)}.summary-btn-secondary{background:linear-gradient(135deg,#9775fa,#8b5cf6);color:#fff;box-shadow:0 4px 16px #9775fa4d}.summary-btn-secondary:hover{transform:translateY(-2px);box-shadow:0 8px 24px #9775fa66}.summary-btn-secondary:active{transform:translateY(0) scale(.98)}.summary-btn-tertiary{background:var(--bg-white);color:var(--text-dark);border:2px solid rgba(0,0,0,.1);box-shadow:0 2px 8px #0000000a}.summary-btn-tertiary:hover{border-color:#ff6b6b;background:#ff6b6b0d;transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.summary-btn-tertiary:active{transform:scale(.98)}.dashboard-overlay{position:fixed;inset:0;background:var(--bg-light);z-index:2500;opacity:0;transition:opacity .3s ease;overflow-y:auto;-webkit-overflow-scrolling:touch}.dashboard-overlay.show{opacity:1}.dashboard-container{min-height:100vh;animation:dashboardSlideIn .4s cubic-bezier(.4,0,.2,1)}@keyframes dashboardSlideIn{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.dashboard-header{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);padding:2rem 1.5rem;color:#fff;position:sticky;top:0;z-index:10;box-shadow:0 4px 12px #00000026;font-size:1.75rem;display:flex;align-items:center;gap:1rem}.dashboard-close-btn{background:#fff3;border:none;width:40px;height:40px;border-radius:50%;color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.dashboard-close-btn:active{transform:scale(.95);background:#ffffff4d}.dashboard-header h2{font-size:1.5rem;font-weight:800;flex:1}.dashboard-content{padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.dashboard-section{background:var(--bg-white);border-radius:20px;padding:2rem 1.5rem;box-shadow:0 4px 12px #00000014}.dashboard-section h3{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin-bottom:1.25rem;display:flex;align-items:center;gap:.5rem}.overview-cards{display:flex;flex-direction:column;gap:1rem}.overview-card{background:var(--bg-light);border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;align-items:center;text-align:center}.overview-card.level-card{background:linear-gradient(135deg,#ff6b351a,#ff6b350d);border:2px solid var(--primary);align-items:flex-start;text-align:left}.level-badge{display:inline-block;padding:.5rem 1rem;border-radius:20px;font-size:1rem;font-weight:800;margin-bottom:.75rem;color:#fff}.level-badge.a1,.level-badge.a2{background:linear-gradient(135deg,#10b981,#059669)}.level-badge.b1,.level-badge.b2{background:linear-gradient(135deg,#3b82f6,#2563eb)}.level-badge.c1,.level-badge.c2{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.level-name{font-size:1.3rem;font-weight:700;color:var(--text-dark);margin-bottom:.25rem}.level-description{font-size:.9rem;color:#666}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.card-icon{font-size:2rem;margin-bottom:.5rem}.card-value{font-size:2rem;font-weight:800;color:var(--primary);line-height:1;margin-bottom:.25rem}.card-label{font-size:.75rem;color:#666;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.streak-card .card-value{color:#ef4444}.skills-list{display:flex;flex-direction:column;gap:1.25rem}.skill-item{display:flex;flex-direction:column;gap:.5rem}.skill-header{display:flex;justify-content:space-between;align-items:center}.skill-label{font-size:.95rem;font-weight:600;color:var(--text-dark)}.skill-value{font-size:.95rem;font-weight:700;color:var(--primary)}.skill-bar-container{height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden}.skill-bar{height:100%;border-radius:6px;transition:width .6s cubic-bezier(.4,0,.2,1)}.sessions-list{display:flex;flex-direction:column;gap:.75rem}.session-item{background:var(--bg-light);border-radius:12px;padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem}.session-main{flex:1}.session-title{font-size:1rem;font-weight:700;color:var(--text-dark);margin-bottom:.25rem;display:flex;align-items:center;gap:.5rem}.session-level{font-size:.7rem;font-weight:600;color:#666;background:#fff;padding:.25rem .5rem;border-radius:8px;text-transform:capitalize}.session-meta{font-size:.8rem;color:#999}.session-stats{display:flex;gap:1rem}.session-stat{display:flex;flex-direction:column;align-items:center;text-align:center}.session-stat .stat-value{font-size:1.1rem;font-weight:800;color:var(--primary);line-height:1}.session-stat .stat-label{font-size:.65rem;color:#999;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.weak-areas-list{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.weak-area-chip{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:.5rem 1rem;border-radius:20px;font-size:.9rem;font-weight:600;box-shadow:0 4px 12px #f59e0b4d}.weak-areas-tip{font-size:.85rem;color:#666;font-style:italic}.achievements-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.achievement-card{background:var(--bg-light);border-radius:12px;padding:1rem;text-align:center;position:relative;transition:all .3s ease}.achievement-card.unlocked{background:linear-gradient(135deg,#ff6b351a,#ff6b350d);border:2px solid var(--primary)}.achievement-card.locked{opacity:.5}.achievement-icon{font-size:2.5rem;margin-bottom:.5rem}.achievement-name{font-size:.75rem;font-weight:600;color:var(--text-dark)}.achievement-lock{position:absolute;top:.5rem;right:.5rem;font-size:1rem;opacity:.5}.no-data{text-align:center;padding:2rem 1rem;color:#999;font-style:italic}@media(min-width:768px){#app{max-width:480px;margin:0 auto;box-shadow:0 0 60px #0000004d}.brand{font-size:3.2rem}.scenarios-scroll{gap:1.25rem}.scenario-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.level-card:hover{transform:translateY(-4px)}}@supports (padding: max(0px)){.screen{padding-bottom:max(0px,env(safe-area-inset-bottom))}.practice-controls{padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}}#welcome-screen{background:var(--bg-light);display:flex;flex-direction:column}.welcome-content{flex:1;padding:2rem 1.5rem 2.5rem;display:flex;flex-direction:column;justify-content:space-between}.welcome-features{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.feature-item{text-align:center;padding:2rem 1.5rem}.feature-icon{font-size:3rem;margin-bottom:1rem;display:block}.feature-item h3{font-size:1.25rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.feature-item p{font-size:.95rem;color:#64748b;line-height:1.6}.welcome-actions{display:flex;flex-direction:column;gap:1rem}.btn-large{padding:1.1rem 2rem;font-size:1.05rem}.btn-text{background:none;border:none;color:var(--primary);font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;padding:.75rem;transition:all .2s ease}.btn-text:active{transform:scale(.98)}#auth-screen{background:var(--bg-light)}.auth-header{background:var(--bg-white);padding:1.25rem 1.5rem;box-shadow:0 2px 8px #0000000d;display:flex;align-items:center;gap:1rem;position:sticky;top:0;z-index:10}.auth-header h2{font-size:1.5rem;font-weight:800;color:var(--text-dark)}.auth-content{padding:2rem 1.5rem;max-width:480px;margin:0 auto;width:100%}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-dark)}.form-group input{padding:1rem 1.25rem;border:2px solid #E5E7EB;border-radius:12px;font-size:1rem;font-family:inherit;transition:all .2s ease;background:var(--bg-white)}.form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #ff6b6b1a}.error-message{background:#ef44441a;border:1px solid #EF4444;border-radius:8px;padding:.75rem 1rem;font-size:.875rem;color:#dc2626;font-weight:500;display:none}.auth-divider{margin:1.5rem 0;text-align:center;position:relative}.auth-divider:before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:#e5e7eb;z-index:0}.auth-divider span{position:relative;background:var(--bg-light);padding:0 1rem;font-size:.875rem;color:#9ca3af;font-weight:500;z-index:1}.btn-social{width:100%;padding:1rem 1.5rem;border:2px solid #E5E7EB;border-radius:12px;background:var(--bg-white);font-size:1rem;font-weight:600;color:var(--text-dark);font-family:inherit;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s ease}.btn-social:hover{border-color:#d1d5db;background:#f9fafb}.btn-social:active{transform:scale(.98)}.auth-toggle{margin-top:1rem;text-align:center}#app-container{display:flex;flex-direction:column;height:100vh;background:var(--bg-light)}.tab-content{display:none;flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:0}.tab-content.active{display:flex;flex-direction:column}#home-tab{padding-bottom:0;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}.progress-tab-hero{position:relative;border-radius:0 0 32px 32px;overflow:hidden;margin-bottom:0;box-shadow:0 8px 24px #ff6b6b40;flex-shrink:0}.progress-tab-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787 40%,#ffa985);background-size:150% 150%;animation:progressHeroGradientShift 8s ease infinite;z-index:0}@keyframes progressHeroGradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.progress-tab-hero-content{position:relative;z-index:1;padding:2rem 1.5rem 2.25rem;text-align:center}.progress-tab-hero-icon{margin-bottom:.75rem;animation:progressBounce 2s ease-in-out infinite;filter:drop-shadow(0 4px 16px rgba(0,0,0,.2));display:flex;align-items:center;justify-content:center}@keyframes progressBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.progress-tab-hero-title{font-size:1.875rem;font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.5px;text-shadow:0 2px 12px rgba(0,0,0,.15);margin:0 0 .5rem}.progress-tab-hero-subtitle{font-size:1rem;color:#fffffff2;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.1);margin:0}.practice-tab-hero{position:relative;border-radius:0 0 32px 32px;overflow:hidden;margin-bottom:0;box-shadow:0 8px 24px #ff6b6b40;flex-shrink:0}.practice-tab-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#e28b75);background-size:150% 150%;animation:practiceHeroGradientShift 8s ease infinite;z-index:0}@keyframes practiceHeroGradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.practice-tab-hero-content{position:relative;z-index:1;padding:2.5rem 1.5rem;padding-top:max(2.5rem,env(safe-area-inset-top) + 1.5rem);text-align:center}.practice-tab-hero-icon{margin-bottom:.75rem;animation:practicePulse 2s ease-in-out infinite;filter:drop-shadow(0 4px 16px rgba(0,0,0,.2));display:flex;align-items:center;justify-content:center}@keyframes practicePulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.practice-tab-hero-title{font-size:1.75rem;font-weight:800;color:#fff;line-height:1.15;letter-spacing:-.6px;text-shadow:0 2px 12px rgba(0,0,0,.15);margin:0 0 .625rem}.practice-tab-hero-subtitle{font-size:.938rem;color:#ffffffeb;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.1);margin:0;line-height:1.4}.tab-header{padding:1.5rem 1.5rem 1rem;background:var(--bg-white);box-shadow:0 2px 8px #0000000a;display:none}.tab-header h1{font-size:1.75rem;font-weight:800;color:var(--text-dark);margin-bottom:.25rem;letter-spacing:-.5px}.tab-header p{font-size:.95rem;color:#64748b;font-weight:500}.tab-content-scroll{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:1rem;background:var(--bg-light)}.home-hero{position:relative;border-radius:0 0 32px 32px;overflow:hidden;margin-bottom:0;box-shadow:0 8px 24px #ff6b6b40;flex-shrink:0;padding-top:.5rem}.home-hero-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787 40%,#ffa985);background-size:150% 150%;animation:homeHeroGradientShift 8s ease infinite;z-index:0}@keyframes homeHeroGradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.home-hero-content{position:relative;z-index:1;padding:2.5rem 1.5rem 2rem;padding-top:max(2.5rem,env(safe-area-inset-top) + 1.5rem)}.home-hero-top{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.75rem}.home-hero-greeting{display:flex;align-items:center;gap:1rem;flex:1;min-width:0}.home-hero-emoji{font-size:3rem;animation:homeHeroWave 2.5s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(0,0,0,.15))}@keyframes homeHeroWave{0%,to{transform:rotate(0)}10%,30%{transform:rotate(14deg)}20%,40%{transform:rotate(-8deg)}50%,60%{transform:rotate(14deg)}70%{transform:rotate(0)}}.home-hero-text{flex:1;min-width:0}.home-hero-time{font-size:.688rem;color:#ffffffeb;font-weight:700;margin-bottom:.188rem;letter-spacing:1.2px;text-transform:uppercase;text-shadow:0 1px 3px rgba(0,0,0,.12)}.home-hero-name{font-size:2rem;font-weight:800;color:#fff;line-height:1.1;letter-spacing:-.8px;text-shadow:0 2px 12px rgba(0,0,0,.15);margin:0}.home-hero-avatar{flex-shrink:0}.avatar-circle{width:54px;height:54px;border-radius:50%;background:#ffffff40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2.5px solid rgba(255,255,255,.5);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #0003}.avatar-letter{font-size:1.5rem;font-weight:800;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.2)}.home-hero-stats{display:flex;align-items:center;justify-content:center;gap:2rem;padding:1.125rem 1.5rem;background:#ffffff2e;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:22px;border:2px solid rgba(255,255,255,.28);box-shadow:0 4px 20px #00000026;margin-bottom:1.375rem}.home-hero-stat{display:flex;align-items:center;gap:.625rem}.home-hero-stat-icon{font-size:1.75rem;line-height:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.15))}.home-hero-stat-info{display:flex;flex-direction:column;gap:.125rem}.home-hero-stat-value{font-size:1.625rem;font-weight:800;color:#fff;line-height:1;letter-spacing:-.6px;text-shadow:0 2px 8px rgba(0,0,0,.15)}.home-hero-stat-label{font-size:.688rem;color:#ffffffeb;font-weight:700;text-transform:uppercase;letter-spacing:.8px;white-space:nowrap}.home-hero-divider{width:2px;height:2.5rem;background:#ffffff4d;border-radius:2px}.home-hero-message{text-align:center;font-size:.938rem;font-weight:600;color:#fff;letter-spacing:.15px;text-shadow:0 1px 4px rgba(0,0,0,.15);margin:0;opacity:.94;line-height:1.4}.home-content{padding:1.625rem 1.5rem 0;padding-bottom:calc(6rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:2rem;background:linear-gradient(to bottom,rgba(255,107,74,.02) 0%,transparent 120px)}.continue-card{background:linear-gradient(135deg,#fff9f6,#fffcfa);border:2px solid rgba(255,107,74,.15);border-radius:22px;padding:1.375rem 1.25rem;animation:slideIn .4s ease;position:relative;overflow:hidden;box-shadow:0 2px 16px #ff6b4a0f;margin-bottom:.25rem}.continue-card:before{content:"";position:absolute;top:-20px;right:-20px;width:80px;height:80px;background:radial-gradient(circle,rgba(255,107,74,.08) 0%,transparent 70%);border-radius:50%}.continue-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.875rem;position:relative;z-index:1}.continue-icon{font-size:.875rem;animation:breathe 2s ease-in-out infinite}.continue-header h3{font-size:.688rem;font-weight:800;color:var(--primary);text-transform:uppercase;letter-spacing:1px}.continue-info{display:flex;align-items:center;gap:1rem;position:relative;z-index:1}.scenario-emoji{font-size:2rem;background:#fff;width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:14px;box-shadow:0 2px 8px #00000014;flex-shrink:0}.continue-details{flex:1}.continue-title{font-size:1rem;font-weight:800;color:var(--text-dark);margin-bottom:.25rem;letter-spacing:-.3px}.continue-meta{font-size:.75rem;color:#94a3b8;font-weight:600;display:flex;align-items:center;gap:.375rem}.btn-continue{padding:.75rem 1.25rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;border:none;border-radius:12px;font-size:.875rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #ff6b4a40;position:relative;z-index:1;letter-spacing:.2px;margin-left:auto;white-space:nowrap}.btn-continue:active{transform:scale(.96);box-shadow:0 1px 4px #ff6b4a40}.quick-start-section{margin-top:-.25rem}.section-heading{font-size:.688rem;font-weight:800;color:#94a3b8;margin-bottom:1.125rem;letter-spacing:1.2px;text-transform:uppercase}.quick-scenarios{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.quick-scenario-card{background:#fff;border-radius:18px;padding:1.375rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.75rem;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000a,0 1px 3px #0000000f;border:1.5px solid rgba(0,0,0,.04);position:relative;overflow:hidden}.quick-scenario-card:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at top right,rgba(255,107,107,.03) 0%,transparent 60%);opacity:0;transition:opacity .3s ease}.quick-scenario-card:active{transform:scale(.96);box-shadow:0 1px 4px #00000014;border-color:#ff6b4a26}.quick-scenario-card:active:after{opacity:1}.quick-scenario-icon{font-size:2.5rem;background:linear-gradient(135deg,#fff7ed,#ffedd5);width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:16px;transition:transform .25s cubic-bezier(.4,0,.2,1);box-shadow:0 3px 8px #00000014;position:relative;z-index:1}.quick-scenario-card:active .quick-scenario-icon{transform:scale(1.05) rotate(-3deg)}.quick-scenario-card[data-scenario=restaurant]{border-color:#fc801914}.quick-scenario-card[data-scenario=restaurant] .quick-scenario-icon{background:linear-gradient(135deg,#fff7ed,#ffedd5);box-shadow:0 3px 10px #fc801926}.quick-scenario-card[data-scenario=shopping]{border-color:#3b82f614}.quick-scenario-card[data-scenario=shopping] .quick-scenario-icon{background:linear-gradient(135deg,#eff6ff,#dbeafe);box-shadow:0 3px 10px #3b82f626}.quick-scenario-card[data-scenario=interview]{border-color:#ef444414}.quick-scenario-card[data-scenario=interview] .quick-scenario-icon{background:linear-gradient(135deg,#fef2f2,#fee2e2);box-shadow:0 3px 10px #ef444426}.quick-scenario-card[data-scenario=casual]{border-color:#84cc1614}.quick-scenario-card[data-scenario=casual] .quick-scenario-icon{background:linear-gradient(135deg,#f7fee7,#ecfccb);box-shadow:0 3px 10px #84cc1626}.quick-scenario-card span{font-size:.875rem;font-weight:700;color:var(--text-dark);letter-spacing:-.1px;position:relative;z-index:1}.home-stats{margin-top:0}.streak-hero-card{background:linear-gradient(135deg,#ff6b4a,#ff8f70);border-radius:20px;padding:1.75rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 8px 32px #ff6b4a40,0 2px 8px #ff6b4a26;position:relative;overflow:hidden;animation:slideIn .5s cubic-bezier(.4,0,.2,1)}.streak-hero-card:before{content:"";position:absolute;top:-80px;right:-80px;width:160px;height:160px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;animation:float 6s ease-in-out infinite}.streak-hero-content{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;position:relative;z-index:1}.streak-hero-left{flex:1;min-width:0}.streak-hero-label{font-size:.75rem;color:#ffffffd9;font-weight:600;margin-bottom:.5rem;letter-spacing:.5px;text-transform:uppercase}.streak-hero-value{display:flex;align-items:baseline;gap:.375rem;margin-bottom:.5rem}.streak-hero-value span:first-child{font-size:3rem;font-weight:900;color:#fff;line-height:1;letter-spacing:-2px;text-shadow:0 4px 12px rgba(0,0,0,.2);animation:countUp .8s cubic-bezier(.4,0,.2,1)}@keyframes countUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.streak-hero-unit{font-size:1.125rem;font-weight:600;color:#ffffffe6;letter-spacing:.3px}.streak-hero-message{font-size:.9375rem;color:#fffffff2;font-weight:600;letter-spacing:.2px}.circular-progress{position:relative;width:90px;height:90px;flex-shrink:0}.progress-ring{transform:rotate(-90deg);width:90px;height:90px}.progress-ring-circle-bg{opacity:.25}.progress-ring-circle{stroke-dasharray:238.76;stroke-dashoffset:238.76;transition:stroke-dashoffset 1s cubic-bezier(.4,0,.2,1);stroke-linecap:round;transform-origin:center}.progress-flame{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:2.25rem;animation:flameFloat 2s ease-in-out infinite;line-height:1}@keyframes flameFloat{0%,to{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 2px 8px rgba(255,165,0,.4))}50%{transform:translate(-50%,-55%) scale(1.05);filter:drop-shadow(0 4px 12px rgba(255,165,0,.6))}}.stats-cards-modern{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:2rem}.stat-modern-card{background:#fff;border-radius:18px;padding:1.125rem .875rem;box-shadow:0 2px 12px #0000000a,0 1px 4px #00000005;border:2px solid transparent;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;animation:slideIn .6s cubic-bezier(.4,0,.2,1);min-height:110px;display:flex;flex-direction:column}.stat-modern-card:nth-child(2){animation-delay:.1s}.stat-modern-card:nth-child(3){animation-delay:.2s}.stat-modern-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary) 0%,var(--primary-light) 100%);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.4,0,.2,1)}.stat-modern-card:active:before{transform:scaleX(1)}.stat-modern-card:active{transform:translateY(-4px);box-shadow:0 8px 24px #ff6b4a1f,0 4px 12px #ff6b4a14;border-color:#ff6b4a26}.stat-modern-icon{font-size:1.625rem;margin-bottom:.625rem;filter:drop-shadow(0 2px 6px rgba(0,0,0,.08));animation:fadeIn .5s ease}.stat-modern-content{flex:1;display:flex;flex-direction:column;justify-content:center}.stat-modern-value{font-size:1.625rem;font-weight:800;color:var(--primary);line-height:1;margin-bottom:.375rem;letter-spacing:-.5px;animation:countUp .8s cubic-bezier(.4,0,.2,1)}.stat-modern-label{font-size:.6875rem;color:#94a3b8;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.stat-modern-trend{position:absolute;top:1rem;right:1rem;font-size:1.25rem;font-weight:800;opacity:.3;transition:all .3s ease}.stat-trend-up{color:#10b981}.stat-modern-card:hover .stat-modern-trend{opacity:1;transform:scale(1.1)}.stat-accuracy-bar{position:absolute;bottom:0;left:0;right:0;height:4px;background:#f3f4f6;border-radius:0 0 18px 18px;overflow:hidden}.accuracy-bar-fill{height:100%;background:linear-gradient(90deg,#10b981,#34d399);transition:width 1s cubic-bezier(.4,0,.2,1);border-radius:0 0 18px 18px}.profile-content{padding:1.5rem 1.5rem calc(5rem + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:1.5rem}.profile-card{background:var(--bg-white);border-radius:20px;padding:2rem 1.5rem;text-align:center;box-shadow:0 2px 8px #0000000a}.profile-avatar{display:flex;justify-content:center;margin-bottom:1rem}.avatar-circle{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:800;color:#fff}.profile-card h2{font-size:1.5rem;font-weight:800;color:var(--text-dark);margin-bottom:.25rem}.profile-card p{font-size:.95rem;color:#64748b}.profile-section{background:var(--bg-white);border-radius:20px;padding:2rem 1.5rem;box-shadow:0 2px 8px #0000000a}.profile-section h3{font-size:.85rem;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem}.settings-list{display:flex;flex-direction:column}.setting-item{display:flex;align-items:center;gap:1rem;padding:1rem 0;border:none;background:none;cursor:pointer;transition:all .2s ease;font-family:inherit;width:100%;text-align:left}.setting-item:not(:last-child){border-bottom:1px solid #F3F4F6}.setting-item:active{transform:scale(.98)}.setting-icon{font-size:1.5rem}.setting-label{flex:1;font-size:1rem;font-weight:600;color:var(--text-dark)}.setting-arrow{font-size:1.25rem;color:#9ca3af;font-weight:600}.setting-toggle{cursor:default}.toggle-switch{position:relative;display:inline-block;width:51px;height:31px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background:#e5e7eb;transition:all .3s ease;border-radius:31px}.toggle-slider:before{position:absolute;content:"";height:23px;width:23px;left:4px;bottom:4px;background:#fff;transition:all .3s ease;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(20px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 3px #ff6b4a33}.profile-actions{display:flex;flex-direction:column;align-items:center;gap:1rem}.btn-logout{width:100%;padding:1rem 1.5rem;background:#ef44441a;color:#dc2626;border:2px solid #EF4444;border-radius:12px;font-size:1rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s ease}.btn-logout:active{transform:scale(.98)}.app-version{font-size:.85rem;color:#9ca3af;text-align:center}.profile-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.profile-stat-card{background:linear-gradient(135deg,#fff9f6,#fffcfa);border:2px solid rgba(255,107,74,.12);border-radius:18px;padding:1.5rem 1rem;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.profile-stat-card:before{content:"";position:absolute;top:-20px;right:-20px;width:60px;height:60px;background:radial-gradient(circle,rgba(255,107,74,.08) 0%,transparent 70%);border-radius:50%}.profile-stat-card:active{transform:translateY(-3px);box-shadow:0 4px 16px #ff6b4a26;border-color:#ff6b4a40}.profile-stat-icon{font-size:2rem;margin-bottom:.75rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));animation:fadeIn .5s ease}.profile-stat-value{font-size:2rem;font-weight:800;color:var(--primary);line-height:1;margin-bottom:.5rem;letter-spacing:-.5px;animation:fadeIn .6s ease}.profile-stat-label{font-size:.7rem;color:#94a3b8;font-weight:700;text-transform:uppercase;letter-spacing:.6px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-editable-list{display:flex;flex-direction:column}.profile-editable-item{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0;border:none;background:none;cursor:pointer;transition:all .3s var(--spring);font-family:inherit;width:100%;text-align:left;position:relative}.profile-editable-item:not(:last-child){border-bottom:1px solid rgba(255,107,107,.08)}.profile-editable-item:before{content:"";position:absolute;inset:-.5rem;background:radial-gradient(circle at center,rgba(255,107,107,.08) 0%,transparent 70%);opacity:0;transition:opacity .3s;border-radius:12px;pointer-events:none}.profile-editable-item:hover:before{opacity:1}.profile-editable-item:hover{transform:translate(4px)}.profile-editable-item:active{transform:translate(4px) scale(.98)}.profile-editable-item.locked{cursor:not-allowed;opacity:.6}.profile-editable-item.locked:hover{transform:none}.profile-editable-item.locked:before{display:none}.editable-item-content{display:flex;align-items:center;gap:1rem;flex:1}.editable-icon{font-size:2rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.08));transition:transform .3s var(--spring)}.profile-editable-item:hover .editable-icon{transform:scale(1.1) rotate(-5deg)}.editable-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.editable-label{font-size:.875rem;font-weight:600;color:#64748b;text-transform:capitalize}.editable-value{font-size:1.05rem;font-weight:600;color:var(--text-dark);line-height:1.3}.editable-arrow{font-size:1.25rem;color:var(--primary);font-weight:400;transition:all .3s var(--spring)}.profile-editable-item:hover .editable-arrow{transform:translate(4px);color:var(--accent)}.lock-icon{font-size:1.125rem;color:#9ca3af}.interests-chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.mini-chip{background:linear-gradient(135deg,#ff6b6b1a,#f973161a);border:1px solid rgba(255,107,107,.2);border-radius:20px;padding:.375rem .75rem;font-size:.8rem;font-weight:600;color:var(--primary);display:inline-flex;align-items:center;gap:.375rem}.mini-chip-emoji{font-size:1rem}.profile-edit-modal{position:fixed;inset:0;z-index:10000;display:none;align-items:center;justify-content:center;padding:1rem}.profile-edit-modal.show{display:flex;animation:fadeIn .3s var(--ease-out)}.profile-edit-overlay{position:absolute;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,107,107,.15) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(249,115,22,.15) 0%,transparent 50%),#000000bf;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);animation:fadeIn .3s ease}.profile-edit-container{background:linear-gradient(135deg,#fffffff2,#ffffffe6);backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);border:1.5px solid rgba(255,255,255,.18);box-shadow:0 8px 32px #ff6b6b26,0 30px 60px -12px #00000040,inset 0 -1px #fff6,inset 0 1px #fffc;border-radius:32px;max-width:480px;width:100%;max-height:90vh;display:flex;flex-direction:column;position:relative;z-index:1;overflow:hidden;animation:modalEnter .5s var(--spring)}@keyframes modalEnter{0%{opacity:0;transform:scale(.9) translateY(30px)}60%{transform:scale(1.02) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}.profile-edit-header{padding:1.75rem 2rem 1.5rem;border-bottom:1px solid rgba(255,107,107,.08);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#fff9,#fff0)}.profile-edit-header h2{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--text-dark) 0%,var(--primary) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-close-btn{width:36px;height:36px;border-radius:50%;border:none;background:#ff6b6b1a;color:var(--primary);font-size:1.25rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s var(--spring)}.modal-close-btn:hover{background:#ff6b6b33;transform:scale(1.1) rotate(90deg)}.modal-close-btn:active{transform:scale(.95) rotate(90deg)}.profile-edit-content{flex:1;padding:2rem;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.profile-edit-footer{padding:1.5rem 2rem;border-top:1px solid rgba(255,107,107,.08);display:flex;gap:1rem;background:linear-gradient(180deg,#fff0,#ffffffb3)}.btn-modal-cancel,.btn-modal-save{flex:1;padding:1rem 1.5rem;border-radius:14px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s var(--spring);border:none;font-family:inherit}.btn-modal-cancel{background:#fffc;color:var(--text-dark);border:2px solid rgba(255,107,107,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-modal-cancel:hover{background:#ff6b6b1a;border-color:var(--primary);transform:translateY(-2px)}.btn-modal-save{background:linear-gradient(135deg,#ff6b6b,#ff8a4d,#f97316);color:#fff;box-shadow:0 4px 16px #ff6b6b59,0 1px 3px #0000001a,inset 0 1px #ffffff4d}.btn-modal-save:hover{transform:translateY(-3px);box-shadow:0 8px 24px #ff6b6b73,0 2px 6px #0000001a,inset 0 1px #fff6}.btn-modal-save:active,.btn-modal-cancel:active{transform:translateY(-1px) scale(.98)}.voice-btn{background:linear-gradient(135deg,#fffffff2,#ffffffd9);border:2.5px solid rgba(255,107,107,.15);border-radius:16px;padding:1rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;transition:all .3s var(--spring);position:relative;overflow:hidden}.voice-btn:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,107,107,.08) 0%,transparent 70%);opacity:0;transition:opacity .3s}.voice-btn:hover:before{opacity:1}.voice-btn:hover{transform:translateY(-4px) scale(1.02);border-color:#ff6b6b4d;box-shadow:0 8px 20px #ff6b6b26,0 2px 8px #0000000d,inset 0 -1px #fff6}.voice-btn:active{transform:translateY(-2px) scale(.98)}.voice-btn.selected{background:linear-gradient(135deg,#ff6b6b1a,#f973161a);border-color:var(--primary);box-shadow:0 0 0 3px #ff6b6b26,0 8px 20px #ff6b6b33,inset 0 1px #ffffff80}.voice-icon{font-size:1.75rem;line-height:1;transition:transform .3s var(--spring)}.voice-btn:hover .voice-icon{transform:scale(1.15) rotate(5deg)}.voice-btn.selected .voice-icon{transform:scale(1.1);filter:drop-shadow(0 2px 4px rgba(255,107,107,.3))}.voice-name{font-weight:700;font-size:1rem;color:#333;margin-bottom:.15rem}.voice-desc{font-size:.75rem;color:#666;font-weight:500}.voice-btn.selected .voice-name{color:var(--primary)}.voice-btn.selected .voice-desc{color:#555}@media(max-width:480px){.profile-edit-container{max-height:95vh;border-radius:24px}.profile-edit-header{padding:1.5rem 1.5rem 1.25rem}.profile-edit-content{padding:1.5rem}.profile-edit-footer{padding:1.25rem 1.5rem;flex-direction:column-reverse}.btn-modal-cancel,.btn-modal-save{width:100%}}.dialog-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:1000;padding:2rem 1.5rem;animation:fadeIn .2s ease}.dialog-overlay.show{display:flex}.dialog-content{background:#fff;border-radius:24px;padding:2rem 1.5rem;max-width:360px;width:100%;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s cubic-bezier(.4,0,.2,1);text-align:center}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.dialog-icon{font-size:3rem;margin-bottom:1rem;animation:bounce .5s ease}@keyframes bounce{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.dialog-title{font-size:1.375rem;font-weight:800;color:var(--text-dark);margin-bottom:.75rem;letter-spacing:-.3px}.dialog-message{font-size:.9375rem;color:#64748b;line-height:1.6;margin-bottom:2rem}.dialog-actions{display:flex;gap:.75rem}.btn-dialog{flex:1;padding:.875rem;border-radius:12px;font-size:.9375rem;font-weight:700;font-family:inherit;cursor:pointer;transition:all .2s ease;border:none}.btn-cancel{background:#f1f5f9;color:#64748b}.btn-cancel:active{background:#e2e8f0;transform:scale(.98)}.btn-confirm{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.btn-confirm:active{transform:scale(.98);box-shadow:0 1px 4px #ef44444d}.toast-notification{position:fixed;top:16px;left:50%;transform:translate(-50%) translateY(-150%);background:linear-gradient(135deg,#ef4444f2,#dc2626f2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);color:#fff;padding:.875rem 1.25rem;border-radius:12px;display:flex;align-items:center;gap:.625rem;box-shadow:0 4px 16px #ef444466,0 8px 32px #00000040,inset 0 1px #fff3;z-index:999999;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.34,1.56,.64,1);max-width:calc(100% - 32px);width:auto;font-size:.875rem;font-weight:600;letter-spacing:.01em;border:1px solid rgba(255,255,255,.1)}.toast-notification.show{opacity:1;transform:translate(-50%) translateY(0);pointer-events:auto}.toast-icon{font-size:1.125rem;display:flex;align-items:center;justify-content:center;width:22px;height:22px;background:#ffffff40;border-radius:50%;flex-shrink:0}.toast-message{font-size:.875rem;font-weight:600;letter-spacing:.2px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(0,0,0,.06);display:flex;justify-content:space-around;padding:.75rem 0 calc(.75rem + env(safe-area-inset-bottom));box-shadow:0 -4px 16px #0000000f;z-index:100}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .75rem;border:none;background:none;cursor:pointer;transition:transform var(--duration-base) var(--ease-out),color var(--duration-base);color:var(--gray-400);font-family:Inter,sans-serif;position:relative}.nav-item:active{transform:scale(.95)}.nav-item.active{color:var(--primary)}.nav-item.active:before{content:"";position:absolute;top:-.75rem;left:50%;transform:translate(-50%);width:32px;height:3px;background:var(--primary-gradient);border-radius:0 0 var(--radius-base) var(--radius-base);animation:nav-indicator-appear .3s var(--spring)}@keyframes nav-indicator-appear{0%{opacity:0;width:0}to{opacity:1;width:32px}}.nav-icon{stroke-width:2.5;transition:all var(--duration-base) var(--ease-out)}.nav-item.active .nav-icon{fill:#ff6b6b26;transform:scale(1.1)}.nav-label{font-size:var(--text-xs);font-weight:600;letter-spacing:.3px}#practice-screen.active~#app-container .bottom-nav,#level-screen.active~#app-container .bottom-nav{display:none}@supports (padding: max(0px)){.bottom-nav{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;z-index:2000;padding:2rem 1.5rem;animation:fadeIn .3s ease}.modal-overlay.show{display:flex}.modal-container{background:var(--bg-white);border-radius:24px;max-width:500px;width:100%;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 24px 64px #0000004d;animation:modalSlideUp .4s cubic-bezier(.4,0,.2,1);overflow:hidden}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:1.75rem 1.5rem 1rem;border-bottom:1px solid #F3F4F6;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-header h2{font-size:1.5rem;font-weight:800;color:var(--text-dark);letter-spacing:-.3px}.modal-close-btn{width:36px;height:36px;border-radius:50%;background:#f3f4f6;border:none;font-size:1.25rem;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.modal-close-btn:hover{background:#e5e7eb;color:var(--text-dark)}.modal-close-btn:active{transform:scale(.95)}.modal-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2rem 1.5rem}.privacy-section{margin-bottom:1.75rem}.privacy-section:last-child{margin-bottom:0}.privacy-section h3{font-size:1.1rem;font-weight:700;color:var(--text-dark);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.privacy-section p{font-size:.95rem;color:#64748b;line-height:1.7}.modal-footer{padding:1rem 1.5rem 1.5rem;border-top:1px solid #F3F4F6;flex-shrink:0}.modal-footer .btn-primary{width:100%}.network-warning{position:fixed;top:-60px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#ffa726,#ff6f00);color:#fff;padding:12px 24px;border-radius:0 0 12px 12px;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;gap:12px;z-index:10000;transition:top .3s cubic-bezier(.4,0,.2,1);font-weight:600;font-size:14px}.network-warning.show{top:0}.network-warning-icon{font-size:20px;animation:pulse 2s infinite}.network-warning-text{font-size:14px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.toast-notification.toast-success{background:linear-gradient(135deg,#10b981f2,#059669f2);box-shadow:0 4px 16px #10b98166,0 8px 32px #00000040,inset 0 1px #fff3}.toast-notification.toast-error{background:linear-gradient(135deg,#ef4444f2,#dc2626f2);box-shadow:0 4px 16px #ef444466,0 8px 32px #00000040,inset 0 1px #fff3}.toast-notification.toast-info{background:linear-gradient(135deg,#3b82f6f2,#2563ebf2);box-shadow:0 4px 16px #3b82f666,0 8px 32px #00000040,inset 0 1px #fff3}.btn-primary:disabled,.btn-secondary:disabled{opacity:.6;cursor:not-allowed;filter:grayscale(.3)}.btn-primary.loading:after,.btn-secondary.loading:after{content:"";width:16px;height:16px;border:2px solid white;border-top-color:transparent;border-radius:50%;display:inline-block;margin-left:8px;animation:spin .8s linear infinite;vertical-align:middle}@keyframes spin{to{transform:rotate(360deg)}}.dialog-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.dialog-content{animation:dialogBounceIn .4s cubic-bezier(.68,-.55,.27,1.55)}@keyframes dialogBounceIn{0%{opacity:0;transform:scale(.3) translateY(-50px)}50%{transform:scale(1.05)}to{opacity:1;transform:scale(1) translateY(0)}}.status-indicator.error{animation:shake .5s ease-in-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.error-message{animation:fadeInDown .3s ease-out}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.network-warning{font-size:12px;padding:10px 16px}.dialog-content{margin:16px;max-width:calc(100% - 32px)}.toast-notification{top:16px!important;left:16px;right:16px;max-width:calc(100% - 32px);transform:translateY(-150%)!important}.toast-notification.show{transform:translateY(0)!important}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}button:focus-visible,input:focus-visible,.nav-item:focus-visible{outline:3px solid #FF6B6B;outline-offset:2px}@media(prefers-contrast:high){.btn-primary,.btn-secondary,.dialog-content,.toast-notification{border:2px solid currentColor}.network-warning{border:2px solid white}}@media print{.bottom-nav,.network-warning,.toast-notification,.loading-overlay,.fab-hint{display:none!important}.app-container{background:#fff!important;color:#000!important}}.onboarding-overlay{position:fixed;inset:0;background:radial-gradient(circle at 30% 20%,rgba(255,107,107,.15) 0%,transparent 50%),radial-gradient(circle at 70% 80%,rgba(249,115,22,.15) 0%,transparent 50%),#000000bf;backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity .5s var(--ease-out)}.onboarding-overlay.show{opacity:1}.onboarding-card{background:linear-gradient(135deg,#fffffff2,#ffffffe6);backdrop-filter:blur(40px) saturate(200%);-webkit-backdrop-filter:blur(40px) saturate(200%);border:1.5px solid rgba(255,255,255,.18);box-shadow:0 8px 32px #ff6b6b26,0 30px 60px -12px #00000040,inset 0 -1px #fff6,inset 0 1px #fffc;border-radius:32px;max-width:480px;width:100%;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;position:relative;animation:onboardingEntrance .6s var(--spring)}@keyframes onboardingEntrance{0%{opacity:0;transform:scale(.88) translateY(40px)}60%{transform:scale(1.02) translateY(-5px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.onboarding-card.slide-out{animation:slideOutSmooth .4s var(--ease-out) forwards}.onboarding-card.slide-in{animation:slideInSmooth .4s var(--spring)}@keyframes slideOutSmooth{0%{transform:translate(0) scale(1);opacity:1}to{transform:translate(-40px) scale(.95);opacity:0}}@keyframes slideInSmooth{0%{transform:translate(100%) scale(.95);opacity:0}70%{transform:translate(-10px) scale(1.01)}to{transform:translate(0) scale(1);opacity:1}}.onboarding-header{padding:1.75rem 2rem 1.5rem;border-bottom:1px solid rgba(255,107,107,.08);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#fff9,#fff0);position:relative}.progress-bar{flex:1;height:8px;background:linear-gradient(90deg,#ff6b6b1f,#f973161f);border-radius:999px;overflow:hidden;margin-right:1rem;position:relative;box-shadow:inset 0 1px 3px #00000014}.progress-fill{height:100%;background:linear-gradient(90deg,#ff6b6b,#ff8a4d,#f97316);border-radius:999px;transition:width .6s var(--spring);position:relative;box-shadow:0 2px 8px #ff6b6b66}.progress-fill:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{left:-100%}to{left:100%}}.onboarding-skip,.onboarding-back{background:none;border:none;color:var(--primary);font-weight:600;font-size:.9rem;cursor:pointer;padding:.5rem .75rem;font-family:inherit;transition:all .2s var(--ease-out);border-radius:8px;position:relative}.onboarding-skip:hover,.onboarding-back:hover{background:#ff6b6b1a;transform:translateY(-1px)}.onboarding-skip:active,.onboarding-back:active{transform:scale(.96)}.onboarding-content{flex:1;padding:2.5rem 2rem;overflow-y:auto;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.onboarding-content.completion{display:flex;flex-direction:column;align-items:center;text-align:center}.step-icon{font-size:5rem;margin-bottom:1.5rem;text-align:center;animation:iconBounce .6s var(--spring);filter:drop-shadow(0 4px 12px rgba(255,107,107,.25))}@keyframes iconBounce{0%{opacity:0;transform:scale(.5) rotate(-10deg)}60%{transform:scale(1.1) rotate(5deg)}to{opacity:1;transform:scale(1) rotate(0)}}.onboarding-content h2{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--text-dark) 0%,var(--primary) 100%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:.75rem;text-align:center;letter-spacing:-.5px;animation:fadeInUp .4s var(--ease-out) .1s both}.onboarding-content>p{color:#6b7280;font-size:1rem;margin-bottom:2.5rem;text-align:center;line-height:1.7;animation:fadeInUp .4s var(--ease-out) .2s both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-group{margin-bottom:2rem}.form-group label{display:block;font-weight:600;color:var(--text-dark);margin-bottom:1rem;font-size:.95rem}.gender-options,.preference-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem}.gender-btn,.preference-btn{background:linear-gradient(135deg,#ffffffe6,#ffffffb3);border:2px solid rgba(255,107,107,.15);border-radius:20px;padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.625rem;cursor:pointer;transition:all .3s var(--spring);font-family:inherit;font-size:.9rem;font-weight:600;color:var(--text-dark);position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}.gender-btn:before,.preference-btn:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,107,107,.3) 0%,transparent 70%);opacity:0;transform:scale(0);transition:all .5s var(--ease-out)}.gender-btn:active:before,.preference-btn:active:before{opacity:1;transform:scale(2);transition:all 0s}.gender-btn:hover,.preference-btn:hover{border-color:var(--primary);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 20px #ff6b6b40}.gender-btn.selected,.preference-btn.selected{border-color:var(--primary);background:linear-gradient(135deg,#ff6b6b26,#f9731626);box-shadow:0 4px 16px #ff6b6b4d,inset 0 1px #ffffff80;transform:scale(1.03)}.gender-btn.selected:hover,.preference-btn.selected:hover{transform:translateY(-4px) scale(1.05)}.gender-icon{font-size:2.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .3s var(--spring)}.gender-btn:hover .gender-icon,.preference-btn:hover .gender-icon{transform:scale(1.1) rotate(5deg)}.gender-btn.selected .gender-icon,.preference-btn.selected .gender-icon{transform:scale(1.15);animation:celebrateIcon .5s var(--spring)}@keyframes celebrateIcon{0%,to{transform:scale(1.15) rotate(0)}25%{transform:scale(1.2) rotate(-10deg)}75%{transform:scale(1.2) rotate(10deg)}}.pronouns-options{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.pronoun-btn{background:#fff;border:2px solid #E5E7EB;border-radius:12px;padding:.75rem 1.25rem;cursor:pointer;transition:all .2s;font-family:inherit;font-size:.9rem;font-weight:600;color:var(--text-dark)}.pronoun-btn:hover{border-color:var(--primary)}.pronoun-btn.selected{border-color:var(--primary);background:linear-gradient(135deg,#ff6b4a1a,#ffa9851a)}.custom-input{width:100%;padding:.875rem 1rem;border:2px solid #E5E7EB;border-radius:12px;font-family:inherit;font-size:.95rem;transition:border-color .2s}.custom-input:focus{outline:none;border-color:var(--primary)}.date-input{width:100%;padding:1rem;border:2px solid #E5E7EB;border-radius:12px;font-family:inherit;font-size:1rem;transition:border-color .2s}.date-input:focus{outline:none;border-color:var(--primary)}.error-message{color:var(--danger);font-size:.875rem;margin-top:.5rem;font-weight:500}.age-display{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:12px;display:flex;align-items:center;gap:.75rem;animation:fadeInUp .3s ease}.age-icon{font-size:1.5rem}.age-text{font-weight:600;color:#166534}.interests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:1rem;margin-bottom:2rem}.interest-chip{background:linear-gradient(135deg,#fffffff2,#fffc);border:2.5px solid rgba(255,107,107,.12);border-radius:20px;padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.625rem;cursor:pointer;transition:all .3s var(--spring);font-family:inherit;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000000a}.interest-chip:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,107,107,.1) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.interest-chip:hover:after{opacity:1}.interest-chip:hover{border-color:var(--primary);transform:translateY(-6px) scale(1.03);box-shadow:0 12px 24px #ff6b6b33}.interest-chip.selected{border-color:var(--primary);background:linear-gradient(135deg,#ff6b6b2e,#f973162e);box-shadow:0 4px 16px #ff6b6b4d,inset 0 1px #fff9,inset 0 0 20px #ff6b6b1a;transform:scale(1.02)}.interest-chip.selected:hover{transform:translateY(-6px) scale(1.05)}.interest-emoji{font-size:2.5rem;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:transform .3s var(--spring)}.interest-chip:hover .interest-emoji{transform:scale(1.15) rotate(-5deg)}.interest-chip.selected .interest-emoji{animation:popEmoji .5s var(--spring)}@keyframes popEmoji{0%,to{transform:scale(1)}50%{transform:scale(1.25) rotate(10deg)}}.interest-label{font-size:.875rem;font-weight:600;color:var(--text-dark);text-align:center;line-height:1.3}.interest-check{position:absolute;top:.625rem;right:.625rem;width:24px;height:24px;background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;opacity:0;transform:scale(0) rotate(-180deg);transition:all .3s var(--spring);box-shadow:0 2px 8px #ff6b6b66}.interest-chip.selected .interest-check{opacity:1;transform:scale(1) rotate(0)}.selected-count{text-align:center;font-size:1rem;color:#6b7280;font-weight:500;padding:1rem;background:linear-gradient(135deg,#ff6b6b0d,#f973160d);border-radius:12px;border:1px solid rgba(255,107,107,.1);animation:fadeInUp .3s var(--ease-out) .3s both}#selected-count{color:var(--primary);font-weight:800;font-size:1.1rem}.style-options{display:grid;grid-template-columns:1fr;gap:1rem}.style-card{background:linear-gradient(135deg,#fffffff2,#ffffffd9);border:2.5px solid rgba(255,107,107,.12);border-radius:20px;padding:1.5rem 1.25rem;cursor:pointer;transition:all .3s var(--spring);font-family:inherit;text-align:left;display:flex;align-items:center;gap:1.25rem;position:relative;overflow:hidden;box-shadow:0 2px 12px #0000000a}.style-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at center,rgba(255,107,107,.08) 0%,transparent 70%);opacity:0;transition:opacity .3s}.style-card:hover:before{opacity:1}.style-card:hover{border-color:var(--primary);transform:translateY(-4px) scale(1.01);box-shadow:0 8px 24px #ff6b6b33}.style-card.selected{border-color:var(--primary);background:linear-gradient(135deg,#ff6b6b26,#f9731626);box-shadow:0 4px 20px #ff6b6b4d,inset 0 1px #fff9;transform:scale(1.02)}.style-card.selected:hover{transform:translateY(-4px) scale(1.03)}.style-emoji{font-size:3rem;flex-shrink:0;filter:drop-shadow(0 2px 6px rgba(0,0,0,.1));transition:transform .3s var(--spring)}.style-card:hover .style-emoji{transform:scale(1.15) rotate(-5deg)}.style-card.selected .style-emoji{animation:wiggle .5s var(--spring)}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-10deg) scale(1.1)}75%{transform:rotate(10deg) scale(1.1)}}.style-title{font-size:1.05rem;font-weight:700;color:var(--text-dark);margin-bottom:.25rem;letter-spacing:-.025em}.style-desc{font-size:.9rem;color:#6b7280;line-height:1.4}.completion-animation{margin-bottom:2rem}.success-checkmark{width:120px;height:120px;margin:0 auto;position:relative}.success-checkmark.animate .check-icon{animation:checkmarkSlide .6s cubic-bezier(.65,0,.45,1) forwards}.check-icon{width:120px;height:120px;position:relative;border-radius:50%;box-sizing:content-box;border:4px solid var(--success)}.icon-line{height:5px;background-color:var(--success);display:block;border-radius:2px;position:absolute;z-index:10}.icon-line.line-tip{top:56px;left:25px;width:30px;transform:rotate(45deg);animation:checkTip .3s .3s cubic-bezier(.65,0,.45,1) forwards;opacity:0}.icon-line.line-long{top:50px;right:15px;width:60px;transform:rotate(-45deg);animation:checkLong .4s .5s cubic-bezier(.65,0,.45,1) forwards;opacity:0}@keyframes checkmarkSlide{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes checkTip{0%{width:0;opacity:0}to{width:30px;opacity:1}}@keyframes checkLong{0%{width:0;opacity:0}to{width:60px;opacity:1}}.icon-circle{top:-4px;left:-4px;z-index:10;width:120px;height:120px;border-radius:50%;position:absolute;box-sizing:content-box;border:4px solid rgba(76,175,80,.2)}.icon-fix{top:10px;width:10px;left:32px;z-index:1;height:105px;position:absolute;transform:rotate(-45deg);background-color:#fff}.completion-message{font-size:1.1rem;color:#6b7280;margin-bottom:2rem;line-height:1.6}.completion-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem;flex-wrap:wrap}.completion-stat{display:flex;flex-direction:column;align-items:center;gap:.5rem}.stat-icon{font-size:2rem}.stat-value{font-size:1.5rem;font-weight:800;color:var(--primary)}.stat-label{font-size:.875rem;color:#6b7280;font-weight:500}.welcome-features{display:flex;flex-direction:column;gap:.75rem;align-items:flex-start;margin-bottom:1rem}.welcome-feature{display:flex;align-items:center;gap:.75rem;font-size:.95rem;color:var(--text-dark);font-weight:500}.feature-check{width:24px;height:24px;background:var(--success);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;flex-shrink:0}.onboarding-footer{padding:1.75rem 2rem 2rem;border-top:1px solid rgba(255,107,107,.08);display:flex;gap:1rem;background:linear-gradient(180deg,#fff0,#ffffffb3);position:relative}.btn-onboarding{flex:1;padding:1.125rem 2rem;border-radius:16px;font-weight:700;font-size:1.05rem;cursor:pointer;transition:all .3s var(--spring);border:none;font-family:inherit;position:relative;overflow:hidden;letter-spacing:-.025em}.btn-next:before,.btn-finish:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.btn-next:hover:before,.btn-finish:hover:before{left:100%}.btn-next,.btn-finish{background:linear-gradient(135deg,#ff6b6b,#ff8a4d,#f97316);background-size:200% 200%;color:#fff;box-shadow:0 4px 16px #ff6b6b59,0 1px 3px #0000001a,inset 0 1px #ffffff4d;animation:gradientShift 3s ease infinite}.btn-next:hover,.btn-finish:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 8px 24px #ff6b6b73,0 2px 6px #0000001a,inset 0 1px #fff6}.btn-next:active,.btn-finish:active{transform:translateY(-1px) scale(.99);transition:all .1s}.btn-next:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:0 2px 8px #ff6b6b26;animation:none;background:linear-gradient(135deg,#d1d5db,#9ca3af)}.btn-skip{background:#fffc;color:var(--primary);border:2px solid rgba(255,107,107,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 2px 8px #0000000d}.btn-skip:hover{background:var(--primary);color:#fff;border-color:var(--primary);transform:translateY(-3px) scale(1.02);box-shadow:0 8px 20px #ff6b6b4d}.btn-skip:active{transform:translateY(-1px) scale(.99)}@media(max-width:768px){.onboarding-overlay{padding:.75rem}.onboarding-card{max-height:95vh;border-radius:24px}.onboarding-header{padding:1.5rem 1.5rem 1.25rem}.progress-bar{height:6px}.onboarding-content{padding:2rem 1.5rem}.step-icon{font-size:4rem;margin-bottom:1.25rem}.onboarding-content h2{font-size:1.75rem}.onboarding-content>p{font-size:.95rem;margin-bottom:2rem}.gender-options,.preference-options{grid-template-columns:repeat(2,1fr);gap:.875rem}.gender-btn,.preference-btn{padding:1rem .875rem}.gender-icon{font-size:2.25rem}.interests-grid{grid-template-columns:repeat(2,1fr);gap:.875rem}.interest-chip{padding:1rem .875rem}.interest-emoji{font-size:2.25rem}.onboarding-footer{padding:1.5rem 1.5rem 1.75rem}.btn-onboarding{padding:1rem 1.5rem;font-size:1rem}}@media(max-width:480px){.onboarding-overlay{padding:.5rem}.onboarding-card{border-radius:20px}.onboarding-header{padding:1.25rem 1.25rem 1rem}.onboarding-content{padding:1.75rem 1.25rem}.step-icon{font-size:3.5rem;margin-bottom:1rem}.onboarding-content h2{font-size:1.5rem}.onboarding-content>p{font-size:.9rem}.gender-options,.preference-options{grid-template-columns:1fr;gap:.75rem}.gender-btn,.preference-btn{flex-direction:row;justify-content:flex-start;gap:1rem;padding:1rem}.interests-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.interest-chip{padding:.875rem .75rem}.interest-emoji{font-size:2rem}.interest-label{font-size:.8rem}.style-card{padding:1.25rem 1rem;gap:1rem}.style-emoji{font-size:2.5rem}.style-title{font-size:.95rem}.style-desc{font-size:.825rem}.onboarding-footer{padding:1.25rem 1.25rem 1.5rem;flex-direction:column-reverse}.btn-onboarding{padding:.95rem 1.25rem;font-size:.95rem}.btn-skip{order:2}.btn-next,.btn-finish{order:1}}@media(hover:none)and (pointer:coarse){.gender-btn,.preference-btn,.interest-chip,.style-card{min-height:48px}.gender-btn:hover,.preference-btn:hover,.interest-chip:hover,.style-card:hover{transform:none}.gender-btn:active,.preference-btn:active,.interest-chip:active,.style-card:active{transform:scale(.97)}}:root{--datenight-primary: #FF6B9D;--datenight-secondary: #C73866;--datenight-accent: #FF9EC4;--datenight-bg: linear-gradient(135deg, #FF6B9D 0%, #C73866 100%)}.practice-screen.theme-datenight{background:var(--datenight-bg);position:relative;overflow:hidden}.practice-screen.theme-datenight:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(255,158,196,.15) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(199,56,102,.15) 0%,transparent 50%);animation:breatheRomantic 6s ease-in-out infinite;pointer-events:none}@keyframes breatheRomantic{0%,to{opacity:1}50%{opacity:.6}}.practice-screen.theme-datenight:after{content:"💕";position:absolute;font-size:2rem;opacity:0;animation:floatingHeart 15s linear infinite;pointer-events:none}@keyframes floatingHeart{0%{bottom:-50px;left:10%;opacity:0;transform:translate(0) rotate(0)}10%{opacity:.7}90%{opacity:.7}to{bottom:100%;left:15%;opacity:0;transform:translate(100px) rotate(360deg)}}.practice-screen.theme-datenight .chat-container:before,.practice-screen.theme-datenight .chat-container:after{content:"💕";position:absolute;font-size:1.5rem;opacity:0;animation:floatingHeart 20s linear infinite;pointer-events:none;z-index:0}.practice-screen.theme-datenight .chat-container:before{animation-delay:5s;left:70%}.practice-screen.theme-datenight .chat-container:after{animation-delay:10s;left:40%;content:"💖"}.practice-screen.theme-datenight .practice-header{background:#ffffff26;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.2)}.practice-screen.theme-datenight .practice-title,.practice-screen.theme-datenight .practice-timer{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.2)}.practice-screen.theme-datenight .close-practice-btn{color:#fff;background:#fff3}.practice-screen.theme-datenight .chat-container{background:transparent;position:relative}.practice-screen.theme-datenight .chat-messages{position:relative;z-index:1}.practice-screen.theme-datenight .message.user .message-bubble{background:linear-gradient(135deg,#fff,#fff5f8);border:2px solid rgba(255,107,157,.3);box-shadow:0 4px 12px #ff6b9d33,inset 0 1px #fffc}.practice-screen.theme-datenight .message.ai .message-bubble{background:linear-gradient(135deg,#fffffff2,#fff5f8f2);border:2px solid rgba(199,56,102,.2);box-shadow:0 4px 16px #c7386626,inset 0 1px #ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.practice-screen.theme-datenight .message.ai .message-text{color:#4a1942}.practice-screen.theme-datenight .message-bubble{position:relative}.practice-screen.theme-datenight .message-bubble:before{content:"";position:absolute;inset:-2px;background:linear-gradient(135deg,#ff6b9d80,#ff9ec44d);border-radius:inherit;opacity:0;transition:opacity .3s ease;z-index:-1;filter:blur(8px)}.practice-screen.theme-datenight .message:hover .message-bubble:before{opacity:.6}.practice-screen.theme-datenight .status-indicator{background:#ffffff40;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.3)}.practice-screen.theme-datenight .status-text{color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.1)}.practice-screen.theme-datenight .status-dot{background:#fff;box-shadow:0 0 12px #fffc}.practice-screen.theme-datenight .fab-hint{background:linear-gradient(135deg,#fffffff2,#fff5f8f2);color:var(--datenight-primary);border:2px solid rgba(255,107,157,.3);box-shadow:0 8px 24px #c738664d,inset 0 1px #ffffffe6}.practice-screen.theme-datenight .fab-hint:hover{transform:scale(1.1);box-shadow:0 12px 32px #c7386666,inset 0 1px #ffffffe6}.profile-incomplete-modal{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9998;display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;pointer-events:none;transition:opacity .3s ease}.profile-incomplete-modal.show{opacity:1;pointer-events:auto}.profile-modal-content{background:#fff;border-radius:24px;max-width:420px;width:100%;padding:2rem;text-align:center;box-shadow:0 24px 64px #0000004d;animation:modalBounceIn .5s cubic-bezier(.34,1.56,.64,1)}@keyframes modalBounceIn{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.profile-modal-icon{font-size:4rem;margin-bottom:2rem}.profile-modal-content h3{font-size:1.75rem;font-weight:800;color:var(--text-dark);margin-bottom:1rem;letter-spacing:-.5px}.profile-modal-content p{font-size:1rem;color:#6b7280;margin-bottom:2rem;line-height:1.6}.profile-progress-bar{width:100%;height:8px;background:#e5e7eb;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.profile-progress-fill{height:100%;background:linear-gradient(90deg,var(--primary) 0%,var(--accent) 100%);border-radius:4px;transition:width .4s cubic-bezier(.4,0,.2,1)}.profile-progress-text{font-size:.875rem;color:#6b7280;font-weight:500;margin-bottom:2rem}.profile-modal-actions{display:flex;gap:1rem}.btn-modal{flex:1;padding:1rem;border-radius:12px;font-weight:700;font-size:1rem;cursor:pointer;transition:all .2s;border:none;font-family:inherit}.btn-modal-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--accent) 100%);color:#fff;box-shadow:0 4px 12px #ff6b4a4d}.btn-modal-primary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ff6b4a66}.btn-modal-secondary{background:#fff;color:var(--primary);border:2px solid var(--primary)}.btn-modal-secondary:hover{background:#ff6b4a1a}@media(max-width:480px){.onboarding-card{max-height:100vh;border-radius:0}.interests-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.completion-stats{gap:1rem}.gender-options,.preference-options{grid-template-columns:1fr 1fr}}.scenario-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014,0 2px 6px #0000000a}.scenario-card[data-scenario=restaurant] .scenario-icon{background:linear-gradient(135deg,#fef3c7,#fde68a)}.scenario-card[data-scenario=shopping] .scenario-icon{background:linear-gradient(135deg,#fce7f3,#fbcfe8)}.scenario-card[data-scenario=interview] .scenario-icon{background:linear-gradient(135deg,#dbeafe,#bfdbfe)}.scenario-card[data-scenario=doctor] .scenario-icon{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.scenario-card[data-scenario=casual] .scenario-icon{background:linear-gradient(135deg,#fed7aa,#fdba74)}.scenario-card[data-scenario=travel] .scenario-icon{background:linear-gradient(135deg,#e9d5ff,#d8b4fe)}.scenario-card[data-scenario=datenight] .scenario-icon{background:linear-gradient(135deg,#fecaca,#fca5a5)}.scenario-icon svg{width:32px;height:32px;color:#1f2937}.scenario-card:hover .scenario-icon{transform:scale(1.05)}#progress-tab .tab-content-scroll{position:relative;background:linear-gradient(180deg,#ffefeaeb,#fff 70%);padding-top:calc(env(safe-area-inset-top,0px) + 1.5rem)}#progress-tab .tab-content-scroll:before{content:"";position:absolute;top:0;left:0;right:0;height:max(240px,calc(env(safe-area-inset-top,0px) + 220px));background:var(--hero-gradient);filter:saturate(110%);border-bottom-left-radius:32px;border-bottom-right-radius:32px;box-shadow:0 32px 60px #ff6b6b40;z-index:0}#progress-tab .tab-content-scroll>*{position:relative;z-index:1}.progress-hero-card{background:var(--primary-gradient);border-radius:var(--radius-xl);padding:2rem;margin:1rem 1.5rem;box-shadow:var(--glow-primary);color:#fff;position:relative;overflow:hidden}.progress-hero-card:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.2) 0%,transparent 70%);border-radius:50%}.progress-hero-title{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;opacity:.9;margin-bottom:.5rem}.progress-hero-value{font-size:3rem;font-weight:800;line-height:1;margin-bottom:.5rem}.progress-hero-subtitle{font-size:1rem;opacity:.95;font-weight:500}.progress-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:0 1.5rem;margin-top:1.5rem}.progress-stat-card{background:#fff;border-radius:16px;padding:1.25rem 1rem;box-shadow:0 2px 8px #0000000f;text-align:center;transition:transform .2s ease}.progress-stat-card:active{transform:scale(.98)}.progress-stat-icon{font-size:2rem;margin-bottom:.5rem}.progress-stat-icon svg{width:32px;height:32px;color:#ff6b4a}.progress-stat-value{font-size:1.75rem;font-weight:700;color:#1f2937;margin-bottom:.25rem}.progress-stat-label{font-size:.75rem;color:#6b7280;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.progress-skills-section{margin-top:2rem;padding:0 1.5rem 2rem}.progress-section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem}.progress-section-header svg{width:24px;height:24px;color:#ff6b4a}.progress-section-title{font-size:1.25rem;font-weight:700;color:#1f2937}.progress-skill-card{background:#fff;border-radius:16px;padding:2rem 1.5rem;margin-bottom:1rem;box-shadow:0 2px 8px #0000000f}.progress-skill-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.progress-skill-info{display:flex;align-items:center;gap:.75rem}.progress-skill-icon{font-size:1.5rem}.progress-skill-icon svg{width:24px;height:24px}.progress-skill-name{font-size:1rem;font-weight:600;color:#1f2937}.progress-skill-value{font-size:1.5rem;font-weight:700;color:#ff6b4a}.progress-skill-bar{height:8px;background:#f3f4f6;border-radius:100px;overflow:hidden}.progress-skill-fill{height:100%;border-radius:100px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative}.progress-skill-fill.vocabulary{background:linear-gradient(90deg,#10b981,#34d399)}.progress-skill-fill.grammar{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.progress-skill-fill.pronunciation{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.progress-skill-fill.fluency{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.progress-skill-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.3) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-motivation-card{background:linear-gradient(135deg,var(--success) 0%,var(--success-light) 100%);border-radius:var(--radius-lg);padding:2rem 1.5rem;margin:1.5rem;color:#fff;box-shadow:var(--glow-success);text-align:center}.progress-motivation-icon{font-size:2.5rem;margin-bottom:.75rem}.progress-motivation-text{font-size:1.1rem;font-weight:600;line-height:1.5}.progress-level-badge{display:inline-flex;align-items:center;gap:.5rem;background:#fff3;padding:.5rem 1rem;border-radius:100px;font-size:.9rem;font-weight:600;margin-top:1rem}@keyframes achievement-pop{0%{transform:scale(.8);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.achievement-unlock{animation:achievement-pop .5s cubic-bezier(.4,0,.2,1)}@media(max-width:380px){.progress-stats-grid{grid-template-columns:1fr 1fr}.progress-stat-card:last-child{grid-column:1 / -1}}.progress-dashboard-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:0;transition:opacity .3s ease}.progress-dashboard-overlay.show{opacity:1}.progress-dashboard-container{width:100%;max-width:480px;height:100vh;background:#fafaf9;display:flex;flex-direction:column;animation:slideInFromRight .4s cubic-bezier(.4,0,.2,1)}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}.progress-dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#fff;border-bottom:1px solid #E7E5E4;position:sticky;top:0;z-index:10}.progress-back-btn{width:40px;height:40px;border-radius:50%;background:#f5f5f4;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease}.progress-back-btn:hover{background:#e7e5e4;transform:scale(1.05)}.progress-back-btn:active{transform:scale(.95)}.progress-back-btn svg{color:#44403c}.progress-dashboard-title{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:700;color:#1c1917;margin:0}.progress-dashboard-content{flex:1;overflow-y:auto;padding:2rem 1.5rem 6rem}.progress-dashboard-content::-webkit-scrollbar{width:6px}.progress-dashboard-content::-webkit-scrollbar-track{background:transparent}.progress-dashboard-content::-webkit-scrollbar-thumb{background:#d6d3d1;border-radius:3px}.progress-tab-content-wrapper{padding:1.5rem 1.5rem 2rem;background:var(--bg-light);min-height:60vh}.progress-hero-section{text-align:center;padding:1rem 0 2rem;margin-bottom:2rem}.progress-circular-ring{position:relative;width:180px;height:180px;margin:0 auto 1.5rem}.progress-ring-svg{transform:scale(1);filter:drop-shadow(0 8px 16px rgba(216,115,90,.2))}.progress-ring-bg{transition:all .3s ease}.progress-ring-fill{transition:stroke-dashoffset 1.5s cubic-bezier(.4,0,.2,1)}.progress-ring-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center}.progress-ring-level{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#ff6b6b,#ff8787);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.25rem}.progress-ring-label{font-size:.85rem;font-weight:600;color:#78716c;text-transform:uppercase;letter-spacing:.05em}.progress-hero-title{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;color:#1c1917;margin:0 0 .5rem;line-height:1.3}.progress-hero-subtitle{font-size:1rem;color:#78716c;font-weight:500}.progress-stats-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.progress-stat-card-modern{background:#fff;border-radius:16px;padding:1.25rem;box-shadow:0 2px 8px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:default}.progress-stat-card-modern:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}.progress-stat-icon-wrapper{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;box-shadow:0 4px 12px #00000026;font-size:1.75rem}.gradient-coral{background:linear-gradient(135deg,#ff6b6b,#ff8787)}.gradient-purple{background:linear-gradient(135deg,#9775fa,#b197fc)}.gradient-orange{background:linear-gradient(135deg,#ff922b,#ffa94d)}.gradient-green{background:linear-gradient(135deg,#51cf66,#69db7c)}.gradient-blue{background:linear-gradient(135deg,#4dabf7,#74c0fc)}.gradient-yellow{background:linear-gradient(135deg,#ffd43b,#ffe066)}.progress-stat-content{text-align:left}.progress-stat-number{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#1c1917;line-height:1;margin-bottom:.25rem}.progress-stat-text{font-size:.875rem;font-weight:600;color:#78716c;text-transform:uppercase;letter-spacing:.05em}.progress-section{margin-bottom:2.75rem}.progress-section-header-modern{margin-bottom:1.25rem}.progress-section-title-modern{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:700;color:#1c1917;margin:0 0 .25rem}.progress-section-subtitle{font-size:.875rem;color:#78716c;font-weight:500}.progress-skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.progress-skill-circle-card{background:#fff;border-radius:16px;padding:2rem 1.5rem;text-align:center;box-shadow:0 2px 8px #0000000a;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.progress-skill-circle-card:hover{transform:translateY(-4px);box-shadow:0 8px 20px #00000014}.progress-skill-ring{display:block;margin:0 auto .75rem}.progress-skill-ring-animated{transition:stroke-dashoffset 1.2s cubic-bezier(.4,0,.2,1)}.progress-skill-ring-animated.skill-coral{stroke:#ff6b6b}.progress-skill-ring-animated.skill-blue{stroke:#4dabf7}.progress-skill-ring-animated.skill-purple{stroke:#9775fa}.progress-skill-ring-animated.skill-green{stroke:#51cf66}.progress-skill-ring-center{position:absolute;top:50%;left:50%;transform:translate(-50%,calc(-50% - 12px));text-align:center}.progress-skill-ring-center svg{display:block;margin:0 auto .5rem}.progress-skill-ring-center svg.skill-icon-coral{color:#ff6b6b}.progress-skill-ring-center svg.skill-icon-blue{color:#3b82f6}.progress-skill-ring-center svg.skill-icon-purple{color:#8b5cf6}.progress-skill-ring-center svg.skill-icon-green{color:#10b981}.progress-skill-percentage{font-family:Poppins,sans-serif;font-size:1.125rem;font-weight:700;color:#1c1917}.progress-skill-name-modern{font-size:.875rem;font-weight:600;color:#44403c;margin-top:.5rem}.progress-calendar-heatmap{background:#fff;border-radius:16px;padding:2rem 1.5rem;box-shadow:0 2px 8px #0000000a;margin-bottom:1rem}.progress-calendar-row{display:flex;gap:4px;margin-bottom:4px}.progress-calendar-row:last-child{margin-bottom:0}.progress-calendar-day{width:calc((100% - (6 * 4px)) / 7);aspect-ratio:1;border-radius:4px;transition:all .2s ease;cursor:pointer;position:relative}.progress-calendar-day.empty{background:#f5f5f4}.progress-calendar-day.low{background:#ff6b6b4d}.progress-calendar-day.medium{background:#ff6b6b99}.progress-calendar-day.high{background:#ff6b6b}.progress-calendar-day.today{outline:2px solid #FF6B6B;outline-offset:1px}.progress-calendar-day:hover{transform:scale(1.15);z-index:10}.progress-calendar-legend{display:flex;align-items:center;gap:4px;justify-content:flex-end;padding:.75rem 0 0}.progress-calendar-legend-label{font-size:.75rem;color:#78716c;font-weight:500}.progress-calendar-legend .progress-calendar-day{width:12px;height:12px}.progress-achievements-grid{display:flex;flex-direction:column;gap:.75rem}.progress-achievement-card{background:#fff;border-radius:16px;padding:1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1)}.progress-achievement-card.unlocked{cursor:pointer}.progress-achievement-card.unlocked:hover{transform:translate(4px);box-shadow:0 4px 12px #00000014}.progress-achievement-card.locked{opacity:.5}.progress-achievement-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;box-shadow:0 4px 12px #00000026;font-size:1.75rem}.progress-achievement-lock{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:1.5rem}.progress-achievement-info{flex:1}.progress-achievement-name{font-family:Poppins,sans-serif;font-size:1rem;font-weight:700;color:#1c1917;margin-bottom:.25rem}.progress-achievement-description{font-size:.875rem;color:#78716c;line-height:1.4}.progress-activity-timeline{position:relative}.progress-activity-item{position:relative;padding-left:2rem;padding-bottom:1.5rem;animation:fadeInUp .4s cubic-bezier(.4,0,.2,1) both}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-activity-item:last-child{padding-bottom:0}.progress-activity-dot{position:absolute;left:0;top:4px;width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,#ff6b6b,#ff8787);box-shadow:0 0 0 4px #ff6b6b26;z-index:2}.progress-activity-line{position:absolute;left:5.5px;top:16px;width:1px;height:calc(100% - 16px);background:#e7e5e4;z-index:1}.progress-activity-content{background:#fff;border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000000a;transition:all .2s ease}.progress-activity-content:hover{box-shadow:0 4px 12px #00000014}.progress-activity-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.progress-activity-title{font-weight:700;color:#1c1917;font-size:1rem}.progress-activity-level{font-size:.75rem;font-weight:700;color:#ff6b6b;background:#ff6b6b1a;padding:.25rem .5rem;border-radius:6px;text-transform:uppercase;letter-spacing:.05em}.progress-activity-meta{font-size:.875rem;color:#78716c;margin-bottom:.75rem}.progress-activity-stats{display:flex;gap:1.5rem}.progress-activity-stat{display:flex;align-items:center;gap:.375rem;font-size:.875rem;color:#44403c;font-weight:500}.progress-activity-stat svg{color:#78716c}.progress-empty-state{background:#fff;border-radius:16px;padding:3rem 2rem;text-align:center;box-shadow:0 2px 8px #0000000a}.progress-empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.progress-empty-text{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:700;color:#44403c;margin-bottom:.5rem}.progress-empty-subtext{font-size:1rem;color:#78716c}@media(max-width:380px){.progress-stats-cards,.progress-skills-grid{grid-template-columns:1fr}.progress-circular-ring,.progress-ring-svg{width:160px;height:160px}.progress-ring-level{font-size:2rem}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #d8735a66}50%{box-shadow:0 0 0 8px #d8735a00}}.progress-stat-card-modern:active,.progress-skill-circle-card:active{transform:scale(.98)}@media(prefers-reduced-motion:reduce){.progress-dashboard-container,.progress-stat-card-modern,.progress-skill-circle-card,.progress-achievement-card,.progress-activity-item,.progress-ring-fill,.progress-skill-ring-animated{animation:none!important;transition:none!important}}.progress-back-btn:focus-visible,.progress-achievement-card:focus-visible{outline:3px solid #FF6B6B;outline-offset:2px}.progress-skill-emoji{font-size:1.75rem;line-height:1;margin-bottom:.25rem}.progress-activity-stat-icon{color:#78716c;font-size:1rem;display:inline-flex;align-items:center;justify-content:center}.progress-skill-circle-card{padding:1.75rem 1.5rem!important}.progress-skill-ring-center{display:flex!important;flex-direction:column!important;align-items:center!important;gap:.25rem!important}.progress-achievement-card{padding:1.25rem 1.5rem!important;gap:1.25rem!important}.progress-section{margin-bottom:2.75rem!important}.progress-dashboard-content{padding:2rem 1.5rem!important}.progress-hero-section{padding:1rem 0 2rem!important;margin-bottom:2rem!important}.progress-stat-icon-wrapper{font-size:1.75rem!important;box-shadow:0 4px 12px #00000026!important}.progress-ring-level{background:linear-gradient(135deg,#ff6b6b,#ff8787)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important;background-clip:text!important}.progress-ring-svg{filter:drop-shadow(0 8px 16px rgba(255,107,107,.2))!important}.practice-hero{position:relative;background:linear-gradient(135deg,#ff6b6b,#ff8787,#ffa985);padding:2rem 1.5rem 2.5rem;overflow:hidden}.practice-hero-background{position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,255,255,.08) 0%,transparent 50%);animation:heroBackgroundFloat 8s ease-in-out infinite}@keyframes heroBackgroundFloat{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.05)}}.practice-hero-content{position:relative;z-index:2}.practice-hero-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2rem}.practice-hero-close{width:44px;height:44px;border-radius:50%;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.practice-hero-close:hover{background:#ffffff4d;transform:scale(1.05)}.practice-hero-close:active{transform:scale(.95)}.practice-hero-close svg{color:#fff}.practice-hero-timer{display:flex;align-items:center;gap:.5rem;background:#fff3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:100px;font-family:Poppins,sans-serif;font-size:.95rem;font-weight:600;color:#fff}.practice-hero-timer svg{color:#ffffffe6}.practice-hero-main{text-align:center;padding:1rem 0}.practice-hero-icon{font-size:5rem;line-height:1;margin-bottom:1rem;animation:heroIconFloat 3s ease-in-out infinite;filter:drop-shadow(0 8px 16px rgba(0,0,0,.15))}@keyframes heroIconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.practice-hero-title{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#fff;margin:0 0 .75rem;line-height:1.2;text-shadow:0 2px 8px rgba(0,0,0,.1);letter-spacing:-.02em}.practice-hero-level{display:inline-flex;align-items:center;background:#ffffff40;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.4);padding:.5rem 1.25rem;border-radius:100px;font-family:Poppins,sans-serif;font-size:.875rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em;box-shadow:0 4px 12px #0000001a}#practice-screen.theme-restaurant .practice-hero{background:linear-gradient(135deg,#ffb347,#fc3,gold)}#practice-screen.theme-shopping .practice-hero{background:linear-gradient(135deg,#ff6b9d,#ff8fb9,#ffa5c7)}#practice-screen.theme-interview .practice-hero{background:linear-gradient(135deg,#4dabf7,#74c0fc,#91d5ff)}#practice-screen.theme-doctor .practice-hero{background:linear-gradient(135deg,#51cf66,#69db7c,#8ce99a)}#practice-screen.theme-casual .practice-hero{background:linear-gradient(135deg,#ff922b,#ffa94d,#ffc078)}#practice-screen.theme-travel .practice-hero{background:linear-gradient(135deg,#9775fa,#b197fc,#d0bfff)}#practice-screen.theme-datenight .practice-hero{background:linear-gradient(135deg,#ff6b9d,#ff8fb9,#ffb3d1)}@media(max-width:380px){.practice-hero{padding:1.5rem 1.25rem 2rem}.practice-hero-icon{font-size:4rem}.practice-hero-title{font-size:1.75rem}}.practice-header{display:none!important}#practice-screen .chat-container{padding-top:0}.progress-hero-section-clean{position:relative;padding:2rem 1.5rem;margin-bottom:2rem;background:var(--hero-gradient);border-radius:28px;overflow:hidden;box-shadow:0 30px 55px #ff6b6b47,0 12px 24px #f9731633}.progress-hero-glass-card-clean{position:relative;background:#ffffff2e;backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);border:1.5px solid rgba(255,255,255,.35);border-radius:24px;padding:2.5rem 2rem;animation:heroCardFadeIn .6s cubic-bezier(.4,0,.2,1) both;box-shadow:inset 0 1px #ffffff73,0 18px 40px #ff6b6b2e}@keyframes heroCardFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-level-badge-clean{width:120px;height:120px;margin:0 auto 2rem;background:#fff;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 24px #00000026,0 2px 8px #00000014}.badge-level-clean{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;color:#ff6b6b;line-height:1;margin-bottom:.25rem}.badge-name-clean{font-family:Inter,sans-serif;font-size:.75rem;font-weight:700;color:#78716c;text-transform:uppercase;letter-spacing:.5px}.progress-hero-stats-clean{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:1.5rem}.hero-stat-item-clean{text-align:center;flex:1}.hero-stat-value-clean{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;color:#fff;line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.15)}.hero-stat-label-clean{font-family:Inter,sans-serif;font-size:.75rem;font-weight:700;color:#ffffffd9;text-transform:uppercase;letter-spacing:.8px}.hero-stat-divider-clean{width:1px;height:50px;background:#ffffff40}.progress-hero-description-clean{font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#ffffffe6;text-align:center;line-height:1.5}.progress-stats-cards-clean{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-bottom:2rem}.progress-stat-card-clean{background:#fff;border-radius:20px;padding:1.75rem 1.5rem;text-align:center;box-shadow:0 4px 12px #00000014,0 1px 3px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);animation:statCardSlideIn .5s cubic-bezier(.4,0,.2,1) both}@keyframes statCardSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.progress-stat-card-clean:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f}.stat-icon-clean{width:64px;height:64px;margin:0 auto 1.25rem;border-radius:16px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0000001f}.stat-icon-clean svg{width:28px;height:28px}.stat-icon-clean.gradient-coral{background:linear-gradient(135deg,#ff6b6b,#ff8787)}.stat-icon-clean.gradient-purple{background:linear-gradient(135deg,#9775fa,#b197fc)}.stat-icon-clean.gradient-orange{background:linear-gradient(135deg,#ff922b,#ffb347)}.stat-icon-clean.gradient-green{background:linear-gradient(135deg,#51cf66,#69db7c)}.stat-value-clean{font-family:Poppins,sans-serif;font-size:2.75rem;font-weight:600;color:#1c1917;line-height:1;margin-bottom:.5rem}.stat-label-clean{font-family:Inter,sans-serif;font-size:.75rem;font-weight:700;color:#78716c;text-transform:uppercase;letter-spacing:.8px}@media(max-width:380px){.progress-stats-cards-clean{grid-template-columns:1fr}.progress-hero-stats-clean{flex-direction:column;gap:1.5rem}.hero-stat-divider-clean{display:none}.stat-value-clean{font-size:2.25rem}}.progress-hero-section-modern{position:relative;padding:2.5rem 1.5rem;margin-bottom:2rem;min-height:280px;overflow:hidden;border-radius:24px}.progress-hero-bg{position:absolute;inset:0;border-radius:24px;overflow:hidden}.progress-hero-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787,#ffb4a9);background-size:200% 200%;animation:gradientShift 8s ease infinite}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.progress-hero-particles{position:absolute;inset:0;overflow:hidden}.particle{position:absolute;width:6px;height:6px;background:#fff9;border-radius:50%;left:var(--x);top:var(--y);animation:particleFloat 6s ease-in-out infinite;animation-delay:var(--delay);box-shadow:0 0 10px #ffffff80}@keyframes particleFloat{0%,to{transform:translate(0) scale(1);opacity:.3}25%{transform:translate(20px,-30px) scale(1.2);opacity:.6}50%{transform:translate(-15px,-60px) scale(.8);opacity:.9}75%{transform:translate(10px,-40px) scale(1.1);opacity:.5}}.progress-hero-glass-card{position:relative;background:#fff3;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:2.5px solid rgba(255,255,255,.4);border-radius:24px;padding:2.5rem 2rem;box-shadow:0 12px 40px #00000026,inset 0 1px #ffffff80,inset 0 -1px #0000000d;animation:glassCardSlideIn .6s cubic-bezier(.4,0,.2,1)}@keyframes glassCardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.progress-level-badge-modern{position:relative;display:inline-flex;margin:0 auto 1.5rem}.badge-glow{position:absolute;inset:-8px;background:radial-gradient(circle,rgba(255,255,255,.5),transparent 70%);animation:badgeGlow 2s ease-in-out infinite;border-radius:50%}@keyframes badgeGlow{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.2);opacity:.3}}.badge-content{position:relative;background:#fff;border-radius:50%;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:0 8px 24px #00000026}.badge-level{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;background:linear-gradient(135deg,#ff6b6b,#ff8787);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:.25rem}.badge-name{font-size:.75rem;font-weight:700;color:#78716c;text-transform:uppercase;letter-spacing:.5px}.progress-hero-stats-modern{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:1.5rem}.hero-stat-item{text-align:center}.hero-stat-value{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#fff;line-height:1;margin-bottom:.5rem;text-shadow:0 2px 8px rgba(0,0,0,.2)}.hero-stat-label{font-size:.75rem;font-weight:600;color:#ffffffe6;text-transform:uppercase;letter-spacing:.5px}.hero-stat-divider{width:2px;height:40px;background:#ffffff4d;border-radius:2px}.progress-hero-description{text-align:center;font-size:1.125rem;font-weight:600;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.15)}.progress-stats-cards-modern{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.progress-stat-card-liquid{position:relative;background:#fff;border-radius:20px;padding:1.5rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a;transition:all .4s cubic-bezier(.4,0,.2,1);animation:cardSlideIn .5s cubic-bezier(.4,0,.2,1) both}@keyframes cardSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.progress-stat-card-liquid:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 12px 32px #0000001f,0 4px 8px #00000014}.progress-stat-card-liquid:active{transform:translateY(-4px) scale(.98)}.stat-liquid-bg{position:absolute;top:-20px;right:-20px;width:120px;height:120px;opacity:.4;pointer-events:none}.blob-svg{width:100%;height:100%}.stat-card-content-modern{position:relative;z-index:2;display:flex;flex-direction:column;gap:1rem}.stat-icon-modern{width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #00000026}.stat-icon-modern svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.stat-info-modern{display:flex;flex-direction:column;gap:.25rem}.stat-value-modern{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#1c1917;line-height:1}.stat-label-modern{font-size:.875rem;font-weight:600;color:#78716c;text-transform:uppercase;letter-spacing:.5px}.stat-glow-effect{position:absolute;bottom:-40px;right:-40px;width:120px;height:120px;border-radius:50%;opacity:0;transition:opacity .4s ease;pointer-events:none}.progress-stat-card-liquid:hover .stat-glow-effect{opacity:.3}.progress-skills-liquid-grid{display:flex;flex-direction:column;gap:1rem}.skill-liquid-card{position:relative;background:#fff;border-radius:18px;padding:1.5rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a;animation:skillCardSlideIn .6s cubic-bezier(.4,0,.2,1) both;transition:all .3s cubic-bezier(.4,0,.2,1)}@keyframes skillCardSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.skill-liquid-card:hover{transform:translate(4px);box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f}.skill-glass-bg{position:absolute;inset:0;background:linear-gradient(135deg,#fffc,#fff6);opacity:0;transition:opacity .3s ease;pointer-events:none}.skill-liquid-card:hover .skill-glass-bg{opacity:1}.skill-liquid-header{position:relative;z-index:2;display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.skill-icon-badge{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 12px #00000026;flex-shrink:0}.skill-info-header{flex:1;display:flex;justify-content:space-between;align-items:center}.skill-name-liquid{font-family:Poppins,sans-serif;font-size:1.125rem;font-weight:700;color:#1c1917}.skill-percentage-liquid{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:800;line-height:1}.skill-liquid-progress-container{position:relative;height:10px;border-radius:12px;overflow:hidden;background:#f5f5f4}.skill-liquid-track{position:absolute;inset:0;background:linear-gradient(135deg,#f5f5f4,#e7e5e4)}.skill-liquid-wave{position:absolute;bottom:0;left:0;width:100%;height:0%;animation:fillWave 1.5s cubic-bezier(.4,0,.2,1) forwards;animation-delay:.3s}@keyframes fillWave{0%{height:0%}to{height:var(--target-height)}}.skill-liquid-wave[data-value="100"]{--target-height: 100%}.skill-liquid-wave[data-value="95"]{--target-height: 95%}.skill-liquid-wave[data-value="90"]{--target-height: 90%}.skill-liquid-wave[data-value="85"]{--target-height: 85%}.skill-liquid-wave[data-value="80"]{--target-height: 80%}.skill-liquid-wave[data-value="75"]{--target-height: 75%}.skill-liquid-wave[data-value="70"]{--target-height: 70%}.skill-liquid-wave[data-value="65"]{--target-height: 65%}.skill-liquid-wave[data-value="60"]{--target-height: 60%}.skill-liquid-wave[data-value="55"]{--target-height: 55%}.skill-liquid-wave[data-value="50"]{--target-height: 50%}.skill-liquid-wave[data-value="45"]{--target-height: 45%}.skill-liquid-wave[data-value="40"]{--target-height: 40%}.skill-liquid-wave[data-value="35"]{--target-height: 35%}.skill-liquid-wave[data-value="30"]{--target-height: 30%}.skill-liquid-wave[data-value="25"]{--target-height: 25%}.skill-liquid-wave[data-value="20"]{--target-height: 20%}.skill-liquid-wave[data-value="15"]{--target-height: 15%}.skill-liquid-wave[data-value="10"]{--target-height: 10%}.skill-liquid-wave[data-value="5"]{--target-height: 5%}.skill-liquid-wave[data-value="0"]{--target-height: 0%}.skill-liquid-wave[data-value]{--percentage: attr(data-value)}.wave-svg{position:absolute;bottom:0;width:100%;height:100%}.wave-path{opacity:.9;filter:drop-shadow(0 -4px 8px rgba(0,0,0,.1))}.wave-glow{position:absolute;top:0;left:0;right:0;height:8px;animation:glowPulse 2s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.6}50%{opacity:.9}}.progress-calendar-glass-container{position:relative;background:#fff;border-radius:20px;padding:2rem 1.5rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a}.calendar-glass-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b05,#ff87750d)}.progress-calendar-heatmap-modern{position:relative;z-index:2;display:flex;flex-direction:column;gap:6px;margin-bottom:1.5rem}.progress-calendar-row-modern{display:flex;gap:6px}.progress-calendar-day-modern{flex:1;aspect-ratio:1;border-radius:6px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.progress-calendar-day-modern.empty{background:#f5f5f4}.progress-calendar-day-modern.low{background:linear-gradient(135deg,#ff6b6b4d,#ff877533)}.progress-calendar-day-modern.medium{background:linear-gradient(135deg,#ff6b6b99,#ff877580)}.progress-calendar-day-modern.high{background:linear-gradient(135deg,#ff6b6b,#ff8775);box-shadow:0 0 12px #ff6b6b66}.progress-calendar-day-modern.today{outline:2.5px solid #FF6B6B;outline-offset:2px}.progress-calendar-day-modern:hover{transform:scale(1.2);z-index:10;box-shadow:0 4px 12px #ff6b6b4d}.day-glow{position:absolute;inset:-4px;background:radial-gradient(circle,rgba(255,107,107,.4),transparent 70%);border-radius:8px;opacity:0;animation:dayGlow 2s ease-in-out infinite}@keyframes dayGlow{0%,to{opacity:0}50%{opacity:.6}}.progress-calendar-legend-modern{position:relative;z-index:2;display:flex;align-items:center;gap:8px;justify-content:center}.calendar-legend-label{font-size:.75rem;font-weight:600;color:#78716c}.legend-squares{display:flex;gap:4px}.progress-calendar-day-modern.mini{width:14px;height:14px;aspect-ratio:1}.progress-activity-glass-grid{display:flex;flex-direction:column;gap:1rem}.activity-glass-card{position:relative;background:#fff;border-radius:18px;padding:1.5rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a;transition:all .4s cubic-bezier(.4,0,.2,1);animation:activityCardSlideIn .5s cubic-bezier(.4,0,.2,1) both}@keyframes activityCardSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.activity-glass-card:hover{transform:translate(4px) scale(1.01);box-shadow:0 8px 24px #0000001a,0 2px 6px #0000000f}.activity-glass-card:active{transform:translate(2px) scale(.99)}.activity-card-glass-bg{position:absolute;inset:0;background:linear-gradient(135deg,#fffc,#fff6);opacity:0;transition:opacity .3s ease}.activity-glass-card:hover .activity-card-glass-bg{opacity:1}.activity-card-header{position:relative;z-index:2;display:flex;align-items:center;gap:1rem;margin-bottom:1.25rem}.activity-scenario-icon{width:48px;height:48px;background:#f5f5f4;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;box-shadow:0 2px 8px #00000014}.activity-header-info{flex:1;min-width:0}.activity-scenario-name{font-family:Poppins,sans-serif;font-size:1.125rem;font-weight:700;color:#1c1917;margin-bottom:.25rem}.activity-time-meta{font-size:.875rem;color:#78716c;font-weight:500}.activity-level-badge{font-size:.75rem;font-weight:700;color:#ff6b6b;background:#ff6b6b1a;padding:.375rem .75rem;border-radius:8px;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.activity-stats-row{position:relative;z-index:2;display:flex;align-items:center;gap:1.5rem}.activity-stat-item{display:flex;align-items:center;gap:.75rem;flex:1}.activity-stat-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0;box-shadow:0 2px 8px #0000001a}.activity-stat-info{flex:1;min-width:0}.activity-stat-value{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:800;color:#1c1917;line-height:1;margin-bottom:.25rem}.activity-stat-label{font-size:.75rem;font-weight:600;color:#78716c;text-transform:uppercase;letter-spacing:.5px}.activity-stat-divider{width:2px;height:40px;background:#e7e5e4;border-radius:2px}.activity-hover-glow{position:absolute;bottom:-40px;right:-40px;width:120px;height:120px;background:radial-gradient(circle,rgba(255,107,107,.2),transparent 70%);border-radius:50%;opacity:0;transition:opacity .4s ease;pointer-events:none}.activity-glass-card:hover .activity-hover-glow{opacity:1}.progress-empty-state-modern{position:relative;background:#fff;border-radius:20px;padding:3rem 2rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a}.empty-state-glass-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b08,#ff87750f)}.empty-state-content{position:relative;z-index:2;text-align:center}@media(max-width:380px){.progress-stats-cards-modern{grid-template-columns:1fr}.progress-hero-stats-modern{flex-direction:column;gap:1.5rem}.hero-stat-divider{width:60px;height:2px}.progress-stat-card-liquid,.skill-liquid-card{padding:1.25rem}}@media(prefers-reduced-motion:reduce){.particle,.progress-hero-gradient,.badge-glow,.wave-path,.wave-glow,.day-glow,.progress-stat-card-liquid,.skill-liquid-card,.activity-glass-card{animation:none!important}.skill-liquid-wave{animation:none!important;height:var(--target-height)}}.summary-overlay-modern{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;transition:opacity .4s cubic-bezier(.4,0,.2,1)}.summary-overlay-modern.show{opacity:1}.summary-container-modern{width:100%;max-width:480px;max-height:90vh;background:#fafaf9;border-radius:24px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:summarySlideIn .5s cubic-bezier(.4,0,.2,1)}@keyframes summarySlideIn{0%{opacity:0;transform:translateY(40px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.summary-header-modern{position:relative;padding:2.5rem 1.5rem;overflow:hidden;border-radius:24px 24px 0 0}.summary-header-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787,#ffa985 60%,#ff9a76);background-size:200% 200%;animation:gradientShift 8s ease infinite}.summary-particles{position:absolute;inset:0;overflow:hidden}.summary-particles .particle{position:absolute;width:5px;height:5px;background:#ffffffb3;border-radius:50%;left:var(--x);top:var(--y);animation:particleFloat 6s ease-in-out infinite;animation-delay:var(--delay);box-shadow:0 0 8px #fff9}.summary-header-content-modern{position:relative;z-index:2;text-align:center}.summary-celebration-icon{font-size:4rem;margin-bottom:1rem;animation:celebrationBounce 1s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2))}@keyframes celebrationBounce{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-10px) rotate(-5deg)}75%{transform:translateY(-10px) rotate(5deg)}}.summary-title-modern{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#fff;margin:0 0 .5rem;line-height:1.2;text-shadow:0 2px 12px rgba(0,0,0,.2);letter-spacing:-.5px}.summary-subtitle-modern{font-size:1.125rem;font-weight:600;color:#fffffff2;margin:0;text-shadow:0 1px 4px rgba(0,0,0,.15)}.summary-scroll-content-modern{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:1.5rem}.summary-scroll-content-modern::-webkit-scrollbar{width:6px}.summary-scroll-content-modern::-webkit-scrollbar-track{background:transparent}.summary-scroll-content-modern::-webkit-scrollbar-thumb{background:#d6d3d1;border-radius:3px}.summary-section-modern{margin-bottom:2rem}.summary-section-title{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:700;color:#1c1917;margin:0 0 1.25rem;display:flex;align-items:center;gap:.5rem}.section-icon{font-size:1.5rem}.summary-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.summary-stat-card-liquid{position:relative;background:#fff;border-radius:18px;padding:1.5rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a;transition:all .4s cubic-bezier(.4,0,.2,1);opacity:0;transform:translateY(20px);animation:cardFadeIn .6s cubic-bezier(.4,0,.2,1) forwards}@keyframes cardFadeIn{to{opacity:1;transform:translateY(0)}}.summary-stat-card-liquid.stat-card-visible{opacity:1;transform:translateY(0)}.summary-stat-card-liquid.primary{grid-column:1 / -1}.summary-stat-content{position:relative;z-index:2;text-align:center}.stat-value-wrapper{display:flex;align-items:baseline;justify-content:center;gap:.25rem}.stat-value-modern{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:800;color:#1c1917;line-height:1}.stat-value-text-modern{font-family:Poppins,sans-serif;font-size:1.75rem;font-weight:700;color:#1c1917;line-height:1;margin:.5rem 0}.stat-unit{font-family:Poppins,sans-serif;font-size:1.75rem;font-weight:800;color:#1c1917;line-height:1}.stat-label-modern{font-size:.875rem;font-weight:600;color:#78716c;text-transform:uppercase;letter-spacing:.5px;margin-top:.5rem}.stat-sublabel-modern{font-size:.875rem;font-weight:600;color:#ff6b6b;margin-top:.5rem}.no-errors-glass-card{position:relative;background:#fff;border-radius:18px;padding:3rem 2rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a}.no-errors-bg{position:absolute;inset:0;background:linear-gradient(135deg,#10b9810d,#34d3991a)}.no-errors-content{position:relative;z-index:2;text-align:center}.no-errors-icon{font-size:4rem;margin-bottom:1rem;animation:successPulse 2s ease-in-out infinite}@keyframes successPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.no-errors-title{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;color:#10b981;margin:0 0 .5rem}.no-errors-text{font-size:1rem;color:#78716c;margin:0}.errors-glass-grid{display:flex;flex-direction:column;gap:1rem}.error-glass-card{position:relative;background:#fff;border-radius:16px;padding:1.25rem;overflow:hidden;box-shadow:0 4px 12px #0000000f,0 1px 3px #0000000a;animation:errorCardSlideIn .5s cubic-bezier(.4,0,.2,1) both}@keyframes errorCardSlideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.error-glass-bg{position:absolute;inset:0;background:linear-gradient(135deg,#fffc,#fff6);opacity:0;transition:opacity .3s ease}.error-glass-card:hover .error-glass-bg{opacity:1}.error-card-header{position:relative;z-index:2;margin-bottom:1rem}.error-severity-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .75rem;border-radius:10px;border:1px solid rgba(0,0,0,.05)}.error-severity-icon{font-size:1rem}.error-type-text{font-size:.875rem;font-weight:700;color:#1c1917;text-transform:uppercase;letter-spacing:.5px}.error-comparison{position:relative;z-index:2;display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.error-wrong-modern,.error-correct-modern{flex:1;background:#f5f5f4;padding:.75rem;border-radius:10px}.error-correct-modern{background:#10b9811a}.error-label-modern{font-size:.75rem;font-weight:700;color:#78716c;margin-bottom:.375rem;text-transform:uppercase;letter-spacing:.5px}.error-text-modern{font-size:.9375rem;font-weight:500;color:#1c1917;line-height:1.4}.error-text-modern.correct{color:#10b981;font-weight:600}.error-arrow{font-size:1.25rem;color:#78716c;flex-shrink:0}.error-explanation-modern{position:relative;z-index:2;display:flex;align-items:flex-start;gap:.625rem;background:linear-gradient(135deg,#ff6b6b0d,#ff87751a);padding:.875rem;border-radius:10px;border:1px solid rgba(255,107,107,.1)}.explanation-icon{font-size:1.125rem;flex-shrink:0}.explanation-text{font-size:.875rem;font-weight:500;color:#44403c;line-height:1.5}.more-errors-badge{background:linear-gradient(135deg,#ff6b6b1a,#ff877526);border:2px solid rgba(255,107,107,.2);border-radius:12px;padding:1rem;text-align:center;font-weight:600;color:#ff6b6b;display:flex;align-items:center;justify-content:center;gap:.5rem}.more-errors-icon{font-size:1.25rem}.vocabulary-grid-modern{display:flex;flex-wrap:wrap;gap:.75rem}.vocab-chip-modern{position:relative;background:#fff;border:2px solid #E7E5E4;border-radius:12px;padding:.625rem 1rem;font-weight:600;color:#1c1917;box-shadow:0 2px 6px #0000000a;transition:all .3s cubic-bezier(.4,0,.2,1);animation:vocabChipSlideIn .4s cubic-bezier(.4,0,.2,1) both}@keyframes vocabChipSlideIn{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.vocab-chip-modern:hover{transform:translateY(-2px) scale(1.05);border-color:#ff6b6b;box-shadow:0 4px 12px #ff6b6b33}.vocab-word{position:relative;z-index:2}.vocab-chip-glow{position:absolute;inset:0;background:radial-gradient(circle,rgba(255,107,107,.15),transparent 70%);border-radius:12px;opacity:0;transition:opacity .3s ease}.vocab-chip-modern:hover .vocab-chip-glow{opacity:1}.feedback-glass-grid{display:flex;flex-direction:column;gap:.75rem}.feedback-glass-card{position:relative;background:#fff;border-radius:14px;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 2px 8px #0000000d,0 1px 3px #00000008;animation:feedbackSlideIn .4s cubic-bezier(.4,0,.2,1) both}@keyframes feedbackSlideIn{0%{opacity:0;transform:translate(-15px)}to{opacity:1;transform:translate(0)}}.feedback-card-bg{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b08,#ff87750d);border-radius:14px}.feedback-icon-badge{position:relative;z-index:2;width:44px;height:44px;background:#f5f5f4;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0;box-shadow:0 2px 6px #0000000f}.feedback-text-modern{position:relative;z-index:2;flex:1;font-size:.9375rem;font-weight:500;color:#44403c;line-height:1.5}.summary-actions-modern{padding:1.5rem;background:#fff;border-top:1px solid #E7E5E4;display:flex;flex-direction:column;gap:.75rem}.summary-btn-modern{position:relative;width:100%;padding:1rem 1.5rem;border:none;border-radius:14px;cursor:pointer;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000001a}.summary-btn-modern:active{transform:scale(.97)}.btn-gradient-bg{position:absolute;inset:0;transition:transform .3s ease}.summary-btn-modern.primary-gradient .btn-gradient-bg{background:linear-gradient(135deg,#ff6b6b,#ff8787)}.summary-btn-modern.secondary-gradient .btn-gradient-bg{background:linear-gradient(135deg,#9775fa,#b197fc)}.summary-btn-modern.tertiary-gradient .btn-gradient-bg{background:#fff;border:2px solid #E7E5E4}.summary-btn-modern:hover .btn-gradient-bg{transform:scale(1.05)}.btn-content{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:.625rem}.summary-btn-modern.primary-gradient .btn-content,.summary-btn-modern.secondary-gradient .btn-content{color:#fff}.summary-btn-modern.tertiary-gradient .btn-content{color:#1c1917}.summary-btn-modern.primary-gradient .btn-text,.summary-btn-modern.primary-gradient .btn-icon,.summary-btn-modern.secondary-gradient .btn-text,.summary-btn-modern.secondary-gradient .btn-icon{color:#fff!important}.summary-btn-modern.tertiary-gradient .btn-text,.summary-btn-modern.tertiary-gradient .btn-icon{color:#1c1917!important}.btn-icon{font-size:1.25rem}.btn-text{font-family:Poppins,sans-serif;font-size:1rem;font-weight:700;letter-spacing:.2px}.btn-glow{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);width:80%;height:40px;border-radius:50%;opacity:0;transition:opacity .3s ease;pointer-events:none}.summary-btn-modern.primary-gradient .btn-glow{background:radial-gradient(circle,rgba(255,107,107,.4),transparent 70%)}.summary-btn-modern.secondary-gradient .btn-glow{background:radial-gradient(circle,rgba(151,117,250,.4),transparent 70%)}.summary-btn-modern:hover .btn-glow{opacity:1}@media(max-width:380px){.summary-stats-grid{grid-template-columns:1fr}.summary-stat-card-liquid.primary{grid-column:1}.summary-title-modern{font-size:1.75rem}.summary-celebration-icon{font-size:3.5rem}}@media(prefers-reduced-motion:reduce){.summary-particles .particle,.summary-header-gradient,.summary-celebration-icon,.no-errors-icon,.summary-stat-card-liquid,.error-glass-card,.vocab-chip-modern,.feedback-glass-card{animation:none!important}}.welcome-hero-modern{position:relative;min-height:65vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;overflow:hidden}.welcome-hero-bg{position:absolute;inset:0;z-index:0}.welcome-hero-gradient{position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787 35%,#ffb4a9);animation:welcomeGradientShift 8s ease-in-out infinite}@keyframes welcomeGradientShift{0%,to{background:linear-gradient(135deg,#ff6b6b,#ff8787 35%,#ffb4a9)}50%{background:linear-gradient(135deg,#ff8787,#ffb4a9 35%,#ff6b6b)}}.welcome-hero-particles{position:absolute;inset:0;overflow:hidden}.welcome-particle{position:absolute;width:8px;height:8px;background:#fff9;border-radius:50%;box-shadow:0 0 10px #ffffff4d;animation:welcomeParticleFloat 6s ease-in-out infinite;animation-delay:var(--delay);left:var(--x);top:var(--y)}@keyframes welcomeParticleFloat{0%,to{transform:translate(0) scale(1);opacity:.6}25%{transform:translate(30px,-30px) scale(1.2);opacity:.8}50%{transform:translate(-20px,-50px) scale(.9);opacity:.5}75%{transform:translate(-30px,-20px) scale(1.1);opacity:.7}}.welcome-hero-content{position:relative;z-index:2;text-align:center;animation:welcomeHeroFadeIn .8s cubic-bezier(.4,0,.2,1) both}@keyframes welcomeHeroFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.welcome-sound-wave{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:2rem}.wave-bar-modern{width:6px;height:40px;background:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;animation:waveBarPulse 1.2s ease-in-out infinite}.wave-bar-modern:nth-child(1){animation-delay:0s;height:35px}.wave-bar-modern:nth-child(2){animation-delay:.1s;height:50px}.wave-bar-modern:nth-child(3){animation-delay:.2s;height:60px}.wave-bar-modern:nth-child(4){animation-delay:.3s;height:45px}.wave-bar-modern:nth-child(5){animation-delay:.4s;height:30px}@keyframes waveBarPulse{0%,to{transform:scaleY(1);opacity:.8}50%{transform:scaleY(1.3);opacity:1}}.welcome-hero-title{font-family:Poppins,sans-serif;font-size:4rem;font-weight:800;color:#fff;margin:0 0 .5rem;text-shadow:0 4px 12px rgba(0,0,0,.2),0 2px 4px rgba(0,0,0,.1);letter-spacing:-.5px}.welcome-hero-subtitle{font-family:Inter,sans-serif;font-size:1.25rem;font-weight:500;color:#fffffff2;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.15)}.welcome-features-modern{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;padding:2.5rem 1.5rem;max-width:1000px;margin:0 auto}.welcome-feature-card{position:relative;background:#ffffff26;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.3);border-radius:20px;padding:2rem 1.5rem;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 32px #0000001a,inset 0 1px #fff6;animation:featureCardSlideIn .6s cubic-bezier(.4,0,.2,1) both}.welcome-feature-card:nth-child(1){animation-delay:.1s}.welcome-feature-card:nth-child(2){animation-delay:.2s}.welcome-feature-card:nth-child(3){animation-delay:.3s}@keyframes featureCardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.welcome-feature-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 16px 48px #00000026,inset 0 1px #ffffff80;border-color:#ffffff80}.welcome-feature-card:hover .feature-card-glow{opacity:1}.feature-card-icon{width:80px;height:80px;margin:0 auto 1.5rem;border-radius:20px;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #00000026,0 4px 8px #0000001a;transition:transform .3s cubic-bezier(.4,0,.2,1)}.welcome-feature-card:hover .feature-card-icon{transform:scale(1.1) rotate(-5deg)}.feature-card-icon svg{width:40px;height:40px;fill:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.feature-card-icon.gradient-coral{background:linear-gradient(135deg,#ff6b6b,#ff8787)}.feature-card-icon.gradient-blue{background:linear-gradient(135deg,#4dabf7,#74c0fc)}.feature-card-icon.gradient-purple{background:linear-gradient(135deg,#9775fa,#b197fc)}.welcome-feature-card h3{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;color:#1c1917;margin:0 0 .75rem}.welcome-feature-card p{font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#57534e;margin:0;line-height:1.5}.feature-card-glow{position:absolute;bottom:-30px;right:-30px;width:120px;height:120px;border-radius:50%;opacity:0;transition:opacity .4s ease;pointer-events:none;z-index:-1}.welcome-feature-card:nth-child(1) .feature-card-glow{background:radial-gradient(circle,rgba(255,107,107,.3),transparent 70%)}.welcome-feature-card:nth-child(2) .feature-card-glow{background:radial-gradient(circle,rgba(77,171,247,.3),transparent 70%)}.welcome-feature-card:nth-child(3) .feature-card-glow{background:radial-gradient(circle,rgba(151,117,250,.3),transparent 70%)}.welcome-actions-modern{display:flex;flex-direction:column;gap:1rem;padding:2rem 1.5rem;max-width:400px;margin:0 auto}.welcome-btn-primary,.welcome-btn-secondary{position:relative;padding:1rem 2rem;border:none;border-radius:16px;font-family:Poppins,sans-serif;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #00000026;overflow:hidden}.welcome-btn-primary{background:linear-gradient(135deg,#ff6b6b,#ff8787);color:#fff}.welcome-btn-primary:hover{transform:scale(1.05);box-shadow:0 12px 32px #ff6b6b4d}.welcome-btn-primary:active{transform:scale(.97)}.welcome-btn-secondary{background:transparent;color:#78716c;border:none;padding:1rem;font-size:1rem;font-weight:600;box-shadow:none}.welcome-btn-secondary:hover{transform:none;background:transparent;box-shadow:none}.welcome-btn-secondary:hover .link-highlight{color:#ff8787;text-decoration:underline;text-underline-offset:3px}.welcome-btn-secondary:active{transform:none}.link-highlight{color:#ff6b6b;font-weight:700;transition:all .2s ease}.welcome-btn-glow{position:absolute;bottom:-25px;left:50%;transform:translate(-50%);width:70%;height:40px;background:radial-gradient(circle,rgba(255,107,107,.4),transparent 70%);border-radius:50%;opacity:0;transition:opacity .3s ease;pointer-events:none;z-index:-1}.welcome-btn-primary:hover .welcome-btn-glow{opacity:1}.auth-screen-mobile{position:relative;min-height:100vh;display:flex;flex-direction:column;background:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch}#auth-screen.active{position:fixed;inset:0;z-index:100}.back-btn-mobile{position:absolute;top:max(env(safe-area-inset-top),1rem);left:1.25rem;width:44px;height:44px;background:#ffffffe6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:none;border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000f;z-index:10;color:#1c1917}.back-btn-mobile:hover{background:#f5f5f4;transform:scale(1.05)}.back-btn-mobile:active{transform:scale(.95)}.auth-content-mobile{flex:1;display:flex;flex-direction:column;padding:max(env(safe-area-inset-top),5rem) 1.75rem max(env(safe-area-inset-bottom),2rem);max-width:480px;width:100%;margin:0 auto}.auth-brand-mobile{text-align:center;margin-bottom:3rem}.brand-dots-mobile{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:2rem}.brand-dot{width:10px;height:10px;background:linear-gradient(135deg,#ff6b6b,#ff8787);border-radius:50%;animation:brandDotPulse 2s ease-in-out infinite}.brand-dot:nth-child(1){animation-delay:0s}.brand-dot:nth-child(2){animation-delay:.3s;transform:scale(1.2)}.brand-dot:nth-child(3){animation-delay:.6s}@keyframes brandDotPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.3)}}.auth-title-mobile{font-family:Poppins,sans-serif;font-size:2rem;font-weight:700;color:#1c1917;margin:0 0 .75rem;letter-spacing:-.5px}.auth-subtitle-mobile{font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#78716c;margin:0}.auth-form-mobile{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.input-group-mobile{position:relative;width:100%}.input-mobile{width:100%;padding:1.125rem 1rem .625rem;border:1.5px solid #E7E5E4;border-radius:14px;background:#fafaf9;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#1c1917;transition:all .2s cubic-bezier(.4,0,.2,1);outline:none;min-height:56px}.label-mobile{position:absolute;left:1rem;top:50%;transform:translateY(-50%);font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#a8a29e;pointer-events:none;transition:all .2s cubic-bezier(.4,0,.2,1);background:transparent;padding:0 .25rem}.input-mobile:focus+.label-mobile,.input-mobile:not(:placeholder-shown)+.label-mobile{top:.75rem;transform:translateY(0);font-size:.75rem;color:#ff6b6b;font-weight:600}.input-mobile:focus{border-color:#ff6b6b;background:#fff;box-shadow:0 0 0 4px #ff6b6b14}.btn-primary-mobile{width:100%;padding:1rem;min-height:56px;border:none;border-radius:14px;background:linear-gradient(135deg,#1c1917,#292524);color:#fff;font-family:Inter,sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #1c191726;letter-spacing:.3px}.btn-primary-mobile:hover{background:linear-gradient(135deg,#292524,#44403c);transform:translateY(-2px);box-shadow:0 6px 20px #1c191733}.btn-primary-mobile:active{transform:translateY(0);box-shadow:0 2px 8px #1c191726}.divider-mobile{display:flex;align-items:center;gap:1rem;margin:1.5rem 0}.divider-line-mobile{flex:1;height:1px;background:linear-gradient(90deg,transparent,#E7E5E4,transparent)}.divider-text-mobile{font-family:Inter,sans-serif;font-size:.8125rem;font-weight:600;color:#a8a29e;letter-spacing:1px}.btn-google-mobile{width:100%;padding:1rem;min-height:56px;border:1.5px solid #E7E5E4;border-radius:14px;background:#fff;color:#1c1917;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #0000000a}.btn-google-mobile:hover{background:#fafaf9;border-color:#d6d3d1;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.btn-google-mobile:active{transform:translateY(0);box-shadow:0 2px 8px #0000000a}.auth-footer-mobile{text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem;flex-wrap:wrap}.footer-text-mobile{font-family:Inter,sans-serif;font-size:.9375rem;font-weight:500;color:#78716c}.footer-link-mobile{background:none;border:none;color:#ff6b6b;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:700;cursor:pointer;padding:0;transition:all .2s ease;position:relative}.footer-link-mobile:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#ff6b6b;transform:scaleX(0);transition:transform .2s ease;transform-origin:left}.footer-link-mobile:hover:after{transform:scaleX(1)}.footer-link-mobile:hover{color:#ff8787}.error-message-mobile{font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;color:#dc2626;padding:.875rem 1rem;background:#fef2f2;border:1.5px solid #FECACA;border-radius:12px;margin-top:-.5rem;display:none}.error-message-mobile:not(:empty){display:block}@media(max-width:380px){.auth-content-mobile{padding-left:1.25rem;padding-right:1.25rem}.auth-title-mobile{font-size:1.75rem}.auth-subtitle-mobile{font-size:.9375rem}.input-mobile,.btn-primary-mobile,.btn-google-mobile{min-height:52px}}@supports (padding: max(0px)){.auth-content-mobile{padding-left:max(1.75rem,env(safe-area-inset-left));padding-right:max(1.75rem,env(safe-area-inset-right))}}.auth-screen-clean{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;background:linear-gradient(135deg,#fafaf9,#f5f5f4);overflow:hidden}.back-btn-clean{position:absolute;top:1.5rem;left:1.5rem;width:40px;height:40px;background:#fff;border:1px solid #E7E5E4;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d;z-index:10;color:#57534e}.back-btn-clean:hover{background:#fafaf9;border-color:#d6d3d1;transform:translate(-2px);box-shadow:0 2px 8px #00000014}.back-btn-clean:active{transform:translate(-1px) scale(.98)}.auth-container-clean{width:100%;max-width:420px;background:#fff;border-radius:20px;padding:3rem 2.5rem;box-shadow:0 10px 40px #00000014,0 2px 8px #0000000a;animation:authContainerSlideIn .5s cubic-bezier(.4,0,.2,1) both}@keyframes authContainerSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.auth-header-clean{text-align:center;margin-bottom:2.5rem}.auth-logo{margin-bottom:2rem}.logo-sound-wave{display:flex;align-items:center;justify-content:center;gap:6px;height:48px}.wave-dot{width:8px;height:8px;background:linear-gradient(135deg,#ff6b6b,#ff8787);border-radius:50%;animation:waveDotPulse 1.5s ease-in-out infinite}.wave-dot:nth-child(1){animation-delay:0s}.wave-dot:nth-child(2){animation-delay:.2s;transform:scale(1.3)}.wave-dot:nth-child(3){animation-delay:.4s}@keyframes waveDotPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.4)}}.auth-title-clean{font-family:Poppins,sans-serif;font-size:1.875rem;font-weight:700;color:#1c1917;margin:0 0 .5rem;letter-spacing:-.5px}.auth-subtitle-clean{font-family:Inter,sans-serif;font-size:.9375rem;font-weight:500;color:#78716c;margin:0}.auth-form-clean{display:flex;flex-direction:column;gap:1.25rem}.form-group-clean{display:flex;flex-direction:column;gap:.5rem}.form-label-clean{font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;color:#44403c;letter-spacing:-.2px}.form-input-clean{padding:.875rem 1rem;border:1.5px solid #E7E5E4;border-radius:10px;background:#fafaf9;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:500;color:#1c1917;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-input-clean:focus{outline:none;border-color:#ff6b6b;background:#fff;box-shadow:0 0 0 3px #ff6b6b1a}.form-input-clean::placeholder{color:#a8a29e}.auth-submit-btn-clean{margin-top:.5rem;padding:.875rem 1.5rem;border:none;border-radius:10px;background:#1c1917;color:#fff;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 8px #1c191726}.auth-submit-btn-clean:hover{background:#292524;transform:translateY(-1px);box-shadow:0 4px 12px #1c191733}.auth-submit-btn-clean:active{transform:translateY(0);box-shadow:0 1px 4px #1c191726}.auth-divider-clean{display:flex;align-items:center;gap:1rem;margin:1.75rem 0}.divider-line{flex:1;height:1px;background:#e7e5e4}.divider-text{font-family:Inter,sans-serif;font-size:.8125rem;font-weight:500;color:#a8a29e;text-transform:uppercase;letter-spacing:.5px}.google-btn-clean{width:100%;padding:.875rem 1.5rem;border:1.5px solid #E7E5E4;border-radius:10px;background:#fff;color:#44403c;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.75rem;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #0000000d}.google-btn-clean:hover{background:#fafaf9;border-color:#d6d3d1;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.google-btn-clean:active{transform:translateY(0);box-shadow:0 1px 3px #0000000d}.auth-toggle-clean{text-align:center;margin-top:2rem;padding-top:1.75rem;border-top:1px solid #F5F5F4;display:flex;align-items:center;justify-content:center;gap:.5rem}.toggle-text{font-family:Inter,sans-serif;font-size:.9375rem;font-weight:500;color:#78716c}.toggle-btn-clean{background:none;border:none;color:#ff6b6b;font-family:Inter,sans-serif;font-size:.9375rem;font-weight:600;cursor:pointer;padding:0;transition:all .2s ease;position:relative}.toggle-btn-clean:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:#ff6b6b;transform:scaleX(0);transition:transform .2s ease}.toggle-btn-clean:hover:after{transform:scaleX(1)}.toggle-btn-clean:hover{color:#ff8787}@media(max-width:480px){.auth-container-clean{padding:2.5rem 2rem}.auth-title-clean{font-size:1.625rem}.back-btn-clean{width:36px;height:36px}}.error-message{font-family:Inter,sans-serif;font-size:.875rem;font-weight:500;color:#dc2626;padding:.75rem 1rem;background:#fef2f2;border:1px solid #FECACA;border-radius:8px;margin-top:-.5rem;display:none}.error-message:not(:empty){display:block}.auth-screen-modern{position:relative;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1.5rem;overflow:hidden}.back-btn-modern{position:absolute;top:2rem;left:2rem;width:48px;height:48px;background:#fff3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:2px solid rgba(255,255,255,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000001a;z-index:10}.back-btn-modern:hover{background:#ffffff4d;transform:scale(1.1);box-shadow:0 6px 16px #00000026}.back-btn-modern:active{transform:scale(.95)}.back-btn-modern svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}.auth-screen-modern:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#ff6b6b,#ff8787 35%,#ffb4a9);z-index:0}.auth-card-modern{position:relative;z-index:2;background:#fff3;backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);border:2.5px solid rgba(255,255,255,.4);border-radius:24px;padding:3rem 2rem;max-width:420px;width:100%;box-shadow:0 20px 60px #0003,inset 0 1px #ffffff80,inset 0 -1px #0000000d;animation:authCardSlideIn .6s cubic-bezier(.4,0,.2,1) both}@keyframes authCardSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-header-modern{text-align:center;margin-bottom:2.5rem}.auth-title-modern{font-family:Poppins,sans-serif;font-size:2rem;font-weight:800;color:#fff;margin:0 0 .5rem;text-shadow:0 2px 8px rgba(0,0,0,.15)}.auth-subtitle-modern{font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#ffffffe6;margin:0}.auth-form-modern{display:flex;flex-direction:column;gap:1.25rem}.form-group-modern{display:flex;flex-direction:column;gap:.5rem}.form-label-modern{font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.form-input-modern{padding:1rem 1.25rem;border:2px solid rgba(255,255,255,.3);border-radius:12px;background:#fffffff2;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:#1c1917;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 12px #0000000d}.form-input-modern:focus{outline:none;border-color:#fff9;background:#fff;box-shadow:0 8px 24px #0000001a;transform:translateY(-2px)}.form-input-modern::placeholder{color:#a8a29e}.auth-submit-btn{margin-top:1rem;padding:1rem 2rem;border:none;border-radius:14px;background:linear-gradient(135deg,#1c1917,#44403c);color:#fff;font-family:Poppins,sans-serif;font-size:1.125rem;font-weight:700;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 8px 24px #0003}.auth-submit-btn:hover{transform:scale(1.03);box-shadow:0 12px 32px #0000004d}.auth-submit-btn:active{transform:scale(.98)}.auth-divider-modern{position:relative;text-align:center;margin:1.5rem 0}.auth-divider-modern:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:#ffffff4d}.auth-divider-text{position:relative;display:inline-block;padding:0 1rem;background:transparent;font-family:Inter,sans-serif;font-size:.875rem;font-weight:600;color:#fffc}.auth-toggle-modern{text-align:center;margin-top:1.5rem}.auth-toggle-text{font-family:Inter,sans-serif;font-size:.9375rem;font-weight:500;color:#ffffffe6}.auth-toggle-link{color:#fff;font-weight:700;text-decoration:none;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent}.auth-toggle-link:hover{border-bottom-color:#fff}@media(max-width:768px){.welcome-hero-title{font-size:3rem}.welcome-hero-subtitle{font-size:1.125rem}.welcome-features-modern{grid-template-columns:1fr;padding:2rem 1rem}.welcome-actions-modern{padding:1.5rem 1rem}}@media(max-width:480px){.welcome-hero-modern{min-height:55vh;padding:2rem 1rem}.welcome-hero-title{font-size:2.5rem}.welcome-hero-subtitle{font-size:1rem}.welcome-sound-wave{gap:4px}.wave-bar-modern{width:5px}.welcome-feature-card{padding:1.5rem 1.25rem}.feature-card-icon{width:70px;height:70px}.feature-card-icon svg{width:35px;height:35px}.welcome-feature-card h3{font-size:1.25rem}.auth-card-modern{padding:2rem 1.5rem}.auth-title-modern{font-size:1.75rem}}@media(prefers-reduced-motion:reduce){.welcome-hero-gradient,.welcome-particle,.wave-bar-modern,.welcome-feature-card,.welcome-hero-content,.auth-card-modern{animation:none!important}.welcome-feature-card:hover .feature-card-icon,.welcome-btn-primary:hover,.welcome-btn-secondary:hover{transform:none!important}}.landing-nav{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 1.5rem;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);transition:all .3s ease}.landing-nav-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.landing-logo{display:flex;align-items:center;gap:.5rem}.landing-logo-icon{display:flex;align-items:center;justify-content:center}.landing-logo-icon.small svg{width:24px;height:24px}.landing-logo-text{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#ff6b6b,#f97316);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-nav-links{display:flex;align-items:center;gap:.75rem}.landing-nav-link{padding:.5rem 1rem;border:none;background:transparent;font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;color:var(--text-medium);cursor:pointer;transition:color .2s ease}.landing-nav-link:hover{color:var(--primary)}.landing-nav-cta{padding:.6rem 1.25rem;border:none;border-radius:100px;background:linear-gradient(135deg,#ff6b6b,#f97316);font-family:Inter,sans-serif;font-size:.9rem;font-weight:600;color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #ff6b6b4d}.landing-nav-cta:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.landing-hero{position:relative;min-height:100vh;padding:8rem 1.5rem 4rem;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}.landing-hero-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}.hero-gradient-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.6;animation:orbFloat 20s ease-in-out infinite}.hero-gradient-orb.orb-1{width:600px;height:600px;background:linear-gradient(135deg,#ff6b6b66,#f973164d);top:-200px;right:-200px;animation-delay:0s}.hero-gradient-orb.orb-2{width:400px;height:400px;background:linear-gradient(135deg,#8b5cf64d,#ec489933);bottom:10%;left:-100px;animation-delay:-7s}.hero-gradient-orb.orb-3{width:300px;height:300px;background:linear-gradient(135deg,#10b98133,#3b82f633);top:40%;right:10%;animation-delay:-14s}@keyframes orbFloat{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(-30px,-20px) scale(1.02)}}.hero-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(0,0,0,.03) 1px,transparent 1px);background-size:40px 40px}.landing-hero-content{position:relative;z-index:10;max-width:700px;text-align:center;animation:fadeInUp .8s ease-out}.hero-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.2);border-radius:100px;margin-bottom:1.5rem;font-size:.85rem;font-weight:500;color:var(--primary)}.badge-dot{width:8px;height:8px;background:var(--primary);border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.landing-hero-title{font-family:Poppins,sans-serif;font-size:clamp(2.5rem,6vw,4rem);font-weight:800;line-height:1.1;color:var(--text-dark);margin-bottom:1.5rem;letter-spacing:-.03em}.title-gradient{display:block;background:linear-gradient(135deg,#ff6b6b,#f97316,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-subtitle{font-size:1.2rem;line-height:1.7;color:var(--text-medium);margin-bottom:2.5rem;max-width:540px;margin-left:auto;margin-right:auto}.hero-cta-group{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:3rem}@media(min-width:480px){.hero-cta-group{flex-direction:row;justify-content:center}}.hero-cta-primary{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2rem;border:none;border-radius:100px;background:linear-gradient(135deg,#ff6b6b,#f97316);font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600;color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 30px #ff6b6b66}.hero-cta-primary:hover{transform:translateY(-3px);box-shadow:0 12px 40px #ff6b6b80}.hero-cta-primary svg{transition:transform .3s ease}.hero-cta-primary:hover svg{transform:translate(4px)}.hero-cta-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:1rem 1.5rem;border:2px solid var(--gray-200);border-radius:100px;background:#fff;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:var(--text-dark);cursor:pointer;transition:all .3s ease}.hero-cta-secondary:hover{border-color:var(--primary);color:var(--primary)}.hero-cta-secondary svg{color:var(--primary)}.hero-social-proof{display:flex;align-items:center;justify-content:center;gap:1rem}.social-avatars{display:flex}.social-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;color:#fff;border:2px solid white;margin-left:-10px;box-shadow:0 2px 8px #0000001a}.social-avatar:first-child{margin-left:0}.social-text{display:flex;flex-direction:column;align-items:flex-start}.social-count{font-weight:700;color:var(--text-dark);font-size:.95rem}.social-label{font-size:.8rem;color:var(--text-light)}.hero-phone-mockup{display:none;position:absolute;right:5%;top:50%;transform:translateY(-50%);animation:floatPhone 6s ease-in-out infinite}@media(min-width:1024px){.hero-phone-mockup{display:block}.landing-hero-content{text-align:left;margin-right:auto;margin-left:5%}.hero-cta-group,.hero-social-proof{justify-content:flex-start}}@keyframes floatPhone{0%,to{transform:translateY(-50%) translate(0)}50%{transform:translateY(-52%) translate(-5px)}}.phone-frame{width:280px;height:580px;background:linear-gradient(145deg,#1a1a1a,#2d2d2d);border-radius:45px;padding:12px;box-shadow:0 50px 100px #0000004d,0 20px 40px #0003,inset 0 1px #ffffff1a}.phone-notch{width:120px;height:30px;background:#1a1a1a;border-radius:0 0 20px 20px;margin:0 auto;position:relative;z-index:10}.phone-screen{width:100%;height:100%;background:linear-gradient(180deg,#fafafa,#f0f0f0);border-radius:35px;overflow:hidden;position:relative}.mockup-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem .5rem;background:#fff}.mockup-time{font-weight:600;font-size:.9rem;color:#1a1a1a}.mockup-icons{display:flex;gap:4px}.mockup-signal,.mockup-wifi,.mockup-battery{width:16px;height:12px;background:#1a1a1a;border-radius:2px}.mockup-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.mockup-chat-bubble{padding:.75rem 1rem;border-radius:18px;font-size:.85rem;line-height:1.4;max-width:85%;animation:bubbleFadeIn .5s ease-out}.mockup-chat-bubble.ai{background:#fff;color:var(--text-dark);align-self:flex-start;box-shadow:0 2px 8px #00000014}.mockup-chat-bubble.user{background:linear-gradient(135deg,#ff6b6b,#f97316);color:#fff;align-self:flex-end}@keyframes bubbleFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.mockup-voice-wave{display:flex;align-items:center;justify-content:center;gap:4px;padding:1rem;margin-top:2rem}.wave-line{width:4px;height:20px;background:linear-gradient(180deg,#ff6b6b,#f97316);border-radius:2px;animation:waveAnimate 1s ease-in-out infinite}.wave-line:nth-child(1){animation-delay:0s}.wave-line:nth-child(2){animation-delay:.1s}.wave-line:nth-child(3){animation-delay:.2s}.wave-line:nth-child(4){animation-delay:.3s}.wave-line:nth-child(5){animation-delay:.4s}@keyframes waveAnimate{0%,to{height:20px}50%{height:40px}}.landing-features{padding:6rem 1.5rem;background:#fff}.section-header{text-align:center;max-width:600px;margin:0 auto 4rem}.section-label{display:inline-block;padding:.4rem 1rem;background:#ff6b6b1a;border-radius:100px;font-size:.85rem;font-weight:600;color:var(--primary);margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.section-title{font-family:Poppins,sans-serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:var(--text-dark);margin-bottom:1rem;letter-spacing:-.02em}.section-subtitle{font-size:1.1rem;color:var(--text-medium);line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1200px;margin:0 auto}.feature-card-luxury{background:var(--bg-light);border:1px solid var(--gray-100);border-radius:20px;padding:2rem;transition:all .3s ease}.feature-card-luxury:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000014;border-color:transparent}.feature-icon-wrap{width:56px;height:56px;border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.feature-icon-wrap.coral{background:linear-gradient(135deg,#ff6b6b26,#ff6b6b0d);color:#ff6b6b}.feature-icon-wrap.orange{background:linear-gradient(135deg,#f9731626,#f973160d);color:#f97316}.feature-icon-wrap.purple{background:linear-gradient(135deg,#8b5cf626,#8b5cf60d);color:#8b5cf6}.feature-icon-wrap.teal{background:linear-gradient(135deg,#14b8a626,#14b8a60d);color:#14b8a6}.feature-icon-wrap.blue{background:linear-gradient(135deg,#3b82f626,#3b82f60d);color:#3b82f6}.feature-icon-wrap.pink{background:linear-gradient(135deg,#ec489926,#ec48990d);color:#ec4899}.feature-card-luxury h3{font-family:Poppins,sans-serif;font-size:1.25rem;font-weight:600;color:var(--text-dark);margin-bottom:.5rem}.feature-card-luxury p{font-size:.95rem;color:var(--text-medium);line-height:1.6}.landing-how-it-works{padding:6rem 1.5rem;background:var(--bg-light)}.steps-container{display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:1000px;margin:0 auto}@media(min-width:768px){.steps-container{flex-direction:row;gap:0;justify-content:center}}.step-card{background:#fff;border-radius:24px;padding:2rem;text-align:center;flex:1;max-width:300px;box-shadow:0 4px 20px #0000000d;transition:all .3s ease}.step-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #0000001a}.step-number{width:48px;height:48px;background:linear-gradient(135deg,#ff6b6b,#f97316);color:#fff;font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:700;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.step-content h3{font-family:Poppins,sans-serif;font-size:1.2rem;font-weight:600;color:var(--text-dark);margin-bottom:.5rem}.step-content p{font-size:.9rem;color:var(--text-medium);line-height:1.5}.step-connector{display:none;color:var(--gray-300);padding:0 1rem}@media(min-width:768px){.step-connector{display:flex;align-items:center}}.landing-testimonials{padding:6rem 1.5rem;background:#fff}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;max-width:1100px;margin:0 auto}.testimonial-card{background:var(--bg-light);border:1px solid var(--gray-100);border-radius:24px;padding:2rem;transition:all .3s ease}.testimonial-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #00000014}.testimonial-card.featured{background:linear-gradient(135deg,#ff6b6b,#f97316);border:none}.testimonial-card.featured .testimonial-stars,.testimonial-card.featured .testimonial-text,.testimonial-card.featured .author-name,.testimonial-card.featured .author-role{color:#fff}.testimonial-card.featured .author-role{opacity:.8}.testimonial-stars{color:#fcd34d;font-size:1.25rem;margin-bottom:1rem;letter-spacing:2px}.testimonial-text{font-size:1rem;line-height:1.7;color:var(--text-dark);margin-bottom:1.5rem;font-style:italic}.testimonial-author{display:flex;align-items:center;gap:.75rem}.author-avatar{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;color:#fff}.author-info{display:flex;flex-direction:column}.author-name{font-weight:600;color:var(--text-dark);font-size:.95rem}.author-role{font-size:.8rem;color:var(--text-light)}.landing-cta{position:relative;padding:6rem 1.5rem;background:linear-gradient(135deg,#ff6b6b,#f97316);overflow:hidden}.cta-bg-pattern{position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.1) 1px,transparent 1px);background-size:30px 30px}.cta-content{position:relative;z-index:10;max-width:600px;margin:0 auto;text-align:center}.cta-content h2{font-family:Poppins,sans-serif;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;color:#fff;margin-bottom:1rem}.cta-content p{font-size:1.1rem;color:#ffffffe6;margin-bottom:2rem}.cta-button{display:inline-flex;align-items:center;gap:.75rem;padding:1rem 2.5rem;border:none;border-radius:100px;background:#fff;font-family:Inter,sans-serif;font-size:1.1rem;font-weight:600;color:#ff6b6b;cursor:pointer;transition:all .3s ease;box-shadow:0 8px 30px #0003}.cta-button:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 40px #00000040}.cta-button svg{transition:transform .3s ease}.cta-button:hover svg{transform:translate(4px)}.landing-footer{background:var(--gray-900);color:#fff;padding:4rem 1.5rem 2rem}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem}@media(min-width:768px){.footer-content{grid-template-columns:2fr 3fr}}.footer-brand{max-width:280px}.footer-brand .landing-logo-text{color:#fff;-webkit-text-fill-color:white;background:none}.footer-tagline{font-size:.9rem;color:var(--gray-400);margin-top:1rem;line-height:1.6}.footer-links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.footer-links-column h4{font-size:.9rem;font-weight:600;color:#fff;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.05em}.footer-link{display:block;font-size:.9rem;color:var(--gray-400);text-decoration:none;padding:.4rem 0;transition:color .2s ease;cursor:pointer;background:none;border:none;text-align:left}.footer-link:hover{color:#fff}.footer-bottom{max-width:1200px;margin:0 auto;padding-top:2rem;border-top:1px solid var(--gray-800);display:flex;flex-direction:column;align-items:center;gap:1rem}@media(min-width:640px){.footer-bottom{flex-direction:row;justify-content:space-between}}.footer-bottom p{font-size:.85rem;color:var(--gray-500)}.footer-social{display:flex;gap:1rem}.social-link{width:40px;height:40px;border-radius:50%;background:var(--gray-800);display:flex;align-items:center;justify-content:center;color:var(--gray-400);transition:all .3s ease}.social-link:hover{background:var(--primary);color:#fff;transform:translateY(-3px)}.legal-page{background:var(--bg-light);overflow-y:auto}.legal-nav{position:sticky;top:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#fffffff2;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--gray-100)}.legal-back-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border:none;border-radius:100px;background:var(--gray-100);font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;color:var(--text-dark);cursor:pointer;transition:all .2s ease}.legal-back-btn:hover{background:var(--gray-200)}.legal-content{max-width:800px;margin:0 auto;padding:2rem 1.5rem 4rem}.legal-header{text-align:center;margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--gray-200)}.legal-header h1{font-family:Poppins,sans-serif;font-size:2.5rem;font-weight:700;color:var(--text-dark);margin-bottom:.5rem}.legal-updated{font-size:.9rem;color:var(--text-light)}.legal-body{background:#fff;border-radius:24px;padding:2rem;box-shadow:0 4px 20px #0000000d}.legal-section{margin-bottom:2.5rem}.legal-section:last-child{margin-bottom:0}.legal-section h2{font-family:Poppins,sans-serif;font-size:1.4rem;font-weight:600;color:var(--text-dark);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--primary);display:inline-block}.legal-section h3{font-size:1.1rem;font-weight:600;color:var(--text-dark);margin:1.5rem 0 .75rem}.legal-section p{font-size:1rem;line-height:1.8;color:var(--text-medium);margin-bottom:1rem}.legal-section ul{margin:1rem 0;padding-left:1.5rem}.legal-section li{font-size:1rem;line-height:1.8;color:var(--text-medium);margin-bottom:.5rem}.legal-section li::marker{color:var(--primary)}.contact-info{background:var(--bg-light);border-radius:12px;padding:1rem 1.5rem;margin-top:1rem}.support-page .support-header{display:flex;flex-direction:column;align-items:center}.support-icon{width:80px;height:80px;background:linear-gradient(135deg,#ff6b6b,#f97316);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1rem}.support-subtitle{font-size:1.1rem;color:var(--text-medium)}.support-section{margin-bottom:3rem}.support-section h2{font-family:Poppins,sans-serif;font-size:1.5rem;font-weight:600;color:var(--text-dark);margin-bottom:1.5rem}.faq-list{display:flex;flex-direction:column;gap:.75rem}.faq-item{background:#fff;border:1px solid var(--gray-100);border-radius:16px;overflow:hidden;transition:all .3s ease}.faq-item:hover{border-color:var(--gray-200)}.faq-item.active{border-color:var(--primary);box-shadow:0 4px 15px #ff6b6b1a}.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border:none;background:none;font-family:Inter,sans-serif;font-size:1rem;font-weight:500;color:var(--text-dark);text-align:left;cursor:pointer;transition:all .2s ease}.faq-question:hover{color:var(--primary)}.faq-question svg{flex-shrink:0;transition:transform .3s ease;color:var(--text-light)}.faq-item.active .faq-question svg{transform:rotate(180deg);color:var(--primary)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease}.faq-item.active .faq-answer{max-height:200px}.faq-answer p{padding:0 1.5rem 1.25rem;font-size:.95rem;line-height:1.7;color:var(--text-medium)}.contact-section p{color:var(--text-medium);margin-bottom:1.5rem}.contact-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.contact-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:#fff;border:1px solid var(--gray-100);border-radius:16px;text-decoration:none;transition:all .3s ease}.contact-card:hover{border-color:var(--primary);transform:translateY(-3px);box-shadow:0 8px 25px #ff6b6b26}.contact-card-icon{width:48px;height:48px;background:linear-gradient(135deg,#ff6b6b1a,#f973161a);border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--primary);flex-shrink:0}.contact-card-content h4{font-size:1rem;font-weight:600;color:var(--text-dark);margin-bottom:.25rem}.contact-card-content p{font-size:.85rem;color:var(--text-light);margin:0}.app-info-card{background:#fff;border:1px solid var(--gray-100);border-radius:16px;overflow:hidden}.app-info-row{display:flex;justify-content:space-between;padding:1rem 1.5rem;border-bottom:1px solid var(--gray-100)}.app-info-row:last-child{border-bottom:none}.info-label{font-weight:500;color:var(--text-medium)}.info-value{font-weight:600;color:var(--text-dark)}#welcome-screen{overflow-y:auto;-webkit-overflow-scrolling:touch}@media(max-width:640px){.landing-nav{padding:.75rem 1rem}.landing-nav-link{display:none}.landing-hero{padding:6rem 1rem 3rem}.features-grid,.testimonials-grid{grid-template-columns:1fr}.footer-links-grid{grid-template-columns:1fr 1fr;gap:1.5rem}.legal-header h1{font-size:2rem}.legal-body{padding:1.5rem}}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-tap-highlight-color:transparent}html{position:fixed;width:100%;height:100%;overflow:hidden}body{-webkit-overflow-scrolling:touch;overflow-scrolling:touch;overscroll-behavior-y:none;overscroll-behavior:contain;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);transform:translateZ(0);backface-visibility:hidden;position:fixed;width:100%;height:100%;overflow:hidden}#app{height:100vh;height:-webkit-fill-available;overflow:hidden;position:relative}.ios-scroll,.scrollable,[data-ios-scroll]{-webkit-overflow-scrolling:touch!important;overflow-scrolling:touch!important;overscroll-behavior-y:contain;scroll-behavior:smooth;will-change:transform;transform:translateZ(0)}.ios-no-bounce{overscroll-behavior:none}button,a,[role=button],.btn,.card,[data-clickable]{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;touch-action:manipulation}button,.btn{transition:transform .15s cubic-bezier(.4,0,.2,1),opacity .15s cubic-bezier(.4,0,.2,1),filter .15s cubic-bezier(.4,0,.2,1);will-change:transform}button:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.94);opacity:.8}.ios-safe-area-top{padding-top:max(16px,env(safe-area-inset-top))}.ios-safe-area-bottom{padding-bottom:max(16px,env(safe-area-inset-bottom))}.ios-safe-area-left{padding-left:max(16px,env(safe-area-inset-left))}.ios-safe-area-right{padding-right:max(16px,env(safe-area-inset-right))}.ios-safe-area{padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.bottom-nav,#bottom-nav{padding-bottom:max(20px,env(safe-area-inset-bottom))}.ios-spring{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ios-quick{transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ios-standard{transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.ios-page-transition{transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .35s cubic-bezier(.4,0,.2,1)}@keyframes ios-slide-up{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.ios-slide-up{animation:ios-slide-up .35s cubic-bezier(.4,0,.2,1)}@keyframes ios-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ios-fade-out{0%{opacity:1}to{opacity:0}}.ios-fade-in{animation:ios-fade-in .2s cubic-bezier(.4,0,.2,1)}.ios-fade-out{animation:ios-fade-out .2s cubic-bezier(.4,0,.2,1)}.ios-no-select,button,.btn,.tab,.nav-item,[role=button],[role=tab]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,select{font-size:16px!important;-webkit-user-select:text;user-select:text}input:focus,textarea:focus{outline:none;transition:border-color .2s cubic-bezier(.4,0,.2,1)}.card,.scenario-card,.level-card{transition:transform .12s cubic-bezier(.4,0,.2,1),box-shadow .12s cubic-bezier(.4,0,.2,1);will-change:transform;transform:translateZ(0);backface-visibility:hidden}.card:active,.scenario-card:active,.level-card:active{transform:scale(.97) translateZ(0)}@keyframes ios-spin{to{transform:rotate(360deg)}}.ios-spinner{animation:ios-spin 1s linear infinite;will-change:transform}.ios-blur{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.ios-blur-light{-webkit-backdrop-filter:blur(10px) saturate(180%);backdrop-filter:blur(10px) saturate(180%);background-color:#ffffffb3}.ios-blur-dark{-webkit-backdrop-filter:blur(10px) saturate(180%);backdrop-filter:blur(10px) saturate(180%);background-color:#00000080}.tab{transition:all .15s cubic-bezier(.4,0,.2,1);will-change:transform,opacity}.tab:active{transform:scale(.92);opacity:.7}.modal,.overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .3s cubic-bezier(.4,0,.2,1)}.animated,.transitioning{will-change:transform,opacity;transform:translateZ(0);backface-visibility:hidden;perspective:1000px}.gpu-accelerate{transform:translateZ(0);backface-visibility:hidden;perspective:1000px}@media screen and (max-width:767px){input[type=text],input[type=email],input[type=password],input[type=tel],textarea{font-size:16px!important}}@supports (-webkit-touch-callout: none){.full-height{height:-webkit-fill-available}}*{touch-action:manipulation}.native-app-only{display:none}html.native-app .native-app-only{display:block}html.native-app .web-only{display:none!important}html.native-app{-webkit-user-select:none;-webkit-touch-callout:none;-webkit-overflow-scrolling:touch}html.native-app p,html.native-app span,html.native-app .selectable{-webkit-user-select:text;user-select:text}.ios-shadow-small{box-shadow:0 2px 8px #00000014}.ios-shadow-medium{box-shadow:0 4px 16px #0000001f}.ios-shadow-large{box-shadow:0 8px 32px #00000029}.ios-radius-small{border-radius:12px}.ios-radius-medium{border-radius:16px}.ios-radius-large{border-radius:24px}
