html:has(.shop-page){background:#f8e8ee!important}html:has(.shop-page) body{background:#f8e8ee!important}.shop-page{--shop-bg:#f8e8ee;--shop-card:#fff;--shop-gold:#b5895a;--shop-gold-light:#d4b48a;--shop-gold-dark:#8a6640;--shop-pink:#f0d0d8;--shop-pink-deep:#e8b0c0;--shop-text:#4a3030;--shop-text-light:#8a7070;--shop-border:#b5895a26;--shop-radius:18px;background:var(--shop-bg);min-height:100dvh;color:var(--shop-text);-webkit-font-smoothing:antialiased;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;overflow-x:hidden}.shop-header{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 0;background:linear-gradient(180deg, #f5dde4 0%, var(--shop-bg) 100%)}.shop-header-row{justify-content:space-between;align-items:center;display:flex}.shop-logo{object-fit:cover;object-position:center;border-radius:10px;width:auto;height:48px}.shop-header-icons{gap:8px;display:flex}.shop-icon-btn{width:38px;height:38px;color:var(--shop-gold-dark);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#fff9;border-radius:12px;justify-content:center;align-items:center;text-decoration:none;transition:transform .2s;display:flex}.shop-icon-btn:active{transform:scale(.9)}.shop-icon-btn.whatsapp{color:#25d366}.shop-stories{justify-content:center;gap:10px;padding:14px 16px 6px;display:flex}.shop-story-bubble{border:2.5px solid var(--shop-gold);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;width:54px;height:54px;padding:2px;transition:transform .2s}.shop-story-bubble:active{transform:scale(.92)}.shop-story-bubble img{object-fit:cover;border-radius:50%;width:100%;height:100%}.story-viewer{z-index:1000;background:#000;justify-content:center;align-items:center;animation:.2s shopFadeIn;display:flex;position:fixed;inset:0}.story-viewer-img{object-fit:contain;width:100%;height:100%}.story-progress-bar{top:calc(env(safe-area-inset-top,0px) + 8px);z-index:2;gap:4px;display:flex;position:absolute;left:8px;right:8px}.story-progress-track{background:#ffffff4d;border-radius:2px;flex:1;height:3px;overflow:hidden}.story-progress-fill{background:#fff;border-radius:2px;height:100%;transition:width .1s linear}.story-close{top:calc(env(safe-area-inset-top,0px) + 20px);color:#fff;cursor:pointer;z-index:3;background:#0006;border:none;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;display:flex;position:absolute;right:16px}.story-caption{bottom:calc(env(safe-area-inset-bottom,0px) + 30px);color:#fff;text-shadow:0 1px 4px #00000080;text-align:center;z-index:2;font-size:15px;font-weight:500;position:absolute;left:20px;right:20px}.shop-tabs{background:#ffffff80;border-radius:12px;gap:0;margin:10px 16px 0;padding:3px;display:flex}.shop-tab{color:var(--shop-text-light);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px;font-size:14px;font-weight:700;transition:all .25s}.shop-tab.active{background:var(--shop-card);color:var(--shop-gold-dark);box-shadow:0 2px 8px #0000000f}.shop-cat-filters{scrollbar-width:none;gap:8px;padding:14px 16px 4px;display:flex;overflow-x:auto}.shop-cat-filters::-webkit-scrollbar{display:none}.shop-cat-btn{border:1.5px solid var(--shop-border);background:var(--shop-card);color:var(--shop-text-light);cursor:pointer;white-space:nowrap;border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 16px;font-size:12px;font-weight:700;transition:all .2s;display:flex}.shop-cat-btn:active{transform:scale(.94)}.shop-cat-btn.active{background:var(--shop-gold);color:#fff;border-color:var(--shop-gold)}.shop-section{padding:14px 16px 24px}.shop-empty{text-align:center;color:var(--shop-text-light);padding:48px 20px;font-size:15px}.shop-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.shop-card{background:var(--shop-card);border-radius:var(--shop-radius);transition:transform .2s;overflow:hidden;box-shadow:0 2px 12px #0000000f}.shop-card:active{transform:scale(.97)}.shop-card-img-wrap{aspect-ratio:1;background:var(--shop-pink);width:100%;overflow:hidden}.shop-card-img{object-fit:cover;width:100%;height:100%}.shop-card-body{padding:12px 14px 8px}.shop-card-body h3{color:var(--shop-text);text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;font-size:14px;font-weight:700;overflow:hidden}.shop-card-cat{color:var(--shop-gold-light);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px;font-size:11px;font-weight:600;display:block}.shop-card-price{color:var(--shop-gold);font-size:16px;font-weight:800}.shop-order-btn{color:#fff;cursor:pointer;background:#25d366;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;width:calc(100% - 24px);margin:8px 12px 14px;padding:10px;font-size:13px;font-weight:700;transition:transform .2s;display:flex}.shop-order-btn:active{transform:scale(.95)}.shop-loading{justify-content:center;padding:60px;display:flex}.shop-loading:after{content:"";border:2px solid var(--shop-border);border-top-color:var(--shop-gold);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite shopSpin}@keyframes shopSpin{to{transform:rotate(360deg)}}.shop-footer{text-align:center;padding:32px 20px calc(env(safe-area-inset-bottom,0px) + 32px);background:linear-gradient(180deg, var(--shop-bg) 0%, #f5dde4 100%);margin-top:auto}.shop-footer-logo{opacity:.6;border-radius:8px;width:auto;height:36px;margin-bottom:10px}.shop-footer p{color:var(--shop-text-light);margin-bottom:4px;font-size:13px}.shop-footer-links{justify-content:center;gap:8px;margin-top:8px;display:flex}.shop-footer-links a{color:var(--shop-gold);font-size:13px;font-weight:600;text-decoration:none}.shop-footer-links span{color:var(--shop-text-light)}.shop-admin-link{color:var(--shop-text-light);opacity:.3;margin-top:20px;font-size:11px;text-decoration:none;display:inline-block}@keyframes shopFadeIn{0%{opacity:0}to{opacity:1}}@media (width>=768px){.shop-page{max-width:900px;margin:0 auto}.shop-header{padding-top:20px}.shop-logo{height:56px}.shop-grid{grid-template-columns:repeat(3,1fr);gap:16px}.shop-stories{justify-content:center}.shop-tabs{max-width:400px;margin-left:auto;margin-right:auto}.shop-cat-filters{flex-wrap:wrap;justify-content:center}.shop-card-body h3{font-size:16px}.shop-card-price{font-size:18px}}@media (width>=1200px){.shop-page{max-width:1100px}.shop-grid{grid-template-columns:repeat(4,1fr)}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0a0a0f;--bg-elevated:#141419;--bg-card:#1a1a22;--bg-card-hover:#22222d;--bg-input:#141419;--border:#ffffff0f;--border-focus:#d688b080;--accent:#d688b0;--accent-soft:#d688b01f;--accent-glow:#d688b040;--accent-gradient:linear-gradient(135deg, #c97ba4 0%, #d688b0 40%, #e4a5c7 100%);--green:#5cd69a;--green-soft:#5cd69a1f;--red:#f06070;--red-soft:#f060701f;--text:#f0eff4;--text-secondary:#f0eff48c;--text-tertiary:#f0eff44d;--radius-sm:12px;--radius:16px;--radius-lg:22px;--radius-xl:28px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 8px 30px #0006;--shadow-lg:0 16px 50px #00000080;--shadow-glow:0 4px 20px #d688b04d;--transition:.2s cubic-bezier(.25, .46, .45, .94);--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px)}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;font-family:Inter,-apple-system,BlinkMacSystemFont,SF Pro Display,sans-serif;font-size:16px;line-height:1.5}body{min-height:100dvh}input,button,select,textarea{font:inherit;color:inherit;-webkit-appearance:none}.page{max-width:430px;padding:calc(var(--safe-top) + 20px) 20px calc(var(--safe-bottom) + 90px);min-height:100dvh;margin:0 auto}.header{justify-content:space-between;align-items:center;padding:4px 0 24px;display:flex}.header h1{letter-spacing:-.5px;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:32px;font-weight:800}.header-logo{object-fit:contain;border-radius:8px;width:auto;height:40px}.header-actions{align-items:center;gap:8px;display:flex}.shop-preview-btn{border:1px solid var(--border);background:var(--bg-card);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);border-radius:10px;justify-content:center;align-items:center;display:flex}.shop-preview-btn:active{color:var(--accent);transform:scale(.9)}.back-btn{background:var(--bg-card);border:1px solid var(--border);cursor:pointer;width:40px;height:40px;color:var(--text);transition:all var(--transition);border-radius:12px;justify-content:center;align-items:center;font-size:18px;display:flex}.back-btn:active{background:var(--bg-card-hover);transform:scale(.92)}.lang-toggle{background:var(--accent-soft);letter-spacing:1px;color:var(--accent);cursor:pointer;transition:all var(--transition);border:1px solid #d688b033;border-radius:20px;padding:7px 16px;font-size:12px;font-weight:700}.lang-toggle:active{transform:scale(.94)}.summary-card{background:var(--accent-gradient);border-radius:var(--radius-lg);color:#fff;box-shadow:var(--shadow-glow);justify-content:space-between;align-items:flex-end;margin-bottom:20px;padding:28px 24px;display:flex;position:relative;overflow:hidden}.summary-card:before{content:"";filter:blur(40px);background:#ffffff1a;border-radius:50%;width:200px;height:200px;position:absolute;top:-40%;right:-20%}.summary-card:after{content:"";filter:blur(40px);background:#00000026;border-radius:50%;width:150px;height:150px;position:absolute;bottom:-30%;left:-10%}.summary-card.settled{background:linear-gradient(135deg,#3a9d6a 0%,#5cd69a 100%);box-shadow:0 4px 20px #5cd69a4d}.summary-label{opacity:.85;text-transform:uppercase;letter-spacing:.8px;z-index:1;font-size:13px;font-weight:600;position:relative}.summary-amount{letter-spacing:-1px;z-index:1;font-size:36px;font-weight:800;position:relative}.search-bar{margin-bottom:20px}.search-bar input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);width:100%;color:var(--text);transition:all var(--transition);outline:none;padding:14px 18px;font-size:15px;font-weight:500}.search-bar input::placeholder{color:var(--text-tertiary)}.search-bar input:focus{border-color:var(--border-focus);background:var(--bg-elevated);box-shadow:0 0 0 4px var(--accent-soft)}.customer-list{flex-direction:column;gap:10px;display:flex}.customer-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:all var(--transition);align-items:center;gap:14px;padding:16px 18px;display:flex}.customer-card:active{background:var(--bg-card-hover);transform:scale(.98)}.customer-avatar{background:var(--accent-soft);width:46px;height:46px;color:var(--accent);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:flex}.customer-info{flex:1;min-width:0}.customer-name{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:16px;font-weight:600;display:block;overflow:hidden}.customer-balance{flex-shrink:0;font-size:15px;font-weight:700}.customer-balance.owes{color:var(--red)}.customer-balance.settled{color:var(--green);background:var(--green-soft);border-radius:8px;padding:4px 10px;font-size:13px;font-weight:600}.customer-card-wrap{border-radius:var(--radius);transition:all var(--transition);overflow:hidden}.customer-card-wrap.expanded{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg)}.customer-card-wrap.expanded .customer-card{border-radius:var(--radius-lg) var(--radius-lg) 0 0;box-shadow:none;border:none}.customer-card-wrap.dragging{opacity:.5;transform:scale(.95)}.customer-card-wrap.drag-over{border-top:2px solid var(--accent)}.customer-expanded{padding:0 16px 16px;animation:.3s ease-out expandIn}@keyframes expandIn{0%{opacity:0;max-height:0}to{opacity:1;max-height:2000px}}.expanded-top-bar{align-items:center;gap:8px;margin-bottom:14px;display:flex}.whatsapp-btn-sm{color:#fff;width:36px;height:36px;transition:all var(--transition);background:#25d366;border-radius:10px;justify-content:center;align-items:center;text-decoration:none;display:flex;box-shadow:0 2px 8px #25d3664d}.whatsapp-btn-sm:active{transform:scale(.9)}.quick-charge-section{margin-bottom:14px}.quick-charge-section h4{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px;font-size:12px;font-weight:700}.custom-charge-toggle{background:var(--bg-elevated);border:1px dashed var(--border);border-radius:var(--radius-sm);width:100%;color:var(--text-secondary);cursor:pointer;transition:all var(--transition);margin-top:10px;padding:12px;font-size:14px;font-weight:600;display:block}.custom-charge-toggle:active{border-color:var(--accent);color:var(--accent)}.custom-form-row{gap:8px;display:flex}.custom-form-row button{flex:1}.payment-section{margin-bottom:16px}.btn-payment.full{border-radius:var(--radius);width:100%;padding:16px}.payment-panel-header{justify-content:space-between;align-items:center;display:flex}.btn-close-panel{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:18px}.select-hint{color:var(--text-tertiary);margin-bottom:8px;font-size:12px}.selectable-charges{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.selectable-charge{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);text-align:left;align-items:center;gap:10px;padding:12px 14px;display:flex}.selectable-charge:active{transform:scale(.98)}.selectable-charge.selected{border-color:var(--green);background:var(--green-soft)}.selectable-charge-check{border:2px solid var(--border);color:#fff;width:22px;height:22px;transition:all var(--transition);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.selectable-charge.selected .selectable-charge-check{background:var(--green);border-color:var(--green)}.selectable-charge-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;font-weight:600;overflow:hidden}.selectable-charge-date{color:var(--text-tertiary);flex-shrink:0;font-size:11px}.selectable-charge-amount{color:var(--accent);flex-shrink:0;font-size:14px;font-weight:700}.selected-total{color:var(--text-secondary);text-align:center;background:var(--green-soft);border-radius:8px;margin-bottom:8px;padding:8px;font-size:14px;font-weight:600}.selected-total strong{color:var(--green)}.pay-all-btn{background:var(--bg-elevated);border-radius:var(--radius-sm);width:100%;color:var(--green);cursor:pointer;transition:all var(--transition);border:1px solid #5cd69a4d;margin-bottom:4px;padding:12px;font-size:14px;font-weight:700}.pay-all-btn:active{background:var(--green-soft);transform:scale(.98)}.edit-customer-btn{background:var(--accent-soft);color:var(--accent);cursor:pointer;transition:all var(--transition);border:1px solid #d688b033;border-radius:10px;align-self:flex-start;align-items:center;gap:6px;margin-bottom:12px;padding:8px 16px;font-size:13px;font-weight:700;display:flex}.edit-customer-btn:active{transform:scale(.95)}.customer-expanded .section{margin-top:8px}.customer-expanded .section h3{font-size:15px}.drag-handle{color:var(--text-tertiary);cursor:grab;letter-spacing:1px;flex-shrink:0;padding:4px 2px;font-size:16px;line-height:1}.drag-handle:active{cursor:grabbing;color:var(--accent)}.customer-delete-btn{width:30px;height:30px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.customer-delete-btn:active{background:var(--red-soft);color:var(--red)}.customer-delete-confirm{flex-shrink:0;gap:6px;display:flex}.action-buttons{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;display:grid}.btn-charge,.btn-payment{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);letter-spacing:-.2px;border:none;padding:16px;font-size:15px;font-weight:700}.btn-charge:active,.btn-payment:active{transform:scale(.96)}.btn-charge{background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-glow)}.btn-payment{color:#fff;background:linear-gradient(135deg,#3a9d6a,#5cd69a);box-shadow:0 4px 20px #5cd69a40}.charge-panel{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);margin-bottom:20px;padding:20px;animation:.3s ease-out fadeSlideIn}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.charge-panel h3{background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:16px;font-size:18px;font-weight:700}.payment-panel h3{background:linear-gradient(135deg,#3a9d6a,#5cd69a);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.charge-panel h4{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:1.2px;margin:16px 0 10px;font-size:11px;font-weight:700}.product-grid{flex-wrap:wrap;gap:6px;display:flex}.product-btn{border:1px solid var(--border);background:var(--bg-elevated);cursor:pointer;transition:all var(--transition);border-radius:10px;align-items:center;gap:8px;padding:10px 14px;display:flex}.product-btn:active{border-color:var(--accent);background:var(--accent-soft);transform:scale(.96)}.product-btn-name{color:var(--text);white-space:nowrap;font-size:13px;font-weight:600}.product-btn-price{color:var(--accent);font-size:13px;font-weight:800}.custom-form{flex-direction:column;gap:10px;display:flex}.custom-form input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);color:var(--text);transition:all var(--transition);outline:none;padding:14px 16px;font-size:15px;font-weight:500}.custom-form input::placeholder{color:var(--text-tertiary)}.custom-form input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--accent-soft)}.section{margin-bottom:24px}.section h3{color:var(--text);margin-bottom:12px;font-size:18px;font-weight:700}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-header h3{margin-bottom:0}.transaction-list{flex-direction:column;gap:8px;display:flex}.transaction-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);justify-content:space-between;align-items:center;padding:14px 16px;display:flex}.txn-left{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.txn-type{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:700;display:flex}.txn-type.charge{background:var(--red-soft);color:var(--red)}.txn-type.payment{background:var(--green-soft);color:var(--green)}.txn-info{flex-direction:column;gap:2px;min-width:0;display:flex}.txn-note{text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:14px;font-weight:600;overflow:hidden}.txn-date{color:var(--text-tertiary);font-size:12px;font-weight:500}.txn-right{flex-shrink:0;align-items:center;gap:10px;display:flex}.txn-amount{letter-spacing:-.3px;font-size:15px;font-weight:700}.txn-amount.charge{color:var(--red)}.txn-amount.payment{color:var(--green)}.catalog-list{flex-direction:column;gap:8px;display:flex}.catalog-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);transition:all var(--transition);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.catalog-item-info{cursor:pointer;flex:1;justify-content:space-between;align-items:center;min-width:0;margin-right:14px;display:flex}.catalog-item-name{color:var(--text);font-size:15px;font-weight:600}.catalog-item-price{color:var(--accent);letter-spacing:-.3px;font-size:15px;font-weight:800}.catalog-item-actions{gap:6px;display:flex}.btn-primary{background:var(--accent-gradient);color:#fff;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);box-shadow:var(--shadow-glow);border:none;padding:14px 24px;font-size:15px;font-weight:700}.btn-primary:active{transform:scale(.97)}.btn-secondary{background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition);padding:14px 24px;font-size:15px;font-weight:600}.btn-secondary:active{background:var(--bg-card-hover)}.btn-add-sm{border:1px solid var(--border);background:var(--accent-soft);width:36px;height:36px;color:var(--accent);cursor:pointer;transition:all var(--transition);border-radius:10px;justify-content:center;align-items:center;font-size:20px;font-weight:600;display:flex}.btn-add-sm:active{transform:scale(.9)}.btn-delete-sm{width:30px;height:30px;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:18px;display:flex}.btn-delete-sm:active{background:var(--red-soft);color:var(--red)}.btn-danger-sm{background:var(--red);color:#fff;cursor:pointer;transition:all var(--transition);border:none;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700}.btn-secondary-sm{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}.fab{bottom:calc(var(--safe-bottom) + 86px);background:var(--accent-gradient);color:#fff;width:58px;height:58px;box-shadow:var(--shadow-glow), var(--shadow-md);cursor:pointer;transition:all var(--transition);z-index:10;border:none;border-radius:18px;justify-content:center;align-items:center;font-size:28px;font-weight:400;display:flex;position:fixed;right:max(20px,50vw - 195px)}.fab:active{transform:scale(.88)rotate(-90deg)}.modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:100;background:#000000b3;justify-content:center;align-items:flex-end;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:28px 24px calc(var(--safe-bottom) + 28px);width:100%;max-width:430px;animation:.35s cubic-bezier(.16,1,.3,1) slideUp}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.modal:before{content:"";background:var(--text-tertiary);border-radius:2px;width:36px;height:4px;margin:0 auto 20px;display:block}.modal h2{letter-spacing:-.3px;background:var(--accent-gradient);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:20px;font-size:22px;font-weight:800}.modal input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text);transition:all var(--transition);outline:none;margin-bottom:12px;padding:14px 16px;font-size:16px;font-weight:500}.modal input::placeholder{color:var(--text-tertiary)}.modal input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--accent-soft)}.modal-actions{gap:10px;margin-top:8px;display:flex}.modal-actions button{flex:1}.bottom-nav{-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--border);padding:10px 0 calc(var(--safe-bottom) + 10px);z-index:50;background:#141419d9;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.nav-btn{cursor:pointer;color:var(--text-tertiary);letter-spacing:.3px;transition:color var(--transition);background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:6px 18px;font-size:11px;font-weight:600;display:flex}.nav-btn.active{color:var(--accent)}.nav-btn svg{width:22px;height:22px}.loading{color:var(--text-tertiary);justify-content:center;align-items:center;padding:60px 20px;display:flex}.loading:after{content:"";border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:24px;height:24px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{text-align:center;color:var(--text-tertiary);padding:48px 20px;font-size:15px;font-weight:500}.empty-sm{text-align:center;color:var(--text-tertiary);padding:20px;font-size:14px;font-weight:500}::-webkit-scrollbar{display:none}button,.customer-card,.catalog-item-info,.product-btn{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}@supports (padding:max(0px)){.page{padding-left:max(20px, env(safe-area-inset-left));padding-right:max(20px, env(safe-area-inset-right))}}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}.profile-hero{flex-direction:column;align-items:center;gap:16px;margin-bottom:24px;display:flex}.profile-avatar-wrap{cursor:pointer;width:90px;height:90px;position:relative}.profile-avatar-img{object-fit:cover;border:2px solid var(--border);border-radius:24px;width:90px;height:90px}.profile-avatar-letter{background:var(--accent-soft);width:90px;height:90px;color:var(--accent);border:2px solid var(--border);border-radius:24px;justify-content:center;align-items:center;font-size:36px;font-weight:800;display:flex}.profile-avatar-edit{background:var(--accent);color:#fff;width:28px;height:28px;box-shadow:var(--shadow-sm);border-radius:8px;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-4px;right:-4px}.profile-balance-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;padding:14px 28px}.profile-balance-label{text-transform:uppercase;letter-spacing:1px;color:var(--text-tertiary);margin-bottom:4px;font-size:11px;font-weight:700;display:block}.profile-balance-amount{letter-spacing:-.5px;color:var(--red);font-size:28px;font-weight:800}.profile-balance-card.settled .profile-balance-amount{color:var(--green)}.avatar-upload{cursor:pointer;justify-content:center;margin-bottom:16px;display:flex}.avatar-upload-img{object-fit:cover;border:2px solid var(--border);border-radius:22px;width:80px;height:80px}.avatar-upload-placeholder{background:var(--bg-card);border:2px dashed var(--border);width:80px;height:80px;color:var(--text-tertiary);transition:all var(--transition);border-radius:22px;justify-content:center;align-items:center;display:flex}.avatar-upload-placeholder:active{border-color:var(--accent);color:var(--accent)}.customer-avatar-img{object-fit:cover;border:1px solid var(--border);border-radius:14px;flex-shrink:0;width:46px;height:46px}.summary-count{opacity:.7;z-index:1;font-size:12px;font-weight:600;position:relative}.icon-picker-section{margin-bottom:16px}.icon-picker-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.icon-picker-btn{aspect-ratio:1;border:1px solid var(--border);background:var(--bg-card);cursor:pointer;width:100%;transition:all var(--transition);border-radius:10px;justify-content:center;align-items:center;font-size:22px;display:flex}.icon-picker-btn:active{transform:scale(.9)}.icon-picker-btn.active{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 2px var(--accent-soft)}.icon-picker-btn.upload{color:var(--text-tertiary)}.icon-picker-btn.upload.active{border-color:var(--accent);background:var(--accent-soft)}.icon-picker-preview{object-fit:cover;border-radius:9px;width:100%;height:100%}.catalog-add-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;display:grid}.catalog-add-btn{border-radius:var(--radius);cursor:pointer;background:var(--accent-gradient);color:#fff;box-shadow:var(--shadow-glow);transition:all var(--transition);border:none;padding:14px;font-size:14px;font-weight:700}.catalog-add-btn.secondary{background:var(--bg-card);border:1px solid var(--border);color:var(--text);box-shadow:none}.catalog-add-btn:active{transform:scale(.96)}.catalog-tabs{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:3px;display:flex}.catalog-tab{color:var(--text-tertiary);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px;font-size:13px;font-weight:700;transition:all .2s}.catalog-tab.active{background:var(--accent-soft);color:var(--accent)}.catalog-filter-chips{scrollbar-width:none;gap:6px;padding-bottom:12px;display:flex;overflow-x:auto}.catalog-filter-chips::-webkit-scrollbar{display:none}.catalog-chip{border:1px solid var(--border);background:var(--bg-card);color:var(--text-tertiary);cursor:pointer;white-space:nowrap;border-radius:16px;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:600;transition:all .2s}.catalog-chip.active{background:var(--accent);color:#fff;border-color:var(--accent)}.catalog-chip:active{transform:scale(.94)}.catalog-item-text{flex-direction:column;flex:1;min-width:0;display:flex}.catalog-item-subcat{color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600}.catalog-section{border-radius:var(--radius-lg);margin-bottom:16px;padding:18px}.catalog-section.services{background:linear-gradient(165deg,#d688b014 0%,#d688b008 100%);border:1px solid #d688b01f}.catalog-section.products{background:linear-gradient(165deg,#82a0ff14 0%,#82a0ff08 100%);border:1px solid #82a0ff1f}.catalog-section-header{align-items:center;gap:10px;margin-bottom:14px;display:flex}.catalog-section-header h3{flex:1;margin:0;font-size:18px;font-weight:700}.catalog-section.services .catalog-section-header h3{color:var(--accent)}.catalog-section.products .catalog-section-header h3{color:#8aa0ff}.catalog-section-icon{font-size:22px;line-height:1}.catalog-section.services .btn-add-sm{color:var(--accent);background:#d688b026;border-color:#d688b040}.catalog-section.products .btn-add-sm{color:#8aa0ff;background:#82a0ff26;border-color:#82a0ff40}.catalog-item.service{border-color:#d688b01a}.catalog-item.service .catalog-item-price{color:var(--accent)}.catalog-item.product{border-color:#82a0ff1a}.catalog-item.product .catalog-item-price{color:#8aa0ff}.catalog-item-info{cursor:pointer;flex:1;align-items:center;gap:12px;min-width:0;margin-right:14px;display:flex}.catalog-item-visual{background:var(--accent-soft);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.catalog-item-visual.service{background:#d688b01f}.catalog-item-visual.product{background:#82a0ff1f}.catalog-item-img{object-fit:cover;width:40px;height:40px}.catalog-item-icon{font-size:20px}.catalog-item-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.catalog-item-price{flex-shrink:0}.product-btn-icon{flex-shrink:0;font-size:18px;line-height:1}.product-btn-img{object-fit:cover;border-radius:6px;flex-shrink:0;width:24px;height:24px}button:disabled{opacity:.5;pointer-events:none}.txn-confirm-delete{gap:6px;display:flex}.whatsapp-btn{border-radius:var(--radius);color:#fff;width:100%;transition:all var(--transition);background:#25d366;justify-content:center;align-items:center;gap:8px;margin-bottom:12px;padding:14px;font-size:15px;font-weight:700;text-decoration:none;display:flex;box-shadow:0 4px 16px #25d3664d}.whatsapp-btn:active{transform:scale(.97)}.currency-toggle{background:var(--accent-soft);color:var(--accent);cursor:pointer;transition:all var(--transition);border:1px solid #d688b033;border-radius:20px;padding:7px 16px;font-size:13px;font-weight:700}.currency-toggle:active{transform:scale(.94)}.currency-bar{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;margin-bottom:20px;padding:10px 16px;display:flex}.currency-bar-label{color:var(--text-secondary);font-size:13px;font-weight:600}.currency-bar-edit{color:var(--accent);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:13px;font-weight:700}.rate-label{color:var(--text-secondary);margin-bottom:8px;font-size:13px;font-weight:600;display:block}.summary-alt{opacity:.65;z-index:1;font-size:14px;font-weight:600;position:relative}.stats-row{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;gap:2px;padding:16px;display:flex}.stat-label{text-transform:uppercase;letter-spacing:.8px;color:var(--text-tertiary);font-size:11px;font-weight:700}.stat-amount{letter-spacing:-.5px;color:var(--accent);font-size:22px;font-weight:800}.stat-amount.green{color:var(--green)}.stat-alt{color:var(--text-tertiary);font-size:12px;font-weight:600}.stat-sub{color:var(--text-tertiary);margin-top:2px;font-size:11px;font-weight:600}.chart{align-items:flex-end;gap:4px;height:160px;margin-bottom:12px;padding:0 4px;display:flex}.chart-col{flex-direction:column;flex:1;align-items:center;gap:6px;height:100%;display:flex}.chart-bars{flex:1;align-items:flex-end;gap:2px;width:100%;display:flex}.chart-bar{border-radius:4px 4px 0 0;flex:1;min-height:2px;transition:height .5s cubic-bezier(.16,1,.3,1)}.chart-bar.charge{background:var(--accent);opacity:.8}.chart-bar.payment{background:var(--green);opacity:.6}.chart-label{color:var(--text-tertiary);letter-spacing:.3px;font-size:10px;font-weight:600}.chart-label.active{color:var(--accent)}.chart-legend{justify-content:center;gap:20px;margin-bottom:24px;display:flex}.chart-legend-item{color:var(--text-secondary);align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex}.dot{border-radius:50%;width:8px;height:8px}.dot.charge{background:var(--accent)}.dot.payment{background:var(--green)}.transaction-item.clickable{cursor:pointer}.transaction-item.clickable:active{background:var(--bg-card-hover)}.txn-amounts{flex-direction:column;align-items:flex-end;display:flex}.txn-amount-alt{color:var(--text-tertiary);font-size:11px;font-weight:500}.toast{bottom:calc(var(--safe-bottom) + 90px);background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:300;opacity:0;pointer-events:none;align-items:center;gap:14px;max-width:calc(100vw - 40px);padding:12px 18px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;left:50%;transform:translate(-50%)translateY(20px)}.toast.show{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.toast-msg{color:var(--green);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.toast-undo{background:var(--accent-soft);color:var(--accent);cursor:pointer;white-space:nowrap;transition:all var(--transition);border:1px solid #d688b040;border-radius:8px;padding:6px 14px;font-size:12px;font-weight:700}.toast-undo:active{transform:scale(.95)}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex}.auth-card{flex-direction:column;align-items:center;gap:28px;width:100%;max-width:320px;display:flex}.auth-logo{border-radius:16px;width:180px;height:auto}.auth-card form{flex-direction:column;gap:12px;width:100%;display:flex}.auth-input{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);width:100%;color:var(--text);text-align:center;letter-spacing:2px;transition:all var(--transition);outline:none;padding:16px 18px;font-size:16px;font-weight:500}.auth-input::placeholder{color:var(--text-tertiary);letter-spacing:.5px}.auth-input:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--accent-soft)}.auth-input.shake{border-color:var(--red);box-shadow:0 0 0 4px var(--red-soft);animation:.4s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-8px)}40%,80%{transform:translate(8px)}}.auth-btn{width:100%;padding:16px;font-size:16px}.install-banner{z-index:200;background:var(--accent-gradient);padding:calc(var(--safe-top) + 12px) 16px 12px;box-shadow:var(--shadow-lg);justify-content:space-between;align-items:center;gap:12px;animation:.4s cubic-bezier(.16,1,.3,1) slideBannerDown;display:flex;position:fixed;top:0;left:0;right:0}@keyframes slideBannerDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.install-banner-content{flex:1;align-items:center;gap:10px;display:flex}.install-banner-icon{flex-shrink:0;font-size:24px}.install-banner-text{color:#fff;font-size:13px;font-weight:600;line-height:1.4}.install-banner-close{color:#fff;cursor:pointer;width:28px;height:28px;transition:all var(--transition);background:#fff3;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.install-banner-close:active{background:#ffffff4d;transform:scale(.9)}.install-banner-body{flex-direction:column;gap:8px;display:flex}.install-banner-btn{color:#fff;cursor:pointer;transition:all var(--transition);background:#ffffff40;border:1px solid #fff6;border-radius:10px;align-self:flex-start;padding:8px 20px;font-size:14px;font-weight:700}.install-banner-btn:active{background:#ffffff59;transform:scale(.95)}.photo-upload-section{cursor:pointer;margin-bottom:16px}.photo-upload-preview{aspect-ratio:1;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border);width:100%}.photo-upload-placeholder{aspect-ratio:16/9;border-radius:var(--radius);background:var(--bg-card);border:2px dashed var(--border);width:100%;color:var(--text-tertiary);transition:all var(--transition);flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.photo-upload-placeholder span{font-size:13px;font-weight:600}.photo-upload-placeholder:active{border-color:var(--accent);color:var(--accent)}.subcategory-select{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text);appearance:none;transition:all var(--transition);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238a8a8a' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;outline:none;margin-bottom:12px;padding:14px 16px;font-size:16px;font-weight:500}.subcategory-select:focus{border-color:var(--border-focus);box-shadow:0 0 0 4px var(--accent-soft)}.catalog-item-placeholder{color:var(--text-tertiary);font-size:18px;font-weight:300}.publish-toggle-row{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-input);width:100%;color:var(--text-tertiary);cursor:pointer;transition:all var(--transition);align-items:center;gap:10px;margin-bottom:12px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.publish-toggle-row.on{background:var(--green-soft);color:var(--green);border-color:#5cd69a66}.publish-toggle-eye{font-size:18px}.publish-toggle{cursor:pointer;opacity:.35;width:30px;height:30px;transition:all var(--transition);background:0 0;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;display:flex}.publish-toggle.on{opacity:1}.stories-upload-btn{background:var(--accent-gradient);color:#fff;border-radius:var(--radius);cursor:pointer;width:100%;box-shadow:var(--shadow-glow);transition:all var(--transition);border:none;justify-content:center;align-items:center;gap:10px;margin-bottom:12px;padding:16px;font-size:15px;font-weight:700;display:flex}.stories-upload-btn:active{transform:scale(.97)}.stories-hint{color:var(--text-tertiary);text-align:center;margin-bottom:20px;font-size:12px;line-height:1.5}.stories-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.story-card{border-radius:var(--radius);aspect-ratio:3/4;border:1px solid var(--border);position:relative;overflow:hidden}.story-card.pinned{border-color:var(--accent)}.story-card-img{object-fit:cover;width:100%;height:100%}.story-card-overlay{background:linear-gradient(#0000,#0009);justify-content:space-between;align-items:center;padding:8px;display:flex;position:absolute;bottom:0;left:0;right:0}.story-card-pin{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:700}.story-card-pin.active{background:var(--accent)}.story-card-delete{color:#fff;cursor:pointer;background:#f06070b3;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.story-card-confirm{gap:4px;display:flex}.stories-section{background:linear-gradient(165deg,#ffc87814 0%,#ffc87808 100%)!important;border-color:#ffc8781f!important}.stories-admin-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.story-admin-item{aspect-ratio:1;border-radius:10px;position:relative;overflow:hidden}.story-admin-img{object-fit:cover;width:100%;height:100%}.story-admin-actions{gap:4px;display:flex;position:absolute;bottom:4px;right:4px}.story-pin-btn,.story-delete-btn{cursor:pointer;color:#fff;background:#00000080;border:none;border-radius:6px;justify-content:center;align-items:center;width:26px;height:26px;font-size:12px;display:flex}.story-pin-btn.pinned{background:var(--accent)}.story-delete-btn{background:#f06070cc}
