.avatar-container{position:relative;display:inline-block;flex-shrink:0}.avatar-inner{width:100%;height:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid rgba(139,90,43,.1)}.avatar-shape-circle .avatar-inner{border-radius:50%}.avatar-shape-square .avatar-inner{border-radius:0}.avatar-img{width:100%;height:100%;object-fit:cover;display:block}.avatar-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative;color:#fff;font-weight:700;font-family:var(--font-display);-webkit-user-select:none;user-select:none;text-shadow:0 1px 2px rgba(0,0,0,.1);background:linear-gradient(135deg,#8b5a2b,#a67c52);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease}.avatar-xs{width:24px;height:24px}.avatar-xs .avatar-initials{font-size:10px}.avatar-xs .avatar-vibe,.avatar-xs .avatar-smile{display:none}.avatar-sm{width:32px;height:32px}.avatar-sm .avatar-initials{font-size:12px}.avatar-md{width:40px;height:40px}.avatar-md .avatar-initials{font-size:14px}.avatar-lg{width:60px;height:60px}.avatar-lg .avatar-initials{font-size:18px}.avatar-xl{width:80px;height:80px}.avatar-xl .avatar-initials{font-size:24px}.avatar-xxl{width:140px;height:140px}.avatar-xxl .avatar-initials{font-size:48px}.avatar-fill{width:100%;height:100%}.avatar-fill .avatar-initials{font-size:2.5rem}.status-indicator{position:absolute;bottom:0;right:0;width:10px;height:10px;border-radius:50%;border:2px solid white}.status-indicator.online{background-color:#10b981}.status-indicator.offline{background-color:#94a3b8}@keyframes pulse-opacity{0%{opacity:.8}50%{opacity:1}to{opacity:.8}}.avatar-container:hover .avatar-initials{transform:scale(1.05) rotate(2deg);box-shadow:var(--shadow-md)}.avatar-smile{position:absolute;bottom:22%;width:40%;height:8px;border-bottom:3px solid rgba(255,255,255,.6);border-radius:50%;opacity:.6;transition:all .3s ease}.avatar-container:hover .avatar-smile{opacity:.7;width:45%;height:10px}.avatar-vibe{position:absolute;top:5px;right:5px;font-size:14px;filter:drop-shadow(0 2px 2px rgba(0,0,0,.1));animation:float-vibe 3s ease-in-out infinite}.avatar-xxl .avatar-vibe,.avatar-fill .avatar-vibe{font-size:28px;top:15px;right:15px}.avatar-xxl .avatar-smile,.avatar-fill .avatar-smile{height:15px;border-bottom-width:5px;border-bottom-color:#ffffffb3}@keyframes float-vibe{0%,to{transform:translateY(0) rotate(0) scale(1)}25%{transform:translateY(-2px) rotate(-5deg) scale(1.1)}50%{transform:translateY(-4px) rotate(10deg) scale(1.05)}75%{transform:translateY(-2px) rotate(-5deg) scale(1.1)}}.avatar-container:hover .avatar-img{transform:scale(1.08)}.avatar-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s cubic-bezier(.175,.885,.32,1.275)}.initials-text{position:relative;z-index:1}.minimal-nav{width:100%;max-width:600px;margin:0 auto;background:#fff;border-top:1px solid #E5E5E5;padding:.5rem .5rem calc(.5rem + env(safe-area-inset-bottom,12px));display:flex;justify-content:space-between;align-items:center;z-index:1000;box-sizing:border-box;overflow-x:hidden;flex-shrink:0}.nav-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;text-decoration:none;color:#8b5a2b!important;transition:all .2s ease;flex:1;min-width:0;cursor:pointer}.nav-item.active{color:#8b5a2b!important}.nav-icon,.nav-icon-wrapper{opacity:.6;transition:all .2s ease}.nav-item.active .nav-icon,.nav-item.active .nav-icon-wrapper{opacity:1;transform:translateY(-2px);filter:drop-shadow(0 2px 4px rgba(210,105,62,.15))}.nav-label{font-size:.7rem;font-weight:500;opacity:0;transform:translateY(4px);transition:all .2s ease;height:0;overflow:hidden;white-space:nowrap}.nav-avatar,.nav-avatar-comp{width:24px;height:24px;transition:all .2s ease;opacity:.6}.nav-item.active .nav-avatar,.nav-item.active .nav-avatar-comp{opacity:1;transform:translateY(-2px);filter:drop-shadow(0 2px 4px rgba(210,105,62,.15))}.nav-item.active .nav-label{opacity:1;transform:translateY(0);height:auto}.app-logo-container{display:flex;align-items:center;justify-content:center;z-index:10}.app-logo-image{height:auto;object-fit:contain}.app-logo-container.small .app-logo-image{width:150px}.app-logo-container.medium .app-logo-image{width:200px}.app-logo-container.large .app-logo-image{width:260px}.app-header{width:100%;background-color:#fff;position:relative;z-index:100;padding-top:var(--safe-area-top, env(safe-area-inset-top, 25px))}.app-header-container{max-width:600px;margin:0 auto;padding:.5rem 1rem;display:flex;align-items:left;justify-content:flex-start;border-bottom:1px transparent}.app-header-affirmation{display:flex;padding:.25rem 0;align-items:center;justify-content:center;width:100%;max-width:100%;box-sizing:border-box}.app-header-logo-link{align-items:center;text-decoration:none;transition:opacity .2s ease;top:0;left:0;width:100%;display:flex;justify-content:flex-start}.app-header.minimal .app-header-container{padding:1rem;justify-content:center;width:100%}@media (min-width: 768px){.app-header-container{justify-content:center}}.header-app-logo{justify-content:flex-start!important}.app-header-title{font-family:var(--font-display),sans-serif;font-size:var(--text-lg);font-weight:800;color:var(--text-primary);margin:0;text-align:left;width:100%;letter-spacing:-.01em}.header-back-btn{background:none;border:none;padding:8px;margin-left:-8px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#d2693e;transition:all .2s ease;border-radius:8px}.header-back-btn:hover{background-color:#d2693e14;transform:translate(-2px)}.header-back-btn:active{transform:translate(0)}.lumo-container{display:flex;justify-content:center;align-items:center;margin:1rem 0}.lumo-character{filter:drop-shadow(0 2px 8px rgba(255,193,7,.2))}.lumo-body,.lumo-head{animation:breathe 3s ease-in-out infinite;transform-origin:center}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.lumo-glow{animation:glowPulse 4s ease-in-out infinite}@keyframes glowPulse{0%,to{opacity:.15}50%{opacity:.25}}.lumo-eye-left,.lumo-eye-right{animation:blink 4s ease-in-out infinite}@keyframes blink{0%,48%,52%,to{transform:scaleY(1)}50%{transform:scaleY(.1)}}.lumo-pointing .lumo-arm-right{animation:pointGesture 2s ease-in-out infinite;transform-origin:85px 60px}@keyframes pointGesture{0%,to{transform:rotate(0)}50%{transform:rotate(-5deg)}}.lumo-encouraging .lumo-arm-left,.lumo-encouraging .lumo-arm-right{animation:wave 1.5s ease-in-out infinite alternate}@keyframes wave{0%{transform:rotate(0)}to{transform:rotate(10deg)}}.blob-inner-glow{animation:warmGlowPulse 3s ease-in-out infinite}@keyframes warmGlowPulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.blob-glow{animation:blobGlowPulse 4s ease-in-out infinite}@keyframes blobGlowPulse{0%,to{opacity:.2}50%{opacity:.4}}.blob-body{animation:blobBreathe 3.5s ease-in-out infinite;transform-origin:center}@keyframes blobBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.blob-leaning{animation:blobLean 2s ease-in-out infinite;transform-origin:60px 100px}@keyframes blobLean{0%,to{transform:rotate(0)}50%{transform:rotate(3deg)}}.blob-squished{animation:blobSquish 1.5s ease-in-out infinite;transform-origin:60px 102px}@keyframes blobSquish{0%,to{transform:scaleY(1) scaleX(1)}50%{transform:scaleY(.96) scaleX(1.04)}}.blob-stretched{animation:blobStretch 2s ease-in-out infinite;transform-origin:60px 100px}@keyframes blobStretch{0%,to{transform:scaleY(1) scaleX(1)}50%{transform:scaleY(1.04) scaleX(.98)}}.scarf-tail{transform-origin:top}.tail-1{animation:scarfFlutter1 3.5s ease-in-out infinite}.tail-2{animation:scarfFlutter2 4s ease-in-out infinite;animation-delay:.2s}@keyframes scarfFlutter1{0%,to{transform:rotate(0)}50%{transform:rotate(6deg) scaleX(1.02)}}@keyframes scarfFlutter2{0%,to{transform:rotate(0)}50%{transform:rotate(10deg) scaleX(1.05)}}.scarf-knot{filter:drop-shadow(0 1px 2px rgba(0,0,0,.2))}.lumo-scarf{filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.lumo-bouncing{animation:lumoBounce .8s ease-in-out infinite alternate}@keyframes lumoBounce{0%{transform:translateY(0)}to{transform:translateY(-20px)}}.affirmation-section{width:92%;max-width:500px;margin:0 auto;padding:.4rem 1.25rem;background:var(--color-pop-50);border-radius:20px;border:1px solid var(--color-pop-200);display:flex;flex-direction:row;align-items:center;gap:1rem;text-align:left;box-shadow:0 8px 32px #6f4e370d;position:relative;transition:all .3s cubic-bezier(.16,1,.3,1)}.affirmation-section:hover{background:var(--color-pop-100);transform:translateY(-1px);box-shadow:0 6px 16px #6f4e3714}.affirmation-mascot{flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center}.affirmation-mascot .lumo-container{width:100%;height:100%}.affirmation-text{font-family:Outfit,sans-serif;font-size:.9375rem;font-weight:500;color:#4a3427;line-height:1.4;margin:0;font-style:italic;flex:1;white-space:normal;text-align:center;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.affirmation-text .animate-pulse{color:#6f4e37;opacity:.6}.upgrade-prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#2a2017bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:12px;animation:fadeIn .3s ease-out}.upgrade-prompt{background:#fff;border-radius:24px;padding:20px 16px;max-width:380px;width:100%;text-align:center;position:relative;box-shadow:0 20px 60px #4a37284d;animation:modalSlideUp .4s cubic-bezier(.16,1,.3,1);border:1px solid rgba(139,90,43,.1);overflow:hidden;max-height:95vh;display:flex;flex-direction:column}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#fdfbfa;border:1px solid #EBE6E2;border-radius:50%;color:#8b5a2b;cursor:pointer;z-index:10}.up-header{margin-bottom:12px;padding:2px 0;text-align:center;width:100%;border-bottom:1px solid rgba(139,90,43,.1)}.feature-unlock-icon{width:56px;height:56px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;border-radius:16px}.feature-unlock-icon.premium{background:#d4af371a;color:#d4af37}.feature-unlock-icon.pro{background:#4a37281a;color:#4a3728}.up-title{font-family:Playfair Display,serif;font-size:1.625rem;font-weight:800;color:#4a3728;margin:0 0 4px;line-height:1.25;width:100%;display:block}.up-description{font-size:.9375rem;color:#8b5a2b;line-height:1.6;margin:0;padding:0 12px;display:block}.plan-tabs{display:flex;background:#f3ede7;padding:4px;border-radius:12px;margin-bottom:12px}.plan-tab{flex:1;padding:8px;border:none;background:transparent;font-family:Inter,sans-serif;font-size:.8125rem;font-weight:700;color:#8b5a2b;cursor:pointer;border-radius:8px;transition:all .2s ease}.plan-tab.active{background:#fff;color:#4a3728;box-shadow:0 2px 6px #8b5a2b14}.active-plan-view{margin-bottom:0;overflow-y:auto;scrollbar-width:none}.active-plan-view::-webkit-scrollbar{display:none}.plan-card-mini{background:#fdfbfa;border-radius:16px;padding:16px;border:1.5px solid #EBE6E2;transition:all .3s ease}.plan-card-mini.premium{border-color:#d4af37;background:linear-gradient(to bottom,#fff,#fdfbfa)}.plan-card-mini.pro{border-color:#4a3728;background:linear-gradient(to bottom,#fff,#fdfbfa)}.plan-card-icon{width:60px;height:60px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center;border-radius:16px;box-shadow:0 8px 16px #8b5a2b26}.premium .plan-card-icon{background:linear-gradient(135deg,#d4af37,#8b5a2b);color:#fff}.pro .plan-card-icon{background:linear-gradient(135deg,#4a3728,#2d1e12);color:#fff}.plan-card-title{font-family:Playfair Display,serif;font-size:1.125rem;font-weight:800;color:#4a3728;margin:0 0 4px;text-transform:uppercase;letter-spacing:.5px}.plan-card-tagline{font-size:.75rem;font-style:italic;color:#8b5a2b;margin:0 0 10px}.plan-card-benefits{list-style:none;padding:0;margin:0 0 12px;text-align:left;display:flex;flex-direction:column;gap:6px}.plan-card-benefits li{display:flex;align-items:flex-start;gap:8px;font-size:.8125rem;color:#4a3728;line-height:1.3}.check-icon{color:#3a2e28;flex-shrink:0;margin-top:2px}.plan-card-footer{display:flex;align-items:center;justify-content:center;gap:4px;font-size:.7rem;color:#a89b91;margin-bottom:8px;padding-top:6px;border-top:1px solid #F3EDE7}.prompt-actions{display:flex;flex-direction:column;gap:8px}.upgrade-btn{width:100%;padding:12px;border-radius:12px;font-family:Inter,sans-serif;font-size:.875rem;font-weight:700;cursor:pointer;transition:all .3s ease}.upgrade-btn.primary{border:none;color:#fff;box-shadow:0 4px 10px #4a372833}.upgrade-btn.primary.premium{background:linear-gradient(135deg,#d4af37,#8b5a2b)}.upgrade-btn.primary.pro{background:#4a3728}.upgrade-btn.primary:hover{transform:translateY(-1px);box-shadow:0 6px 14px #4a37284d}.maybe-later-link{background:none;border:none;color:#a89b91;font-size:.8125rem;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:3px;padding:4px;transition:color .2s ease}.maybe-later-link:hover{color:#8b5a2b}@media (max-width: 400px){.upgrade-prompt{padding:20px 16px}.plan-card-mini{padding:16px}.plan-card-title{font-size:1rem}}.notif-tray-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#4a342766;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2000;display:flex;justify-content:flex-end}.notif-tray{width:100%;max-width:450px;height:100%;background:#fff;display:flex;flex-direction:column;box-shadow:-10px 0 30px #0000001a;animation:slideInRight .3s cubic-bezier(.16,1,.3,1)}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.notif-tray-header{padding:calc(env(safe-area-inset-top,0px) + 1.5rem) 1.5rem 1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(139,90,43,.1)}.notif-header-content h3{font-family:var(--font-display);font-size:1.25rem;font-weight:800;color:var(--text-primary);margin:0}.notif-header-content p{font-size:.8125rem;color:var(--text-secondary);margin:.25rem 0 0}.notif-close-btn{background:#8b5a2b0d;border:none;color:var(--text-primary);width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.notif-close-btn:hover{background:#8b5a2b1a;transform:rotate(90deg)}.notif-tab-switcher{display:flex;padding:0 1rem;border-bottom:1px solid rgba(139,90,43,.05)}.notif-tab-switcher button{flex:1;padding:1rem;border:none;background:none;font-size:.875rem;font-weight:500;color:var(--text-secondary);cursor:pointer;position:relative;transition:all .2s}.notif-tab-switcher button.active{color:#8b5a2b;font-weight:700}.notif-tab-switcher button.active:after{content:"";position:absolute;bottom:0;left:20%;right:20%;height:3px;background:#8b5a2b;border-radius:3px 3px 0 0}.notif-tray-content{flex:1;overflow-y:auto;background:#fdfcfb}.notif-loading,.notif-empty{padding:4rem 2rem;text-align:center;color:var(--text-secondary)}.empty-bell{opacity:.1;margin-bottom:1rem;color:#8b5a2b}.notif-group-label{padding:1.25rem 1.5rem .75rem;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:#a68b77;background:#fdfcfb;position:sticky;top:0;z-index:5}.notif-card{padding:1.25rem 1.5rem;display:flex;gap:12px;align-items:center;cursor:pointer;transition:all .2s;border-bottom:1px solid rgba(139,90,43,.04);position:relative}.notif-card.unread{background:#fdf5ef}.notif-card.read{background:#fff}.notif-card:hover{background:#f7f0e9}.notif-avatar{flex-shrink:0}.notif-icon-fallback{width:44px;height:44px;border-radius:50%;background:#8b5a2b1a;color:#8b5a2b;display:flex;align-items:center;justify-content:center}.notif-card-content{flex:1;min-width:0}.notif-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:4px}.notif-title{font-size:.9375rem;font-weight:700;color:var(--text-primary);line-height:1.3}.notif-time{font-size:.7rem;color:#a68b77;white-space:nowrap}.notif-message{font-size:.85rem;color:var(--text-secondary);line-height:1.4;margin:0}.unread-dot{width:8px;height:8px;background:#8b5a2b;border-radius:50%;flex-shrink:0}.notif-settings-list{padding:1.5rem;display:flex;flex-direction:column;gap:.5rem}.notif-invite-promo{background:linear-gradient(135deg,#fdf5ef,#f5e6da);padding:1.25rem;border-radius:16px;margin-bottom:1rem;cursor:pointer;transition:all .2s;border:1px solid rgba(139,90,43,.1)}.notif-invite-promo:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5a2b1a}.promo-left{display:flex;gap:12px;align-items:flex-start;color:#8b5a2b}.promo-text{display:flex;flex-direction:column}.promo-label{font-weight:700;font-size:.9rem;margin-bottom:2px}.promo-desc{font-size:.75rem;opacity:.8}.notif-menu-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;border-bottom:1px solid rgba(139,90,43,.05)}.notif-menu-item-left{display:flex;gap:12px;align-items:flex-start}.notif-icon-box{padding:8px;border-radius:12px;display:flex;align-items:center;justify-content:center}.notif-icon-box.on{background:#8b5a2b1a;color:#8b5a2b}.notif-icon-box.off{background:#8b5a2b0d;color:#a68b77}.notif-item-text{display:flex;flex-direction:column}.notif-item-label{font-weight:600;font-size:.9375rem;color:var(--text-primary)}.notif-item-desc{font-size:.75rem;color:var(--text-secondary);line-height:1.4}.notif-toggle{width:48px;height:26px;border-radius:999px;position:relative;cursor:pointer;border:none;transition:all .3s cubic-bezier(.4,0,.2,1)}.notif-toggle.on{background:#8b5a2b}.notif-toggle.off{background:#d1d5db}.notif-toggle-slider{width:20px;height:20px;background:#fff;border-radius:50%;position:absolute;top:3px;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0000001a}.notif-toggle.on .notif-toggle-slider{left:25px}.notif-toggle.off .notif-toggle-slider{left:3px}@media (max-width: 480px){.notif-tray{max-width:100%}}.app-download-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .3s ease-out}.app-download-popup{background:#fff;width:100%;max-width:320px;border-radius:24px;padding:24px;position:relative;box-shadow:0 20px 40px #0003;display:flex;flex-direction:column;align-items:center;text-align:center;animation:popupScale .4s cubic-bezier(.175,.885,.32,1.275)}.popup-close{position:absolute;top:12px;right:12px;background:#f0f0f0;border:none;color:#666;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.popup-close:active{transform:scale(.9);background:#e0e0e0}.popup-mascot{margin-bottom:12px}.popup-content h3{margin:0 0 8px;font-size:1.25rem;font-weight:800;color:#1a1a1a;background:linear-gradient(135deg,#f96,#ff5e62);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.popup-content p{margin:0 0 20px;font-size:.95rem;color:#666;line-height:1.4}.popup-actions{width:100%}.popup-download-btn{width:100%;background:linear-gradient(135deg,#f96,#ff5e62);color:#fff;border:none;padding:14px;border-radius:16px;font-size:1rem;font-weight:700;cursor:pointer;box-shadow:0 4px 15px #ff5e624d;transition:all .2s}.popup-download-btn:active{transform:translateY(2px);box-shadow:0 2px 8px #ff5e6233}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popupScale{0%{opacity:0;transform:scale(.8) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.lumo-switcher{max-width:800px;margin:0 auto;padding:2rem;font-family:Inter,sans-serif}.lumo-switcher-header{text-align:center;margin-bottom:2rem}.lumo-switcher-header h2{font-family:Playfair Display,serif;font-size:1.875rem;font-weight:700;margin:0 0 .5rem;color:var(--dashboard-text-primary, #4A3728)}.lumo-switcher-header p{color:var(--dashboard-text-secondary, #8B7355);margin:0;font-size:.9375rem}.lumo-display{display:flex;justify-content:center;margin-bottom:2rem}.lumo-showcase{background:linear-gradient(135deg,#f5e6d34d,#fffcf233);border-radius:1.25rem;padding:2rem;box-shadow:0 4px 16px #4a37281a;border:1px solid rgba(230,220,200,.5);text-align:center}.variant-label{font-family:Playfair Display,serif;font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--dashboard-text-primary, #4A3728)}.lumo-controls{background:#fff;border-radius:1rem;padding:1.5rem;margin-bottom:2rem;border:1px solid rgba(230,220,200,.5);box-shadow:0 2px 8px #4a37280d}.control-group{margin-bottom:1.5rem}.control-group:last-child{margin-bottom:0}.control-group label{display:block;font-weight:600;margin-bottom:.75rem;color:var(--dashboard-text-primary, #4A3728);font-size:.9375rem}.toggle-button{width:100%;padding:1rem 2rem;font-size:1rem;font-weight:600;background:var(--dashboard-accent, #8B5A2B);color:#fff;border:none;border-radius:999px;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #8b5a2b4d}.toggle-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #8b5a2b66;background:#704826}.toggle-button:active{transform:translateY(0)}.pose-buttons{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.pose-buttons button{padding:.75rem 1rem;font-size:.875rem;font-weight:500;background:#fff;color:var(--dashboard-text-primary, #4A3728);border:2px solid rgba(230,220,200,.6);border-radius:.625rem;cursor:pointer;transition:all .2s ease}.pose-buttons button:hover{background:#f5e6d34d;border-color:var(--dashboard-accent, #8B5A2B)}.pose-buttons button.active{background:var(--dashboard-accent, #8B5A2B);color:#fff;border-color:var(--dashboard-accent, #8B5A2B)}.comparison-view{margin-top:3rem}.comparison-view h3{font-family:Playfair Display,serif;text-align:center;font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--dashboard-text-primary, #4A3728)}.avatars-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.avatar-card{background:#fff;border-radius:1rem;padding:1.5rem;box-shadow:0 2px 12px #4a372814;border:1px solid rgba(230,220,200,.5);text-align:center;transition:all .25s ease}.avatar-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #4a372826;border-color:var(--dashboard-accent, #8B5A2B)}.avatar-card-label{font-weight:600;margin-bottom:1rem;color:var(--dashboard-text-secondary, #8B7355);font-size:.8125rem;text-transform:uppercase;letter-spacing:.05em}@media (max-width: 600px){.lumo-switcher{padding:1rem}.pose-buttons{grid-template-columns:repeat(2,1fr)}.avatars-grid{grid-template-columns:1fr}}.spinner-container{display:inline-flex;align-items:center;justify-content:center}.spinner-container--centered{width:100%;height:100%;min-height:200px}.spinner-container--fullscreen{position:fixed;top:0;left:0;width:100vw;height:100vh;background:var(--bg-primary);z-index:9999}.spinner{border-radius:50%;border-style:solid;animation:spin 1s linear infinite}.spinner--small{width:20px;height:20px;border-width:2px}.spinner--medium{width:40px;height:40px;border-width:4px}.spinner--large{width:60px;height:60px;border-width:5px}.spinner--primary{border-color:var(--color-primary-200);border-top-color:var(--color-primary-600)}.spinner--secondary{border-color:var(--color-secondary-200);border-top-color:var(--color-secondary-600)}.spinner--white{border-color:#ffffff4d;border-top-color:#fff}.lumo-loader-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;min-height:200px}.lumo-loader{position:relative;display:flex;align-items:center;justify-content:center}.lumo-loader--small{width:60px;height:60px}.lumo-loader--medium{width:100px;height:100px}.lumo-loader--large{width:140px;height:140px}.lumo-bouncing-mascot{animation:lumoBounce .6s cubic-bezier(.45,0,.55,1) infinite alternate}.lumo-loader-shadow{position:absolute;bottom:-5px;width:60%;height:8px;background:#0000001a;border-radius:50%;filter:blur(4px);animation:shadowScale .6s cubic-bezier(.45,0,.55,1) infinite alternate}@keyframes lumoBounce{0%{transform:translateY(0) scaleY(.95)}to{transform:translateY(-30px) scaleY(1)}}@keyframes shadowScale{0%{transform:scale(1);opacity:.2}to{transform:scale(.6);opacity:.1}}.lumo-message{margin-top:20px;font-size:15px;color:#666;text-align:center;animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.route-transition-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;z-index:9999;pointer-events:none;animation:simpleFade 1.2s ease-in-out forwards}@keyframes simpleFade{0%{opacity:1}30%{opacity:1}to{opacity:0}}.login-prompt-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.login-prompt-modal{background:var(--bg-primary, #fff);border-radius:24px;padding:32px 24px;width:100%;max-width:340px;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative;box-shadow:0 10px 40px #0003}.close-button{position:absolute;top:16px;right:16px;background:none;border:none;font-size:24px;color:var(--text-secondary, #666);cursor:pointer;padding:4px;line-height:1;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:background-color .2s}.close-button:hover{background-color:var(--bg-secondary, #f5f5f5)}.modal-mascot{margin-bottom:20px}.modal-title{font-family:Outfit,sans-serif;font-size:1.5rem;font-weight:700;color:var(--text-primary, #333);margin:0 0 12px;line-height:1.2}.modal-subtitle{font-family:Inter,sans-serif;font-size:1rem;color:var(--text-secondary, #666);margin:0 0 28px;line-height:1.5}.modal-actions{display:flex;flex-direction:column;gap:12px;width:100%}.modal-actions .primary-button{background-color:#8b5a2b;color:#fff;border:none;border-radius:12px;padding:14px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,background-color .2s;width:100%}.modal-actions .primary-button:active{transform:scale(.98)}.modal-actions .text-button{background:none;border:none;color:var(--text-secondary, #666);font-size:.95rem;font-weight:500;cursor:pointer;padding:8px}.modal-actions .text-button:hover{color:var(--text-primary, #333)}:root{--color-primary-50: #fff8e1;--color-primary-100: #ffecb3;--color-primary-200: #ffe082;--color-primary-300: #ffd54f;--color-primary-400: #ffca28;--color-primary-500: #ffc107;--color-primary-600: #ffb300;--color-primary-700: #ffa000;--color-primary-800: #ff8f00;--color-primary-900: #ff6f00;--color-secondary-50: #e0f2f1;--color-secondary-100: #b2dfdb;--color-secondary-200: #80cbc4;--color-secondary-300: #4db6ac;--color-secondary-400: #26a69a;--color-secondary-500: #009688;--color-secondary-600: #00897b;--color-secondary-700: #00796b;--color-secondary-800: #00695c;--color-secondary-900: #004d40;--color-pop-50: #fdf4ef;--color-pop-100: #fbe6d7;--color-pop-200: #f6cdb1;--color-pop-300: #f0aa80;--color-pop-400: #e87e4c;--color-pop-500: #D2693E;--color-pop-600: #b95531;--color-pop-700: #9a432b;--color-pop-800: #7b3828;--color-pop-900: #643023;--color-berry-50: #fff0f3;--color-berry-100: #ffdeeb;--color-berry-200: #ffbed6;--color-berry-300: #ff8fb5;--color-berry-400: #ff5c93;--color-berry-500: #FF2E63;--color-berry-600: #e61b4d;--color-berry-700: #cc1240;--color-berry-800: #990d30;--color-berry-900: #7a0a26;--color-accent-50: #fbe9e7;--color-accent-100: #ffccbc;--color-accent-200: #ffab91;--color-accent-300: #ff8a65;--color-accent-400: #ff7043;--color-accent-500: #ff5722;--color-accent-600: #f4511e;--color-accent-700: #e64a19;--color-accent-800: #d84315;--color-accent-900: #bf360c;--color-gray-50: #fafafa;--font-sans: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Outfit", system-ui, -apple-system, sans-serif;--text-primary: #4A3427;--text-secondary: #8D6E63;--text-tertiary: #A89B91;--highlight-main: var(--color-pop-500);--highlight-light: var(--color-pop-100);--highlight-dark: var(--color-pop-700);--highlight-bg: var(--color-pop-50);--highlight-glow: rgba(249, 115, 22, .3);--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.75;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--shadow-primary: 0 10px 40px -10px rgba(255, 193, 7, .4);--shadow-secondary: 0 10px 40px -10px rgba(0, 150, 136, .4);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--glass-bg: rgba(255, 252, 242, .8);--glass-border: rgba(255, 255, 255, .6);--glass-shadow: 0 8px 32px 0 rgba(255, 193, 7, .1);--glass-blur: blur(12px);--glass-card-bg: rgba(255, 255, 255, .8);--glass-card-border: 1px solid rgba(255, 255, 255, .9);--text-primary-glass: #212121;--text-secondary-glass: #616161;--bg-gradient-mesh: radial-gradient(at 0% 0%, var(--color-primary-200) 0, transparent 50%), radial-gradient(at 50% 0%, var(--color-secondary-100) 0, transparent 50%), radial-gradient(at 100% 0%, var(--color-accent-100) 0, transparent 50%);--bg-warm-mesh: radial-gradient(at top left, #fff8e1 0%, #ffffff 100%);--dashboard-accent: var(--color-pop-500);--profile-coffee-dark: #3A2E28;--profile-coffee-medium: #6F564B;--profile-coffee-light: #F3EDE7;--profile-coffee-btn: #8B5A2B;--profile-warm-bg: #FAF8F6;--profile-white: #FFFFFF;--profile-divider: #E7E2DD;--profile-shadow-soft: 0 2px 8px rgba(0, 0, 0, .08);--profile-shadow-card: 0 4px 12px rgba(0, 0, 0, .06)}[data-theme=dark]{--glass-bg: rgba(30, 41, 59, .7);--glass-border: rgba(255, 255, 255, .1);--glass-card-bg: rgba(30, 41, 59, .6);--glass-card-border: 1px solid rgba(255, 255, 255, .1);--text-primary-glass: #f7fafc;--text-secondary-glass: #cbd5e0}*::-webkit-scrollbar{display:none;width:0;height:0}*{-ms-overflow-style:none;scrollbar-width:none}html,body{-ms-overflow-style:none;scrollbar-width:none;overflow-x:hidden}.glass-panel{background:var(--glass-bg)}.glass-panel *{margin:0;padding:0;box-sizing:border-box}.glass-panel html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glass-panel h2{font-size:var(--text-4xl)}.glass-panel h3{font-size:var(--text-3xl)}.glass-panel h4{font-size:var(--text-2xl)}.glass-panel h5{font-size:var(--text-xl)}.glass-panel h6{font-size:var(--text-lg)}.glass-panel p{margin-bottom:var(--space-4);color:var(--text-secondary)}.glass-panel a{color:var(--color-primary-600);text-decoration:none;transition:color var(--transition-fast)}.glass-panel a:hover{color:var(--color-primary-700)}.glass-panel .text-pop{color:var(--color-pop-500)}.glass-panel .bg-pop{background-color:var(--color-pop-500)}.glass-panel .bg-pop-light{background-color:var(--color-pop-50)}.glass-panel .border-pop{border-color:var(--color-pop-300)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.bg-primary{background-color:var(--bg-primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-gradient-primary{background:linear-gradient(135deg,var(--color-primary-600) 0%,var(--color-primary-800) 100%)}.bg-gradient-secondary{background:linear-gradient(135deg,var(--color-secondary-500) 0%,var(--color-secondary-700) 100%)}.bg-gradient-accent{background:linear-gradient(135deg,var(--color-accent-500) 0%,var(--color-primary-600) 100%)}.bg-gradient-mesh{background-color:#fffaf5;background-image:radial-gradient(at 0% 0%,rgba(212,175,131,.2) 0%,transparent 50%),radial-gradient(at 100% 0%,rgba(139,90,43,.15) 0%,transparent 50%),radial-gradient(at 100% 100%,rgba(255,245,230,.5) 0%,transparent 50%),radial-gradient(at 0% 100%,rgba(212,175,131,.1) 0%,transparent 50%)}.bg-warm-mesh{background:radial-gradient(at top left,#fff8e1,#fff)}.glass{background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}[data-theme=dark] .glass{background:#ffffff0d;border:1px solid rgba(255,255,255,.1)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-xl{box-shadow:var(--shadow-xl)}.shadow-2xl{box-shadow:var(--shadow-2xl)}.shadow-primary{box-shadow:var(--shadow-primary)}.shadow-secondary{box-shadow:var(--shadow-secondary)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}.animate-fade-in{animation:fadeIn var(--transition-base) ease-out forwards}.animate-slide-in{animation:slideInRight var(--transition-base) ease-out forwards}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.p-2{padding:var(--space-2)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.m-2{margin:var(--space-2)}.m-4{margin:var(--space-4)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100vh}.hidden{display:none}.block{display:block}.hover-lift{transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.hover-lift:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}*:focus{outline:2px solid var(--color-primary-500);outline-offset:2px}*:focus:not(:focus-visible){outline:none}::selection{background-color:var(--color-primary-200);color:var(--color-primary-900)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}html{box-sizing:border-box;height:100%;-webkit-tap-highlight-color:transparent;overflow-y:auto;overflow-x:hidden}*,*:before,*:after{box-sizing:inherit}:root{--safe-area-top: env(safe-area-inset-top, 32px);--safe-area-bottom: env(safe-area-inset-bottom, 16px);--header-height: 60px;--nav-height: 64px}body{background:var(--bg-warm-mesh);background-attachment:fixed;background-size:cover;color:var(--text-primary);margin:0;padding:0;width:100%;height:100%;overflow-y:auto;overflow-x:hidden;overscroll-behavior:none;-webkit-overflow-scrolling:touch}#root{height:100%;width:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}.mobile-app{display:flex;flex-direction:column;height:100%;position:relative;width:100%;overflow:hidden}.mobile-app-content{flex:1;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:calc(var(--nav-height) + var(--safe-area-bottom));background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(255,255,255,.5);display:flex;justify-content:space-around;align-items:flex-start;padding-top:10px;z-index:100;max-width:600px;margin:0 auto}
