.food-shell{--fg:#183d30;--green:#207b4b;--line:#dfe8e1;max-width:1320px;margin:0 auto;padding:20px 24px 80px;color:var(--fg);font-family:'Plus Jakarta Sans',system-ui,sans-serif}.food-shell *{box-sizing:border-box}.food-shell a{color:inherit;text-decoration:none}.food-shell a:hover{text-decoration:underline}.food-tabs{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding:0 0 18px}.food-tabs>a{padding:10px 14px;border-radius:12px;font-weight:700;font-size:14px}.food-tabs>a:first-child{background:#e6f2e8;color:#17693f}.food-tabs>span{flex:1}.food-hero{display:flex;gap:24px;align-items:center;justify-content:space-between;padding:45px 0 32px}.food-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:800;color:#548164}.food-hero h1{font-size:clamp(30px,4vw,52px);max-width:730px;line-height:1.12;letter-spacing:-.04em;margin:12px 0 16px;font-weight:800}.food-hero p{font-size:18px;color:#66766c;margin:0}.food-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;background:var(--green);padding:13px 19px;color:white!important;font:700 14px/1.3 inherit;cursor:pointer;text-align:center;min-height:44px;text-decoration:none!important}.food-button:hover{filter:brightness(.95)}.food-button.secondary{background:#f0f6f0;color:var(--fg)!important;border-color:var(--line)}.food-button.danger{background:#a83e38}.food-button:disabled{opacity:.45;cursor:not-allowed}.food-button.small{padding:9px 13px}.food-filters{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;background:#f6f8f3;border:1px solid var(--line);padding:22px;border-radius:20px}.food-shell label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:650}.food-search{grid-column:span 2}.food-shell input:not([type=checkbox]),.food-shell select,.food-shell textarea{width:100%;max-width:100%;border:1px solid #d6e0d8;border-radius:11px;background:#fff;min-height:44px;padding:10px 12px;font:400 15px/1.4 system-ui;color:#254134}.food-shell input:focus,.food-shell select:focus,.food-shell textarea:focus{outline:2px solid #74ad83;outline-offset:2px}.food-shell input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);flex-shrink:0}.food-shell .food-check{flex-direction:row;align-items:center;gap:8px;font-size:13px;align-self:center}.food-shell textarea{min-height:105px;resize:vertical}.food-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:27px 0 20px}.food-toolbar h1,.food-toolbar h2{margin:0}.food-segment{display:flex;background:#edf3e9;border-radius:30px;padding:4px}.food-segment button{border:0;background:none;border-radius:25px;padding:9px 16px;cursor:pointer;font:600 14px system-ui;color:var(--fg)}.food-segment button.active{background:white;box-shadow:0 1px 4px #13362115}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.food-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;transition:box-shadow .15s}.food-card:hover{box-shadow:0 8px 25px #163d3010}.food-card-image{display:block;position:relative;height:220px;overflow:hidden;background:#eef1e7}.food-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .2s}.food-card:hover img{transform:scale(1.025)}.food-placeholder{height:100%;min-height:160px;display:grid;place-content:center;background:radial-gradient(circle at 20% 20%,#fbefc7 0,transparent 50%),linear-gradient(135deg,#f5e7c5,#dbe8cf);font-size:24px;font-weight:800;color:#6d754c;padding:25px;text-align:center}.food-discount,.food-stock{position:absolute;top:14px;padding:7px 12px;border-radius:25px;font-size:13px}.food-discount{left:14px;background:#f4cb41;color:#263b23}.food-stock{right:14px;background:#287a47;color:#fff}.food-card-body{padding:22px}.food-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.food-row>a{font-weight:700}.food-row strong{white-space:nowrap;font-size:23px;color:#287744}.food-card h3{font-size:17px;font-weight:600;line-height:1.4;margin:13px 0}.food-muted{color:#68786c;font-size:14px}.food-pickup{border-top:1px dashed var(--line);padding-top:15px;font-size:13px;font-weight:650;margin:17px 0}.food-share{border:0;background:transparent;color:#267548;font:600 14px system-ui;cursor:pointer;min-height:44px;padding:8px}.food-map{height:520px;border-radius:18px;border:1px solid var(--line);z-index:0}.food-pagination{display:flex;justify-content:center;gap:15px;margin:30px 0}.food-empty{padding:55px 20px;text-align:center;background:#f6f8f3;border-radius:18px}.food-panel{background:white;border:1px solid var(--line);border-radius:18px;padding:25px;margin:18px 0}.food-panel h1{font-size:32px;line-height:1.2}.food-detail{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start;margin-top:30px}.food-detail-image{border-radius:20px;overflow:hidden;position:sticky;top:110px}.food-detail-image img{width:100%;max-height:650px;object-fit:cover}.food-detail-image .food-placeholder{min-height:420px}.food-detail .food-panel{margin:0}.food-price{font-size:32px;font-weight:800;color:#257345}.food-price del{font-size:18px;color:#819083;font-weight:400}.food-notice{padding:15px 18px;background:#edf6e9;border-radius:12px;margin:15px 0;line-height:1.5}.food-notice.error{background:#fff0ec;color:#9d3426}.food-cover{height:260px;border-radius:20px;overflow:hidden;background:linear-gradient(110deg,#e5edda,#afc9b2)}.food-cover img{width:100%;height:100%;object-fit:cover}.food-place .food-panel{margin-top:-40px;position:relative;margin-left:25px;margin-right:25px}.food-logo{width:100px;height:100px;object-fit:contain;border:5px solid #fff;border-radius:20px;background:#fff}.food-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:15px 0}.food-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.food-form .wide{grid-column:1/-1}.food-thumb{height:85px;max-width:180px;object-fit:cover;border-radius:10px;display:inline-block;margin:10px}.food-business-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.food-business-list .food-panel{display:flex;flex-direction:column;gap:10px;margin:0}.food-badge{display:inline-block;background:#edf3e8;padding:5px 10px;font-size:12px;border-radius:20px}.food-credit-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:30px;border-radius:20px;background:#eef5e9;padding:30px;margin-top:25px}.food-credit-panel h1{font-size:65px;margin:10px 0}.food-credit-panel p{line-height:1.6;font-size:14px}.food-packages{display:grid;grid-template-columns:1fr 1fr;gap:16px}.food-packages form{display:flex;flex-direction:column;gap:14px;background:white;border-radius:16px;padding:22px}.food-packages h3{margin:0}.food-packages strong{font-size:32px}.food-reservations{display:grid;grid-template-columns:1fr 1fr;gap:20px}.food-reservations .food-panel{margin:0}.food-code{font:750 22px/1.5 monospace;letter-spacing:.06em;background:#f2f5ed;border:1px dashed #9fb499;border-radius:12px;padding:15px;overflow-wrap:anywhere}.food-table-wrap{overflow-x:auto;margin:20px 0}.food-table{border-collapse:collapse;width:100%;font-size:14px}.food-table td,.food-table th{text-align:left;border-bottom:1px solid var(--line);padding:12px;vertical-align:top}.food-danger{margin-top:40px}.food-shell summary{cursor:pointer;line-height:1.8}.food-shell [hidden]{display:none!important}@media(max-width:1000px){.food-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.food-credit-panel{grid-template-columns:1fr}.food-business-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.food-shell{padding:12px 14px 110px}.food-tabs{gap:2px}.food-tabs>a{font-size:12px;padding:9px}.food-tabs>span{display:none}.food-hero{display:block;padding:28px 0}.food-hero h1{font-size:34px}.food-hero p{font-size:16px;margin-bottom:20px}.food-filters{grid-template-columns:1fr 1fr;padding:15px;gap:12px}.food-search{grid-column:1/-1}.food-grid,.food-detail,.food-reservations,.food-business-list{grid-template-columns:1fr}.food-card-image{height:230px}.food-detail-image{position:static}.food-detail-image .food-placeholder{min-height:220px}.food-form{grid-template-columns:1fr}.food-form .wide{grid-column:auto}.food-panel{padding:20px}.food-packages{gap:10px}.food-packages form{padding:15px}.food-packages strong{font-size:27px}.food-credit-panel{padding:20px}.food-cover{height:180px}.food-place .food-panel{margin-left:10px;margin-right:10px}.food-map{height:420px}.food-row{flex-wrap:wrap}.food-card-body{padding:20px}.food-toolbar h1{font-size:24px}}
/* Compact food interface and branded image pickers. */
.food-hero{padding:28px 0 25px}.food-hero h1{font-size:clamp(28px,3vw,40px);max-width:800px;line-height:1.17;margin:10px 0 12px}.food-hero p{font-size:16px}.food-shell .food-button{font-family:inherit;font-size:14px;font-weight:700;min-height:44px;line-height:1.3}.food-filters{background:#fff;padding:20px;gap:14px;border-radius:16px;box-shadow:0 4px 20px #183d3005}.food-filters>button{align-self:end}.food-filters .food-search{grid-column:span 2}.food-filters input:not([type=checkbox]),.food-filters select{min-height:46px}.food-filters .food-check{min-height:44px}.food-shell label{position:relative}.food-counter{font-weight:400;font-size:12px;color:#728377;align-self:flex-end;position:absolute;right:0;top:0}.food-counter.is-low{color:#a7472e}.food-form label:has(.food-counter){padding-top:0}.food-upload{min-width:0}.food-upload-title{font-weight:650}.food-upload-box{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:175px;gap:8px;border:1.5px dashed #a8c2af;border-radius:16px;background:#f6faf5;padding:18px;overflow:hidden;cursor:pointer;text-align:center;transition:background .15s,border .15s}.food-upload-box:hover,.food-upload-box:focus-within{border-color:#26764a;background:#edf6ec}.food-upload-box input[type=file]{position:absolute!important;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}.food-upload-prompt{display:flex;flex-direction:column;align-items:center;gap:6px}.food-upload-icon{display:grid;place-content:center;width:36px;height:36px;border-radius:50%;background:#e1eee2;color:#247549;font-size:24px}.food-upload-prompt strong{font-size:14px}.food-upload-prompt small{font-size:12px;font-weight:400;color:#748276}.food-upload-box img{max-width:100%;height:115px;object-fit:contain;border-radius:10px}.food-upload-box:has(img:not([hidden])) .food-upload-icon{display:none}.food-upload-box:has(img:not([hidden])) .food-upload-prompt small{display:none}.food-upload-box [data-upload-filename]{font-size:12px;max-width:100%;overflow-wrap:anywhere;color:#496951}.food-form{gap:22px}.food-form .food-map{height:330px}.food-tabs{padding-bottom:14px}.food-shell .food-eyebrow{letter-spacing:.09em}.food-tabs>a:first-child{padding-left:13px;padding-right:13px}@media(min-width:1100px){.food-filters{grid-template-columns:repeat(6,minmax(0,1fr))}.food-filters>.food-button:last-child{grid-column:6}.food-filters>.food-check{align-self:end}}@media(max-width:640px){.food-hero{padding:23px 0}.food-hero h1{font-size:29px}.food-filters{padding:14px;gap:12px}.food-upload-box{min-height:155px}.food-form{gap:20px}.food-tabs{gap:2px}.food-tabs>a{font-size:12px}.food-hero .food-button{margin-top:6px}}

.food-filter-checks{display:flex;flex-direction:column;justify-content:center;gap:5px}.food-filters .food-filter-checks .food-check{min-height:22px;align-self:flex-start}@media(max-width:640px){.food-filter-checks{min-height:50px}}

/* Offer cards: price and savings first. */
.food-card{display:flex;flex-direction:column;border-radius:18px;transition:box-shadow .15s,transform .15s}
.food-card:hover{box-shadow:0 10px 28px #163d3014;transform:translateY(-2px)}
.food-card-image{height:auto;aspect-ratio:4/3}
.food-discount{top:12px;left:12px;padding:6px 11px;background:#f4cb41;color:#2a3a1c;font-size:14px;font-weight:800;box-shadow:0 2px 8px #0002}
.food-stock{top:12px;right:12px;padding:6px 11px;background:#183d30d9;color:#fff;font-size:12px;font-weight:700}
.food-stock.is-low{background:#c2571a}
.food-stock.is-out{background:#7a847d}
.food-card.is-unavailable .food-card-image img,.food-card.is-unavailable .food-placeholder{filter:grayscale(.85);opacity:.7}
.food-card-body{display:flex;flex-direction:column;gap:10px;flex:1;padding:16px 18px 18px}
.food-card-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:#68786c}
.food-card-place{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:700;color:var(--fg)}
.food-card-city{flex-shrink:0;white-space:nowrap}
.food-card h3{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;min-height:2.7em;font-size:17px;font-weight:650;line-height:1.35}
.food-card-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}
.food-card-price strong{font-size:26px;line-height:1;font-weight:800;letter-spacing:-.02em;color:#1d7a42}
.food-card-price del{font-size:15px;color:#8a9a8d}
.food-save-badge{padding:3px 8px;border-radius:8px;background:#e8f5df;color:#2b6a25;font-size:12px;font-weight:750}
.food-card .food-pickup{margin:0;padding-top:12px;font-size:13px;font-weight:600;line-height:1.45;color:#4b6355}
.food-card .food-pickup span{display:block;margin-bottom:2px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7b8c80}
.food-card-actions{display:flex;gap:8px;margin-top:auto;padding-top:4px}
.food-card-actions .food-button{flex:1}
.food-card-actions .food-share{flex:0 0 auto;padding:0 14px;border:1px solid var(--line);border-radius:12px;background:#f6faf5}
@media(max-width:640px){.food-card-image{height:auto}}
