@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";*,*:before,*:after{box-sizing:border-box}:root{--bg: #ffffff;--surface: #f5f5f7;--surface-2: #ebebeb;--border: rgba(0, 0, 0, .07);--text-primary: #111111;--text-secondary: #6b7280;--text-muted: #9ca3af;--blue: #3B82F6;--blue-dark: #2563EB;--purple: #8B5CF6;--orange: #F97316;--teal: #14B8A6;--green: #22C55E;--yellow: #EAB308;--red: #EF4444;--grad-blue-purple: linear-gradient(135deg, #3B82F6 0%, #8B5CF6 100%);--grad-orange-yellow: linear-gradient(135deg, #F97316 0%, #EAB308 100%);--grad-teal-blue: linear-gradient(135deg, #14B8A6 0%, #3B82F6 100%);--grad-purple-pink: linear-gradient(135deg, #8B5CF6 0%, #EC4899 100%);--grad-green-teal: linear-gradient(135deg, #22C55E 0%, #14B8A6 100%);--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-colored: 0 8px 32px rgba(59, 130, 246, .25);--font: "Inter", sans-serif;--bottom-nav-h: 80px}[data-theme=dark]{--bg: #000000;--surface: #111111;--surface-2: #1c1c1c;--border: rgba(255, 255, 255, .08);--text-primary: #F5F5F7;--text-secondary: #9ca3af;--text-muted: #6b7280;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .4);--shadow-md: 0 4px 16px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .6)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%}body{font-family:var(--font);background:var(--bg);color:var(--text-primary);transition:background .3s,color .3s;-webkit-font-smoothing:antialiased;overflow-x:hidden}.app-shell{max-width:430px;min-height:100dvh;margin:0 auto;background:var(--bg);position:relative;overflow-x:hidden;display:flex;flex-direction:column}.page-content{flex:1;overflow-y:auto;overflow-x:hidden;padding-bottom:var(--bottom-nav-h);scroll-behavior:smooth}.page-content::-webkit-scrollbar{display:none}h1{font-size:2rem;font-weight:800;line-height:1.1}h2{font-size:1.5rem;font-weight:700;line-height:1.2}h3{font-size:1.125rem;font-weight:700}h4{font-size:1rem;font-weight:600}p{line-height:1.6;color:var(--text-secondary)}.text-giant{font-size:3rem;font-weight:900}.text-big{font-size:2rem;font-weight:800}.text-label{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.text-muted{color:var(--text-muted);font-size:.875rem}.card{background:var(--surface);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-md);border:1px solid var(--border)}.card-gradient{border-radius:var(--radius-lg);padding:var(--space-lg);position:relative;overflow:hidden;color:#fff;min-height:160px}.card-gradient h2,.card-gradient h3,.card-gradient p,.card-gradient span{color:#fff}.card-gradient:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.08'/%3E%3C/svg%3E");opacity:.15;pointer-events:none}.card-gradient:after{content:"";position:absolute;right:-40px;bottom:-40px;width:200px;height:200px;border-radius:50%;background:#ffffff14}.card-blue-purple{background:var(--grad-blue-purple)}.card-orange-yellow{background:var(--grad-orange-yellow)}.card-teal-blue{background:var(--grad-teal-blue)}.card-purple-pink{background:var(--grad-purple-pink)}.card-green-teal{background:var(--grad-green-teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 24px;border-radius:var(--radius-full);font-family:var(--font);font-size:1rem;font-weight:700;cursor:pointer;border:none;transition:transform .15s,box-shadow .15s,opacity .15s;outline:none;text-decoration:none}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--text-primary);color:var(--surface);width:100%;padding:16px 24px;font-size:1rem;box-shadow:var(--shadow-md)}.btn-primary:hover{opacity:.88}.btn-gradient{background:var(--grad-blue-purple);color:#fff;width:100%;padding:16px 24px;box-shadow:var(--shadow-colored)}.btn-outline{background:transparent;border:2px solid var(--border);color:var(--text-primary)}.btn-ghost{background:var(--surface-2);color:var(--text-primary)}.btn-icon{width:48px;height:48px;border-radius:var(--radius-full);padding:0;background:var(--surface);border:1px solid var(--border);color:var(--text-primary);box-shadow:var(--shadow-sm)}.btn-icon-lg{width:56px;height:56px;border-radius:var(--radius-full);padding:0;background:#fff3;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .15s}.btn-icon-lg:active{transform:scale(.94)}.btn-fab{width:52px;height:52px;border-radius:var(--radius-full);background:#ffffff2e;border:2px solid rgba(255,255,255,.3);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .15s,background .15s;font-size:1.5rem;box-shadow:0 4px 16px #00000026}.btn-fab:hover{background:#ffffff47;transform:scale(1.05)}.input-group{display:flex;flex-direction:column;gap:var(--space-xs)}.input-label{font-size:.8rem;font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.input{background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-md);padding:14px 16px;font-family:var(--font);font-size:1rem;color:var(--text-primary);transition:border-color .2s,box-shadow .2s;outline:none;width:100%}.input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #3b82f61f}.input::placeholder{color:var(--text-muted)}.chip{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:var(--radius-full);font-size:.875rem;font-weight:600;cursor:pointer;border:1.5px solid var(--border);background:var(--surface);color:var(--text-primary);transition:all .15s}.chip.active{background:var(--text-primary);color:var(--surface);border-color:var(--text-primary)}.chip-blue.active{background:var(--blue);color:#fff;border-color:var(--blue)}.progress-wrap{display:flex;flex-direction:column;gap:6px}.progress-info{display:flex;justify-content:space-between;align-items:center}.progress-bar-bg{height:6px;background:#ffffff40;border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:#fff;border-radius:var(--radius-full);transition:width .6s cubic-bezier(.4,0,.2,1)}.progress-bar-bg.dark .progress-bar-fill{background:var(--blue)}.divider{height:1px;background:var(--border);margin:var(--space-md) 0}.divider-text{display:flex;align-items:center;gap:var(--space-md);color:var(--text-muted);font-size:.875rem}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--border)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.badge-premium{background:var(--grad-blue-purple);color:#fff}.badge-free{background:var(--surface-2);color:var(--text-secondary);border:1px solid var(--border)}.avatar{border-radius:var(--radius-full);object-fit:cover;background:var(--grad-blue-purple);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md)}.stat-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-sm)}.stat-card{background:var(--surface);border-radius:var(--radius-md);padding:var(--space-md);display:flex;flex-direction:column;gap:4px;border:1px solid var(--border)}.stat-value{font-size:1.25rem;font-weight:800;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat-label{font-size:.7rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}@keyframes pulse-ring{0%{transform:scale(.8);opacity:.6}50%{transform:scale(1.1);opacity:.2}to{transform:scale(.8);opacity:.6}}@keyframes wave{0%{transform:scale(1);opacity:.6}50%{transform:scale(1.15);opacity:.2}to{transform:scale(1);opacity:.6}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-fade-in-up{animation:fade-in-up .4s ease forwards}.animate-float{animation:float 3s ease-in-out infinite}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-xs{gap:var(--space-xs)}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.w-full{width:100%}.relative{position:relative}.absolute{position:absolute}.overflow-hidden{overflow:hidden}.px-md{padding-left:var(--space-md);padding-right:var(--space-md)}.py-md{padding-top:var(--space-md);padding-bottom:var(--space-md)}.p-md{padding:var(--space-md)}.p-lg{padding:var(--space-lg)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.green{color:var(--green)!important}.red{color:var(--red)!important}.blue{color:var(--blue)!important}.muted{color:var(--text-muted)!important}.text-center{text-align:center}.text-right{text-align:right}*{scrollbar-width:none}*::-webkit-scrollbar{display:none}.safe-top{padding-top:max(var(--space-lg),env(safe-area-inset-top))}.safe-bottom{padding-bottom:max(var(--space-lg),env(safe-area-inset-bottom))}.login-page{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg);position:relative;overflow:hidden}.login-top{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px 32px;gap:32px}.login-circle-wrap{position:relative;width:160px;height:160px;display:flex;align-items:center;justify-content:center}.lc-ring{position:absolute;border-radius:50%;border:1.5px solid rgba(99,102,241,.2)}.lc-ring-1{width:160px;height:160px;animation:ring-pulse 2.5s ease-in-out infinite}.lc-ring-2{width:130px;height:130px;border-color:#6366f126;animation:ring-pulse 2.5s ease-in-out infinite .4s}@keyframes ring-pulse{0%,to{transform:scale(1);opacity:.7}50%{transform:scale(1.06);opacity:1}}.lc-circle{width:100px;height:100px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);display:flex;align-items:center;justify-content:center;box-shadow:0 8px 32px #6366f173;position:relative;z-index:1}.lc-waves{display:flex;align-items:center;gap:3px;height:36px}.lc-wave-bar{width:3px;border-radius:99px;background:#ffffffe6;animation:wave-dance 1.2s ease-in-out infinite alternate}.lc-wave-bar:nth-child(1){height:10px}.lc-wave-bar:nth-child(2){height:18px}.lc-wave-bar:nth-child(3){height:28px}.lc-wave-bar:nth-child(4){height:34px}.lc-wave-bar:nth-child(5){height:28px}.lc-wave-bar:nth-child(6){height:18px}.lc-wave-bar:nth-child(7){height:10px}@keyframes wave-dance{0%{transform:scaleY(.5);opacity:.5}to{transform:scaleY(1);opacity:1}}.login-brand{text-align:center}.login-logo{font-size:3rem;font-weight:900;letter-spacing:-.04em;background:linear-gradient(135deg,#4f8ef7,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;margin-bottom:12px}.login-tagline{font-size:.95rem;color:var(--text-secondary);line-height:1.6;max-width:320px;margin:0 auto}.login-card{background:linear-gradient(160deg,#7c3aed,#4f8ef7);border-radius:28px 28px 0 0;padding:32px 28px 48px;min-height:340px}.login-card-title{font-size:1.3rem;font-weight:800;color:#fff;margin-bottom:24px;text-align:center}.login-actions{display:flex;flex-direction:column;gap:14px}.login-btn-google{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;padding:15px 24px;background:#fff;color:#111;font-family:var(--font);font-size:.95rem;font-weight:700;border:none;border-radius:14px;cursor:pointer;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 16px #00000026}.login-btn-google:active{transform:scale(.97)}.login-divider{display:flex;align-items:center;gap:12px}.login-divider span{flex:1;height:1px;background:#ffffff40}.login-divider p{color:#fff9;font-size:.85rem;font-weight:600}.login-btn-email{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px 24px;background:#ffffff26;color:#fff;font-family:var(--font);font-size:.95rem;font-weight:700;border:1.5px solid rgba(255,255,255,.35);border-radius:14px;cursor:pointer;transition:background .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-btn-email:hover{background:#ffffff38}.login-register-link{text-align:center;font-size:.875rem;color:#ffffffb3;margin-top:4px}.login-register-link a{color:#fff;font-weight:700;text-decoration:underline}.login-back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;color:#fffc;font-family:var(--font);font-size:.875rem;font-weight:600;cursor:pointer;padding:0;margin-bottom:4px}.login-form{display:flex;flex-direction:column;gap:14px}.login-input-wrap{position:relative;display:flex;align-items:center}.login-input-icon{position:absolute;left:14px;color:#fff9;pointer-events:none}.login-input{width:100%;padding:14px 44px;background:#ffffff26;border:1.5px solid rgba(255,255,255,.3);border-radius:12px;font-family:var(--font);font-size:.95rem;color:#fff;outline:none;transition:border-color .2s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.login-input::placeholder{color:#ffffff80}.login-input:focus{border-color:#ffffffb3}.login-eye-btn{position:absolute;right:14px;background:none;border:none;color:#fff9;cursor:pointer;display:flex;align-items:center}.login-forgot{text-align:right;font-size:.8rem;color:#ffffffb3;text-decoration:none}.login-btn-submit{width:100%;padding:15px;background:#fff;color:#7c3aed;font-family:var(--font);font-size:1rem;font-weight:800;border:none;border-radius:14px;cursor:pointer;transition:opacity .2s;margin-top:4px}.login-btn-submit:disabled{opacity:.7}.dinia-circle-wrap{position:relative;display:flex;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none}.dinia-circle-wrap.large{width:240px;height:240px}.dinia-circle-wrap.small{width:80px;height:80px}.dinia-circle-wrap.nav{width:48px;height:48px}.dinia-circle-main{border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;transition:background .4s;overflow:hidden}.large .dinia-circle-main{width:130px;height:130px}.small .dinia-circle-main{width:56px;height:56px}.nav .dinia-circle-main{width:36px;height:36px;box-shadow:none!important}.ir{position:absolute;border-radius:50%;border:1.5px solid rgba(79,142,247,.2);pointer-events:none}.large .ir-1{width:240px;height:240px}.large .ir-2{width:195px;height:195px;border-color:#4f8ef71f}.small .ir-1{width:80px;height:80px}.small .ir-2{width:68px;height:68px;border-color:#4f8ef71f}.nav .ir{display:none}.wave-bars{display:flex;align-items:center;gap:3.5px}.wave-bar{width:3.5px;border-radius:99px;background:#ffffffe6;transform-origin:bottom center}.small .wave-bar{width:2.5px;gap:2.5px}.nav .wave-bar{width:1.8px}.wave-bar.dance{animation:ir-dance 1.1s ease-in-out infinite alternate}.wave-bar.dance:nth-child(1){animation-delay:0s}.wave-bar.dance:nth-child(2){animation-delay:.11s}.wave-bar.dance:nth-child(3){animation-delay:.22s}.wave-bar.dance:nth-child(4){animation-delay:.33s}.wave-bar.dance:nth-child(5){animation-delay:.22s}.wave-bar.dance:nth-child(6){animation-delay:.11s}.wave-bar.dance:nth-child(7){animation-delay:0s}@keyframes bar-breathe{0%,to{transform:scaleY(.45);opacity:.6}50%{transform:scaleY(.85);opacity:.9}}.wave-bar:not(.dance){animation:bar-breathe 2.4s ease-in-out infinite}.wave-bar:not(.dance):nth-child(1){animation-delay:0s}.wave-bar:not(.dance):nth-child(2){animation-delay:.25s}.wave-bar:not(.dance):nth-child(3){animation-delay:.5s}.wave-bar:not(.dance):nth-child(4){animation-delay:.75s}.wave-bar:not(.dance):nth-child(5){animation-delay:.5s}.wave-bar:not(.dance):nth-child(6){animation-delay:.25s}.wave-bar:not(.dance):nth-child(7){animation-delay:0s}.welcome-page{min-height:100dvh;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:64px 32px 80px}.welcome-circle-area{flex:1;display:flex;align-items:center;justify-content:center}.wc-wrap{position:relative;width:220px;height:220px;display:flex;align-items:center;justify-content:center}.wc-ring{position:absolute;border-radius:50%;border:1.5px solid rgba(99,102,241,.18);transition:opacity .3s}.wc-ring-1{width:220px;height:220px}.wc-ring-2{width:185px;height:185px;border-color:#6366f11f}.wc-ring-3{width:150px;height:150px;border-color:#6366f114}.wc-ring.pulsing{animation:wc-pulse 2s ease-in-out infinite}.wc-ring-2.pulsing{animation-delay:.2s}.wc-ring-3.pulsing{animation-delay:.4s}@keyframes wc-pulse{0%,to{transform:scale(1);opacity:.7;border-color:#6366f133}50%{transform:scale(1.07);opacity:1;border-color:#6366f180}}.wc-circle{width:120px;height:120px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);box-shadow:0 10px 40px #6366f180,0 0 0 12px #6366f114;display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.wc-waves{display:flex;align-items:center;gap:3.5px;height:44px}.wc-bar{width:3.5px;border-radius:99px;background:#ffffffd9;height:12px;transition:height .3s}.wc-bar:nth-child(1){height:10px}.wc-bar:nth-child(2){height:18px}.wc-bar:nth-child(3){height:28px}.wc-bar:nth-child(4){height:36px}.wc-bar:nth-child(5){height:28px}.wc-bar:nth-child(6){height:18px}.wc-bar:nth-child(7){height:10px}.wc-bar.dancing{animation:wc-dance 1.1s ease-in-out infinite alternate}.wc-bar.dancing:nth-child(1){animation-delay:0s}.wc-bar.dancing:nth-child(2){animation-delay:.1s}.wc-bar.dancing:nth-child(3){animation-delay:.2s}.wc-bar.dancing:nth-child(4){animation-delay:.3s}.wc-bar.dancing:nth-child(5){animation-delay:.2s}.wc-bar.dancing:nth-child(6){animation-delay:.1s}.wc-bar.dancing:nth-child(7){animation-delay:0s}@keyframes wc-dance{0%{transform:scaleY(.4);opacity:.5}to{transform:scaleY(1);opacity:1}}.welcome-text-area{padding:0 8px;text-align:center;min-height:80px;display:flex;align-items:center;justify-content:center}.welcome-question{font-size:1.25rem;font-weight:600;color:var(--text-primary);line-height:1.5;letter-spacing:-.01em}.cursor-blink{display:inline-block;color:#6366f1;font-weight:300;animation:blink-cur .8s step-end infinite}@keyframes blink-cur{0%,to{opacity:1}50%{opacity:0}}.welcome-buttons{display:flex;gap:14px;width:100%;justify-content:center;min-height:56px;align-items:flex-end}.welcome-btn{flex:1;max-width:180px;padding:16px 12px;border:none;border-radius:14px;font-family:var(--font);font-size:.78rem;font-weight:800;letter-spacing:.06em;cursor:pointer;transition:transform .15s,opacity .15s}.welcome-btn:active{transform:scale(.96)}.btn-voice{background:#6366f1;color:#fff;box-shadow:0 6px 20px #6366f166}.btn-text{background:#8b5cf6;color:#fff;box-shadow:0 6px 20px #8b5cf666}.intro-page{min-height:100dvh;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:80px 32px}.intro-circle-area{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;cursor:pointer}.intro-wrap{position:relative;width:240px;height:240px;display:flex;align-items:center;justify-content:center}.ir{position:absolute;border-radius:50%;border:1.5px solid rgba(79,142,247,.2)}.ir-1{width:240px;height:240px}.ir-2{width:200px;height:200px;border-color:#4f8ef724}.ir-3{width:165px;height:165px;border-color:#4f8ef717}.ir.pulse{animation:ir-pulse 2s ease-in-out infinite}.ir-2.pulse{animation-delay:.25s}.ir-3.pulse{animation-delay:.5s}@keyframes ir-pulse{0%,to{transform:scale(1);opacity:.6;border-color:#4f8ef733}50%{transform:scale(1.07);opacity:1;border-color:#4f8ef780}}.ir-circle{width:130px;height:130px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);box-shadow:0 10px 40px #6366f180,0 0 0 16px #6366f112;display:flex;align-items:center;justify-content:center;position:relative;z-index:2}.ir-waves{display:flex;align-items:center;gap:3.5px;height:50px}.ir-bar{width:3.5px;border-radius:99px;background:#ffffffd9}.ir-bar:nth-child(1){height:10px}.ir-bar:nth-child(2){height:20px}.ir-bar:nth-child(3){height:32px}.ir-bar:nth-child(4){height:40px}.ir-bar:nth-child(5){height:32px}.ir-bar:nth-child(6){height:20px}.ir-bar:nth-child(7){height:10px}.ir-bar.dance{animation:ir-dance 1.1s ease-in-out infinite alternate}.ir-bar.dance:nth-child(1){animation-delay:0s}.ir-bar.dance:nth-child(2){animation-delay:.11s}.ir-bar.dance:nth-child(3){animation-delay:.22s}.ir-bar.dance:nth-child(4){animation-delay:.33s}.ir-bar.dance:nth-child(5){animation-delay:.22s}.ir-bar.dance:nth-child(6){animation-delay:.11s}.ir-bar.dance:nth-child(7){animation-delay:0s}@keyframes ir-dance{0%{transform:scaleY(.3);opacity:.4}to{transform:scaleY(1);opacity:1}}.tap-hint{font-size:.82rem;font-weight:600;color:var(--text-muted, #aaa);letter-spacing:.01em;text-align:center}.intro-text-area{padding:0 8px;text-align:center;min-height:100px;display:flex;align-items:flex-start;justify-content:center}.intro-speech-text{font-size:1.05rem;font-weight:500;color:var(--text-primary);line-height:1.65;max-width:340px}.intro-cursor{display:inline-block;color:#6366f1;animation:blink .8s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.ob-page{min-height:100dvh;background:var(--bg);display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.ob-header{display:flex;align-items:center;gap:12px;padding:16px 20px}.ob-back{display:flex;align-items:center;gap:4px;background:none;border:none;font-family:var(--font);font-size:.875rem;font-weight:600;color:var(--text-secondary);cursor:pointer;white-space:nowrap;flex-shrink:0}.ob-progress-bar{flex:1;height:4px;background:var(--surface-2);border-radius:99px;overflow:hidden}.ob-progress-fill{height:100%;background:linear-gradient(90deg,#4f8ef7,#6366f1);border-radius:99px;transition:width .5s ease}.ob-step-count{font-size:.8rem;font-weight:700;color:var(--text-muted, #aaa);white-space:nowrap;flex-shrink:0}.ob-circle-area{display:flex;align-items:center;justify-content:center;flex:1;padding:12px 0}.ob-circle-area.compact{flex:1}.ob-circle-wrap{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center}.ob-ring{position:absolute;border-radius:50%;border:1.5px solid rgba(79,142,247,.18)}.ob-ring-1{width:200px;height:200px}.ob-ring-2{width:168px;height:168px;border-color:#4f8ef71f}.ob-ring-3{width:140px;height:140px;border-color:#4f8ef714}.ob-ring.pulse{animation:ob-pulse 2s ease-in-out infinite}.ob-ring-2.pulse{animation-delay:.25s}.ob-ring-3.pulse{animation-delay:.5s}@keyframes ob-pulse{0%,to{transform:scale(1);opacity:.6;border-color:#4f8ef72e}50%{transform:scale(1.07);opacity:1;border-color:#4f8ef780}}.ob-circle{width:112px;height:112px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);box-shadow:0 10px 36px #6366f173,0 0 0 12px #6366f10f;display:flex;align-items:center;justify-content:center;z-index:2}.ob-waves{display:flex;align-items:center;gap:3px;height:40px}.ob-bar{width:3px;border-radius:99px;background:#ffffffd9}.ob-bar:nth-child(1){height:8px}.ob-bar:nth-child(2){height:16px}.ob-bar:nth-child(3){height:26px}.ob-bar:nth-child(4){height:32px}.ob-bar:nth-child(5){height:26px}.ob-bar:nth-child(6){height:16px}.ob-bar:nth-child(7){height:8px}.ob-bar.dance{animation:ob-dance 1.1s ease-in-out infinite alternate}.ob-bar.dance:nth-child(1){animation-delay:0s}.ob-bar.dance:nth-child(2){animation-delay:.1s}.ob-bar.dance:nth-child(3){animation-delay:.2s}.ob-bar.dance:nth-child(4){animation-delay:.3s}.ob-bar.dance:nth-child(5){animation-delay:.2s}.ob-bar.dance:nth-child(6){animation-delay:.1s}.ob-bar.dance:nth-child(7){animation-delay:0s}@keyframes ob-dance{0%{transform:scaleY(.3);opacity:.4}to{transform:scaleY(1);opacity:1}}.ob-message-area{padding:0 28px 24px;text-align:center;flex-shrink:0}.ob-message{font-size:1.05rem;font-weight:600;color:var(--text-primary);line-height:1.55}.ob-cursor{display:inline;color:#6366f1;animation:ob-blink .8s step-end infinite}@keyframes ob-blink{0%,to{opacity:1}50%{opacity:0}}.ob-content{padding:0 20px 8px;overflow-y:auto}.country-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.country-card{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:14px;border:2px solid var(--border);background:var(--surface);cursor:pointer;transition:all .15s;font-family:var(--font);text-align:left}.country-card.selected{border-color:#6366f1;background:#6366f114;transform:scale(1.02)}.country-card:active{transform:scale(.97)}.country-flag{font-size:1.6rem;flex-shrink:0;line-height:1}.country-info{display:flex;flex-direction:column;gap:1px;min-width:0}.country-name{font-size:.85rem;font-weight:700;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.country-currency{font-size:.72rem;color:var(--text-muted, #888);font-weight:600}.amount-input-wrap{display:flex;align-items:center;gap:12px;background:var(--surface);border:2px solid var(--border);border-radius:16px;padding:16px 20px;transition:border-color .2s}.amount-input-wrap:focus-within{border-color:#6366f1}.currency-badge{font-size:1.3rem;font-weight:800;color:var(--text-secondary);flex-shrink:0}.amount-input{flex:1;background:transparent;border:none;outline:none;font-family:var(--font);font-size:1.6rem;font-weight:800;color:var(--text-primary)}.dependents-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.dep-btn{width:54px;height:54px;border-radius:50%;border:2px solid var(--border);background:var(--surface);font-family:var(--font);font-size:1.1rem;font-weight:700;color:var(--text-primary);cursor:pointer;transition:all .15s}.dep-btn.selected{border-color:#6366f1;background:#6366f1;color:#fff}.summary-cards{display:flex;flex-direction:column;gap:12px}.summary-card{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-radius:14px}.summary-card.green{background:#22c55e1a}.summary-card.red{background:#ef44441a}.summary-card.blue{background:#6366f11a}.summary-card.orange{background:#f973161a}.summary-label{font-size:.85rem;font-weight:600;color:var(--text-secondary)}.summary-value{font-size:1.1rem;font-weight:800;color:var(--text-primary)}.ob-footer{padding:12px 20px 36px}.ob-footer-row{display:flex;gap:10px;align-items:center}.ob-mic-btn{width:54px;height:54px;border-radius:50%;flex-shrink:0;border:2px solid var(--border);background:var(--surface);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.ob-mic-btn.active{background:#ef4444;border-color:#ef4444;color:#fff;box-shadow:0 0 0 6px #ef444426;animation:mic-pulse 1.2s ease-in-out infinite}@keyframes mic-pulse{0%,to{box-shadow:0 0 0 6px #ef44441f}50%{box-shadow:0 0 0 12px #ef44440f}}.ob-btn-continue{flex:1;padding:17px;background:linear-gradient(135deg,#4f8ef7,#6366f1);color:#fff;font-family:var(--font);font-size:1rem;font-weight:800;border:none;border-radius:16px;cursor:pointer;transition:opacity .2s,transform .15s;box-shadow:0 6px 20px #6366f159}.ob-btn-continue:disabled{opacity:.4;cursor:not-allowed}.ob-btn-continue:not(:disabled):active{transform:scale(.97)}.ob-listening-hint{text-align:center;font-size:.82rem;font-weight:600;color:#ef4444;margin-top:10px;letter-spacing:.02em}.ob-voice-feedback{margin:0 20px;padding:10px 16px;background:var(--surface);border:1.5px solid var(--border);border-radius:12px;font-size:.875rem;font-weight:600;color:var(--text-primary);text-align:center}.ob-circle.listening{background:linear-gradient(145deg,#ef4444,#f97316);box-shadow:0 10px 36px #ef444473,0 0 0 12px #ef444414}.ob-circle.thinking{background:linear-gradient(145deg,#8b5cf6,#6366f1);box-shadow:0 10px 36px #8b5cf680,0 0 0 12px #8b5cf61a;animation:ob-think-spin 2s linear infinite}@keyframes ob-think-spin{0%{filter:brightness(1)}50%{filter:brightness(1.2)}to{filter:brightness(1)}}.income-list-wrap{display:flex;flex-direction:column;gap:16px;margin-top:10px;max-width:360px;width:100%;margin-left:auto;margin-right:auto}.income-list{display:flex;flex-direction:column;gap:16px}.income-row{display:flex;flex-direction:column;gap:8px;background:transparent;padding:0;border:none;position:relative}.income-header{display:flex;justify-content:space-between;align-items:center;padding:0 4px}.income-name-input{flex:1;min-width:0;border:none;background:transparent;font-size:.95rem;font-weight:700;color:var(--text-primary);outline:none}.income-name-input::placeholder{color:var(--text-tertiary);font-weight:600}.amount-input-wrap.large.modern{background:var(--surface);border-radius:12px;height:54px;box-shadow:0 4px 14px #0000000d;border:1px solid var(--border);padding:0 16px;display:flex;align-items:center;gap:12px}.amount-input-wrap.large.modern .currency-badge{font-size:1.5rem;color:#a1a1aa;font-weight:600}.amount-input-wrap.large.modern .amount-input{font-size:1.5rem;color:var(--text-primary);font-weight:600;width:100%;border:none;outline:none;background:transparent}.amount-input-wrap.large.modern .amount-input::placeholder{color:var(--text-tertiary)}.remove-income-btn.subtle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;background:transparent;color:#ef4444;border:none;cursor:pointer;transition:all .2s;opacity:.5}.remove-income-btn.subtle:hover{background:#ef44441a;opacity:1}.add-income-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:14px;border-radius:12px;background:transparent;border:1.5px dashed var(--border);color:var(--text-secondary);font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.add-income-btn:hover{border-color:#6366f1;color:#6366f1;background:#6366f10d}.income-total{background:var(--bg-main);border-radius:12px;display:flex;justify-content:space-between;padding:16px 20px;align-items:center;border:1px solid var(--border)}.income-total span{font-size:.95rem;color:var(--text-secondary);font-weight:600}.income-total strong{font-size:1.3rem;color:#10b981;font-weight:700}:root{--bottom-nav-h: 76px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:430px;height:var(--bottom-nav-h);background:var(--bg);border-top:1px solid var(--border);display:flex;align-items:flex-end;justify-content:space-around;padding:0 8px 8px;z-index:100;box-shadow:0 -4px 24px #0000000f}.nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:8px 4px;text-decoration:none;color:var(--text-muted);transition:color .2s;cursor:pointer;-webkit-tap-highlight-color:transparent}.nav-item.active{color:#6c63ff}.nav-item.locked{opacity:.55}.nav-icon-wrap{position:relative;display:flex;align-items:center;justify-content:center}.lock-dot{position:absolute;top:-6px;right:-8px;font-size:.6rem;line-height:1}.nav-label{font-size:.65rem;font-weight:600;letter-spacing:.02em;white-space:nowrap}.nav-dinia-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;background:none;border:none;cursor:pointer;padding-bottom:6px;-webkit-tap-highlight-color:transparent;position:relative}.nav-dinia-inner{display:flex;align-items:center;justify-content:center;position:relative;top:-16px;margin-bottom:-18px;transition:transform .15s;filter:drop-shadow(0 4px 14px rgba(108,99,255,.4))}.nav-dinia-btn:active .nav-dinia-inner{transform:scale(.93)}.nav-dinia-label{color:#6c63ff;font-weight:700;margin-top:-4px}.db-page{padding-bottom:100px;background:var(--bg)}.db-header{display:flex;justify-content:space-between;align-items:center;padding:28px 22px 4px}.db-greeting{font-size:.68rem;font-weight:700;letter-spacing:.1em;color:var(--text-muted);margin:0 0 4px}.db-name{font-size:1.5rem;font-weight:900;color:var(--text-primary);letter-spacing:-.03em;margin:0}.db-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#6c63ff,#928eff);display:flex;align-items:center;justify-content:center;color:#fff;font-size:1rem;font-weight:800;box-shadow:0 4px 12px #6c63ff4d}.db-month-nav{display:flex;align-items:center;justify-content:center;gap:16px;padding:12px 22px 20px}.db-month-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.db-month-btn:active{transform:scale(.9)}.db-month-label{font-size:1rem;font-weight:800;color:var(--text-primary);min-width:140px;text-align:center}.db-main-layout{display:flex;gap:12px;padding:0 16px;align-items:stretch;min-height:280px}.db-bar-wrap{width:56px;flex-shrink:0}.db-stacked-bar{width:100%;height:100%;min-height:250px;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 0 0 3px #6c63ff33,inset 0 0 0 3px #6c63ff55;border:2px solid #6C63FF;background:var(--surface)}.db-bar-seg{transition:flex .6s cubic-bezier(.4,0,.2,1)}.db-bar-surplus{background:linear-gradient(180deg,#43d9ad,#2dd4bf)}.db-bar-expenses{background:linear-gradient(180deg,#ff8fa3,#ff6584)}.db-cards-col{flex:1;display:flex;flex-direction:column;gap:10px}.db-big-card{flex:1;min-height:80px;border-radius:16px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 14px #0000001f;position:relative;overflow:hidden;cursor:pointer;transition:transform .15s}.db-big-card:active{transform:scale(.97)}.db-big-card:after{content:"";position:absolute;right:-12px;bottom:-12px;width:60px;height:60px;border-radius:50%;background:#ffffff1f}.db-card-income{background:linear-gradient(135deg,#7b74ff,#a78bfa)}.db-card-expenses{background:linear-gradient(135deg,#ff6584,#ff8fa3)}.db-card-surplus{background:linear-gradient(135deg,#43d9ad,#14b8a6)}.db-card-deficit{background:linear-gradient(135deg,#f97316,#fb923c)}.db-card-savings{background:linear-gradient(135deg,#4fc3f7,#0ea5e9)}.db-card-emoji{font-size:1rem;margin-bottom:0}.db-card-label{font-size:.6rem;font-weight:700;letter-spacing:.08em;color:#fffc;margin:0}.db-card-value{font-size:1.05rem;font-weight:900;color:#fff;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-card-sub{font-size:.65rem;color:#fff9;margin:0}.db-desglose-btn{display:flex;align-items:center;justify-content:center;gap:6px;margin:20px auto 0;background:none;border:none;color:var(--text-secondary);font-family:var(--font);font-size:.9rem;font-weight:600;cursor:pointer;padding:8px 20px;border-radius:100px;transition:all .15s;letter-spacing:.01em}.db-desglose-btn:hover{color:var(--text-primary);background:var(--surface)}.db-detail-view{padding:0 16px;animation:fadeUp .3s ease}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.db-detail-chart{background:var(--surface);border-radius:20px;padding:20px;margin-bottom:14px;border:1px solid var(--border)}.db-pie-legend{margin-top:16px;display:flex;flex-direction:column;gap:8px}.db-pie-legend-item{display:flex;align-items:center;gap:8px}.db-pie-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.db-pie-name{flex:1;font-size:.82rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-pie-pct{font-size:.8rem;font-weight:700;color:var(--text-primary);width:34px;text-align:right}.db-pie-amt{font-size:.8rem;font-weight:700;color:var(--text-secondary);min-width:70px;text-align:right}.db-detail-section{background:var(--surface);border-radius:20px;padding:16px 18px;margin-bottom:12px;border:1px solid var(--border)}.db-detail-section-title{font-size:.8rem;font-weight:700;color:var(--text-secondary);margin:0 0 12px;text-transform:uppercase;letter-spacing:.06em}.db-detail-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border)}.db-detail-row:last-child{border-bottom:none}.db-detail-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.db-detail-name{flex:1;font-size:.84rem;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.db-detail-cat{display:block;font-size:.7rem;color:var(--text-muted);margin-top:1px}.db-detail-amt{font-size:.84rem;font-weight:700;flex-shrink:0}.db-empty-msg{text-align:center;color:var(--text-muted);font-size:.85rem;padding:32px 0}.dinia-float{position:fixed;bottom:84px;left:50%;transform:translate(-50%);z-index:100;filter:drop-shadow(0 4px 14px rgba(108,99,255,.4))}.db-action-btn{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s}.db-action-btn:hover,.db-action-btn:active{background:#ef44441a;color:#ef4444}.db-add-btn{width:100%;background:transparent;border:1px dashed var(--border);color:var(--text-secondary);font-size:.85rem;font-weight:600;padding:10px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;margin-top:8px;transition:all .2s}.db-add-btn:active{background:var(--surface-sunken);transform:scale(.98)}.db-expense-card{display:flex;align-items:center;gap:8px;padding:10px 0;border-bottom:1px solid var(--border);transition:opacity .3s ease}.db-expense-card:last-child{border-bottom:none}.db-paid-btn{flex-shrink:0;width:26px;height:26px;border-radius:50%;border:2px solid var(--border);background:transparent;color:var(--text-muted);font-size:.9rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.db-paid-btn:hover{border-color:#43d9ad;color:#43d9ad}.db-paid-btn.paid{background:#43d9ad;border-color:#43d9ad;color:#fff}.premium-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-lg) var(--space-md) var(--space-md)}.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.stat-grid-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--space-md);text-align:center}.stat-grid-icon{font-size:1.5rem}.stat-grid-value{font-size:1.1rem;font-weight:800;color:var(--text-primary)}.stat-grid-label{font-size:.72rem;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-2xl) var(--space-lg);gap:var(--space-sm)}.empty-state span{font-size:3rem}.empty-state h3{color:var(--text-primary)}.empty-state p{color:var(--text-muted);font-size:.9rem}.goal-top{display:flex;align-items:center;gap:var(--space-sm)}.goal-emoji{font-size:1.8rem}.goal-info{flex:1}.goal-pct{font-size:1.2rem;font-weight:800}.emoji-btn{font-size:1.4rem;width:44px;height:44px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--surface-2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.emoji-btn.active{border-color:var(--blue);background:#3b82f61a;transform:scale(1.1)}.invest-card.dimmed{opacity:.4}.invest-top{display:flex;align-items:center;gap:var(--space-sm)}.invest-emoji{font-size:2rem}.invest-yield{margin-left:auto;font-weight:800;color:var(--green);font-size:.9rem}.risk-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:14px 16px;border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--surface-2);cursor:pointer;font-family:var(--font);font-size:.95rem;font-weight:600;color:var(--text-primary);transition:all .15s;text-align:left}.risk-btn:hover{border-color:var(--blue);background:#3b82f60d}.premium-gate{display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-2xl) var(--space-lg);gap:var(--space-lg)}.gate-icon-wrap{position:relative;width:80px;height:80px;background:#3b82f61a;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center}.gate-lock{position:absolute;bottom:0;right:0;background:var(--surface);border-radius:50%;padding:2px;color:var(--text-secondary)}.gate-features{display:flex;flex-direction:column;gap:var(--space-sm);width:100%;text-align:left}.gate-feature{display:flex;align-items:center;gap:var(--space-sm);font-size:.9rem;color:var(--text-primary)}.gate-feature span:first-child{color:var(--green);font-weight:700}.gate-price{width:100%}.chat-shell{display:flex;flex-direction:column}.chat-top-header{display:flex;justify-content:space-between;align-items:center;padding:28px 22px 12px;flex-shrink:0}.chat-gradient-floor{position:fixed;bottom:var(--bottom-nav-h);left:50%;transform:translate(-50%);width:100%;max-width:430px;height:60px;background:linear-gradient(to bottom,transparent 0%,rgba(108,99,255,.15) 100%);pointer-events:none;z-index:40}.chat-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:10}.chat-header-center{display:flex;align-items:center;gap:var(--space-sm)}.chat-messages{flex:1;overflow-y:auto;padding:var(--space-md);display:flex;flex-direction:column;gap:var(--space-sm);padding-bottom:200px}.msg-wrap{display:flex;align-items:flex-end;gap:var(--space-sm)}.msg-wrap.user{flex-direction:row-reverse}.msg-avatar-small{width:30px;height:30px;border-radius:50%;background:var(--grad-blue-purple);color:#fff;font-weight:800;font-size:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.msg-bubble{max-width:88%;padding:12px 16px;border-radius:18px;position:relative;word-break:break-word;overflow-wrap:break-word}.msg-bubble.dinia{background:var(--surface);border:1px solid var(--border);border-bottom-left-radius:4px}.msg-bubble.user{background:var(--grad-blue-purple);border-bottom-right-radius:4px;color:#fff}.msg-bubble.user p{color:#fff}.msg-bubble p{font-size:.9rem;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;overflow-wrap:break-word;word-break:break-word;margin:0}.msg-time{display:block;font-size:.65rem;color:var(--text-muted);margin-top:4px;text-align:right}.msg-bubble.user .msg-time{color:#fff9}.typing-bubble{padding:14px 18px}.typing-dots{display:flex;gap:5px;align-items:center;height:20px}.typing-dots span{width:7px;height:7px;border-radius:50%;background:var(--text-muted);animation:bounce-dot 1.2s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{transform:scale(.8);opacity:.4}40%{transform:scale(1.2);opacity:1}}.chat-input-bar{position:fixed;bottom:var(--bottom-nav-h);left:50%;transform:translate(-50%);width:100%;max-width:430px;display:flex;align-items:center;gap:var(--space-sm);padding:12px var(--space-md);background:var(--surface);border-top:1px solid var(--border);z-index:50}.chat-input{flex:1;background:var(--surface-2);border:1.5px solid var(--border);border-radius:var(--radius-full);padding:12px 18px;font-family:var(--font);font-size:.9rem;color:var(--text-primary);outline:none;transition:border-color .2s}.chat-input:focus{border-color:var(--blue)}.chat-input::placeholder{color:var(--text-muted)}.voice-btn{width:44px;height:44px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface-2);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;flex-shrink:0}.voice-btn.active{background:var(--green);border-color:var(--green);color:#fff;animation:pulse-voice 1.5s infinite}@keyframes pulse-voice{0%,to{box-shadow:0 0 #22c55e66}50%{box-shadow:0 0 0 8px #22c55e00}}.send-btn{width:44px;height:44px;border-radius:50%;border:none;background:var(--grad-blue-purple);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s,opacity .15s;flex-shrink:0}.send-btn:disabled{opacity:.4;cursor:not-allowed}.send-btn:not(:disabled):active{transform:scale(.92)}.strategy-page{padding-bottom:100px}.strategy-banner{margin:0 16px 16px;border-radius:22px;padding:20px;display:flex;justify-content:space-between;align-items:center;color:#fff;box-shadow:0 6px 24px #00000026}.banner-surplus{background:linear-gradient(135deg,#43d9ad,#14b8a6)}.banner-deficit{background:linear-gradient(135deg,#f97316,#eab308)}.strategy-banner-left{display:flex;align-items:center;gap:14px}.strategy-banner-icon{font-size:2rem}.strategy-banner-label{font-size:.7rem;font-weight:600;color:#ffffffbf;margin:0 0 2px;letter-spacing:.06em}.strategy-banner-value{font-size:1.5rem;font-weight:900;color:#fff;margin:0}.strategy-banner-right{text-align:right}.strategy-banner-sub{font-size:.65rem;color:#ffffffa6;margin:0;font-weight:600}.strategy-banner-num{font-size:.9rem;font-weight:800;margin:0}.strategy-dinia-btn{width:calc(100% - 32px);margin:0 16px 20px;background:linear-gradient(135deg,#4f8ef714,#6366f10f);border:1.5px solid rgba(99,102,241,.25);border-left:4px solid #6366f1;border-radius:20px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:14px;cursor:pointer;font-family:var(--font);text-align:left;transition:all .18s;box-shadow:0 4px 16px #6366f11a}.strategy-dinia-btn:active{transform:scale(.97)}.strategy-dinia-btn-left{display:flex;align-items:center;gap:14px}.strategy-dinia-circle{width:48px;height:48px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #6366f14d;overflow:hidden}.strategy-dinia-title{font-size:.95rem;font-weight:800;color:var(--text-primary);margin:0 0 3px}.strategy-dinia-sub{font-size:.75rem;color:#6366f1;font-weight:600;margin:0}.strategy-dinia-arrow{color:#6366f1;flex-shrink:0;opacity:.7}.strategy-ai-header{display:flex;align-items:center;gap:12px;margin-bottom:14px}.strategy-ai-avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(145deg,#4f8ef7,#6366f1);display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 4px 12px #6366f14d;overflow:hidden}.strategy-ai-title{font-size:.92rem;font-weight:800;color:var(--text-primary);margin:0 0 2px}.strategy-ai-subtitle{font-size:.7rem;font-weight:600;color:#6366f1;margin:0}.strategy-refresh-icon{margin-left:auto;width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:var(--surface-2);color:var(--text-secondary);display:flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .2s}.strategy-refresh-icon:hover:not(:disabled){background:#6366f11a;border-color:#6366f1;color:#6366f1}.strategy-refresh-icon:disabled{opacity:.4;cursor:not-allowed}@keyframes spin{to{transform:rotate(360deg)}}.spinning{animation:spin .8s linear infinite}.strategy-ai-bubble{background:linear-gradient(135deg,#4f8ef712,#6366f10d);border-radius:12px 12px 12px 4px;padding:14px 16px}.strategy-ai-text{font-size:.9rem;line-height:1.75;color:var(--text-primary);margin:0;white-space:pre-wrap;word-break:break-word}.strategy-loading{display:flex;align-items:center;gap:6px;padding:4px 0}.strategy-loading-dot{width:7px;height:7px;border-radius:50%;background:#6366f1;animation:dotPulse 1.2s ease-in-out infinite}.strategy-loading-dot:nth-child(2){animation-delay:.2s}.strategy-loading-dot:nth-child(3){animation-delay:.4s}.strategy-loading-text{font-size:.8rem;color:var(--text-muted);font-style:italic;margin-left:4px}@keyframes dotPulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.strategy-section-title{font-size:.82rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.07em;padding:0 20px 10px}.strategy-cards{display:flex;flex-direction:column;gap:10px;padding:0 16px}.strategy-card{background:var(--surface);border-radius:18px;padding:16px;border:1px solid var(--border);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;box-shadow:0 2px 8px #0000000a}.strategy-card-left{display:flex;gap:14px;align-items:flex-start;flex:1;min-width:0}.strategy-card-icon{font-size:1.4rem;flex-shrink:0}.strategy-card-title{font-size:.88rem;font-weight:700;color:var(--text-primary);margin:0 0 4px}.strategy-card-desc{font-size:.78rem;color:var(--text-secondary);margin:0;line-height:1.5}.strategy-card-badge{font-size:.7rem;font-weight:800;padding:5px 10px;border-radius:100px;white-space:nowrap;flex-shrink:0}.badge-green{background:#43d9ad26;color:#0d9373}.badge-blue{background:#6c63ff1f;color:#6c63ff}.active-strategy-card{margin:0 16px 4px;background:var(--surface);border-radius:20px;padding:18px;border:1.5px solid rgba(99,102,241,.25);box-shadow:0 4px 20px #6366f114}.active-strategy-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.active-strategy-icon{font-size:1.4rem;flex-shrink:0;margin-top:2px}.active-strategy-meta{flex:1}.active-strategy-label{font-size:.75rem;font-weight:700;color:var(--blue);letter-spacing:.05em;margin:0 0 2px;text-transform:uppercase}.active-strategy-date{font-size:.78rem;color:var(--text-muted);margin:0}.active-strategy-clear{background:none;border:none;cursor:pointer;font-size:1.1rem;padding:4px;opacity:.55;transition:opacity .2s;flex-shrink:0}.active-strategy-clear:hover{opacity:1}.active-strategy-text{font-size:.92rem;line-height:1.6;color:var(--text-primary);margin:0;padding-top:4px;border-top:1px solid var(--border)}.active-strategy-empty{margin:0 16px 4px;background:var(--surface);border-radius:20px;padding:28px 20px;border:1.5px dashed var(--border);display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px}.active-strategy-empty-icon{font-size:2rem;opacity:.5}.active-strategy-empty-title{font-size:.95rem;font-weight:700;color:var(--text-primary);margin:4px 0 0;opacity:.7}.active-strategy-empty-desc{font-size:.82rem;color:var(--text-muted);margin:0;max-width:280px;line-height:1.5}.profile-header{padding:var(--space-2xl) var(--space-lg) var(--space-lg);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;min-height:220px}.profile-avatar-big{width:80px;height:80px;border-radius:50%;background:#fff3;border:3px solid rgba(255,255,255,.4);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:900;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-health-row{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-md);background:#ffffff1f;border-radius:var(--radius-full);padding:8px 16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.badges-row{display:flex;gap:var(--space-sm);overflow-x:auto;padding-bottom:4px}.badge-item{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:60px;padding:10px;border-radius:var(--radius-md);background:var(--surface);border:1.5px solid var(--border);cursor:default}.badge-item.locked{opacity:.35;filter:grayscale(1)}.badge-emoji{font-size:1.5rem}.badge-name{font-size:.62rem;font-weight:600;color:var(--text-muted);text-align:center;line-height:1.2}.theme-card{display:flex;align-items:center;justify-content:space-between}.theme-toggle{width:52px;height:28px;border-radius:var(--radius-full);background:var(--grad-blue-purple);border:none;cursor:pointer;position:relative;flex-shrink:0}.theme-toggle-thumb{position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;box-shadow:var(--shadow-sm)}.settings-list{overflow:hidden;padding:0}.settings-row{display:flex;align-items:center;gap:var(--space-sm);width:100%;padding:14px var(--space-md);background:none;border:none;font-family:var(--font);font-size:.9rem;color:var(--text-primary);text-align:left}.settings-icon{color:var(--text-secondary);flex-shrink:0}.settings-label{flex:1;font-weight:500}.settings-value{font-size:.8rem;color:var(--text-muted)}.CircularProgressbar{width:100%;vertical-align:middle}.CircularProgressbar .CircularProgressbar-path{stroke:#3e98c7;stroke-linecap:round;-webkit-transition:stroke-dashoffset .5s ease 0s;transition:stroke-dashoffset .5s ease 0s}.CircularProgressbar .CircularProgressbar-trail{stroke:#d6d6d6;stroke-linecap:round}.CircularProgressbar .CircularProgressbar-text{fill:#3e98c7;font-size:20px;dominant-baseline:middle;text-anchor:middle}.CircularProgressbar .CircularProgressbar-background{fill:#d6d6d6}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-background{fill:#3e98c7}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-text{fill:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-path{stroke:#fff}.CircularProgressbar.CircularProgressbar-inverted .CircularProgressbar-trail{stroke:transparent}.auth-page{min-height:100dvh;display:flex;flex-direction:column;background:var(--bg)}.auth-top{flex:1;display:flex;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-lg)}.auth-top.compact{flex:0 0 auto;padding:var(--space-lg)}.auth-brand{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);text-align:center}.auth-brand-mini{display:flex;align-items:center;gap:var(--space-sm)}.brand-name{font-size:3rem;font-weight:900;letter-spacing:-.04em;background:var(--grad-blue-purple);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.brand-name-mini{font-size:1.6rem;font-weight:900;letter-spacing:-.04em;background:var(--grad-blue-purple);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.brand-tagline{font-size:.95rem;color:var(--text-muted);max-width:240px;line-height:1.5}.auth-card{background:var(--surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--space-xl) var(--space-lg);box-shadow:var(--shadow-lg);border-top:1px solid var(--border)}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:14px 20px;border:1.5px solid var(--border);border-radius:var(--radius-full);background:var(--surface);color:var(--text-primary);font-family:var(--font);font-size:.95rem;font-weight:600;cursor:pointer;transition:background .2s,border-color .2s}.btn-google:hover{background:var(--surface-2);border-color:var(--blue)}.input-icon-wrap{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:14px;color:var(--text-muted);pointer-events:none}.input-with-icon{padding-left:40px}.input-icon-right{position:absolute;right:12px;background:none;border:none;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;padding:4px}.forgot-link{font-size:.85rem;color:var(--blue);text-decoration:none;font-weight:500;text-align:right;display:block}.auth-footer{text-align:center;margin-top:var(--space-lg);font-size:.9rem;color:var(--text-secondary)}.auth-link{color:var(--blue);font-weight:700;text-decoration:none}
