@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Manrope:wght@600;700;800&display=swap";:root{--primary:#0a2463;--primary-light:#2a4a94;--secondary:#3b82f6;--bg-color:#f8f9fa;--surface:#fff;--surface-low:#f1f4f6;--text-primary:#1e293b;--text-secondary:#64748b;--danger:#ef4444;--success:#10b981;--warning:#f59e0b;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-ambient:0 12px 32px #0a246314;--radius-md:.5rem;--radius-lg:1rem;--radius-xl:1.5rem;--radius-full:9999px;--nav-height:80px;--header-height:60px;--font-body:"Inter", sans-serif;--font-display:"Manrope", sans-serif}[data-theme=dark]{--primary:#dbeafe;--primary-light:#60a5fa;--bg-color:#0f172a;--surface:#1e293b;--surface-low:#334155;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--shadow-ambient:0 12px 32px #0006}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--bg-color);color:var(--text-primary);width:100vw;height:100vh;line-height:1.5;transition:background-color .3s,color .3s;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary)}button{font-family:var(--font-body);cursor:pointer;color:inherit;background:0 0;border:none}#app{background:var(--bg-color);max-width:600px;height:100%;box-shadow:var(--shadow-xl);flex-direction:column;margin:0 auto;display:flex;position:relative}.top-bar{height:var(--header-height);z-index:50;background:rgba(var(--bg-color), .8);-webkit-backdrop-filter:blur(12px);justify-content:space-between;align-items:center;padding:0 1.25rem;display:flex;position:sticky;top:0}.top-left,.top-right{gap:.5rem;width:60px;display:flex}.icon-btn{color:var(--text-secondary);border-radius:var(--radius-full);justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;transition:all .2s;display:flex}.icon-btn:hover,.icon-btn:active{background:var(--surface-low);color:var(--primary);transform:scale(.95)}.top-center #appTitle{letter-spacing:-.02em;font-size:1.25rem;font-weight:700}main#mainContainer{padding:1rem 1.25rem calc(var(--nav-height) + 1.5rem);-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.bottom-nav{width:100%;max-width:600px;height:var(--nav-height);background:var(--surface);padding-bottom:env(safe-area-inset-bottom,10px);z-index:100;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);justify-content:space-around;align-items:center;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 20px #0000000d}.nav-btn{color:var(--text-secondary);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.25rem;height:100%;font-size:.75rem;font-weight:500;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.nav-btn i{font-size:1.5rem;transition:margin .3s}.nav-btn.active{color:var(--primary)}.nav-btn.active i{margin-bottom:-2px;animation:.4s ease-out bounce}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;opacity:0;pointer-events:none;background:#0006;justify-content:center;align-items:flex-end;width:100%;height:100%;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;pointer-events:auto}.modal-content{background:var(--surface);border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);width:100%;max-width:600px;box-shadow:var(--shadow-ambient);padding:1.5rem;transition:transform .4s cubic-bezier(.16,1,.3,1);transform:translateY(100%)}.modal-overlay.active .modal-content{transform:translateY(0)}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:1rem;padding:1.25rem;transition:transform .2s,box-shadow .2s}.card:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}[data-theme=dark] .btn-primary{color:#0f172a}.btn-secondary{background:var(--surface-low);color:var(--text-primary);border-radius:var(--radius-lg);border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}[data-theme=dark] .btn-secondary{color:#f8fafc;background:#334155;border-color:#475569}.btn-secondary:hover{background:var(--surface);box-shadow:var(--shadow-sm);border-color:var(--primary-light)}.btn-primary:hover,.btn-primary:active{background:var(--primary-light);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.btn-icon{background:var(--surface-low);width:36px;height:36px;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:inline-flex}.btn-icon:active{background:var(--primary);color:#fff}.add-btn{background:var(--primary)!important;color:#fff!important}[data-theme=dark] .add-btn{color:#0f172a!important}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-muted{color:var(--text-secondary)}.text-danger{color:var(--danger)}.text-success{color:var(--success)}.font-bold{font-weight:700}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.flex{display:flex}.justify-between{justify-content:space-between}.align-center{align-items:center}.gap-2{gap:.5rem}.view-enter{animation:.4s cubic-bezier(.16,1,.3,1) forwards fadeSlideUp}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.toast-container{z-index:9999;pointer-events:none;flex-direction:column;gap:.75rem;width:calc(100% - 2.5rem);max-width:420px;display:flex;position:fixed;top:1rem;left:50%;transform:translate(-50%)}.toast{pointer-events:auto;background:var(--surface);color:var(--text-primary);border-radius:var(--radius-lg);border-left:5px solid var(--primary);align-items:center;gap:.875rem;padding:.875rem 1.25rem;animation:.4s cubic-bezier(.16,1,.3,1) forwards slideInDown;display:flex;position:relative;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.toast.success{border-left-color:var(--success)}.toast.error{border-left-color:var(--danger)}.toast.warning{border-left-color:var(--warning)}.toast.info{border-left-color:var(--secondary)}.toast i{flex-shrink:0;font-size:1.35rem}.toast.success i{color:var(--success)}.toast.error i{color:var(--danger)}.toast.warning i{color:var(--warning)}.toast.info i{color:var(--secondary)}.toast .toast-content{flex:1;font-size:.875rem;font-weight:600;line-height:1.4}.toast .toast-close{cursor:pointer;color:var(--text-secondary);opacity:.6;margin-right:-4px;padding:4px;font-size:1.15rem;transition:opacity .2s}.toast .toast-close:hover{opacity:1}@keyframes slideInDown{0%{opacity:0;left:50%;transform:translate(-50%,-20px)}to{opacity:1;left:50%;transform:translate(-50%)}}.toast{left:0;transform:none}@keyframes slideInDownFixed{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.toast{animation:.4s cubic-bezier(.16,1,.3,1) forwards slideInDownFixed}.toast.fade-out{animation:.3s cubic-bezier(.16,1,.3,1) forwards fadeOutUp}@keyframes fadeOutUp{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-20px)}}.info-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;opacity:0;pointer-events:none;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;padding:2rem;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.info-modal-overlay.active{opacity:1;pointer-events:auto}.info-modal{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:360px;box-shadow:var(--shadow-lg);text-align:center;padding:2rem;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);transform:scale(.9)}.info-modal-overlay.active .info-modal{transform:scale(1)}.info-modal h3{margin-bottom:1rem;font-size:1.25rem}.info-modal .info-content{color:var(--text-secondary);white-space:pre-wrap;margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.info-modal .btn-primary{width:100%}.auth-screen{background:var(--bg-color);z-index:10000;justify-content:center;align-items:center;width:100vw;height:100vh;padding:2rem;transition:opacity .4s;display:flex;position:fixed;top:0;left:0}.auth-screen.hidden{opacity:0;pointer-events:none}.auth-container{background:var(--surface);border-radius:var(--radius-xl);width:100%;max-width:400px;box-shadow:var(--shadow-ambient);text-align:center;padding:2.5rem 2rem}.auth-logo{margin-bottom:.5rem;font-size:2.5rem}.auth-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.95rem}.auth-form{flex-direction:column;gap:1rem;display:flex}.auth-form input{border-radius:var(--radius-md);border:1px solid var(--surface-low);background:var(--bg-color);color:var(--text-primary);font-family:var(--font-body);outline:none;padding:1rem;font-size:1rem;transition:border-color .2s}.auth-form input:focus{border-color:var(--primary)}.auth-form .btn-primary{width:100%;margin-top:.5rem}.auth-divider{color:var(--text-secondary);margin:1.5rem 0;font-size:.875rem;position:relative}.auth-divider:before,.auth-divider:after{content:"";background:var(--surface-low);width:40%;height:1px;position:absolute;top:50%}.auth-divider:before{left:0}.auth-divider:after{right:0}.btn-secondary{background:var(--surface-low);color:var(--text-primary);border-radius:var(--radius-lg);justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-secondary.google-btn i{color:#db4437;font-size:1.25rem}.btn-secondary:hover{background:var(--surface);box-shadow:var(--shadow-sm)}.auth-profile{background:var(--surface-low);border-radius:var(--radius-lg);align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.auth-profile img{object-fit:cover;border-radius:50%;width:48px;height:48px}.auth-profile-info{text-align:left;flex-direction:column;display:flex}.auth-profile-name{color:var(--text-primary);font-weight:700}.auth-profile-email{color:var(--text-secondary);font-size:.8rem}.btn-danger{background:var(--surface-low);color:var(--danger);border-radius:var(--radius-lg);justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-danger:hover{background:var(--danger);color:#fff}.voice-btn{background:linear-gradient(135deg, var(--primary), var(--secondary));color:#fff;box-shadow:var(--shadow-ambient);border:4px solid var(--surface);justify-content:center;align-items:center;transition:all .3s;display:flex}[data-theme=dark] .voice-btn{color:#0f172a}.badge-category{border-radius:var(--radius-full);background:var(--primary);color:#fff;vertical-align:middle;padding:.15rem .6rem;font-size:.7rem;font-weight:600;display:inline-block}[data-theme=dark] .badge-category{color:#0f172a}.cat-pill{border-radius:var(--radius-full);cursor:pointer;border:1.5px solid var(--surface-low);background:var(--surface-low);color:var(--text-secondary);white-space:nowrap;padding:.4rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:inline-block}.cat-pill.active{background:var(--primary);border-color:var(--primary);color:#fff}[data-theme=dark] .cat-pill.active{color:#0f172a}.stock-label{color:var(--text-secondary);margin-top:2px;font-size:.75rem;display:block}.stock-label.low-stock{color:var(--danger);font-weight:700}.price-tag{color:var(--success);margin-top:1px;font-size:.75rem;font-weight:600;display:block}.subscription-wall{background:var(--bg-color);z-index:9000;justify-content:center;align-items:flex-start;width:100vw;height:100vh;padding:2rem 1.5rem;display:flex;position:fixed;top:0;left:0;overflow-y:auto}.sub-wall-card{background:var(--surface);border:1px solid var(--surface-low);text-align:center;border-radius:1.5rem;width:100%;max-width:420px;margin:auto;padding:2.5rem 2rem 2rem;animation:.6s cubic-bezier(.16,1,.3,1) subCardIn;box-shadow:0 10px 30px #0000001a}@keyframes subCardIn{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.sub-wall-icon{background:linear-gradient(135deg, var(--primary), var(--secondary));border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1.5rem;animation:2s ease-in-out infinite iconPulse;display:flex}@keyframes iconPulse{0%,to{box-shadow:0 0 #3b82f666}50%{box-shadow:0 0 0 15px #3b82f600}}.sub-wall-icon i{color:#fff;font-size:2.5rem}[data-theme=dark] .sub-wall-icon i{color:#0f172a}.sub-wall-title{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.5rem;font-size:1.5rem;font-weight:800;line-height:1.3}.sub-wall-subtitle{color:var(--text-secondary);margin-bottom:2rem;font-size:.9rem}.sub-wall-price{background:var(--surface-low);border:1px solid var(--surface-low);border-radius:1rem;justify-content:center;align-items:baseline;gap:.25rem;margin-bottom:2rem;padding:1.25rem;display:flex}.sub-wall-currency{color:var(--secondary);font-size:1.5rem;font-weight:700}.sub-wall-amount{font-family:var(--font-display);color:var(--text-primary);font-size:3rem;font-weight:800;line-height:1}.sub-wall-period{color:var(--text-secondary);margin-left:.25rem;font-size:.9rem}.sub-wall-benefits{text-align:left;margin-bottom:2rem;list-style:none}.sub-wall-benefits li{color:var(--text-primary);border-bottom:1px solid var(--surface-low);align-items:center;gap:.75rem;padding:.5rem 0;font-size:.95rem;display:flex}.sub-wall-benefits li:last-child{border-bottom:none}.sub-wall-benefits li i{color:#34d399;flex-shrink:0;font-size:1.25rem}.sub-wall-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#00b1ea,#009ee3);border:none;border-radius:1rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:1rem 1.5rem;font-size:1.1rem;font-weight:700;transition:all .3s;display:flex;box-shadow:0 4px 15px #00b1ea4d}.sub-wall-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00b1ea66}.sub-wall-btn:active{transform:translateY(0)}.sub-wall-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.sub-wall-disclaimer{color:var(--text-secondary);margin-top:1.25rem;font-size:.75rem;line-height:1.5}.sub-status-card{border-radius:var(--radius-lg);background:#3b82f60d;border:1px solid #3b82f633;margin-bottom:1.5rem;padding:1rem}.sub-status-header{color:var(--secondary);align-items:center;gap:.5rem;margin-bottom:.5rem;font-weight:700;display:flex}.sub-status-header i{font-size:1.25rem}.sub-status-header.active{color:var(--success)}.sub-status-detail{color:var(--text-secondary);margin-bottom:.75rem;font-size:.875rem}.sub-progress-bar{background:var(--surface-low);border-radius:3px;width:100%;height:6px;overflow:hidden}.sub-progress-fill{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:3px;height:100%;transition:width .5s}.legal-page-overlay{background:var(--bg-color);z-index:20000;opacity:0;pointer-events:none;width:100vw;height:100vh;transition:opacity .3s;position:fixed;top:0;left:0;overflow-y:auto}.legal-page-overlay.active{opacity:1;pointer-events:auto}.legal-page{max-width:680px;margin:0 auto;padding:0 1.5rem 3rem;animation:.5s forwards legalFadeIn}@keyframes legalFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.legal-header{z-index:10;background:var(--bg-color);border-bottom:1px solid var(--surface-low);align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.25rem 0;display:flex;position:sticky;top:0}.legal-header h1{font-family:var(--font-display);color:var(--text-primary);font-size:1.25rem;font-weight:700}.legal-back-btn{border-radius:var(--radius-full);background:var(--surface);width:40px;height:40px;color:var(--text-primary);box-shadow:var(--shadow-sm);flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;transition:all .2s;display:flex}.legal-back-btn:hover{background:var(--primary);color:#fff;transform:scale(1.05)}[data-theme=dark] .legal-back-btn:hover{color:#0f172a}.legal-body{color:var(--text-primary);line-height:1.75}.legal-updated{background:var(--surface);color:var(--text-secondary);border-radius:var(--radius-full);border:1px solid var(--surface-low);margin-bottom:2rem;padding:.4rem 1rem;font-size:.8rem;font-weight:500;display:inline-block}.legal-body section{border-bottom:1px solid var(--surface-low);margin-bottom:2rem;padding-bottom:1.5rem}.legal-body section:last-child{border-bottom:none}.legal-body h2{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.75rem;font-size:1.15rem;font-weight:700}.legal-body h3{font-family:var(--font-display);color:var(--text-primary);margin-top:1.25rem;margin-bottom:.5rem;font-size:1rem;font-weight:600}.legal-body h4{margin-bottom:.25rem;font-size:.95rem;font-weight:600}.legal-body p{color:var(--text-secondary);margin-bottom:.75rem;font-size:.9rem}.legal-body ul{margin-bottom:.75rem;padding-left:0;list-style:none}.legal-body ul li{color:var(--text-secondary);margin-bottom:.5rem;padding-left:1.5rem;font-size:.9rem;line-height:1.6;position:relative}.legal-body ul li:before{content:"•";color:var(--primary-light);font-size:1.1rem;font-weight:700;position:absolute;left:.25rem}.legal-body a{color:var(--secondary);font-weight:500;text-decoration:none;transition:opacity .2s}.legal-body a:hover{opacity:.8;text-decoration:underline}.legal-highlight-box{background:var(--surface);border:1px solid var(--surface-low);border-radius:var(--radius-lg);margin:1rem 0;padding:1.25rem;transition:box-shadow .2s}.legal-highlight-box:hover{box-shadow:var(--shadow-md)}.legal-highlight-box h3{color:var(--text-primary);align-items:center;gap:.5rem;margin-top:0;margin-bottom:.75rem;font-size:1rem;font-weight:700;display:flex}.legal-highlight-box h3 i{color:var(--secondary);font-size:1.2rem}.legal-highlight-box p{margin-bottom:.5rem;font-size:.85rem}.legal-highlight-box p:last-child{margin-bottom:0}.legal-rights-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin:1rem 0;display:grid}@media (width<=420px){.legal-rights-grid{grid-template-columns:1fr}}.legal-right-item{background:var(--surface);border:1px solid var(--surface-low);border-radius:var(--radius-lg);text-align:center;padding:1rem;transition:transform .2s,box-shadow .2s}.legal-right-item:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.legal-right-item i{color:var(--secondary);margin-bottom:.5rem;font-size:1.75rem;display:block}.legal-right-item h4{font-family:var(--font-display);color:var(--text-primary);margin-bottom:.25rem;font-size:.85rem;font-weight:700}.legal-right-item p{color:var(--text-secondary);margin-bottom:0;font-size:.78rem;line-height:1.4}.auth-footer{border-top:1px solid var(--surface-low);flex-wrap:wrap;justify-content:center;gap:1.25rem;margin-top:1.5rem;padding-top:1rem;display:flex}.auth-footer a{color:var(--text-secondary);cursor:pointer;font-size:.78rem;text-decoration:none;transition:color .2s}.auth-footer a:hover{color:var(--primary);text-decoration:underline}.auth-terms-group{text-align:left;align-items:flex-start;gap:.6rem;margin-top:.25rem;padding:.5rem 0;display:flex}.auth-terms-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin-top:2px}.auth-terms-group label{color:var(--text-secondary);cursor:pointer;font-size:.78rem;line-height:1.5}.auth-terms-group label a{color:var(--secondary);cursor:pointer;font-weight:600;text-decoration:none}.auth-terms-group label a:hover{text-decoration:underline}.auth-terms-error{color:var(--danger);margin-top:-.25rem;font-size:.78rem;animation:.4s shakeX;display:none}.auth-terms-error.visible{display:block}@keyframes shakeX{0%,to{transform:translate(0)}25%{transform:translate(-6px)}50%{transform:translate(6px)}75%{transform:translate(-4px)}}.confirm-modal{text-align:center;flex-direction:column;align-items:center;gap:0;display:flex}.confirm-modal-icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:1rem;display:flex}.confirm-modal-icon i{font-size:1.75rem}.confirm-modal-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1.0625rem;font-weight:700}.confirm-modal-message{color:var(--text-muted);margin-bottom:1.5rem;font-size:.875rem;line-height:1.55}.confirm-modal-actions{gap:.75rem;width:100%;display:flex}.confirm-btn-danger{background:var(--danger,#ef4444)!important;border-color:var(--danger,#ef4444)!important}.confirm-btn-danger:hover{opacity:.88}.confirm-btn-warning{background:#d97706!important;border-color:#d97706!important}.confirm-btn-warning:hover{opacity:.88}.tuto-splash{background:var(--primary,#0a2463);z-index:9999;opacity:0;justify-content:center;align-items:center;transition:opacity .4s;display:flex;position:fixed;inset:0}.tuto-splash.tuto-splash-visible{opacity:1}.tuto-splash.tuto-splash-collapse{transform-origin:0 0;animation:.6s cubic-bezier(.4,0,.2,1) forwards splashCollapse}@keyframes splashCollapse{0%{opacity:1;border-radius:0;transform:scale(1)}60%{opacity:1;border-radius:16px;transform:scale(.15)}to{opacity:0;border-radius:50%;transform:scale(0)}}.tuto-splash-inner{flex-direction:column;align-items:center;gap:2rem;width:100%;max-width:420px;padding:2rem;display:flex}.tuto-logo-wrap{align-items:center;gap:.75rem;animation:.5s .2s both tutoSlideDown;display:flex}@keyframes tutoSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.tuto-logo-icon{color:#fff;font-size:2.5rem}.tuto-logo-text{color:#fff;letter-spacing:-.5px;font-size:1.75rem;font-weight:700}.tuto-welcome-card{text-align:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff1a;border:1px solid #fff3;border-radius:20px;width:100%;padding:2rem;animation:.5s .4s both tutoSlideUp}@keyframes tutoSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.tuto-welcome-title{color:#fff;margin-bottom:.75rem;font-size:1.375rem;font-weight:700}.tuto-welcome-body{color:#ffffffd9;margin-bottom:1.5rem;font-size:.9375rem;line-height:1.6}.tuto-bar{background:var(--surface,#fff);border:1px solid var(--surface-low,#e5e7eb);z-index:1000;opacity:0;border-radius:16px;width:220px;padding:0;transition:opacity .35s,transform .35s;position:fixed;bottom:88px;left:12px;overflow:hidden;transform:translate(-12px);box-shadow:0 8px 32px #00000024}.tuto-bar.tuto-bar-visible{opacity:1;transform:translate(0)}.tuto-bar.tuto-bar-exit{opacity:0;transition:opacity .4s,transform .4s;transform:translate(-20px)}.tuto-bar-header{border-bottom:1px solid var(--surface-low,#e5e7eb);background:var(--primary,#0a2463);justify-content:space-between;align-items:center;padding:.625rem .75rem .5rem;display:flex}.tuto-bar-title{color:#fff;align-items:center;gap:.375rem;font-size:.8125rem;font-weight:600;display:flex}.tuto-bar-title i{font-size:1rem}.tuto-bar-close{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:6px;align-items:center;padding:.2rem .35rem;font-size:1rem;line-height:1;transition:background .15s;display:flex}.tuto-bar-close:hover{background:#ffffff47}.tuto-bar-progress{background:var(--surface-low,#e5e7eb);height:3px;margin:0}.tuto-bar-progress-fill{background:var(--primary,#0a2463);height:100%;transition:width .4s}.tuto-bar-step-label{color:var(--text-muted,#9ca3af);padding:.3rem .75rem 0;font-size:.6875rem;font-weight:500}.tuto-bar-body{color:var(--text-primary,#111827);white-space:pre-line;min-height:80px;padding:.75rem .875rem;font-size:.8125rem;line-height:1.55}.tuto-bar-body em{color:var(--primary,#0a2463);background:#0a246312;border-radius:4px;padding:1px 5px;font-style:normal;font-weight:600}.tuto-bar-body strong{color:var(--text-primary,#111827);font-weight:600}.tuto-bar-body-exit{opacity:0;transition:opacity .18s,transform .18s;transform:translateY(-6px)}.tuto-bar-body-enter{animation:.25s both tutoBodyEnter}@keyframes tutoBodyEnter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tuto-bar-footer{border-top:1px solid var(--surface-low,#e5e7eb);padding:.5rem .75rem .75rem}.tuto-bar-next{width:100%}.tuto-btn-primary{background:var(--primary,#0a2463);color:#fff;cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:.375rem;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:opacity .15s,transform .1s;display:inline-flex}.tuto-btn-primary:hover{opacity:.88}.tuto-btn-primary:active{transform:scale(.97)}.tuto-btn-primary i{font-size:1.1rem}.tuto-btn-secondary{background:var(--surface-low,#f3f4f6);color:var(--text-primary,#111827);border:1px solid var(--surface-low,#e5e7eb);cursor:pointer;border-radius:10px;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:opacity .15s}.tuto-btn-secondary:hover{opacity:.75}.tuto-btn-danger{color:var(--danger,#ef4444);cursor:pointer;background:#ef44441a;border:1px solid #ef444440;border-radius:10px;padding:.625rem 1.25rem;font-family:inherit;font-size:.875rem;font-weight:600;transition:opacity .15s}.tuto-btn-danger:hover{opacity:.75}.tuto-skip-modal{z-index:10001;background:#0006;justify-content:center;align-items:flex-end;padding-bottom:1rem;animation:.2s tutoFadeIn;display:flex;position:fixed;inset:0}.tuto-skip-card{background:var(--surface,#fff);border-radius:16px;width:calc(100% - 2rem);max-width:380px;padding:1.25rem 1.25rem 1rem}.tuto-skip-text{color:var(--text-primary,#111827);text-align:center;margin-bottom:1rem;font-size:.875rem;line-height:1.5}.tuto-skip-actions{gap:.75rem;display:flex}.tuto-skip-actions>*{flex:1}.tuto-commands-modal{z-index:10001;background:#00000073;justify-content:center;align-items:center;padding:1rem;animation:.2s tutoFadeIn;display:flex;position:fixed;inset:0}.tuto-commands-card{background:var(--surface,#fff);border-radius:20px;width:100%;max-width:380px;overflow:hidden}.tuto-commands-header{border-bottom:1px solid var(--surface-low,#e5e7eb);background:var(--primary,#0a2463);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.tuto-commands-title{color:#fff;font-size:1rem;font-weight:700}.tuto-commands-list{margin:0;padding:.5rem 0;list-style:none}.tuto-commands-item{border-bottom:1px solid var(--surface-low,#f3f4f6);flex-direction:column;padding:.625rem 1.25rem;display:flex}.tuto-commands-item:last-child{border-bottom:none}.tuto-commands-cat{color:var(--text-muted,#6b7280);text-transform:uppercase;letter-spacing:.4px;margin-bottom:.2rem;font-size:.75rem;font-weight:700}.tuto-commands-ex{color:var(--primary,#0a2463);font-size:.8125rem;font-weight:500}@keyframes tutoFadeIn{0%{opacity:0}to{opacity:1}}[data-theme=dark] .tuto-bar{background:var(--surface,#1f2937);border-color:var(--surface-low,#374151)}[data-theme=dark] .tuto-bar-body{color:var(--text-primary,#f9fafb)}[data-theme=dark] .tuto-bar-body em{color:#93a9ff;background:#6482ff26}[data-theme=dark] .tuto-skip-card,[data-theme=dark] .tuto-commands-card{background:var(--surface,#1f2937)}[data-theme=dark] .tuto-commands-item{border-bottom-color:var(--surface-low,#374151)}[data-theme=dark] .tuto-commands-ex{color:#93a9ff}#loadingSplash{background:var(--primary,#0a2463);z-index:99999;justify-content:center;align-items:center;transition:opacity .4s,transform .4s;display:flex;position:fixed;inset:0}#loadingSplash.splash-hidden{opacity:0;pointer-events:none}#loadingSplash.splash-gone{display:none}#loadingSplashInner{flex-direction:column;align-items:center;gap:1.25rem;animation:.5s both splashFadeIn;display:flex}@keyframes splashFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}#splashMicBtn{animation:1.8s ease-in-out infinite splashPulse}@keyframes splashPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.75;transform:scale(.96)}}#splashName{color:#fff;letter-spacing:-.5px;font-family:Manrope,sans-serif;font-size:2rem;font-weight:800}
