*,:before,:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}button,a,[role=button]{touch-action:manipulation}#offline-banner{z-index:9999;color:#fff;text-align:center;font-size:.8125rem;font-weight:700;font-family:var(--font);background:#f59e0b;padding:8px 16px;display:none;position:fixed;top:0;left:0;right:0}#offline-banner.show{display:block}:root{--primary-50:#eef2ff;--primary-100:#e0e7ff;--primary-500:#6366f1;--primary-600:#4f46e5;--primary-700:#4338ca;--primary-900:#312e81;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-800:#1e293b;--gray-900:#0f172a;--green-500:#22c55e;--red-500:#ef4444;--amber-500:#f59e0b;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}html{background:#000;width:100%;height:100%;min-height:100vh}body{width:100%;height:100%;min-height:100vh;font-family:var(--font);color:var(--gray-800);overscroll-behavior:none;background:0 0;overflow:hidden}#bg-layer{z-index:0;pointer-events:none;background:#000 url(/icons/Mercado2.webp) 50%/cover no-repeat;width:100%;height:100%;position:fixed;inset:0}body{justify-content:center;align-items:center;display:flex}input{font-family:var(--font);font-size:16px!important}button{cursor:pointer;font-family:var(--font);background:0 0;border:none}::-webkit-scrollbar{background:0 0;width:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}::selection{background:var(--primary-100);color:var(--primary-900)}.hidden{display:none!important}.flex{display:flex!important}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}@keyframes popIn{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@keyframes removeRow{to{opacity:0;max-height:0;margin:0;padding:0;transform:translate(-16px)scale(.95)}}@keyframes shakeHint{0%,to{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(6px)}60%{transform:translate(-4px)}80%{transform:translate(4px)}}.shake-hint{animation:.45s both shakeHint;border:1.5px solid var(--amber-500)!important}#app-container{z-index:1;isolation:isolate;background:#fff;width:100%;max-width:100%;height:100%;position:relative;overflow:clip;transform:translateZ(0);container-type:inline-size}#setup-view{z-index:50;background-color:#1a2435;background-image:url(/icons/Mercado2.webp);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;display:flex;position:absolute;inset:0;overflow:clip}#setup-view:before{content:"";z-index:0;background:linear-gradient(#0000000a 0%,#0000001a 100%);transition:background .3s;position:absolute;inset:0}.setup-header,#setup-content,#bottom-nav{z-index:1;position:relative}#setup-content{flex-direction:column;flex:1;justify-content:center;gap:0;width:100%;min-height:0;padding:clamp(8px,2vh,16px) clamp(12px,4vw,20px);animation:.4s cubic-bezier(.34,1.2,.64,1) both fadeIn;display:flex;overflow-y:auto}.setup-header{flex:none;justify-content:flex-end;align-items:center;padding:clamp(6px,1.5vh,12px) clamp(12px,4vw,20px);display:flex}.offers-btn{cursor:pointer;background:linear-gradient(135deg,#ff3d00,#ff9100);border:2px solid #ffffff80;border-radius:99px;align-items:center;gap:5px;padding:7px 13px 7px 9px;animation:1.6s ease-in-out infinite offerPulse;display:flex;box-shadow:0 4px 18px #ff3d00bf,0 0 0 3px #ff910059,0 2px 10px #00000080}.offers-fire{filter:drop-shadow(0 0 5px #ffdc00);font-size:1.1rem;line-height:1}.offers-label{color:#fff;letter-spacing:.1em;text-transform:uppercase;text-shadow:0 1px 4px #0009;font-size:.7rem;font-weight:900}@keyframes offerPulse{0%,to{transform:scale(1);box-shadow:0 4px 18px #ff3d00bf,0 0 0 3px #ff910059,0 2px 10px #00000080}50%{transform:scale(1.05);box-shadow:0 4px 28px #ff3d00f2,0 0 0 6px #ff910033,0 2px 10px #00000080}}.setup-hero-title{flex-direction:column;justify-content:center;align-items:center;gap:10px;width:100%;margin-bottom:clamp(12px,2.5vh,20px);display:flex}.setup-hero-icon{color:#fff;background:linear-gradient(135deg,#ff3d00,#ff6a00,#ff9100);border-radius:1.5rem;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;animation:2s ease-in-out infinite cartPulse;display:flex;transform:rotate(-6deg)scale(1.05);box-shadow:0 0 0 4px #ff910059,0 8px 32px -4px #ff3d00cc,0 0 60px #ff640080}@keyframes cartPulse{0%,to{transform:rotate(-6deg)scale(1.05);box-shadow:0 0 0 4px #ff910059,0 8px 32px -4px #ff3d00cc,0 0 60px #ff640080}50%{transform:rotate(-6deg)scale(1.1);box-shadow:0 0 0 8px #ff910033,0 12px 40px -4px #ff3d00e6,0 0 90px #ff6400b3}}.setup-hero-text{letter-spacing:-1px;white-space:nowrap;background:linear-gradient(135deg,#4f46e5,#7c3aed,#ec4899);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 2px #000)drop-shadow(0 0 6px #000000e6)drop-shadow(0 0 20px #fffc)drop-shadow(0 0 40px #fff9);-webkit-background-clip:text;background-clip:text;font-size:clamp(3rem,14vw,4.5rem);font-style:italic;font-weight:900;line-height:1}[data-theme=dark] .setup-hero-text{filter:drop-shadow(0 0 16px #000)drop-shadow(0 0 32px #000000e6)drop-shadow(0 2px 8px #6366f1b3)}.hero-go{background:0 0;-webkit-background-clip:unset;background-clip:unset;-webkit-text-fill-color:#ff6a00;color:#ff6a00}#hero-market{-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.setup-logo{align-items:center;gap:8px;display:flex}.setup-brand{flex:1;align-items:center;gap:8px;min-width:0;display:flex;overflow:hidden}.setup-logo-icon{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:1rem;justify-content:center;align-items:center;width:48px;height:48px;display:flex;transform:rotate(-4deg);box-shadow:0 8px 24px -4px #4f46e58c}.setup-brand h1{letter-spacing:-.5px;white-space:nowrap;text-overflow:ellipsis;background:linear-gradient(135deg,#4f46e5,#7c3aed,#ec4899);-webkit-text-fill-color:transparent;filter:drop-shadow(0 0 12px #ffffffe6)drop-shadow(0 0 20px #ffffffb3)drop-shadow(0 2px 8px #6366f166);-webkit-background-clip:text;background-clip:text;font-size:clamp(1rem,4.5cqw,1.8rem);font-style:italic;font-weight:900;overflow:hidden}[data-theme=dark] .setup-brand h1{filter:drop-shadow(0 0 10px #000000e6)drop-shadow(0 0 20px #000000b3)drop-shadow(0 2px 8px #6366f180)}.setup-profile-btn{cursor:pointer;background:linear-gradient(135deg,#f97316,#ec4899);border:none;border-radius:1rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 8px 20px -4px #ec489973}.setup-profile-btn:active{transform:scale(.92);box-shadow:0 4px 10px -4px #ec489966}.setup-theme-btn{cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff38;border:1.5px solid #ffffff80;border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:transform .15s,background .2s;display:flex;box-shadow:0 4px 14px #00000073,inset 0 1px #ffffff4d}.setup-theme-btn:active{transform:scale(.92)}[data-theme=dark] .setup-theme-btn{background:#ffffff2e;border-color:#ffffff59}#new-list-form-row{background:#ffffffe6;border-radius:1rem;align-items:center;gap:8px;margin-bottom:0;padding:6px 6px 6px 18px;display:flex;box-shadow:0 2px 12px #0000001a}#new-list-form-row:focus-within{box-shadow:0 0 0 4px #6366f133,0 2px 12px #0000001a}#list-name-input{color:var(--gray-900);background:0 0;border:none;outline:none;flex:1;min-width:0;font-weight:600;font-size:1rem!important}#list-name-input::placeholder{color:var(--gray-400);font-weight:400}#new-list-submit{background:var(--gray-900);color:#fff;border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s,transform .1s;display:flex;box-shadow:0 4px 12px #0003}#new-list-submit:active{transform:scale(.9)}.setup-section{flex-direction:column;flex:none;height:clamp(72px,14vh,110px);min-height:0;margin-top:clamp(6px,1.5vh,12px);display:flex;position:relative}#template-section,#stats-section{display:none!important}#active-lists-section{height:auto;box-shadow:none;background:0 0;margin-top:10px}#active-lists-section .setup-section-header{display:none}#active-lists-section #active-lists-wrapper{scroll-snap-type:none;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-height:114px;padding:0;display:flex;overflow:hidden}#active-lists-section .carousel-empty{display:none}.setup-section-header{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:8px;left:12px;right:12px}.setup-section-label{color:#fff;text-transform:uppercase;letter-spacing:.1em;text-shadow:0 1px 4px #00000059;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.setup-section-badge{color:#fff;background:#0000002e;border-radius:9999px;padding:2px 7px;font-size:9px;font-weight:700}.carousel-empty{text-align:center;pointer-events:none;background:#ffffff40;border:1.5px dashed #0000001a;border-radius:1rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;width:100%;height:auto;padding:16px;display:flex}.carousel-empty .ce-icon{border-radius:.875rem;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.carousel-empty span{color:#1e293b73;font-size:.75rem;font-weight:800;line-height:1.3}#active-lists-wrapper{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;flex:1;gap:10px;min-height:0;padding:4px 0 8px 4px;display:flex;overflow:auto hidden}#active-lists-wrapper::-webkit-scrollbar{display:none}.active-list-card{scroll-snap-align:start;-webkit-backdrop-filter:blur(8px);cursor:pointer;background:#ffffffe0;border:1px solid #ffffffb3;border-radius:1rem;flex-direction:column;flex:0 0 calc(70% - 4px);justify-content:center;min-width:180px;max-width:240px;height:100%;padding:30px 14px 10px;transition:transform .1s;animation:.25s cubic-bezier(.34,1.56,.64,1) both popIn;display:flex;box-shadow:0 4px 16px #0000001a}.alc-footer{display:none}.active-list-card:active{transform:scale(.97)}.alc-name{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:1rem;font-weight:800;overflow:hidden}.alc-meta{color:var(--gray-400);font-size:.75rem;font-weight:500}.alc-meta span{color:var(--gray-600);font-weight:700}.alc-footer{justify-content:space-between;align-items:center;margin-top:12px;display:flex}.alc-open-btn{background:var(--primary-600);color:#fff;border-radius:.75rem;padding:7px 14px;font-size:.8125rem;font-weight:700;transition:background .15s,transform .1s}.alc-open-btn:active{transform:scale(.95)}.alc-delete-btn{color:#0000002e;border-radius:.5rem;padding:4px;line-height:0;transition:color .15s}.alc-delete-btn:hover{color:var(--red-500)}#active-lists-section .active-list-card{cursor:pointer;background:#ffffffd1;border-radius:9999px;align-items:center;gap:6px;min-width:0;max-width:220px;height:auto;padding:6px 14px 6px 12px;box-shadow:0 2px 12px #00000026;flex-direction:row!important;flex:none!important;width:auto!important;display:inline-flex!important}#active-lists-section .alc-name{color:var(--gray-800);white-space:nowrap;text-overflow:ellipsis;max-width:180px;margin-bottom:0;font-size:.9rem;font-weight:700;overflow:hidden}#active-lists-section .alc-meta{display:none}#active-lists-section .alc-footer{align-items:center;margin-top:0;display:flex}#active-lists-section .alc-delete-btn{width:18px;height:18px;color:var(--gray-600);background:#0000001f;border-radius:99px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:.65rem;font-weight:900;line-height:1;display:flex}#active-lists-section .alc-delete-btn:hover,#active-lists-section .alc-delete-btn:active{background:var(--red-500);color:#fff}.alc-overflow-badge{color:var(--primary-600);white-space:nowrap;pointer-events:none;background:#6366f126;border:1.5px solid #6366f14d;border-radius:99px;flex-shrink:0;justify-content:center;align-items:center;padding:3px 10px;font-size:.7rem;font-weight:800;display:inline-flex}[data-theme=dark] .alc-overflow-badge{color:#a5b4fc;background:#a5b4fc1f;border-color:#a5b4fc4d}#template-section{flex-direction:column;display:flex}#template-carousel{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;flex:1;gap:10px;min-height:0;padding:4px 0 8px 4px;display:flex;overflow:auto hidden}#template-carousel::-webkit-scrollbar{display:none}.stats-nav-card{cursor:pointer;background:linear-gradient(135deg,#f59e0b,#d97706);border-radius:1rem;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;width:100%;margin:4px 0 8px 4px;transition:transform .1s,box-shadow .15s;animation:.3s cubic-bezier(.34,1.56,.64,1) both popIn;display:flex;box-shadow:0 10px 24px -6px #f59e0b66}.stats-nav-card:active{transform:scale(.97)}.snc-icon{background:#fff3;border-radius:.875rem;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.snc-label{color:#fff;font-size:.875rem;font-weight:800}#active-lists-section .setup-section-label{color:#1e293ba6;text-shadow:none}#active-lists-section .setup-section-badge{color:#1e293ba6;background:#0000001a}.tc-card{scroll-snap-align:start;background:linear-gradient(135deg, var(--primary-600), var(--primary-700));cursor:pointer;border-radius:1rem;flex-direction:column;flex:0 0 calc(70% - 4px);justify-content:center;min-width:180px;max-width:240px;height:100%;padding:30px 14px 10px;transition:transform .1s,box-shadow .15s;animation:.3s cubic-bezier(.34,1.56,.64,1) both popIn;display:flex;box-shadow:0 10px 24px -6px #4f46e566}.tc-card:nth-child(2){background:linear-gradient(135deg,#7c3aed,#6d28d9)}.tc-card:nth-child(3){background:linear-gradient(135deg,#0891b2,#0e7490)}.tc-card:nth-child(4){background:linear-gradient(135deg,#059669,#047857)}.tc-card:active{transform:scale(.97)}.tc-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.tc-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:1rem;font-weight:800;overflow:hidden}.tc-star-btn{color:#ffffffd9;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:2px;line-height:0;transition:transform .15s,color .15s}.tc-star-btn:active{color:#ffffff80;transform:scale(.85)}.tc-meta{color:#ffffffa6;margin-top:6px;font-size:.7rem}#bottom-nav{padding:8px 12px max(12px, env(safe-area-inset-bottom,12px));background:0 0;flex:none;justify-content:center;align-items:center;gap:24px;display:flex}.nav-item{cursor:pointer;font-family:var(--font);background:0 0;border:none;border-radius:0;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:6px;padding:8px 4px;transition:transform .12s;display:flex}.nav-item:active{transform:scale(.93)}#btn-tickets,#btn-nav-stats,#btn-recetas,#btn-favoritos{box-shadow:none;background:0 0}.nav-icon{stroke:#fff;box-sizing:content-box;border-radius:14px;flex-shrink:0;width:clamp(22px,5vw,28px);height:clamp(22px,5vw,28px);padding:9px}#btn-tickets .nav-icon{background:linear-gradient(135deg,#f97316,#ef4444);box-shadow:0 4px 14px -2px #ef444499}#btn-nav-stats .nav-icon{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 14px -2px #f59e0b99}#btn-recetas .nav-icon{background:linear-gradient(135deg,#10b981,#0891b2);box-shadow:0 4px 14px -2px #0891b299}#btn-favoritos .nav-icon{background:linear-gradient(135deg,#ec4899,#a855f7);box-shadow:0 4px 14px -2px #a855f799}.nav-label{color:#fff;letter-spacing:.02em;white-space:nowrap;text-shadow:0 1px 4px #00000080;font-size:clamp(8px,2.2vw,10px);font-weight:800;line-height:1}#limit-toast{color:#92400e;white-space:nowrap;z-index:100;opacity:0;pointer-events:none;background:#fef3c7;border:1px solid #fcd34d;border-radius:.75rem;padding:8px 14px;font-size:.75rem;font-weight:700;transition:opacity .2s;position:absolute;top:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000001a}#limit-toast.show{opacity:1}#app-view{background:var(--gray-50);z-index:10;flex-direction:column;width:100%;height:100%;display:none;position:relative}#app-view.visible{display:flex}#app-header{-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--gray-100);z-index:10;background:#ffffffeb;align-items:center;gap:8px;padding:40px 16px 14px;display:flex;position:relative}.icon-btn{background:var(--gray-100);width:32px;height:32px;color:var(--gray-600);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,transform .1s;display:flex}.icon-btn:active{transform:scale(.9)}.header-title-row{flex:1;align-items:center;gap:6px;min-width:0;display:flex}#dynamic-list-title{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;border-bottom:2px solid #0000;min-width:0;padding-bottom:1px;font-size:.875rem;font-weight:800;transition:border-color .2s;overflow:hidden}#dynamic-list-title:hover{border-color:var(--primary-300,#a5b4fc)}#title-edit-input{color:var(--primary-700);border:none;border-bottom:2px solid var(--primary-500);font-size:1.125rem;font-weight:800;font-family:var(--font);background:0 0;outline:none;flex:1;min-width:0}.header-stats{flex-shrink:0;align-items:center;gap:8px;display:flex}.stat-inline{align-items:center;gap:3px;font-size:.875rem;display:flex}.stat-inline .label{color:var(--gray-500);font-weight:500}.stat-inline .value{color:var(--gray-900);font-weight:800}.header-share-btn{cursor:pointer;color:var(--gray-600);background:0 0;border:none;justify-content:center;align-items:center;padding:4px;transition:color .15s;display:flex}.header-share-btn:active{color:var(--primary-600)}@keyframes remote-fade{0%{background:#d1fae5}60%{background:#d1fae5}to{background:#fff}}@keyframes remote-fade-dark{0%{background:#064e3b}60%{background:#064e3b}to{background:var(--gray-100)}}.item-row.remote-new .item-inner{border-left:3px solid #10b981;animation:4s forwards remote-fade}[data-theme=dark] .item-row.remote-new .item-inner{border-left:3px solid #10b981;animation:4s forwards remote-fade-dark}.share-overlay{z-index:210;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000059;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.share-overlay.hidden{opacity:0;pointer-events:none}.share-modal{background:#fff;border-radius:1.25rem;width:calc(100% - 40px);max-width:360px;padding:20px 20px 24px;transition:transform .2s cubic-bezier(.34,1.56,.64,1),opacity .2s;transform:scale(1);box-shadow:0 8px 32px #0000002e}.share-overlay.hidden .share-modal{opacity:0;transform:scale(.92)}.share-modal-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.share-modal-title{color:var(--gray-900);font-size:1.0625rem;font-weight:800}.share-modal-desc{color:var(--gray-500);margin-bottom:16px;font-size:.8125rem;line-height:1.5}.share-list-name{color:var(--primary-600);background:var(--primary-50);border-radius:.75rem;margin-bottom:8px;padding:10px 14px;font-size:1rem;font-weight:700}.share-stats-row{color:var(--gray-500);margin-bottom:20px;font-size:.8125rem}.share-action-btn{width:100%;font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;border:none;border-radius:1rem;justify-content:center;align-items:center;gap:8px;margin-bottom:10px;padding:14px;display:flex}.share-action-btn.primary{background:var(--primary-600);color:#fff}.share-action-btn.secondary{background:var(--gray-100);color:var(--gray-700);border:1.5px solid var(--gray-200)}.share-action-btn.wa{color:#fff;background:#25d366}[data-theme=dark] .share-modal{background:var(--gray-100)}[data-theme=dark] .share-list-name{background:#6366f126}[data-theme=dark] .share-action-btn.secondary{background:var(--gray-200);color:var(--gray-800);border-color:var(--gray-300)}.share-action-btn.sync-create{color:#fff;background:#7c3aed}.sync-divider{align-items:center;gap:10px;margin:16px 0 14px;display:flex}.sync-divider:before,.sync-divider:after{content:"";background:var(--gray-200);flex:1;height:1px}.sync-divider span{color:var(--gray-400);white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.sync-join-row{gap:8px;margin-top:10px;display:flex}#sync-join-input{border:1.5px solid var(--gray-200);letter-spacing:.1em;color:var(--gray-900);background:var(--gray-50);font-size:.9375rem;font-weight:700;font-family:var(--font);text-transform:uppercase;border-radius:.75rem;outline:none;flex:1;padding:11px 12px}#sync-join-input:focus{border-color:#7c3aed}.sync-join-btn{color:#fff;font-size:.875rem;font-weight:700;font-family:var(--font);cursor:pointer;white-space:nowrap;background:#7c3aed;border:none;border-radius:.75rem;padding:11px 16px}.sync-connected-label{color:#7c3aed;text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px;font-size:.8125rem;font-weight:700}.sync-room-code-display{letter-spacing:.25em;color:var(--gray-900);text-align:center;background:var(--gray-50);border:2px dashed var(--gray-200);border-radius:1rem;margin-bottom:14px;padding:16px;font-family:monospace;font-size:2.25rem;font-weight:900}.sync-live-badge{color:#fff;letter-spacing:.08em;background:#ef4444;border-radius:99px;align-items:center;gap:5px;padding:3px 7px;font-size:.625rem;font-weight:900;animation:1.8s ease-in-out infinite live-pulse;display:inline-flex}.sync-live-badge.hidden{display:none}.sync-live-badge:before{content:"";background:#fff;border-radius:50%;width:6px;height:6px;animation:1.8s ease-in-out infinite live-dot}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.75}}@keyframes live-dot{0%,to{transform:scale(1)}50%{transform:scale(1.4)}}[data-theme=dark] #sync-join-input,[data-theme=dark] .sync-room-code-display{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-900)}#checkout-container{flex-direction:row;gap:8px;padding:8px 16px 0;display:flex}#checkout-btn{background:var(--green-500);color:#fff;white-space:nowrap;border-radius:.875rem;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px 10px;font-size:.9375rem;font-weight:800;transition:background .15s,transform .1s,opacity .2s;display:flex;box-shadow:0 8px 20px -6px #22c55e80}#checkout-btn:active{transform:scale(.98)}#checkout-btn.disabled{opacity:.45;pointer-events:none}#checkout-btn-total{opacity:.9;font-weight:700}#list-container{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}#lists-wrapper{flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}#completed-section{flex-shrink:0;padding:12px 16px 0}#completed-section .section-label{cursor:pointer;-webkit-user-select:none;user-select:none;background:#f0fdf4;border-radius:.75rem;justify-content:space-between;margin-bottom:0;padding:8px 12px}#completed-section .section-label:after{content:"▾";color:var(--green-500);font-size:12px;transition:transform .2s}#completed-section.collapsed .section-label:after{content:"▾";transform:rotate(-90deg)}#completed-section.collapsed #completed-list{display:none}#completed-list{margin-top:8px;padding-bottom:8px}#pending-section{border-top:1.5px solid var(--gray-100);flex-shrink:0;padding:12px 16px 16px}#empty-state{text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;min-height:40vh;padding-top:32px}.empty-icon{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:1.5rem;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:16px;display:flex;transform:rotate(-6deg);box-shadow:0 0 0 6px #ffffff59,0 16px 36px -6px #4f46e599}#empty-state p.title{color:var(--gray-800);letter-spacing:-.02em;font-size:1.3rem;font-weight:900}#empty-state p.hint{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;margin-bottom:14px;font-size:.8rem;font-weight:600}.add-example-card{background:#fff;border:2.5px solid #1e1b4b;border-radius:1.25rem;flex-direction:column;justify-content:center;align-items:center;gap:0;width:100%;max-width:290px;min-height:180px;padding:22px 20px 20px;display:flex;box-shadow:4px 4px #1e1b4b}.demo-step{opacity:0;flex-direction:column;align-items:center;gap:10px;width:100%;transition:opacity .35s;display:flex}.demo-step.visible{opacity:1}.demo-label{text-transform:uppercase;letter-spacing:.15em;color:var(--gray-400);font-size:.62rem;font-weight:900}.demo-input-mock{color:#1e1b4b;text-align:center;letter-spacing:.01em;background:#f5f3ff;border:2.5px solid #1e1b4b;border-radius:1rem;justify-content:center;align-items:center;gap:2px;min-width:200px;padding:12px 18px;font-size:1.05rem;font-weight:900;display:flex;box-shadow:3px 3px #1e1b4b}.demo-cursor{background:#4f46e5;border-radius:2px;width:2.5px;height:1.1em;margin-left:2px;animation:.65s step-end infinite blink;display:inline-block}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.demo-arrow{color:#f97316;opacity:0;margin:6px 0;font-size:1.6rem;font-weight:900;transition:opacity .3s}.demo-arrow.visible{opacity:1}.demo-result-row{background:#fff;border-radius:1rem;align-items:center;gap:12px;min-width:200px;padding:12px 20px;display:flex;box-shadow:0 8px 24px #00000059}.demo-qty{color:#fff;text-align:center;background:#4f46e5;border-radius:99px;flex-shrink:0;min-width:32px;padding:4px 10px;font-size:.8rem;font-weight:900}.demo-rname{color:#1e1b4b;flex:1;font-size:1rem;font-weight:900}.demo-rprice{color:#16a34a;font-size:1rem;font-weight:900}[data-theme=dark] .add-example-card{background:#1e1b4b;border-color:#a5b4fc;box-shadow:4px 4px #a5b4fc}[data-theme=dark] .demo-input-mock{color:#e0e0ff;background:#ffffff14;border-color:#a5b4fc;box-shadow:3px 3px #a5b4fc}[data-theme=dark] .demo-result-row{background:#ffffff1a;border:1.5px solid #ffffff26}[data-theme=dark] .demo-rname{color:#fff}[data-theme=dark] .demo-rprice{color:#4ade80}.list-section{margin-bottom:24px}.section-label{text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;margin-bottom:10px;padding:0 4px;font-size:.875rem;font-weight:700;display:flex}.section-label.pending{color:var(--gray-400)}.section-label.completed{color:var(--green-500)}.count-badge{border-radius:9999px;padding:1px 7px;font-size:.875rem;font-weight:700}.count-badge.pending{background:var(--gray-200);color:var(--gray-500)}.count-badge.completed{color:#16a34a;background:#dcfce7}.items-list{flex-direction:column;gap:4px;list-style:none;display:flex}.item-row{border:1px solid var(--gray-100);cursor:pointer;background:#fff;border-radius:.875rem;flex-shrink:0;transition:box-shadow .2s;animation:.25s cubic-bezier(.34,1.56,.64,1) both popIn;position:relative;overflow:hidden;box-shadow:0 1px 4px #0000000d}.item-row:active{box-shadow:0 0 0 2px var(--primary-100)}.item-inner{z-index:1;background:#fff;border-radius:.875rem;align-items:center;width:100%;padding:8px 12px;display:flex;position:relative}.swipe-delete-btn{display:none}@media (pointer:coarse){.swipe-delete-btn{cursor:pointer;z-index:0;background:#ef4444;border:none;border-radius:0 .875rem .875rem 0;flex-shrink:0;justify-content:center;align-items:center;width:72px;display:flex;position:absolute;top:0;bottom:0;right:0}}.item-row.completed .item-inner{background:#f0fdf4}.item-main{flex:1;justify-content:space-between;align-items:center;min-width:0;padding-right:10px;display:flex}.item-left{flex:1;align-items:center;min-width:0;margin-right:8px;display:flex}.item-text{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;-webkit-user-select:none;user-select:none;font-size:.875rem;font-weight:700;transition:color .2s;overflow:hidden}.item-row.completed .item-text,.item-row.completed .price-badge-trigger,.item-row.completed .qty-badge-trigger{color:var(--gray-600);opacity:1;font-size:.875rem;font-weight:700;text-decoration:none}.qty-badge-trigger{border:1px solid var(--gray-200);background:var(--gray-100);color:var(--gray-400);cursor:pointer;border-radius:.375rem;flex-shrink:0;margin-right:8px;padding:2px 7px;font-size:10px;font-weight:800;transition:color .15s}.qty-badge-trigger.has-qty{color:var(--gray-800)}.qty-badge-trigger:hover{color:var(--primary-600)}.price-badge-trigger{color:var(--gray-900);cursor:pointer;flex-shrink:0;font-size:.875rem;font-weight:700;transition:color .15s}.price-badge-trigger:hover{color:var(--primary-600)}.price-badge-trigger.empty{color:var(--gray-400);border-bottom:1px dashed var(--gray-400)}.delete-btn{color:var(--gray-300);z-index:10;border-radius:.5rem;flex-shrink:0;padding:6px;transition:color .15s;position:relative}@media (pointer:coarse),(hover:none){.delete-btn{display:none!important}}body.is-touch .delete-btn{display:none!important}.delete-btn:hover{color:var(--red-500)}.edit-input{border:none;border-bottom:2px solid var(--primary-500);color:var(--primary-700);font-weight:700;font-family:var(--font);text-align:center;background:0 0;outline:none}.qty-edit-input{flex-shrink:0;width:40px;margin-right:8px;font-size:10px}.price-edit-input{text-align:right;flex-shrink:0;width:80px;font-size:.875rem}.name-edit-input{text-align:left;flex:1;min-width:0;font-size:.875rem}.item-row.editing-name{box-shadow:0 0 0 2px var(--primary-500);border-color:#0000}#app-footer{width:100%;padding:16px;padding-bottom:max(16px, env(safe-area-inset-bottom,16px));z-index:20;flex-shrink:0}#footer-inner{pointer-events:auto;position:relative}#dyn-action-bar,#dyn-edit-toggle-btn{display:none}#app-view[data-dyn="1"] #app-header,#app-view[data-dyn="1"] .header-left{justify-content:center}#app-view[data-dyn="1"] #back-btn{display:none}#app-view[data-dyn="1"] #dyn-edit-toggle-btn{display:flex}#dyn-edit-toggle-btn.is-editing{background:var(--primary-100);color:var(--primary-600)}#app-view[data-dyn="1"] .header-stats{display:none}#app-view[data-dyn="1"] #dynamic-list-title{text-align:center;font-size:1.2rem}#app-view[data-dyn="1"] #checkout-container,#app-view[data-dyn="1"] #add-form .add-btn{display:none}#app-view[data-dyn="1"] #add-form{cursor:pointer;border-color:var(--primary-300,#a5b4fc);justify-content:center}#app-view[data-dyn="1"] #item-input{cursor:pointer;caret-color:#0000;text-align:center;flex:0 auto}#app-view[data-dyn="1"] #item-input::placeholder{text-align:center}#app-view[data-dyn="1"][data-dyn-edit="1"] #add-form .add-btn{display:flex}#app-view[data-dyn="1"][data-dyn-edit="1"] #add-form{cursor:text;border-color:var(--gray-200);justify-content:flex-start}#app-view[data-dyn="1"][data-dyn-edit="1"] #item-input{cursor:text;caret-color:auto;text-align:left;flex:1}#app-view[data-dyn="1"][data-dyn-edit="1"] #item-input::placeholder{text-align:left}#app-view[data-dyn="1"] #dyn-action-bar{pointer-events:auto;align-items:center;gap:10px;margin-top:10px;display:flex}.dyn-action-back{color:#fff;font-size:.875rem;font-weight:700;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;border-radius:.875rem;flex:1;justify-content:center;align-items:center;gap:6px;width:100%;padding:13px 18px;transition:opacity .15s;display:flex}.dyn-action-back:active{opacity:.85}.dyn-action-add{background:var(--green-500);color:#fff;font-size:.875rem;font-weight:800;font-family:var(--font);cursor:pointer;border:none;border-radius:.875rem;flex:1;justify-content:center;align-items:center;gap:8px;padding:13px 16px;transition:background .15s,transform .1s;display:flex;box-shadow:0 8px 20px -6px #22c55e80}.dyn-action-add:active{transform:scale(.98)}[data-theme=dark] .dyn-action-back{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-800)}#suggestions-container{width:100%;margin-bottom:8px;position:absolute;bottom:100%;left:0}#suggestions-list{-webkit-backdrop-filter:blur(16px);background:#ffffffe6;border:1px solid #ffffff80;border-radius:1.25rem;max-height:192px;list-style:none;animation:.2s both slideUp;overflow:hidden auto;box-shadow:0 20px 40px -12px #00000026}#suggestions-list li{cursor:pointer;border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:12px 16px;transition:background .1s;display:flex}#suggestions-list li:last-child{border-bottom:none}#suggestions-list li:hover{background:var(--primary-50)}.sug-name{color:var(--gray-800);font-size:.875rem;font-weight:700}#suggestions-list li:hover .sug-name{color:var(--primary-700)}.sug-price{color:var(--primary-500);background:var(--primary-50);border-radius:9999px;padding:2px 8px;font-size:10px;font-weight:700}.sug-correction{color:#d97706;vertical-align:middle;text-transform:uppercase;letter-spacing:.04em;background:#fef3c7;border-radius:9999px;margin-left:6px;padding:1px 6px;font-size:9px;font-weight:700;display:inline-block}.sug-delete{color:#ef4444;cursor:pointer;background:#fee2e2;border:none;border-radius:8px;flex-shrink:0;margin-left:8px;padding:5px 9px;font-size:13px;font-weight:900;line-height:1;transition:color .15s,background .15s,transform .1s}.sug-delete:hover{color:#fff;background:#ef4444;transform:scale(1.1)}.sug-delete:active{transform:scale(.95)}.sug-dyn-cat{color:#7c3aed;vertical-align:middle;letter-spacing:.03em;background:#ede9fe;border-radius:9999px;margin-left:6px;padding:1px 6px;font-size:9px;font-weight:700;display:inline-block}#add-form{-webkit-backdrop-filter:blur(16px);background:#ffffffe0;border:1px solid #ffffff80;border-radius:1.25rem;gap:8px;padding:6px;display:flex;box-shadow:0 12px 32px -8px #0000001a}#item-input{color:var(--gray-800);background:0 0;border:none;outline:none;flex:1;padding:10px 14px;font-weight:600;font-size:.875rem!important}#item-input::placeholder{color:var(--gray-400);font-weight:400}.add-btn{background:var(--primary-600);color:#fff;border-radius:.875rem;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;transition:background .15s,transform .1s;display:flex;box-shadow:0 4px 12px #4f46e559}.add-btn:active{transform:scale(.9)}.help-btn{color:#fff;background:#ff6b00;animation:1.4s ease-in-out infinite helpPulse;box-shadow:0 4px 14px #ff6b0080}[data-theme=dark] .help-btn{color:#fff;background:#ff6b00;box-shadow:0 4px 14px #ff6b0099}.help-btn.seen{background:var(--gray-900);color:var(--primary-600);animation:none;box-shadow:0 4px 12px #0000001f}[data-theme=dark] .help-btn.seen{color:#a5b4fc;background:#ffffff1f}.help-btn.active{background:var(--primary-600);color:#fff;animation:none;box-shadow:0 4px 12px #4f46e566}@keyframes helpPulse{0%,to{transform:scale(1);box-shadow:0 4px 14px #ff6b0080}50%{transform:scale(1.1);box-shadow:0 0 0 8px #ff6b0040}}#help-overlay{z-index:200;background:#00000080;align-items:flex-end;animation:.2s fadeIn;display:flex;position:absolute;inset:0}#help-overlay.hidden{display:none}#help-panel{background:#fff;border-radius:1.5rem 1.5rem 0 0;width:100%;padding:18px 20px 28px;animation:.28s cubic-bezier(.22,1,.36,1) slideUp;overflow:hidden;box-shadow:0 -8px 40px #00000038}[data-theme=dark] #help-panel{color:#e0e0ff;background:#1a1a2e}.help-topbar{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.help-badge{background:var(--primary-600);color:#fff;letter-spacing:.08em;text-transform:uppercase;border-radius:99px;padding:3px 10px;font-size:.72rem;font-weight:800}.help-close{background:var(--gray-100);cursor:pointer;width:30px;height:30px;color:var(--gray-600);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;transition:background .15s;display:flex}.help-close:hover{color:#ef4444;background:#fee2e2}[data-theme=dark] .help-close{color:#ccc;background:#ffffff1a}#help-steps-track{min-height:170px;position:relative}.help-step{text-align:center;flex-direction:column;align-items:center;gap:12px;padding:0 8px;animation:.3s cubic-bezier(.22,1,.36,1) stepIn;display:none}.help-step.active{display:flex}.help-step.out{animation:.2s forwards stepOut}.hs-icon{border-radius:1.1rem;flex-shrink:0;justify-content:center;align-items:center;width:68px;height:68px;display:flex}.hs-title{color:var(--gray-800);margin:0;font-size:1.1rem;font-weight:800}[data-theme=dark] .hs-title{color:#e0e0ff}.hs-desc{color:var(--gray-600);margin:0;font-size:.88rem;line-height:1.55}[data-theme=dark] .hs-desc{color:#b0b0d0}.hs-desc strong{color:var(--primary-600)}.help-footer{justify-content:space-between;align-items:center;margin-top:20px;display:flex}.help-nav-btn{background:var(--gray-100);width:40px;height:40px;color:var(--gray-700);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:1.4rem;font-weight:700;transition:background .15s,transform .1s;display:flex}.help-nav-btn:hover{background:var(--primary-100);color:var(--primary-700)}.help-nav-btn:active{transform:scale(.9)}.help-nav-btn:disabled{opacity:.3;cursor:default}[data-theme=dark] .help-nav-btn{color:#ccc;background:#ffffff1a}.help-dots{align-items:center;gap:6px;display:flex}.hd{background:var(--gray-300);border-radius:50%;width:7px;height:7px;transition:all .25s}.hd.active{background:var(--primary-600);border-radius:4px;width:20px}@keyframes stepIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes stepOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}.correction-toast{color:#15803d;opacity:0;pointer-events:none;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:.75rem;align-items:center;gap:6px;margin-bottom:8px;padding:7px 12px;font-size:11px;font-weight:700;transition:opacity .2s,transform .2s;display:flex;transform:translateY(6px);box-shadow:0 2px 8px #00000014}.correction-toast.ct-show{opacity:1;transform:translateY(0)}.correction-toast.ct-hide{opacity:0;transform:translateY(6px)}.ct-original{color:#94a3b8;margin:0 2px;text-decoration:line-through}.ct-corrected{color:#15803d}#stats-view{background:var(--gray-50);z-index:58;flex-direction:column;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0;transform:translate(100%)}#stats-view.visible{transform:translate(0)}#stats-header{padding:14px 16px max(20px, env(safe-area-inset-bottom,20px));border-top:1px solid var(--gray-100);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;flex-shrink:0;order:2;align-items:center;gap:12px;display:flex;box-shadow:0 -1px 8px #0000000f}#stats-header h2{color:var(--gray-900);font-size:1.125rem;font-weight:800}#stats-body{padding:max(24px, env(safe-area-inset-top,24px)) 16px 16px;flex-direction:column;flex:1;order:1;gap:14px;display:flex;overflow-y:auto}.stat-row-card{border:1px solid var(--gray-200);background:#fff;border-radius:1.25rem;flex-direction:column;gap:6px;padding:16px;display:flex;box-shadow:0 1px 4px #0000000d}.src-label{color:var(--primary-600);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.stats-section-title{color:var(--gray-400);text-transform:uppercase;letter-spacing:.1em;margin:0 2px;font-size:.7rem;font-weight:800}.stat-summary-row{gap:10px;display:flex}.stat-mini-card{border:1px solid var(--gray-200);text-align:center;background:#fff;border-radius:1.25rem;flex-direction:column;flex:1;align-items:center;gap:4px;min-width:0;padding:12px 10px;display:flex;box-shadow:0 1px 4px #0000000d}.stat-mini-card .src-value{letter-spacing:-1px;font-size:1.75rem}.stat-mini-card .src-label{font-size:.65rem}[data-theme=dark] .stat-mini-card{background:var(--gray-100);border-color:var(--gray-200)}.stat-mini-card--accent{background:linear-gradient(135deg, var(--primary-600), #7c3aed)!important;border-color:#0000!important}.stat-mini-card--accent .src-value{color:#fff!important}.stat-mini-card--accent .src-label{color:#fffc!important}.chart-card{padding:14px 14px 10px}.chart-wrap{width:100%;margin-top:8px}.chart-svg{width:100%;height:auto;display:block;overflow:visible}.src-value{color:var(--gray-900);letter-spacing:-2px;font-size:2.5rem;font-weight:900;line-height:1}#receipts-view{background:var(--gray-50);z-index:60;flex-direction:column;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0;transform:translate(100%)}#receipts-view.visible{transform:translate(0)}#receipts-header{padding:14px 16px max(20px, env(safe-area-inset-bottom,20px));border-top:1px solid var(--gray-100);cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;flex-shrink:0;order:2;align-items:center;gap:12px;display:flex;box-shadow:0 -1px 8px #0000000f}#receipts-header h2{color:var(--gray-900);font-size:1.125rem;font-weight:800}.month-nav{align-items:center;gap:6px;display:flex}.month-nav-arrow{border:1.5px solid var(--primary-200);background:var(--primary-50);width:28px;height:28px;color:var(--primary-600);cursor:pointer;font-size:1.25rem;line-height:1;font-family:var(--font);border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .15s,border-color .15s;display:flex}.month-nav-arrow:hover:not(.disabled){background:var(--primary-100);border-color:var(--primary-400)}.month-nav-arrow.disabled{opacity:.3;cursor:default;pointer-events:none}#receipts-filters{padding:max(12px, env(safe-area-inset-top,12px)) 16px 0;flex-direction:column;order:0;gap:6px;display:flex}.filter-chips-row{scrollbar-width:none;-ms-overflow-style:none;gap:6px;padding-bottom:2px;display:flex;overflow-x:auto}.filter-chips-row::-webkit-scrollbar{display:none}.filter-chips-row:empty{display:none}.filter-chip{border:1.5px solid var(--gray-200);color:var(--gray-600);cursor:pointer;white-space:nowrap;font-size:.75rem;font-weight:700;font-family:var(--font);background:#fff;border-radius:9999px;flex-shrink:0;padding:5px 12px;transition:background .15s,color .15s,border-color .15s}.filter-chip:hover{background:var(--gray-100)}.filter-chip.active{background:var(--primary-600);border-color:var(--primary-600);color:#fff}#receipts-container{flex:1;order:1;padding:12px 16px 16px;overflow-y:auto}#no-receipts-state{text-align:center;opacity:.5;flex-direction:column;justify-content:center;align-items:center;height:100%}#no-receipts-state p{color:var(--gray-600);margin-top:10px;font-size:.875rem;font-weight:700}#receipts-list{flex-direction:column;gap:14px;padding-bottom:32px;list-style:none;display:flex}.month-header{border-bottom:1px solid var(--gray-200);justify-content:space-between;align-items:center;margin-top:8px;padding:6px 4px 8px;list-style:none;display:flex}.month-header:first-child{margin-top:0}.month-label{text-transform:uppercase;letter-spacing:.04em;color:var(--gray-700);font-size:1.125rem;font-weight:800}.month-total{color:var(--primary-600);background:var(--primary-50);border-radius:9999px;padding:4px 12px;font-size:1.125rem;font-weight:800}.receipt-card{border:1px solid var(--gray-200);background:#fff;border-radius:1.25rem;overflow:hidden;box-shadow:0 1px 4px #0000000d}.receipt-header{cursor:pointer;padding:16px;transition:background .1s}.receipt-header:hover{background:var(--gray-50)}.receipt-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.receipt-ctx{color:var(--primary-600);text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;font-weight:700}.receipt-date{color:var(--gray-400);font-size:10px;font-weight:700}.receipt-bottom{justify-content:space-between;align-items:flex-end;display:flex}.receipt-total{color:var(--gray-900);font-size:1.5rem;font-weight:800}.receipt-units{color:var(--gray-400);border:1px solid var(--gray-200);border-radius:.375rem;margin-left:8px;padding:2px 6px;font-size:.75rem;font-weight:700}.receipt-actions{align-items:center;gap:8px;display:flex}.chevron{width:20px;height:20px;color:var(--gray-400);transition:transform .25s}.receipt-card.expanded .chevron{transform:rotate(180deg)}.delete-receipt-btn{color:var(--gray-300);border-radius:.5rem;padding:8px;transition:color .15s}.delete-receipt-btn:hover{color:var(--red-500)}.load-receipt-btn{color:var(--primary-500);border-radius:.5rem;padding:8px;transition:color .15s}.load-receipt-btn:hover{color:var(--primary-700)}.fav-receipt-btn{color:var(--gray-300);border-radius:.5rem;padding:8px;transition:color .2s,transform .2s}.fav-receipt-btn:hover,.fav-receipt-btn.is-fav{color:#f59e0b}.fav-receipt-btn.is-fav:hover{color:#d97706}@keyframes favPop{0%{transform:scale(1)}40%{transform:scale(1.4)}70%{transform:scale(.9)}to{transform:scale(1)}}.fav-receipt-btn.pop{animation:.35s cubic-bezier(.34,1.56,.64,1) both favPop}.receipt-details{border-top:1px dashed var(--gray-200);background:#f8fafc99;padding:14px;display:none}.receipt-card.expanded .receipt-details{display:block}.receipt-details-title{color:var(--gray-400);text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px;font-size:10px;font-weight:700}.receipt-item{border-bottom:1px solid var(--gray-100);color:var(--gray-600);justify-content:space-between;padding:5px 0;font-size:.75rem;display:flex}.receipt-item:last-child{border-bottom:none}.ri-name{white-space:nowrap;text-overflow:ellipsis;padding-right:8px;overflow:hidden}.ri-qty{font-weight:700}.ri-price{flex-shrink:0;font-weight:700}.removing{animation:.25s forwards removeRow}#dynamic-view{z-index:55;background:var(--gray-50);flex-direction:column;transition:transform .35s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;inset:0;transform:translate(100%)}#dynamic-view.visible{transform:translate(0)}#dyn-new-list-bar{padding:12px 16px max(20px, env(safe-area-inset-bottom,20px));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#ffffffd9;border-top:1px solid #0000000f;position:absolute;bottom:0;left:0;right:0}#dyn-new-list-row{background:#fffffff2;border-radius:1rem;align-items:center;gap:8px;padding:6px 6px 6px 18px;display:flex;box-shadow:0 2px 12px #0000001a}#dyn-new-list-row:focus-within{box-shadow:0 0 0 4px #6366f133,0 2px 12px #0000001a}#dyn-list-name-input{color:var(--gray-800);background:0 0;border:none;outline:none;flex:1;font-size:.9375rem}#dyn-list-name-input::placeholder{color:var(--gray-400)}#dyn-new-list-submit{background:var(--primary-600,#4f46e5);color:#fff;cursor:pointer;border:none;border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}#dyn-new-list-submit:hover{background:var(--primary-700,#4338ca)}#dynamic-body{padding-bottom:140px}.dyn-footer-back{color:#fff;width:100%;font-size:.875rem;font-weight:700;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;border-radius:.875rem;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:13px 18px;transition:opacity .15s;display:flex}.dyn-footer-back:active{opacity:.85}#dynamic-header{padding:14px 16px max(20px, env(safe-area-inset-bottom,20px));border-top:1px solid var(--gray-100);background:#fff;flex-shrink:0;order:2;justify-content:center;align-items:center;display:flex;box-shadow:0 -1px 8px #0000000f}#dynamic-view>:not(#dynamic-header){order:1}.dyn-volver-btn{cursor:pointer;color:#6366f1;font-size:1rem;font-weight:700;font-family:var(--font);background:0 0;border:1.5px solid #e0e7ff;border-radius:999px;align-items:center;gap:8px;padding:8px 20px;transition:background .15s;display:flex}.dyn-volver-btn:active{background:#eef2ff}.dyn-intro-title{text-align:center}#dynamic-intro{border-bottom:1px solid var(--gray-100);padding:max(24px, env(safe-area-inset-top,24px)) 16px 14px;background:#fff;flex-shrink:0}.dyn-intro-title{color:var(--gray-900);letter-spacing:-.5px;margin-bottom:12px;font-size:1.25rem;font-weight:900}#dyn-new-list-bar{flex-direction:column;gap:8px;display:flex}.dyn-nueva-lista-btn{color:#fff;width:100%;font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;border-radius:.875rem;justify-content:center;align-items:center;gap:8px;padding:13px 18px;transition:opacity .15s;display:flex}.dyn-nueva-lista-btn:active{opacity:.85}.dyn-intro-desc{color:var(--gray-500);word-break:break-word;overflow-wrap:break-word;max-width:100%;margin-bottom:12px;font-size:.8125rem;font-weight:500;line-height:1.55}.dyn-cat-pills{display:none}.dyn-add-flat-btn{border:2px dashed var(--gray-200);cursor:pointer;width:100%;font-family:var(--font);color:var(--gray-400);background:0 0;border-radius:1rem;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:14px;font-size:.875rem;font-weight:700;transition:border-color .15s,color .15s;display:flex}.dyn-add-flat-btn:hover{border-color:var(--indigo-500);color:var(--indigo-500)}.supermarket-dropdown{border:1.5px solid var(--gray-100);z-index:50;background:#fff;border-radius:1rem;max-height:260px;animation:.15s both fadeIn;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden auto;box-shadow:0 8px 32px -4px #0000002e,0 2px 8px #00000014}.supermarket-dropdown.hidden{display:none}.supermarket-dropdown-item{cursor:pointer;color:var(--gray-800);font-size:.9rem;font-weight:600;font-family:var(--font);text-align:left;background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:11px 16px;transition:background .1s;display:flex}.supermarket-dropdown-item:hover,.supermarket-dropdown-item:active{background:var(--gray-50)}.supermarket-dropdown-item+.supermarket-dropdown-item{border-top:1px solid var(--gray-100)}.supermarket-dropdown-icon{background:linear-gradient(135deg,#6366f1,#4f46e5);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.dyn-cat-pills::-webkit-scrollbar{display:none}.dyn-cat-pill{cursor:pointer;font-size:.75rem;font-weight:700;font-family:var(--font);border:none;border-radius:2rem;flex-shrink:0;align-items:center;gap:6px;padding:7px 12px;transition:transform .1s,opacity .15s;display:flex}.dyn-cat-pill:active{opacity:.8;transform:scale(.95)}.dyn-cat-pill-icon{border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.dyn-cat-tooltip{background:var(--gray-900);color:#fff;border-radius:.875rem;margin:10px 0 2px;padding:12px 14px;font-size:.75rem;line-height:1.55;animation:.2s both fadeIn;display:none}.dyn-cat-tooltip.show{display:block}.dyn-cat-tooltip strong{margin-bottom:4px;font-size:.8125rem;font-weight:800;display:block}.dyn-cat-tooltip ul{margin:4px 0 0;padding-left:14px}.dyn-cat-tooltip ul li{margin-bottom:2px}#dynamic-body{flex-direction:column;flex:1;gap:20px;padding:16px 16px 32px;display:flex;overflow-y:auto}.dyn-category{flex-direction:column;gap:0;display:flex}.dyn-cat-swipe-wrap{border-radius:1rem;position:relative;overflow:hidden}.dyn-cat-delete-behind{cursor:pointer;background:#ef4444;border:none;border-radius:0 1rem 1rem 0;flex-direction:column;justify-content:center;align-items:center;gap:4px;width:72px;display:flex;position:absolute;top:0;bottom:0;right:0}.dyn-cat-delete-behind span{color:#fff;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem;font-weight:800}.dyn-cat-header{cursor:pointer;-webkit-user-select:none;user-select:none;z-index:1;will-change:transform;background:#fff;border-radius:1rem;align-items:center;gap:10px;padding:14px 16px;transition:background .15s;display:flex;position:relative}.dyn-cat-header:active{background:var(--gray-50)}.dyn-cat-header-icon{border-radius:.75rem;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.dyn-cat-header-info{flex:1;min-width:0}.dyn-cat-title{color:var(--gray-900);font-size:.875rem;font-weight:800;display:block}.dyn-cat-subtitle{color:var(--gray-400);margin-top:1px;font-size:.75rem;font-weight:500;display:block}.dyn-cat-badge{background:var(--gray-100);color:var(--gray-500);border-radius:2rem;flex-shrink:0;padding:3px 8px;font-size:.6875rem;font-weight:800}.dyn-cat-chevron{color:var(--gray-300);flex-shrink:0;line-height:0;transition:transform .25s cubic-bezier(.4,0,.2,1)}.dyn-category.open .dyn-cat-chevron{transform:rotate(90deg)}.dyn-cat-add-icon{cursor:pointer;color:#fff;background:linear-gradient(135deg,#7c3aed,#4f46e5);border:none;border-radius:.625rem;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;transition:transform .1s,box-shadow .15s;box-shadow:0 4px 10px -2px #7c3aed80}.dyn-cat-add-icon:active{transform:scale(.88);box-shadow:0 2px 6px -2px #7c3aed66}.dyn-cat-body{flex-direction:column;gap:8px;max-height:0;padding:0;transition:max-height .3s cubic-bezier(.4,0,.2,1),padding .3s;display:flex;overflow:hidden}.dyn-category.open .dyn-cat-body{max-height:600px;padding:8px 0 4px}.dyn-add-btn{color:var(--primary-600);cursor:pointer;font-size:.75rem;font-weight:700;font-family:var(--font);background:0 0;border:none;align-items:center;gap:5px;padding:4px 0;display:flex}.dyn-list-card{cursor:pointer;background:#fff;border:1.5px solid #0000;border-radius:1rem;flex-direction:column;gap:10px;min-height:90px;padding:12px 14px;transition:transform .1s,box-shadow .1s;display:flex;box-shadow:0 1px 4px #0000000f}.dyn-list-card:active{transform:scale(.98);box-shadow:0 1px 2px #0000000a}.dyn-card-top{justify-content:space-between;align-items:center;display:flex}.dyn-card-actions{align-items:center;gap:4px;display:flex}.dyn-card-footer{justify-content:space-between;align-items:flex-end;margin-top:auto;display:flex}.dyn-list-icon{border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.dyn-list-icon--plain{background:0 0!important}.dyn-plus-icon{stroke:#6366f1}[data-theme=dark] .dyn-plus-icon{stroke:#818cf8}.dyn-list-info{flex:1;min-width:0}.dyn-list-name{color:var(--gray-900);white-space:nowrap;text-overflow:ellipsis;font-size:.9375rem;font-weight:700;overflow:hidden}.dyn-list-desc{color:var(--gray-500);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.75rem;overflow:hidden}.dyn-list-count{color:var(--gray-400);flex-shrink:0;font-size:.75rem;font-weight:700}.dyn-fav-btn{color:var(--gray-300);cursor:pointer;background:0 0;border:none;border-radius:.5rem;padding:4px;line-height:0;transition:color .15s,transform .15s}.dyn-fav-btn:active{transform:scale(.85)}.dyn-fav-btn.is-fav{color:#ec4899}.dyn-delete-btn{color:var(--gray-300);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px;line-height:0;transition:color .2s}.dyn-delete-btn:active{color:#ef4444}.dyn-shop-btn{color:#fff;cursor:pointer;letter-spacing:.02em;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.75rem;flex:0 0 100%;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:8px 12px;font-size:.78rem;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 3px 10px -2px #10b98173}.dyn-shop-btn:active{transform:scale(.97);box-shadow:0 1px 6px -2px #10b98166}#dyn-modal-overlay{z-index:60;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#00000073;align-items:flex-end;transition:opacity .25s;display:flex;position:absolute;inset:0}#dyn-modal-overlay.open{opacity:1;pointer-events:all}#dyn-modal{background:#fff;border-radius:1.5rem 1.5rem 0 0;width:100%;padding:24px 20px 36px;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:translateY(100%)}#dyn-modal-overlay.open #dyn-modal{transform:translateY(0)}.dyn-modal-title{color:var(--gray-900);margin-bottom:16px;font-size:1rem;font-weight:800}.dyn-modal-field{margin-bottom:12px}.dyn-modal-label{color:var(--gray-500);margin-bottom:5px;font-size:.75rem;font-weight:700;display:block}.dyn-modal-input{border:1.5px solid var(--gray-200);width:100%;font-size:.9375rem;font-family:var(--font);color:var(--gray-900);background:var(--gray-50);box-sizing:border-box;border-radius:.875rem;outline:none;padding:11px 14px}.dyn-modal-input:focus{border-color:var(--primary-500);background:#fff}.dyn-modal-actions{gap:10px;margin-top:18px;display:flex}.dyn-modal-cancel{border:1.5px solid var(--gray-200);color:var(--gray-600);font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;background:#fff;border-radius:1rem;flex:1;padding:13px}.dyn-modal-save{background:var(--gray-900);color:#fff;font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;border:none;border-radius:1rem;flex:2;padding:13px}#pro-toast{color:#fff;white-space:nowrap;pointer-events:none;opacity:0;background:linear-gradient(135deg,#7c3aed,#6d28d9);border-radius:1rem;padding:10px 18px;font-size:.8125rem;font-weight:700;transition:opacity .25s,transform .25s;position:absolute;bottom:80px;left:50%;transform:translate(-50%)translateY(16px);box-shadow:0 8px 24px -4px #6d28d973}#pro-toast.show{opacity:1;transform:translate(-50%)translateY(0)}#onboarding-view{z-index:100;background-color:#dde4ff;background-image:radial-gradient(at 60% 0,#8fa5ff 0,#0000 55%),radial-gradient(at 100% 10%,#33e0ffd9 0,#0000 50%),radial-gradient(at 0 40%,#d9f9 0,#0000 50%),radial-gradient(at 30% 100%,#ffdbdeb3 0,#0000 50%);background-position:0 0;background-repeat:repeat;background-size:auto;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;padding:32px 28px;transition:opacity .35s,transform .35s;display:flex;position:absolute;inset:0;overflow-y:auto}#onboarding-view.hide{opacity:0;pointer-events:none;transform:scale(.97)}#onboarding-content{flex-direction:column;flex:1;justify-content:center;gap:8px;width:100%;max-width:380px;animation:.4s cubic-bezier(.34,1.2,.64,1) both fadeIn;display:flex}.ob-logo{justify-content:center;align-items:center;gap:12px;margin-bottom:20px;display:flex}.ob-logo-icon{color:#fff;background:linear-gradient(135deg,#4f46e5,#7c3aed);border-radius:1.125rem;justify-content:center;align-items:center;width:52px;height:52px;display:flex;transform:rotate(-4deg);box-shadow:0 8px 24px -4px #4f46e58c}.ob-logo-name{color:var(--gray-900);letter-spacing:-2px;font-size:2.25rem;font-style:italic;font-weight:900}.ob-headline{color:var(--gray-900);text-align:center;margin-bottom:8px;font-size:1.625rem;font-weight:900;line-height:1.25}.ob-sub{color:var(--gray-600);text-align:center;margin-bottom:20px;font-size:.9375rem;font-weight:500;line-height:1.55}.ob-form{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffe0;border-radius:1.5rem;padding:24px 20px;box-shadow:0 8px 32px -8px #0000001f}.ob-form-label{color:var(--gray-600);margin-bottom:10px;font-size:.8125rem;font-weight:700}.ob-input{border:1.5px solid var(--gray-200);width:100%;font-size:1rem;font-family:var(--font);color:var(--gray-900);box-sizing:border-box;background:#fff;border-radius:1rem;outline:none;margin-bottom:10px;padding:13px 16px;transition:border-color .15s}.ob-input:focus{border-color:var(--primary-500)}.ob-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.ob-btn-primary{color:#fff;width:100%;font-size:1rem;font-weight:800;font-family:var(--font);cursor:pointer;background:linear-gradient(135deg,#4f46e5,#7c3aed);border:none;border-radius:1rem;margin-bottom:10px;padding:15px;transition:opacity .15s,transform .1s;box-shadow:0 8px 20px -4px #4f46e573}.ob-btn-primary:active{opacity:.9;transform:scale(.98)}.ob-btn-skip{width:100%;color:var(--gray-500);font-size:.875rem;font-weight:700;font-family:var(--font);cursor:pointer;background:0 0;border:none;border-radius:1rem;padding:12px;transition:color .15s}.ob-btn-skip:hover{color:var(--gray-700)}.ob-terms{color:#1e293b73;text-align:center;margin-top:12px;font-size:.75rem;font-weight:600}#profile-overlay{z-index:85;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#00000073;align-items:flex-end;transition:opacity .2s;display:flex;position:absolute;inset:0}#list-picker-overlay{z-index:210;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#00000073;align-items:flex-end;transition:opacity .2s;display:flex;position:absolute;inset:0}#list-picker-sheet{width:100%;padding:20px 20px max(24px, env(safe-area-inset-bottom,24px));background:#fff;border-radius:1.5rem 1.5rem 0 0;max-height:70dvh;transition:transform .25s cubic-bezier(.4,0,.2,1);overflow-y:auto;transform:translateY(100%)}#list-picker-title{color:var(--gray-900);margin-bottom:4px;font-size:1rem;font-weight:800}#list-picker-subtitle{color:var(--gray-400);margin-bottom:16px;font-size:.8125rem}#list-picker-options{flex-direction:column;gap:8px;display:flex}#list-picker-cancel{border:1.5px solid var(--gray-200);width:100%;color:var(--gray-500);font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;background:#fff;border-radius:1rem;margin-top:12px;padding:13px}#confirm-overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#00000073;align-items:flex-end;transition:opacity .2s;display:flex;position:absolute;inset:0}#confirm-modal{background:#fff;border-radius:1.5rem 1.5rem 0 0;width:100%;padding:24px 20px 36px;transition:transform .25s cubic-bezier(.4,0,.2,1);transform:translateY(100%)}#confirm-title{color:var(--gray-900);margin-bottom:6px;font-size:1rem;font-weight:800}#confirm-body{color:var(--gray-500);margin-bottom:20px;font-size:.875rem;line-height:1.5}.confirm-actions{gap:10px;display:flex}#confirm-cancel{border:1.5px solid var(--gray-200);color:var(--gray-600);font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;background:#fff;border-radius:1rem;flex:1;padding:13px}#confirm-ok{color:#fff;font-size:.9375rem;font-weight:700;font-family:var(--font);cursor:pointer;background:#ef4444;border:none;border-radius:1rem;flex:2;padding:13px}[data-theme=dark] #list-picker-sheet{background:var(--gray-100)}[data-theme=dark] #list-picker-title{color:var(--gray-900)}[data-theme=dark] #list-picker-subtitle{color:var(--gray-500)}[data-theme=dark] #list-picker-cancel{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-800)}#profile-overlay.open{opacity:1;pointer-events:all}#profile-modal{background:#fff;border-radius:1.5rem 1.5rem 0 0;width:100%;padding:24px 20px 40px;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:translateY(100%)}#profile-overlay.open #profile-modal{transform:translateY(0)}.pm-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.pm-title{color:var(--gray-900);font-size:1.0625rem;font-weight:800}.pm-close{background:var(--gray-100);width:32px;height:32px;color:var(--gray-500);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex}.pm-close:hover{background:var(--gray-200)}.pm-field{margin-bottom:14px}.pm-label{color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;font-size:.75rem;font-weight:700;display:block}.pm-input{border:1.5px solid var(--gray-200);width:100%;font-size:.9375rem;font-family:var(--font);color:var(--gray-900);background:var(--gray-50);box-sizing:border-box;border-radius:.875rem;outline:none;padding:11px 14px;transition:border-color .15s}.pm-input:focus{border-color:var(--primary-500);background:#fff}.pm-country-list{border:1.5px solid var(--gray-200);z-index:10;background:#fff;border-radius:.875rem;max-height:180px;list-style:none;display:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px -6px #0000001f}.pm-country-list.open{display:block}.pm-country-list li{color:var(--gray-800);cursor:pointer;border-bottom:1px solid var(--gray-100);padding:10px 14px;font-size:.9rem;font-weight:600;transition:background .1s}.pm-country-list li:last-child{border-bottom:none}.pm-country-list li:hover,.pm-country-list li.selected{background:var(--primary-50);color:var(--primary-700)}[data-theme=dark] .pm-country-list{background:var(--gray-200);border-color:var(--gray-300)}[data-theme=dark] .pm-country-list li{color:var(--gray-800);border-color:var(--gray-300)}[data-theme=dark] .pm-country-list li:hover{color:#a5b4fc;background:#6366f133}.pm-lang-row{gap:8px;display:flex}.pm-lang-btn{border:1.5px solid var(--gray-200);background:var(--gray-50);color:var(--gray-600);font-size:.8125rem;font-weight:700;font-family:var(--font);cursor:pointer;border-radius:.875rem;flex:1;padding:10px 8px;transition:all .15s}.pm-lang-btn.active{border-color:var(--primary-500);background:var(--primary-50);color:var(--primary-700)}.pm-lang-pro{color:var(--gray-400);background:0 0;border-color:#0000;flex:none;font-size:.75rem}.pm-save{background:var(--gray-900);color:#fff;width:100%;font-size:.9375rem;font-weight:800;font-family:var(--font);cursor:pointer;border:none;border-radius:1rem;margin-top:20px;padding:14px;transition:opacity .15s,transform .1s}.pm-save:active{opacity:.9;transform:scale(.98)}.pm-share-row{gap:10px;display:flex}.pm-share-btn{font-size:.875rem;font-weight:700;font-family:var(--font);cursor:pointer;border:none;border-radius:.875rem;flex:1;justify-content:center;align-items:center;gap:8px;padding:11px 12px;transition:opacity .15s,transform .1s;display:flex}.pm-share-btn:active{opacity:.85;transform:scale(.96)}.pm-share-wa{color:#fff;background:#25d366}.pm-share-email{background:var(--primary-600);color:#fff}.pm-dual-row{align-items:stretch;gap:10px;margin-bottom:14px;display:flex}.pm-dual-block{background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:.875rem;flex-direction:column;flex:1;align-items:center;gap:6px;min-width:0;padding:10px 8px;display:flex}.pm-dual-block .pm-label{text-align:center;margin-bottom:0}.pm-rating-label{color:var(--gray-400);text-align:center;min-height:16px;font-size:.72rem;font-weight:700}.pm-textarea{resize:none;width:100%;min-height:60px;font-size:.8125rem;font-family:var(--font);color:var(--gray-900);background:0 0;border:none;outline:none;flex:1;line-height:1.5}.pm-textarea::placeholder{color:var(--gray-400)}[data-theme=dark] .pm-dual-block{background:var(--gray-200);border-color:var(--gray-300)}[data-theme=dark] .pm-textarea{color:var(--gray-900)}.pm-stars-row{flex-wrap:nowrap;justify-content:center;gap:2px;width:100%;display:flex}.pm-star{color:var(--gray-200);cursor:pointer;text-align:center;background:0 0;border:none;flex:1;padding:2px 0;font-size:clamp(1rem,5vw,1.6rem);line-height:1;transition:color .15s,transform .1s}.pm-star:active{transform:scale(.85)}.pm-star.lit{color:#f59e0b}.pm-rating-label{color:var(--gray-400);min-height:18px;font-size:.75rem;font-weight:700}[data-theme=dark] #profile-modal{background:var(--gray-100)}[data-theme=dark] .pm-input{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-900)}[data-theme=dark] .pm-input:focus{background:var(--gray-100)}[data-theme=dark] .pm-lang-btn{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-600)}[data-theme=dark] .pm-lang-btn.active{border-color:var(--primary-500);color:#a5b4fc;background:#6366f133}[data-theme=dark] .pm-close{background:var(--gray-200)}[data-theme=dark] .pm-save{background:var(--primary-600)}[data-theme=dark]{--gray-50:#1a1a2e;--gray-100:#16213e;--gray-200:#2d2d44;--gray-300:#3d3d5c;--gray-400:#7b7b9a;--gray-500:#9d9dbe;--gray-600:#b8b8d8;--gray-800:#dcdcf0;--gray-900:#f0f0ff}html[data-theme=dark]{background:#000}[data-theme=dark] #app-container{background:0 0}[data-theme=dark] #setup-view{background-color:#0000;background-image:url(/icons/Mercado2.webp);background-position:50%;background-repeat:no-repeat;background-size:cover}[data-theme=dark] #setup-view:before{background:#00000073}[data-theme=dark] #new-list-form-row{background:#ffffffd9;box-shadow:0 4px 16px #0006}[data-theme=dark] #list-name-input{color:#1a1a2e}[data-theme=dark] #new-list-submit{background:var(--primary-600)}[data-theme=dark] .active-list-card{background:#ffffff0f;border-color:#ffffff1a}[data-theme=dark] #active-lists-section .active-list-card{background:#ffffff1f;border:1.5px solid #ffffff4d;box-shadow:0 2px 12px #0000004d}[data-theme=dark] #active-lists-section .alc-name{color:#fff;text-shadow:0 1px 4px #0006;font-weight:800}[data-theme=dark] #app-view{background:var(--gray-50)}[data-theme=dark] #app-header{border-color:var(--gray-200);background:#1a1a2ef2}[data-theme=dark] #checkout-container{background:#1a1a2ef2}[data-theme=dark] .item-row{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] .empty-icon{background:linear-gradient(135deg,#4f46e5,#7c3aed);box-shadow:0 0 0 6px #ffffff2e,0 16px 36px -6px #4f46e5b3}[data-theme=dark] #receipts-view{background:var(--gray-50)}[data-theme=dark] #receipts-header{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] #receipts-header h2{color:#fff}[data-theme=dark] .filter-chip{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-800)}[data-theme=dark] .filter-chip:hover{background:var(--gray-300)}[data-theme=dark] .filter-chip.active{background:var(--primary-600);border-color:var(--primary-600);color:#fff}[data-theme=dark] #stats-view{background:var(--gray-50)}[data-theme=dark] #stats-header{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] #stats-header h2{color:#fff}[data-theme=dark] .stat-row-card{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] .src-value{color:#fff}[data-theme=dark] .chart-axis{stroke:#374151}[data-theme=dark] .chart-grid{stroke:#1f2937}[data-theme=dark] .chart-label{fill:#9ca3af}[data-theme=dark] .chart-value{fill:#e5e7eb}[data-theme=dark] .receipt-card{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] .receipt-header:hover{background:var(--gray-200)}[data-theme=dark] .receipt-details{background:#0003}[data-theme=dark] #dynamic-view{background:var(--gray-50)}[data-theme=dark] .supermarket-dropdown{background:#1e1e2e;border-color:#ffffff1f;box-shadow:0 8px 32px -4px #00000080,0 2px 8px #0000004d}[data-theme=dark] .supermarket-dropdown-item{color:#e5e7eb}[data-theme=dark] .supermarket-dropdown-item:hover,[data-theme=dark] .supermarket-dropdown-item:active{background:#ffffff14}[data-theme=dark] .supermarket-dropdown-item+.supermarket-dropdown-item{border-color:#ffffff14}[data-theme=dark] #dynamic-header,[data-theme=dark] #dynamic-intro{background:var(--gray-100);border-color:var(--gray-200)}[data-theme=dark] .dyn-cat-header{background:var(--gray-100)}[data-theme=dark] .dyn-cat-delete-behind{background:#dc2626}[data-theme=dark] .dyn-cat-header:active{background:var(--gray-200)}[data-theme=dark] .dyn-list-card,[data-theme=dark] #dyn-modal{background:var(--gray-100)}[data-theme=dark] .dyn-modal-cancel{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-800)}[data-theme=dark] .dyn-modal-input{background:var(--gray-200);border-color:var(--gray-300);color:var(--gray-900)}[data-theme=dark] .dyn-modal-input:focus{background:var(--gray-100)}#confirm-modal button.confirm-ok-primary{background:var(--primary-600)!important}[data-theme=dark] #confirm-modal{background:var(--gray-100)!important}[data-theme=dark] #confirm-title{color:var(--gray-900)!important}[data-theme=dark] #confirm-body{color:var(--gray-600)!important}[data-theme=dark] #confirm-cancel{background:var(--gray-200)!important;border-color:var(--gray-300)!important;color:var(--gray-800)!important}[data-theme=dark] .month-nav-arrow{color:#a5b4fc!important;background:#6366f133!important;border-color:#6366f166!important}[data-theme=dark] #add-form{background:#ffffff12;border-color:#ffffff1a}[data-theme=dark] #suggestions-list{background:#1a1a2ef2}[data-theme=dark] #suggestions-list li:hover{background:#6366f126}[data-theme=dark] .icon-btn{background:var(--gray-200);color:var(--gray-600)}[data-theme=dark] .item-inner{background:var(--gray-100)}[data-theme=dark] .item-text{color:var(--gray-900)}[data-theme=dark] .item-row.completed .item-text,[data-theme=dark] .item-row.completed .price-badge-trigger,[data-theme=dark] .item-row.completed .qty-badge-trigger{color:var(--gray-500);opacity:.85}[data-theme=dark] .item-row.completed .item-inner{background:#10b9811f}[data-theme=dark] .qty-badge-trigger{color:var(--gray-600)}[data-theme=dark] .price-badge-trigger{color:var(--gray-800)}[data-theme=dark] .count-badge.pending{background:var(--gray-300);color:var(--gray-700,#dcdcf0)}[data-theme=dark] .count-badge.completed{color:#4ade80;background:#16a34a33}[data-theme=dark] .section-label.pending{color:var(--gray-600)}[data-theme=dark] .delete-btn{color:var(--gray-500)}[data-theme=dark] .swipe-delete-btn{background:#b91c1c}[data-theme=dark] .receipt-ctx{color:#a5b4fc}[data-theme=dark] .receipt-item{color:var(--gray-600)}[data-theme=dark] .receipt-details-title{color:var(--gray-500)}[data-theme=dark] .month-total{color:#a5b4fc;background:#6366f133}[data-theme=dark] .setup-section-label{color:#dcdcf0bf}[data-theme=dark] .setup-section-badge{color:#dcdcf0bf;background:#ffffff1f}[data-theme=dark] .carousel-empty{background:#ffffff0a;border-color:#ffffff1a}[data-theme=dark] .carousel-empty span{color:#dcdcf080}[data-theme=dark] #list-name-input::placeholder{color:var(--gray-400)}[data-theme=dark] .alc-meta{color:var(--gray-500)}[data-theme=dark] .alc-delete-btn{color:#ffffffb3}[data-theme=dark] .month-label{color:var(--gray-700,#dcdcf0)}[data-theme=dark] .receipt-date{color:var(--gray-500)}[data-theme=dark] .dyn-intro-desc{color:var(--gray-600)}[data-theme=dark] .ce-icon{background:#7c3aed40!important}[data-theme=dark] .dyn-modal-save{background:var(--primary-600)}[data-theme=dark] .dyn-cat-tooltip{color:#e8e8f8;background:#2d2d44}@media (width<=359px){#app-container{max-width:100%}.setup-hero-text{font-size:clamp(1.5rem,8cqw,2rem)}.nav-label{font-size:7px}.add-btn,.help-btn{width:44px;height:44px}#item-input{font-size:14px!important}.active-list-card{padding:4px 10px 4px 8px}#active-lists-section #active-lists-wrapper{max-height:108px}}@media (width<=767px){html,body{height:100dvh;min-height:100dvh;overflow:hidden}body{width:100%;position:fixed}#app-container{height:100dvh;max-height:100dvh;overflow:clip}#setup-view{min-height:100dvh}#bg-layer{height:100dvh}#bottom-nav{margin:0 16px max(12px, env(safe-area-inset-bottom,12px));-webkit-backdrop-filter:blur(18px);background:#ffffff2e;border:1px solid #ffffff59;border-radius:clamp(20px,5vw,28px);justify-content:center;gap:clamp(8px,3vw,16px);width:auto;padding:clamp(10px,2.5vw,14px) clamp(10px,3vw,18px);box-shadow:0 4px 24px #0000002e}#bottom-nav.nav-ios{background:#1e1e28b8;border:1px solid #ffffff2e;align-self:center}.nav-item{flex:none;min-width:0}.nav-icon{border-radius:16px;width:clamp(36px,12vw,52px);height:clamp(36px,12vw,52px);padding:clamp(9px,2.5vw,12px)}.setup-hero-title{gap:clamp(8px,2.5vw,14px);margin-bottom:clamp(10px,2.5vh,18px)}.setup-hero-text{letter-spacing:-2px;font-size:clamp(3rem,14vw,4.5rem)}.setup-hero-icon{border-radius:clamp(1.2rem,4vw,1.8rem);width:clamp(76px,21vw,105px);height:clamp(76px,21vw,105px)}.setup-hero-icon svg{width:clamp(40px,11vw,57px);height:clamp(40px,11vw,57px)}}@media (width>=431px) and (width<=768px){#app-container{max-width:100%;max-height:100%}.setup-hero-text{font-size:clamp(2rem,7cqw,2.6rem)}}@media (width>=769px) and (width<=1024px){#app-container{max-width:100%;max-height:100%}#bg-layer{background-position:top}#new-list-form-row{align-self:center}}@media (width>=769px){#setup-content{justify-content:center;align-items:center}.setup-hero-title{gap:clamp(8px,1vw,14px);margin-bottom:clamp(10px,1.75vh,18px)}.setup-hero-text{letter-spacing:-1px;font-size:clamp(2.8rem,5.28vw,3.5rem)}.setup-hero-icon{border-radius:clamp(.875rem,1.05vw,1.225rem);width:clamp(42px,4.5vw,63px);height:clamp(42px,4.5vw,63px)}.setup-hero-icon svg{width:clamp(24px,2.5vw,36px);height:clamp(24px,2.5vw,36px)}#new-list-form-row,#new-list-form-wrap{align-self:center}#active-lists-section{width:auto}#active-lists-wrapper{justify-content:center}#bottom-nav{-webkit-backdrop-filter:blur(18px);background:#ffffff2e;border:1px solid #ffffff59;border-radius:26px;justify-content:center;align-self:center;gap:8px;width:auto;margin:0 auto 20px;padding:10px 18px;box-shadow:0 4px 32px #00000038}.nav-item{flex:none;gap:5px;min-width:0}.nav-icon{border-radius:16px;width:36px;height:36px;padding:10px}.nav-label{font-size:10px}#profile-overlay{justify-content:center!important;align-items:center!important;position:fixed!important;inset:0!important}#profile-modal{opacity:0!important;border-radius:44px!important;width:430px!important;max-height:min(932px,94vh)!important;transition:transform .35s cubic-bezier(.34,1.2,.64,1),opacity .25s!important;overflow-y:auto!important;transform:scale(.92)!important;box-shadow:0 0 0 1px #ffffff1f,0 40px 100px #0000008c,0 8px 32px #0000004d!important}#profile-overlay.open #profile-modal{opacity:1!important;transform:scale(1)!important}#desktop-panel-overlay{-webkit-backdrop-filter:blur(6px);z-index:190;background:#0000008c;transition:opacity .3s;display:none;position:fixed;inset:0}#desktop-panel-overlay.active{display:block}#confirm-overlay.confirm-desktop{z-index:600!important;justify-content:center!important;align-items:center!important;position:fixed!important}#confirm-overlay.confirm-desktop #confirm-modal{border-radius:1.5rem!important;width:380px!important;max-width:90vw!important;padding:28px 24px!important;transition:transform .25s cubic-bezier(.34,1.2,.64,1),opacity .2s!important;box-shadow:0 8px 48px #00000059,0 2px 12px #0000002e!important}#app-view:not(.visible) *,#receipts-view:not(.visible) *,#stats-view:not(.visible) *,#dynamic-view:not(.visible) *{pointer-events:none!important}#app-view,#receipts-view,#stats-view,#dynamic-view{inset:unset!important;z-index:200!important;border-radius:44px!important;position:fixed!important;overflow:hidden!important;box-shadow:0 0 0 1px #ffffff1f,0 40px 100px #0000008c,0 8px 32px #0000004d!important}#app-view{opacity:0!important;pointer-events:none!important;transition:transform .35s cubic-bezier(.34,1.2,.64,1),opacity .25s!important;display:flex!important;transform:scale(.92)!important}#app-view.visible{opacity:1!important;pointer-events:all!important;transform:scale(1)!important}#receipts-view,#stats-view,#dynamic-view{opacity:0!important;pointer-events:none!important;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .25s!important;transform:translateY(32px)!important}#receipts-view.visible,#stats-view.visible,#dynamic-view.visible{opacity:1!important;pointer-events:all!important;transform:translateY(0)!important}}@media (width>=1441px){#app-container{max-width:100%;max-height:100%}#bg-layer{background-position:50%;background-size:cover}}@media (prefers-reduced-motion:reduce){.offers-btn,.setup-hero-icon,.help-btn{animation:none!important}#checkout-btn,.active-list-card,.tc-card,.item-row,.stats-nav-card{transition:none!important}}@media (height<=500px) and (orientation:landscape){#app-container{max-height:100dvh;box-shadow:none;border:none;border-radius:0;max-width:100%}.setup-hero-title{gap:4px;margin-bottom:4px}.setup-hero-icon{width:36px;height:36px}.setup-hero-text{font-size:1.4rem}.setup-section{height:clamp(52px,10vh,72px);margin-top:4px}#bottom-nav{height:52px;padding:4px 0 2px}.nav-label{display:none}#setup-content{gap:0;padding:4px 12px}#active-lists-section #active-lists-wrapper{max-height:70px}}#auth-screen{z-index:500;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0000008c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}#auth-card{text-align:center;background:#1e293b;border:1px solid #334155;border-radius:1.5rem;flex-direction:column;align-items:center;width:100%;max-width:360px;padding:36px 28px;display:flex;box-shadow:0 24px 64px #00000080}.auth-logo{margin-bottom:12px;font-size:2.5rem}.auth-title{color:#f1f5f9;margin-bottom:6px;font-size:1.25rem;font-weight:800}.auth-sub{color:#94a3b8;margin-bottom:24px;font-size:.875rem;line-height:1.5}.auth-field-wrap{width:100%;margin-bottom:12px}.auth-input{color:#f1f5f9;text-align:center;background:#0f172a;border:1.5px solid #334155;border-radius:.75rem;outline:none;width:100%;padding:12px 16px;font-family:inherit;font-size:1rem;transition:border-color .2s}.auth-input:focus{border-color:#6366f1}.auth-input.error{border-color:#ef4444}.auth-input.success{border-color:#22c55e}.auth-status{min-height:20px;margin-top:8px;font-size:.8125rem;font-weight:500;transition:color .2s}.auth-status.checking{color:#94a3b8}.auth-status.error{color:#f87171}.auth-status.success{color:#4ade80}.auth-btn{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:.75rem;width:100%;margin-bottom:14px;padding:13px;font-family:inherit;font-size:1rem;font-weight:700;transition:background .15s,opacity .15s}.auth-btn:hover{background:#4f46e5}.auth-btn:disabled{opacity:.5;cursor:not-allowed}.auth-note{color:#475569;font-size:.75rem;line-height:1.5}#pwa-install-banner-overlay{z-index:350;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;background:#00000073;justify-content:center;align-items:center;padding:20px;transition:opacity .3s;display:flex;position:fixed;inset:0}#pwa-install-banner-overlay.visible{opacity:1;pointer-events:all}#pwa-install-banner{text-align:center;background:#1e293b;border:1px solid #334155;border-radius:1.25rem;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:320px;padding:24px 20px 20px;transition:transform .3s;display:flex;position:relative;transform:scale(.92);box-shadow:0 16px 48px #00000080}#pwa-install-banner-overlay.visible #pwa-install-banner{transform:scale(1)}.pwa-dismiss-btn{color:#64748b;cursor:pointer;background:0 0;border:none;padding:4px;font-size:1rem;line-height:1;transition:color .15s;position:absolute;top:10px;right:12px}.pwa-dismiss-btn:hover{color:#f1f5f9}.pwa-banner-icon{font-size:2.5rem;line-height:1}.pwa-banner-text{flex-direction:column;gap:4px;display:flex}.pwa-banner-text strong{color:#f1f5f9;font-size:1.0625rem;font-weight:800;display:block}.pwa-banner-text span{color:#94a3b8;font-size:.8125rem;display:block}.pwa-install-btn{color:#fff;cursor:pointer;background:#6366f1;border:none;border-radius:.75rem;width:100%;padding:11px;font-family:inherit;font-size:.9375rem;font-weight:700;transition:background .15s}.pwa-install-btn:hover{background:#4f46e5}.pwa-ios-title{color:#f1f5f9;font-size:1rem;font-weight:800}.pwa-ios-steps{text-align:left;flex-direction:column;gap:10px;width:100%;display:flex}.pwa-ios-step{color:#cbd5e1;background:#6366f114;border-radius:.625rem;align-items:center;gap:10px;padding:8px 10px;font-size:.8125rem;line-height:1.5;display:flex}.pwa-ios-num{color:#fff;background:#6366f1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.6875rem;font-weight:800;display:flex}.pwa-ios-share{color:#fff;vertical-align:middle;background:#6366f1;border-radius:4px;margin:0 2px;padding:1px 6px;font-size:.6875rem;font-weight:700;display:inline-block}
