:root{--accent:#1a1a1a;--text:#1a1a1a;--muted:#555;--line:#e2e2e2;--bg:#fff;--soft:#f6f6f6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}a{color:var(--accent)}.store{max-width:960px;margin:0 auto;padding-bottom:32px}.store-loading{min-height:100vh}.store-missing{text-align:center;max-width:560px;margin:15vh auto;padding:0 20px}.store-cover{aspect-ratio:3;object-fit:cover;width:100%;display:block}.store-header{border-bottom:1px solid var(--line);padding-bottom:14px}.store-identity{align-items:center;gap:14px;padding:16px 16px 4px;display:flex}.store-logo{object-fit:cover;border-radius:16px;flex-shrink:0;width:72px;height:72px;box-shadow:0 2px 8px #00000026}.store-identity h1{color:var(--accent);margin:0;font-size:1.7em;line-height:1.15}.store-status{color:var(--muted);margin:4px 0 0;font-weight:600}.store-status.open{color:#1b5e20}.store-contact{flex-wrap:wrap;gap:4px 18px;margin:8px 16px 0;display:flex}.store-notice{background:var(--soft);border-left:4px solid var(--accent);border-radius:10px;margin:12px 16px 0;padding:10px 14px}.store-where{border:2px solid var(--accent);border-radius:10px;margin:12px 16px 0;padding:12px 14px}.store-where p{margin:0}.store-where-label{color:var(--accent);text-transform:uppercase;letter-spacing:.03em;font-size:.9em;font-weight:700}.store-where-place{font-size:1.1em;margin-top:2px!important}.store-where-note{color:var(--muted)}.store-where-map{background:var(--accent);color:#fff;border-radius:8px;margin-top:10px;padding:8px 14px;font-weight:600;text-decoration:none;display:inline-block}.store-categories{z-index:5;background:var(--bg);border-bottom:1px solid var(--line);gap:8px;padding:10px 16px;display:flex;position:sticky;top:0;overflow-x:auto}.store-categories a{border:1px solid var(--accent);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:6px 14px;font-weight:600;text-decoration:none}.store-categories a:focus-visible,.store-item:focus-visible,.store-dialog-close:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.store-menu{padding:0 16px}.store-category h2{color:var(--accent);margin:24px 0 10px;scroll-margin-top:64px;font-size:1.35em}.store-items{grid-template-columns:1fr;gap:12px;margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.store-items{grid-template-columns:1fr 1fr}}.store-item{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:12px;gap:12px;padding:10px;display:flex}.store-item:hover{border-color:var(--accent)}.store-item img{object-fit:cover;background:var(--soft);border-radius:8px;flex-shrink:0;width:112px;height:84px}.store-item-text{flex-direction:column;gap:2px;min-width:0;display:flex}.store-item-name{font-weight:700}.store-item-description{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.92em;display:-webkit-box;overflow:hidden}.store-item-price{align-items:center;gap:8px;margin-top:auto;font-weight:700;display:flex}.store-item.sold-out img{filter:grayscale()}.store-badge{color:#1a1a1a;background:#e0e0e0;border-radius:999px;padding:1px 8px;font-size:.8em;font-weight:700;display:inline-block}.store-hours{margin:28px 16px 0}.store-hours h2{color:var(--accent);font-size:1.2em}.store-hours table{border-collapse:collapse}.store-hours td{padding:4px 18px 4px 0}.store-hours td:first-child{font-weight:600}.store-stop-day h3{margin:14px 0 4px;font-size:1em}.store-stop-day ul{margin:0;padding:0;list-style:none}.store-stop-day li{gap:14px;padding:3px 0;display:flex}.store-stop-time{font-variant-numeric:tabular-nums;flex-shrink:0;min-width:9.5em}.store-stop-note{color:var(--muted)}.store-footer{color:var(--muted);margin:32px 16px 0;font-size:.9em}.store-overlay{z-index:20;overscroll-behavior:contain;background:#0000008c;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=720px){.store-overlay{align-items:center}}.store-dialog{overscroll-behavior:contain;background:var(--bg);border-radius:16px 16px 0 0;width:100%;max-width:560px;max-height:92vh;position:relative;overflow-y:auto}@media (width>=720px){.store-dialog{border-radius:16px}}.store-dialog-close{color:#1a1a1a;cursor:pointer;background:#ffffffeb;border:none;border-radius:50%;width:40px;height:40px;font-size:26px;line-height:1;position:absolute;top:10px;right:10px;box-shadow:0 1px 4px #00000040}.store-dialog-photo{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.store-dialog-body{padding:16px 18px 22px}.store-dialog-body h2{margin:0 40px 4px 0}.store-price{margin:0 0 8px;font-size:1.1em;font-weight:700}.store-description{margin:8px 0}.store-group h3{flex-wrap:wrap;align-items:baseline;gap:8px;margin:18px 0 6px;font-size:1.05em;display:flex}.store-group-rule{color:var(--muted);font-size:.85em;font-weight:400}.store-group ul{margin:0;padding:0;list-style:none}.store-option{border-top:1px solid var(--line);align-items:center;gap:12px;padding:8px 0;display:flex}.store-option img,.store-option-nophoto{object-fit:cover;background:var(--soft);border-radius:8px;flex-shrink:0;width:48px;height:48px}.store-option-name{flex:1}.store-option-price{font-weight:600}.store-option.sold-out .store-option-name{color:var(--muted);text-decoration:line-through}.store-ordering-note{background:var(--soft);border-radius:10px;margin:18px 0 0;padding:10px 14px;font-weight:600}.store-primary,.store-secondary{min-height:48px;font:inherit;cursor:pointer;border-radius:10px;padding:10px 18px;font-weight:700}.store-primary{background:var(--accent);color:#fff;border:none}.store-secondary{border:2px solid var(--accent);background:var(--bg);color:var(--accent)}.store-primary:disabled,.store-secondary:disabled{cursor:not-allowed;color:#4a4a4a;background:#d9d9d9;border-color:#d9d9d9}.store-link{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:none;padding:4px;font-size:.9em;text-decoration:underline}.store-hint{color:var(--muted);margin:8px 0;font-size:.92em}.store-error{color:#8a1c13;background:#fdecea;border-radius:10px;margin:12px 0;padding:10px 14px;font-weight:600}.store-field{flex-direction:column;gap:4px;margin:10px 0;font-weight:600;display:flex}.store-field input,.store-field select{background:var(--bg);min-height:44px;color:var(--text);font:inherit;border:1px solid #8a8a8a;border-radius:8px;padding:8px 10px;font-weight:400}.store-choice-group{border:none;margin:16px 0 0;padding:0}.store-choice-group legend{flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:6px;font-size:1.05em;font-weight:700;display:flex}.store-choice{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;min-height:48px;padding:6px 0;display:flex}.store-choice input{width:22px;height:22px;accent-color:var(--accent);flex-shrink:0}.store-choice img{object-fit:cover;border-radius:8px;flex-shrink:0;width:48px;height:48px}.store-choice.sold-out{cursor:not-allowed}.store-choice.sold-out .store-option-name{color:var(--muted);text-decoration:line-through}.store-add-row{align-items:center;gap:12px;margin-top:16px;display:flex}.store-add-row .store-primary{flex:1}.store-stepper{flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.store-stepper button{background:var(--bg);width:40px;height:40px;color:var(--text);cursor:pointer;border:1px solid #8a8a8a;border-radius:50%;font-size:20px;line-height:1}.store-stepper button:disabled{color:#9a9a9a;cursor:not-allowed;border-color:#c8c8c8}.store-stepper span{text-align:center;min-width:2ch;font-weight:700}.store-basket-bar{z-index:10;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--line);position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 10px #00000014}.store-basket-bar .store-primary{width:100%;max-width:560px;margin:0 auto;display:block}.store:has(.store-basket-bar) .store-footer{margin-bottom:96px}.store-checkout h3{margin:20px 0 4px}.store-checkout{flex-direction:column;display:flex;overflow:hidden}.store-checkout-head{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:10px 10px 10px 18px;display:flex}.store-checkout-head h2{margin:0}.store-checkout-close{flex-shrink:0;position:static}.store-checkout-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.store-basket-lines{margin:12px 0 0;padding:0;list-style:none}.store-basket-lines li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 12px;padding:10px 0;display:flex}.store-basket-name{flex:180px;font-weight:600}.store-basket-detail{color:var(--muted);font-size:.9em;font-weight:400;display:block}.store-basket-price{font-variant-numeric:tabular-nums;font-weight:700}.store-tips{border:none;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;display:flex}.store-tips legend{margin-bottom:6px;font-weight:700}.store-tip{cursor:pointer;border:1px solid #8a8a8a;border-radius:999px;align-items:center;gap:6px;min-height:44px;padding:6px 12px;display:inline-flex}.store-tip.chosen{border:2px solid var(--accent);font-weight:700}.store-tip input{accent-color:var(--accent)}.store-tip-other{width:110px;min-height:44px;font:inherit;border:1px solid #8a8a8a;border-radius:8px;padding:6px 10px}.store-totals{font-variant-numeric:tabular-nums;grid-template-columns:1fr auto;gap:4px 12px;margin:18px 0 0;display:grid}.store-totals dt,.store-totals dd{margin:0}.store-totals dd{text-align:right}.store-totals .store-total{border-top:1px solid var(--line);padding-top:6px;font-size:1.1em;font-weight:700}.store-pay{flex-direction:column;gap:10px;margin-top:16px;display:flex}.store-order-page{max-width:640px;margin:0 auto;padding:20px 16px 40px}.store-order-shop{margin:0 0 6px;font-weight:700}.store-order-page h1{color:var(--accent);margin:0 0 4px}.store-order-number{margin:0 0 10px;font-size:1.1em}.store-order-status{background:var(--soft);border-radius:10px;margin:0;padding:10px 14px;font-weight:700}.store-order-status.status-ready{color:#14532d;background:#e3f4e5}.store-order-status.status-expired,.store-order-status.status-cancelled{color:#8a1c13;background:#fdecea}.store-order-page .store-where{margin:14px 0 0}.store-order-collect{margin-top:8px!important}.store-order-lines{margin-top:18px}.store-hint-tight{margin-top:0}.store-field-problem:empty{display:none}.store-field-problem{color:#8a1c13;font-size:.92em;font-weight:600}.store-field.has-problem input{border:2px solid #b3261e}.store-cancel-box{border:1px solid var(--line);background:var(--soft);border-radius:10px;margin:16px 0;padding:12px 14px}.store-cancel-box p{margin-top:0}.store-privacy{flex-direction:column;max-width:720px;display:flex;overflow:hidden}.store-privacy-title{border-bottom:1px solid var(--line);flex-shrink:0;margin:0;padding:16px 18px 12px;font-size:1.3em}.store-privacy-more{margin-right:auto}.store-privacy-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.store-privacy-actions{padding:12px 18px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-shrink:0;justify-content:flex-end;align-items:center;gap:12px;display:flex}.store-privacy-body h2{color:var(--accent);margin:22px 0 6px;scroll-margin-top:12px;font-size:1.15em}.store-privacy-body table{border-collapse:collapse;width:100%;font-size:.92em}.store-privacy-body th,.store-privacy-body td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 8px}.store-footer-link,.store-hint .store-link{padding:0;font-size:1em}.store-fieldset{border:none;margin:16px 0 0;padding:0}.store-fieldset legend{margin-bottom:6px;font-size:1.05em;font-weight:700}.store-policy{white-space:pre-wrap}.store-recent-order a{font-weight:700}
