:root{--pink: #ff8fb1;--pink-dark: #e8628a;--lavender: #b9a6ff;--cream: #fff8f2;--text: #3d3548;--muted: #8a8194;--green: #25d366;--radius: 16px;--shadow: 0 4px 16px rgba(61, 53, 72, .08)}*{box-sizing:border-box}body{margin:0;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--cream);color:var(--text)}.page{min-height:100vh;display:flex;flex-direction:column}.navbar{background:linear-gradient(135deg,var(--pink),var(--lavender));padding:16px 20px;position:sticky;top:0;z-index:10;box-shadow:var(--shadow)}.navbar-inner{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.brand{font-size:22px;font-weight:800;color:#fff;text-decoration:none}.cart-button{position:relative;background:#fff;border:none;padding:10px 18px;border-radius:999px;font-weight:600;cursor:pointer;color:var(--pink-dark);font-size:15px}.cart-badge{position:absolute;top:-6px;right:-6px;background:var(--pink-dark);color:#fff;border-radius:999px;padding:2px 7px;font-size:12px}.main-content{max-width:1200px;margin:0 auto;padding:24px 20px 60px;width:100%}.page-title{text-align:center;font-size:28px;margin-bottom:20px}.status-text{text-align:center;color:var(--muted);padding:40px 0}.category-filter{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:28px}.category-chip{border:2px solid var(--pink);background:#fff;color:var(--pink-dark);padding:8px 18px;border-radius:999px;cursor:pointer;font-weight:600;font-size:14px;transition:all .15s ease}.category-chip.active,.category-chip:hover{background:var(--pink);color:#fff}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:20px}.product-card{background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;transition:transform .15s ease}.product-card:hover{transform:translateY(-4px)}.product-image-wrap{position:relative;aspect-ratio:1 / 1;background:#f4eee8}.product-image{width:100%;height:100%;object-fit:cover}.product-image.placeholder{display:flex;align-items:center;justify-content:center;font-size:48px}.discount-badge{position:absolute;top:10px;left:10px;background:var(--pink-dark);color:#fff;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700}.photo-count-badge{position:absolute;bottom:10px;right:10px;background:#0000008c;color:#fff;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600}.product-card{cursor:pointer}.product-info{padding:14px 16px 16px;display:flex;flex-direction:column;gap:6px;flex:1}.product-category{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--lavender);font-weight:700}.product-title{margin:0;font-size:17px}.product-description{margin:0;font-size:13px;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-price-row{margin-top:auto;display:flex;align-items:baseline;gap:8px}.price-old{text-decoration:line-through;color:var(--muted);font-size:13px}.price-new{font-size:18px;font-weight:800;color:var(--pink-dark)}.add-button{margin-top:8px;background:var(--pink);color:#fff;border:none;padding:10px;border-radius:10px;font-weight:700;cursor:pointer;font-size:14px}.add-button:hover{background:var(--pink-dark)}.drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;justify-content:flex-end;z-index:100}.drawer{background:#fff;width:100%;max-width:400px;height:100%;padding:20px;display:flex;flex-direction:column;overflow-y:auto}.drawer-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.close-button{background:none;border:none;font-size:20px;cursor:pointer}.drawer-items{display:flex;flex-direction:column;gap:14px;flex:1}.drawer-item{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding-bottom:10px}.drawer-item-info{display:flex;flex-direction:column;font-size:14px}.drawer-item-controls{display:flex;align-items:center;gap:8px}.drawer-item-controls button{background:#f4eee8;border:none;width:26px;height:26px;border-radius:6px;cursor:pointer;font-size:14px}.remove-btn{background:none!important}.name-input{margin-top:16px;padding:10px;border-radius:10px;border:1px solid #ddd;font-size:14px}.drawer-total{display:flex;justify-content:space-between;margin:16px 0;font-size:18px}.whatsapp-button{background:var(--green);color:#fff;border:none;padding:14px;border-radius:12px;font-weight:800;font-size:15px;cursor:pointer}.whatsapp-button:disabled{opacity:.6}.admin-login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--pink),var(--lavender));padding:20px}.admin-login-card{background:#fff;padding:32px;border-radius:var(--radius);width:100%;max-width:360px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow)}.admin-login-card h1{font-size:20px;text-align:center;margin-bottom:6px}.admin-login-card label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600}.admin-login-card input{padding:10px;border-radius:8px;border:1px solid #ddd;font-size:14px}.admin-login-card button{background:var(--pink-dark);color:#fff;border:none;padding:12px;border-radius:10px;font-weight:700;cursor:pointer;margin-top:6px}.error-text{color:#d02b2b;font-size:13px;text-align:center}.admin-page{max-width:900px;margin:0 auto;padding:24px 20px 60px}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.admin-tabs{display:flex;gap:10px;margin-bottom:20px}.admin-tabs button{border:none;background:#f4eee8;padding:10px 20px;border-radius:999px;cursor:pointer;font-weight:600}.admin-tabs button.active{background:var(--pink);color:#fff}.new-product-button{background:var(--lavender);color:#fff;border:none;padding:12px 20px;border-radius:10px;font-weight:700;cursor:pointer;margin-bottom:20px}.admin-product-list{display:flex;flex-direction:column;gap:12px}.admin-product-row{display:flex;align-items:center;gap:14px;background:#fff;padding:12px;border-radius:var(--radius);box-shadow:var(--shadow)}.admin-thumb{width:60px;height:60px;object-fit:cover;border-radius:10px;background:#f4eee8}.admin-product-info{display:flex;flex-direction:column;flex:1;font-size:14px}.inactive-tag{color:var(--muted);font-size:12px;font-style:italic}.admin-product-actions{display:flex;gap:8px}.admin-product-actions button{border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-weight:600;background:#f4eee8}.admin-product-actions .danger{background:#ffe3e3;color:#b02a2a}button.secondary{background:#f4eee8;color:var(--text);border:none;padding:10px 16px;border-radius:10px;cursor:pointer;font-weight:600}.admin-form-wrap{max-width:600px;margin:0 auto}.product-form{background:#fff;padding:24px;border-radius:var(--radius);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:14px}.product-form label{display:flex;flex-direction:column;gap:4px;font-size:14px;font-weight:600}.product-form input,.product-form textarea{padding:10px;border-radius:8px;border:1px solid #ddd;font-size:14px;font-family:inherit}.form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px}.checkbox-row{flex-direction:row!important;align-items:center;gap:8px!important}.existing-images{display:flex;gap:8px;flex-wrap:wrap}.existing-image-item{position:relative;width:70px;height:70px}.existing-image-item img{width:100%;height:100%;object-fit:cover;border-radius:8px}.existing-image-item button{position:absolute;top:-6px;right:-6px;background:#d02b2b;color:#fff;border:none;border-radius:50%;width:20px;height:20px;cursor:pointer;font-size:11px}.form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.form-actions button{padding:12px 22px;border-radius:10px;border:none;font-weight:700;cursor:pointer;background:var(--pink-dark);color:#fff}.form-actions button.secondary{background:#f4eee8;color:var(--text)}.admin-order-list{display:flex;flex-direction:column;gap:14px}.admin-order-row{background:#fff;padding:16px;border-radius:var(--radius);box-shadow:var(--shadow)}.admin-order-row ul{margin:8px 0;padding-left:18px;font-size:14px}.order-footer{display:flex;justify-content:space-between;align-items:center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200;padding:20px}.modal-card{background:#fff;border-radius:var(--radius);max-width:720px;width:100%;max-height:90vh;overflow-y:auto;display:flex;position:relative;box-shadow:var(--shadow)}.modal-close{position:absolute;top:12px;right:12px;background:#fff;border:none;border-radius:50%;width:32px;height:32px;font-size:16px;cursor:pointer;z-index:5;box-shadow:0 2px 6px #00000026}.modal-gallery{flex:1;min-width:0;padding:16px;display:flex;flex-direction:column;gap:10px}.modal-main-image-wrap{position:relative;aspect-ratio:1 / 1;background:#f4eee8;border-radius:12px;overflow:hidden}.modal-main-image{width:100%;height:100%;object-fit:cover}.modal-main-image.placeholder{display:flex;align-items:center;justify-content:center;font-size:60px}.gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffffe6;border:none;width:34px;height:34px;border-radius:50%;font-size:20px;cursor:pointer;line-height:1}.gallery-arrow.left{left:8px}.gallery-arrow.right{right:8px}.modal-thumbnails{display:flex;gap:8px;overflow-x:auto}.modal-thumb{width:56px;height:56px;flex-shrink:0;border-radius:8px;overflow:hidden;border:2px solid transparent;padding:0;cursor:pointer;background:#f4eee8}.modal-thumb.active{border-color:var(--pink)}.modal-thumb img{width:100%;height:100%;object-fit:cover}.modal-info{flex:1;min-width:0;padding:24px 24px 24px 8px;display:flex;flex-direction:column;gap:10px}.modal-title{margin:0;font-size:22px}.modal-description{margin:0;color:var(--muted);font-size:14px;line-height:1.5}.modal-quantity-row{display:flex;align-items:center;justify-content:space-between;margin-top:6px;font-weight:600;font-size:14px}.quantity-stepper{display:flex;align-items:center;gap:10px}.quantity-stepper button{background:#f4eee8;border:none;width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:16px}.modal-add-button{margin-top:auto;padding:14px;font-size:15px}@media (max-width: 500px){.form-row{grid-template-columns:1fr}.drawer{max-width:100%}.modal-card{flex-direction:column;max-height:95vh}.modal-info{padding:8px 16px 20px}}.tienda-page{max-width:960px;margin:0 auto;padding:24px 20px 60px}.tienda-user{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--muted)}.sale-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;align-items:start}.sale-card,.report-card,.kpi-card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.sale-card h2,.report-card h3{margin:0 0 14px;font-size:18px}.sale-search{width:100%;padding:14px;font-size:16px;border-radius:10px;border:2px solid var(--lavender)}.sale-matches{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.sale-matches button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#f9f4ee;border:none;border-radius:10px;padding:12px;font-size:15px;cursor:pointer;text-align:left}.sale-matches small,.sale-selected small,.sale-today-list small{color:var(--muted)}.sale-selected-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px}.sale-selected-head>div{display:flex;flex-direction:column}.sale-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.sale-fields label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.sale-fields input{padding:12px;font-size:16px;border-radius:10px;border:1px solid #ddd}.pay-methods{display:flex;flex-wrap:wrap;gap:8px}.pay-btn{flex:1;min-width:100px;padding:14px 10px;border-radius:10px;border:2px solid var(--pink);background:#fff;color:var(--pink-dark);font-weight:700;font-size:15px;cursor:pointer}.pay-btn.active{background:var(--pink);color:#fff}.sale-total{display:flex;justify-content:space-between;align-items:center;margin:16px 0 12px;font-size:20px}.sale-submit{width:100%;padding:16px;border:none;border-radius:12px;background:var(--green);color:#fff;font-size:17px;font-weight:800;cursor:pointer}.sale-submit:disabled{opacity:.45;cursor:not-allowed}.ok-text{color:#1a8a46;font-size:14px;font-weight:600;margin-top:12px}.warn-text{color:#b26a00;font-size:13px}.sale-today-total{margin:0 0 10px;color:var(--muted)}.sale-today-list{list-style:none;margin:0;padding:0;max-height:420px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.sale-today-list li{display:flex;justify-content:space-between;gap:10px;font-size:14px;border-bottom:1px solid #f0e9e1;padding-bottom:8px}.sale-today-list small{display:block}.status-text.small{padding:12px 0;font-size:14px}.report-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.report-filters button{border:2px solid var(--lavender);background:#fff;color:#6b57c9;padding:8px 14px;border-radius:999px;font-weight:600;cursor:pointer}.report-filters button.active{background:var(--lavender);color:#fff}.report-filters input[type=date]{padding:8px;border-radius:8px;border:1px solid #ddd}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:20px}.kpi-card{padding:16px}.kpi-card span{display:block;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;font-weight:700}.kpi-card strong{font-size:22px;color:var(--pink-dark)}.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.report-card h3{font-size:16px}.report-hint{margin:-8px 0 12px;font-size:12px;color:var(--muted)}.bars{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow-y:auto}.bar-row{display:grid;grid-template-columns:90px 1fr auto;gap:8px;align-items:center;font-size:13px}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{background:#f4eee8;border-radius:999px;height:12px;overflow:hidden}.bar-fill{background:linear-gradient(90deg,var(--pink),var(--lavender));height:100%;border-radius:999px}.bar-value{font-weight:700;white-space:nowrap}@media (max-width: 760px){.sale-layout,.report-grid{grid-template-columns:1fr}.bar-row{grid-template-columns:72px 1fr auto}.tienda-user span{display:none}}.manual-btn{width:100%;margin-top:12px;padding:12px;border:2px dashed var(--lavender);border-radius:10px;background:#fff;color:#6b57c9;font-weight:700;font-size:14px;cursor:pointer}.manual-name{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;margin-top:12px}.manual-name input{padding:12px;font-size:16px;border-radius:10px;border:1px solid #ddd}.cash-box{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#eafaf0;border:2px solid var(--green);border-radius:12px;padding:12px 14px;margin:0 0 10px}.cash-box strong{font-size:20px;color:#1a8a46}.sale-other-methods{margin:0 0 12px;font-size:13px;color:var(--muted)}.date-row{display:flex;align-items:flex-end;gap:10px;margin-bottom:16px}.date-row label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.date-row input{padding:10px;border-radius:8px;border:1px solid #ddd;font-size:15px}.expense-form{display:flex;flex-direction:column;gap:14px}.expense-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600}.expense-form input{padding:12px;font-size:16px;border-radius:10px;border:1px solid #ddd}.field-label{display:block;font-size:13px;font-weight:600;margin-bottom:6px}.field-hint{display:block;margin-top:6px;font-size:12px;color:var(--muted)}.caja-summary{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.caja-row{display:flex;justify-content:space-between;gap:10px;font-size:14px}.caja-row.total{border-top:2px solid #eee;padding-top:10px;margin-top:4px;font-size:17px;font-weight:800}.caja-row.total strong{color:#1a8a46}.expenses-title{margin-top:8px}.cashbase-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff7e0;border:2px solid #f0b429;border-radius:12px;padding:12px 16px;margin-bottom:16px;font-size:15px;font-weight:600}.cashbase-banner strong{font-size:20px;color:#8a5a00}.cash-box.expected{background:#fff}.cashbase-card{margin-bottom:20px}.cashbase-card .field-hint{margin:-6px 0 14px}.cashbase-form{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.cashbase-form label{display:flex;flex-direction:column;gap:4px;font-size:13px;font-weight:600;flex:1;min-width:160px}.cashbase-form input{padding:12px;font-size:16px;border-radius:10px;border:1px solid #ddd}.cashbase-form .sale-submit{width:auto;padding:12px 22px;font-size:15px}a.whatsapp-button{display:block;text-align:center;text-decoration:none}.cart-sent{display:flex;flex-direction:column;gap:14px;text-align:center;padding:24px 4px}.cart-sent h3{margin:0;font-size:22px}.cart-sent p{margin:0;color:var(--muted)}.exchange-sales{max-height:520px}.exchange-sale{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;border:2px solid transparent;border-radius:10px;background:#f9f4ee;font-size:14px;text-align:left;cursor:pointer}.exchange-sale small{display:block;color:var(--muted)}.exchange-sale.active{border-color:var(--pink);background:#fff0f5}.exchange-form{display:flex;flex-direction:column;gap:14px}.exchange-new{border:1px dashed var(--lavender);border-radius:12px;padding:12px}.exchange-summary{display:flex;flex-direction:column;gap:8px;background:#fbf7f2;border-radius:12px;padding:12px 14px}.area-switch{display:flex;gap:10px;margin-bottom:16px}.area-switch button{flex:1;padding:12px;border:2px solid var(--lavender);border-radius:12px;background:#fff;color:#6b57c9;font-weight:800;font-size:16px;cursor:pointer}.area-switch button.active{background:var(--lavender);color:#fff}.candy-layout{display:grid;gap:20px;grid-template-columns:1.4fr 1fr;grid-template-rows:auto 1fr;grid-template-areas:"tiles cart" "tiles today";align-items:start}.candy-tiles{grid-area:tiles}.candy-cart{grid-area:cart}.candy-today{grid-area:today}.candy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:12px}.candy-tile{position:relative;display:flex;flex-direction:column;gap:4px;padding:12px;border:2px solid #f0e9e1;border-radius:12px;background:#fdfaf6;cursor:pointer;-webkit-user-select:none;user-select:none;min-height:92px}.candy-tile:active{transform:scale(.98)}.candy-tile.selected{border-color:var(--pink);background:#fff0f5}.candy-tile.empty{opacity:.7}.candy-tile strong{font-size:14px;line-height:1.2}.candy-price{color:var(--pink-dark);font-weight:800}.candy-tile small{color:var(--muted)}.candy-qty{position:absolute;top:-8px;right:-8px;min-width:26px;height:26px;padding:0 6px;border-radius:999px;background:var(--pink-dark);color:#fff;font-weight:800;font-size:14px;display:flex;align-items:center;justify-content:center}.candy-minus{position:absolute;bottom:8px;right:8px;width:28px;height:28px;border:none;border-radius:50%;background:#fff;box-shadow:0 1px 4px #0003;font-size:18px;line-height:1;cursor:pointer}.stock-out{color:#c0392b!important;font-weight:700}.stock-low{color:#b26a00!important;font-weight:700}.candy-lines{list-style:none;margin:0 0 8px;padding:0;display:flex;flex-direction:column;gap:10px}.candy-lines li{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border-bottom:1px solid #f0e9e1;padding-bottom:8px}.candy-line-name{display:flex;flex-direction:column;font-size:14px}.candy-line-name small{color:var(--muted)}.candy-line-controls{display:flex;align-items:center;gap:8px}.candy-line-controls button{width:32px;height:32px;border:none;border-radius:8px;background:#f4eee8;font-size:18px;cursor:pointer}.candy-line-total{min-width:70px;text-align:right}.candy-clear{width:100%;margin-top:8px}.candy-products-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}.candy-products-head h2{margin:0}.candy-stock-box{display:flex;flex-direction:column;gap:10px;background:#fbf7f2;border-radius:12px;padding:12px 14px}.exchange-sale.inactive{opacity:.55}.badge-hidden{color:var(--muted);font-style:normal}@media (max-width: 760px){.candy-layout{grid-template-columns:1fr;grid-template-rows:none;grid-template-areas:"cart" "tiles" "today"}}.promo-tag{display:inline-block;align-self:flex-start;padding:1px 7px;border-radius:999px;background:#f0b429;color:#5c3b00;font-size:11px;font-weight:800}.promo-title{margin:18px 0 0;font-size:15px;color:#8a5a00}.candy-tile.promo{border-color:#f0b429;background:#fff7e0}.candy-tile.promo.selected{border-color:var(--pink);background:#ffe9b8}.expense-form .checkbox-row{flex-direction:row;align-items:center;gap:8px}.bar-row.wide{grid-template-columns:1fr auto;row-gap:4px}.bar-row.wide .bar-label{grid-column:1 / -1;white-space:normal;overflow:visible;text-overflow:clip;font-weight:600}.report-card.wide{grid-column:1 / -1}.report-card.wide .sale-today-list{max-height:480px}
