:root{--green: #2e7d32;--green-dark: #1b5e20;--green-light: #e8f5e9;--orange: #ef6c00;--bg: #f4f7f4;--card: #ffffff;--text: #1f2a1f;--muted: #6b7a6b;--border: #dde5dd;--danger: #c62828;--radius: 12px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--green: #4caf50;--green-dark: #81c784;--green-light: #1e2a1e;--orange: #ffb74d;--bg: #141813;--card: #1e241d;--text: #eef1ec;--muted: #9bab97;--border: #333d31;--danger: #ef5350}}:root[data-theme=dark]{--green: #4caf50;--green-dark: #81c784;--green-light: #1e2a1e;--orange: #ffb74d;--bg: #141813;--card: #1e241d;--text: #eef1ec;--muted: #9bab97;--border: #333d31;--danger: #ef5350}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}.header{position:fixed;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;background:transparent}.brand-badge{flex:0 0 auto;display:flex;align-items:center;gap:8px;max-width:150px;padding:6px 14px 6px 6px;border-radius:999px;background:var(--card);box-shadow:0 2px 10px #0000002e;text-decoration:none}.brand-logo{flex:0 0 auto;width:30px;height:30px;border-radius:50%;object-fit:cover}.brand-emoji{flex:0 0 auto;width:20px;height:20px;color:var(--green)}.brand-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;font-size:.92rem;color:var(--text)}.nav-pill{display:flex;align-items:center;gap:2px;min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;padding:6px;border-radius:999px;background:var(--card);box-shadow:0 2px 10px #0000002e}.nav-pill::-webkit-scrollbar{display:none}.nav-pill a,.nav-pill .link-btn{flex:0 0 auto;white-space:nowrap;color:var(--text);text-decoration:none;padding:7px 10px;border-radius:999px;font-size:.88rem;font-weight:600;background:transparent;border:none;cursor:pointer;font-family:inherit}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;font-size:1.05rem}.nav-pill a.active{background:var(--green);color:#fff}.bottom-nav{position:fixed;left:50%;bottom:calc(14px + env(safe-area-inset-bottom,0px));z-index:10;transform:translate(-50%);display:flex;align-items:center;gap:2px;max-width:calc(100% - 24px);padding:6px;border-radius:999px;background:var(--card);box-shadow:0 4px 16px #00000038;overflow-x:auto;scrollbar-width:none}.bottom-nav::-webkit-scrollbar{display:none}.bottom-nav a,.bottom-nav .link-btn{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border-radius:999px;color:var(--text);text-decoration:none;background:transparent;border:none;cursor:pointer;font-size:1.15rem;font-family:inherit}.bottom-nav a.active{background:var(--green);color:#fff}.admin-badge{padding:7px 12px;font-size:.85rem;font-weight:700;color:var(--muted)}.badge{display:inline-block;min-width:20px;margin-left:6px;padding:1px 6px;border-radius:999px;background:var(--orange);color:#fff;font-size:.78rem;font-weight:700;text-align:center}.page{max-width:720px;margin:0 auto;padding:80px 16px 96px}.page-title{font-size:1.3rem;margin:8px 0 16px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:14px;margin-bottom:16px}.sub{font-size:.82rem;color:var(--muted)}.link{color:var(--green);font-weight:600}.notice{padding:14px 16px;border-radius:var(--radius);background:var(--green-light);color:var(--text);margin:12px 0}.pickup-only-notice{margin:0 0 14px;font-size:.88rem}.notice.error{background:#fdecea;color:var(--danger)}.notice-small{padding:8px 10px;margin:6px 0 0;font-size:.82rem}.btn{display:inline-block;padding:10px 18px;border:none;border-radius:10px;background:var(--green);color:#fff;font-size:.95rem;font-weight:700;cursor:pointer;text-decoration:none;text-align:center;font-family:inherit}.btn:disabled{opacity:.6;cursor:default}.btn:active{background:var(--green-dark)}.btn-big{width:100%;padding:14px;font-size:1.05rem}.btn-small{padding:6px 12px;font-size:.85rem}.btn-outline{background:transparent;color:var(--green);border:2px solid var(--green)}.remove-btn{border:none;background:none;color:var(--danger);font-size:.95rem;cursor:pointer;padding:2px 6px}.search-input{margin:0 0 14px;padding:12px 14px;font-size:1rem;border-radius:12px}.offers-section{margin:0 0 16px;padding:14px 12px 4px;border-radius:16px;background:linear-gradient(135deg,#fff3e0 0%,var(--green-light) 100%)}.offers-section .cat-header{margin:0 2px 10px}.offers-scroll{display:flex;gap:10px;overflow-x:auto;padding-bottom:10px;-webkit-overflow-scrolling:touch}.offers-scroll .product-card{flex:0 0 auto;width:140px}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.5}}.skeleton-block,.skeleton-line{background:var(--border);border-radius:6px;animation:skeleton-pulse 1.3s ease-in-out infinite}.skeleton-card{pointer-events:none}.skeleton-line{height:10px;margin-top:8px}.skeleton-line-title{width:65%;height:14px;margin-top:0}.skeleton-line-desc{width:90%}.skeleton-line-price{width:40%;margin-top:10px}.cat-tiles{display:flex;gap:14px;overflow-x:auto;padding:2px 2px 12px;margin-bottom:4px;-webkit-overflow-scrolling:touch}.cat-tile{flex:0 0 auto;width:64px;display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:none;cursor:pointer;font-family:inherit}.cat-tile-icon{width:56px;height:56px;border-radius:18px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;border:2.5px solid transparent;transition:border-color .15s}.cat-tile.active .cat-tile-icon{border-color:var(--green)}.cat-tile-label{font-size:.72rem;font-weight:700;color:var(--text);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:64px}.cat-header{font-size:1.02rem;margin:18px 0 10px;color:var(--green-dark)}.cat-select{width:auto;margin-top:6px;padding:4px 8px;font-size:.82rem;border-radius:8px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}@media(min-width:640px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}}@media(min-width:960px){.product-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.product-card{display:flex;flex-direction:column;padding:0;margin-bottom:0;cursor:pointer}.product-thumb-wrap{position:relative;width:100%;aspect-ratio:1 / 1;background:var(--green-light)}.product-thumb-img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--radius) var(--radius) 0 0}.product-thumb-wrap .thumb-placeholder{width:100%;height:100%;font-size:2.4rem}.featured-badge{position:absolute;top:6px;left:6px;background:var(--orange);color:#fff;padding:2px 6px;border-radius:6px;font-size:.58rem;font-weight:800;letter-spacing:.02em;box-shadow:0 1px 4px #0003}.floating-add{position:absolute;right:6px;bottom:-14px}.add-btn-float{flex:0 0 auto;min-width:48px;padding:6px 7px;border-radius:8px;border:1.5px solid var(--green);background:var(--card);color:var(--green-dark);font-weight:800;font-size:.68rem;cursor:pointer;font-family:inherit;box-shadow:0 3px 8px #00000024}.product-body{padding:19px 7px 10px;flex:1;min-width:0}.product-name{font-weight:600;font-size:.78rem;display:flex;align-items:center;gap:6px;min-width:0}.product-name .name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.product-desc{margin:2px 0 0;font-size:.68rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.product-unit{margin-top:4px;font-size:.68rem}.product-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px;margin-top:2px}.price-new{color:var(--text);font-weight:800;font-size:.86rem}.price-strike{color:var(--muted);font-weight:600;font-size:.68rem;text-decoration:line-through}.thumb{width:52px;height:52px;border-radius:10px;object-fit:cover;flex:0 0 auto;background:var(--green-light)}.thumb-placeholder{display:flex;align-items:center;justify-content:center;font-size:1.4rem}.chip-featured{flex:0 0 auto;background:#fff3e0;color:var(--orange);padding:1px 8px;font-size:.72rem}.chip-bundle{flex:0 0 auto;background:var(--green-light);color:var(--green-dark);padding:1px 8px;font-size:.72rem}.add-btn{flex:0 0 auto;min-width:92px}.stepper{flex:0 0 auto;display:flex;align-items:center;border:1.5px solid var(--green);border-radius:10px;overflow:hidden;background:var(--card)}.stepper.stepper-compact{border-radius:9px;box-shadow:0 3px 8px #00000024}.stepper.stepper-compact button{width:22px;height:26px;font-size:.9rem}.stepper.stepper-compact .stepper-value{min-width:26px;font-size:.62rem;padding:0 1px}.stepper button{width:36px;height:38px;border:none;background:var(--green-light);color:var(--green-dark);font-size:1.25rem;font-weight:700;cursor:pointer}.stepper-value{min-width:64px;text-align:center;font-weight:600;font-size:.9rem;padding:0 4px;white-space:nowrap}.cart-bar{position:fixed;left:12px;right:12px;bottom:12px;z-index:20;display:flex;align-items:center;justify-content:space-between;max-width:696px;margin:0 auto;padding:14px 18px;border-radius:14px;background:var(--green-dark);color:#fff;font-weight:700;text-decoration:none;box-shadow:0 6px 20px #00000040}.cart-bar-cta{font-size:.95rem}.table-wrap{overflow-x:auto;padding:0}.list-table{width:100%;border-collapse:collapse}.list-table th,.list-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle}.list-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.list-table .num{text-align:right;white-space:nowrap}.list-table tfoot td{border-bottom:none;font-weight:800;font-size:1.05rem}.row-hidden{opacity:.45}.order-form h2,.auth-card h1{font-size:1.1rem;margin:0 0 12px}.order-form label,.auth-card label{display:block;margin-bottom:12px;font-size:.9rem;font-weight:600;color:var(--muted)}.field-label{display:block;margin-bottom:8px;font-size:.9rem;font-weight:600;color:var(--muted)}.toggle-group{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.toggle-option{flex:1 1 auto;padding:12px 14px;border-radius:10px;border:1.5px solid var(--border);background:var(--card);color:var(--text);font-weight:700;font-size:.88rem;cursor:pointer;font-family:inherit;white-space:nowrap}.toggle-option.active{background:var(--green);border-color:var(--green);color:#fff}input,select,textarea{width:100%;margin-top:4px;padding:11px 12px;font-size:1rem;border:1.5px solid var(--border);border-radius:10px;background:var(--card);color:var(--text);font-family:inherit}input:focus,select:focus{outline:none;border-color:var(--green)}.auth-card{max-width:380px;margin:48px auto}.add-form{display:grid;grid-template-columns:1fr;gap:10px}@media(min-width:560px){.add-form{grid-template-columns:2fr 1fr 1fr 1.4fr auto;align-items:center}.add-form-narrow{grid-template-columns:2fr 1fr auto}}.add-form input,.add-form select{margin-top:0}.more-details{grid-column:1 / -1}.more-details summary{cursor:pointer;color:var(--green-dark);font-weight:600;font-size:.88rem;padding:4px 0}.more-details-body{display:grid;gap:10px;margin-top:8px}.more-details-body label,.detail-editor label{display:block;font-size:.85rem;font-weight:600;color:var(--muted)}.more-details-body textarea,.detail-editor textarea{width:100%;margin-top:4px;padding:10px 12px;font-size:.95rem;font-family:inherit;border:1.5px solid var(--border);border-radius:10px;resize:vertical}.char-count{display:block;margin-top:3px;text-align:right;font-size:.76rem;font-weight:500;color:var(--muted)}.checkbox-label{display:flex!important;align-items:center;gap:8px;flex-direction:row-reverse;justify-content:flex-end}.checkbox-label input{width:auto;margin:0}.offer-price-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px;border-radius:10px;background:var(--green-light)}.field-hint{display:block;margin-top:6px;font-size:.76rem;font-weight:500;color:var(--muted)}.pack-editor{display:flex;flex-direction:column;gap:8px;margin-top:4px}.pack-editor-row{display:grid;grid-template-columns:1fr 100px auto;gap:8px;align-items:center}.pack-editor-row input{margin-top:0}.image-input{margin-top:4px}.image-preview{display:flex;align-items:center;gap:10px}.image-preview img{width:56px;height:56px;border-radius:10px;object-fit:cover}.category-filter-bar{display:flex;align-items:center;gap:12px;margin-bottom:10px}.category-filter-bar label{display:flex;align-items:center;gap:8px;font-size:.78rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.category-filter-bar select{margin-top:0;width:auto}.admin-product-list,.admin-product-card{display:flex;flex-direction:column;gap:10px}.admin-product-top{display:flex;align-items:center;gap:12px}.admin-product-info{flex:1;min-width:0}.admin-product-top .remove-btn{flex:0 0 auto;font-size:1.1rem}.admin-product-card .cat-select{width:auto;max-width:220px}.admin-product-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:10px;border-top:1px solid var(--border)}.control-group{display:flex;align-items:center;gap:8px}.control-label{font-size:.78rem;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.price-input{width:84px;margin-top:0;padding:8px 10px}.edit-toggle{align-self:flex-start;padding:0;border:none;background:none;cursor:pointer;font-family:inherit;color:var(--green);font-size:.85rem;font-weight:600}.detail-editor{display:grid;gap:12px;padding-top:12px;border-top:1px dashed var(--border)}.detail-actions{display:flex;gap:10px}.price-edit{display:flex;align-items:center;gap:8px}.price-edit input{width:96px;margin-top:0;padding:8px 10px}.toggle{position:relative;width:46px;height:26px;border:none;border-radius:999px;background:#c5cfc5;cursor:pointer;transition:background .15s}.toggle .knob{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:left .15s}.toggle.on{background:var(--green)}.toggle.on .knob{left:23px}.chip{display:inline-block;padding:4px 12px;border-radius:999px;font-size:.8rem;font-weight:700}.chip-pending{background:#fff3e0;color:var(--orange)}.chip-accepted{background:#e3f2fd;color:#1565c0}.chip-preparing{background:#f3e5f5;color:#7b1fa2}.chip-ready{background:#e0f7fa;color:#00838f}.chip-completed{background:var(--green-light);color:var(--green-dark)}.chip-cancelled{background:#fdecea;color:var(--danger)}.order-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.order-customer{margin:6px 0 2px;font-weight:600}.order-delivery{margin-bottom:2px}.order-address{margin-bottom:10px}.order-customer a{color:var(--green)}.order-actions{margin-top:12px;display:flex;gap:10px}.pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin:8px 0 20px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-label{font-weight:700;margin-bottom:2px}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}@media(min-width:640px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.stat-card{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.stat-icon{font-size:1.5rem;margin-bottom:4px}.stat-value{font-size:1.5rem;font-weight:800;color:var(--green-dark)}.stat-label{font-size:.82rem;color:var(--muted);font-weight:600}.bill-head{text-align:center;margin-bottom:12px}.bill-head h2{margin:4px 0 10px;color:var(--green-dark)}.bill-meta{display:flex;justify-content:space-between;font-size:.88rem;color:var(--muted);margin-bottom:4px}.bill-head .chip{margin-top:8px}.bill-address{margin:2px 0 8px;text-align:center}.bill-note{margin:14px 0 2px;font-size:.92rem;color:var(--green-dark);text-align:center}.bill-actions{display:flex;gap:10px;justify-content:center}.whatsapp-btn{display:block;max-width:320px;margin:12px auto 0;text-align:center;background:#25d366}.whatsapp-btn:active{background:#1ebe57}.min-order-notice{font-size:.88rem}.business-hours{margin:-6px 0 14px}.dialog-overlay{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:20px;background:#00000080}.dialog-card{width:100%;max-width:340px;padding:20px;border-radius:var(--radius);background:var(--card);color:var(--text);box-shadow:0 12px 32px #00000040}.dialog-card p{margin:0 0 18px;font-size:.98rem}.dialog-actions{display:flex;gap:10px;justify-content:flex-end}.quickview-card{position:relative;width:100%;max-width:380px;max-height:88vh;overflow-y:auto;padding:0;margin-bottom:0;box-shadow:0 12px 32px #00000040}.quickview-close{position:absolute;top:10px;right:10px;z-index:1;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:999px;border:none;background:#00000073;color:#fff;font-size:.95rem;line-height:1;cursor:pointer}.quickview-thumb-wrap{position:relative;width:100%;aspect-ratio:4 / 3;background:var(--green-light)}.quickview-thumb-img{width:100%;height:100%;object-fit:cover;display:block;border-radius:var(--radius) var(--radius) 0 0}.quickview-thumb-wrap.thumb-placeholder,.quickview-thumb-wrap .thumb-placeholder{display:flex;align-items:center;justify-content:center;font-size:3rem}.quickview-body{padding:16px}.quickview-body .product-name{font-size:1.05rem}.quickview-desc{margin:6px 0 0;font-size:.85rem;color:var(--muted)}.quickview-body .product-unit{margin-top:6px;font-size:.8rem}.quickview-body .product-price{margin-top:8px}.quickview-body .price-new{font-size:1.2rem}.quickview-body .price-strike{font-size:.78rem}.quickview-add{margin-top:16px;display:flex;justify-content:center}.pack-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.pack-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1.5px solid var(--border);border-radius:10px}.pack-row-info{display:flex;align-items:baseline;gap:8px;min-width:0}.pack-row-label{font-size:.8rem;font-weight:600;color:var(--muted)}.btn-danger{background:var(--danger)}.btn-danger:active{background:#a51f1f}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%);z-index:110;padding:12px 20px;border-radius:999px;background:#263226;color:#fff;font-size:.9rem;font-weight:600;box-shadow:0 6px 20px #0000004d;max-width:90vw;text-align:center}.not-found{text-align:center;padding:48px 16px}.not-found-emoji{font-size:3rem;margin-bottom:8px}.not-found .page-title{margin:0 0 6px}.not-found .btn{margin-top:16px;display:inline-block}@media print{body *{visibility:hidden}.bill-card,.bill-card *{visibility:visible}.bill-card{position:absolute;top:0;left:0;width:100%;border:none}.no-print{display:none!important}}
