/* Shared finishing details; no fonts, services or animation dependencies added. */
:root{--ui-muted:#667369;--ui-line:#dce2d4;--ui-soft:#eef3e8;--ui-panel:#fffdfb;--ui-error:#a73333}
html[data-theme='dark']{--ui-muted:#adb7a8;--ui-line:#3d4c3d;--ui-soft:#2b3c2e;--ui-panel:#202e24;--ui-error:#ffb4ab}
button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}
.button,.icon-button,.text-button,.store-cart-button{transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease}
.button:active:not(:disabled){transform:translateY(1px)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #a8c9a3;outline-offset:3px}
.button:disabled{opacity:.55;cursor:not-allowed}
.field-error,.checkout-blocker{font-size:.82rem;line-height:1.5;color:var(--ui-error);margin:5px 0 0;overflow-wrap:anywhere}
.field-error[hidden],img[hidden],.logo-fallback[hidden]{display:none!important}
.modal .field input[aria-invalid='true'],.modal .field textarea[aria-invalid='true'],.modal .field select[aria-invalid='true']{border-color:var(--ui-error);box-shadow:0 0 0 2px #bd474712}
.checkout-blocker{background:var(--ui-soft);padding:12px;border-radius:9px;margin-top:16px}
.cart-line.has-error{border-left:3px solid var(--ui-error);padding-left:12px}.cart-line .field-error{font-size:.76rem;margin-top:8px}
.quantity-stepper button:disabled{opacity:.35;cursor:not-allowed}
.image-frame{position:relative;display:block;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:var(--ui-soft)}
.image-frame .image-fallback{position:absolute;inset:0;display:grid;place-items:center;font:700 2rem 'Outfit',sans-serif;color:var(--ui-muted);background:var(--ui-soft)}
.image-frame img{position:relative;display:block;width:100%;height:100%;object-fit:cover}
.store-item-media>.image-frame{width:100%;height:100%}.cart-item-media>.image-frame{width:100%;height:100%}
.next-available{display:block;margin:7px 0 2px;color:var(--ui-muted);font-size:.74rem;line-height:1.45}
.availability-note{background:var(--ui-soft);border-radius:7px;color:var(--ui-muted);font-size:.82rem;font-weight:700;line-height:1.4;padding:9px 11px;margin:12px 0 0}.availability-note small{display:block;font-weight:400;margin-top:4px}
.store-item.unavailable .button:disabled{background:var(--ui-soft);color:var(--ui-muted);border:1px solid var(--ui-line);opacity:1}
.store-logo{object-fit:contain!important;max-height:60px;max-width:min(200px,45vw)}.logo-fallback{display:block}
.mobile-bag-bar{display:none}.store-item-top>strong{white-space:nowrap}.item-add-error{margin-top:10px}
.friendly-empty h3{margin:12px 0 6px}.empty-mark,.friendly-empty>img{display:block;margin:0 auto 12px;object-fit:contain}
.setup-checklist li{align-items:flex-start;padding:7px 0;gap:10px}.setup-checklist li>div{min-width:0}.setup-checklist li strong{font-size:.84rem;font-weight:600;line-height:1.4}.setup-checklist li small{display:block;color:var(--ui-muted);font-size:.76rem;margin-top:4px;line-height:1.45;overflow-wrap:anywhere}.setup-checklist li button,.setup-checklist li a{min-height:36px;display:grid;place-items:center;padding:3px 8px;flex:none}.setup-checklist li:before{margin-top:3px}
.readiness-badge{display:inline-block;font-size:.75rem;font-weight:700;padding:6px 10px;border-radius:30px;background:#f8eacf;color:#866337;margin-top:14px}.readiness-badge.ready{background:#e9f1e5;color:#356344}html[data-theme='dark'] .readiness-badge{background:#46361e;color:#eed3a4}html[data-theme='dark'] .readiness-badge.ready{background:#304534;color:#b8d5af}.setup-warning{margin-top:12px!important;font-size:.78rem!important;line-height:1.5}
.field-help{padding:12px 14px;background:var(--ui-soft);border:1px solid var(--ui-line);border-radius:10px;margin:15px 0 4px;line-height:1.5}.field-help summary{font-weight:700;font-size:.82rem;cursor:pointer}.field-help p{font-size:.82rem;color:var(--ui-muted);margin:10px 0 0}.help-quick-links{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:20px}.help-faq{padding:4px 24px}.help-faq details{border-bottom:1px solid var(--ui-line);padding:18px 0}.help-faq details:last-child{border:0}.help-faq summary{font-size:.96rem;font-weight:700;cursor:pointer;line-height:1.5}.help-faq p{font-size:.9rem;color:var(--ui-muted);line-height:1.7;margin:12px 0 0;max-width:760px}
.more-modal{width:min(100%,460px)}.more-menu{display:grid;gap:8px}.more-menu button,.more-menu a{display:flex;align-items:center;gap:13px;border:1px solid var(--ui-line);border-radius:10px;padding:14px;text-align:left;color:inherit;background:var(--ui-panel);min-height:52px;font-size:.92rem;font-weight:600}.more-menu svg{width:21px;height:21px;flex:none}.more-menu span:last-child{margin-left:auto}.more-menu button:hover,.more-menu a:hover{background:var(--ui-soft)}
.share-brand{font-weight:700;font-size:1rem;margin:0 0 12px}.planned-address{display:grid;gap:5px;padding:13px 15px;background:var(--ui-soft);border-radius:10px;margin-bottom:20px;overflow-wrap:anywhere}.planned-address small{color:var(--ui-muted);font-size:.76rem}.share-buttons{display:flex;gap:10px;flex-wrap:wrap}.share-status{font-size:.82rem;color:var(--ui-muted);min-height:20px}.qr-preview{display:grid;place-items:center;margin:12px auto 0;min-height:190px;max-width:230px;padding:10px;background:white;border:1px solid var(--ui-line);border-radius:12px;color:#263b30}.qr-preview svg{width:100%;height:auto}.qr-preview p{padding:15px;text-align:center;font-size:.8rem}.share-modal #share-link{font-size:.78rem}.share-modal .help{line-height:1.5}.store-address{overflow-wrap:anywhere}
.modal{max-height:calc(100dvh - 32px);display:flex;flex-direction:column}.modal>form{min-height:0;display:flex;flex-direction:column}.modal-body{overflow-y:auto;overscroll-behavior:contain;min-height:0}.modal-head,.modal-actions{flex:none}.modal-actions{background:var(--ui-panel)}.modal-actions .button{min-height:44px}
@media(max-width:760px){
  .topbar{height:auto;min-height:64px;gap:8px}.breadcrumb{font-size:.76rem;min-width:0}.top-actions{flex:none}.share-store-button{display:none}.badge-demo{display:none}
  .page-head h1{font-size:1.75rem;overflow-wrap:anywhere}.page-head .head-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.page-head .head-actions .button{margin-top:0}
  .store-header{display:grid;grid-template-columns:1fr;gap:12px;padding:18px 18px 14px}.store-wordmark{min-width:0;overflow-wrap:anywhere}.store-header-actions{width:100%;justify-content:space-between;gap:8px}.store-logo{max-width:200px;max-height:52px}.store-main{padding:20px 16px 40px}.store-simple-head{margin-bottom:24px}.store-simple-head h1{font-size:1.8rem}.category-grid{grid-template-columns:1fr}.store-item-top{gap:10px}.store-item-top>strong{font-size:.92rem}.store-item-body{min-width:0}.store-item h3{font-size:1rem;line-height:1.4}.store-item-body p{line-height:1.5}.store-item-media{width:76px;min-width:76px;height:76px}.store-actions{margin-top:12px}.store-select,.qty-label input{font-size:16px}
  .mobile-bag-bar{display:block;position:fixed;bottom:0;left:0;right:0;z-index:20;background:var(--ui-panel);border-top:1px solid var(--ui-line);padding:12px 16px max(12px,env(safe-area-inset-bottom));box-shadow:0 -6px 24px #263b300f}.mobile-bag-bar .button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:50px;padding:12px 15px;font-size:.86rem}.mobile-bag-bar strong{white-space:nowrap}.has-mobile-bag .store-footer{padding-bottom:110px}
  .mobile-nav{display:flex;justify-content:space-around;overflow:visible;gap:0}.mobile-nav button{flex:1 1 0;min-width:0;min-height:54px;font-size:.72rem;padding:6px}.content{padding-bottom:100px}.mobile-nav svg{width:22px;height:22px}
  .table-wrap{overflow:visible;background:transparent;border:0;box-shadow:none}.data-table,.order-table{display:block;width:100%;min-width:0}.data-table thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.data-table tbody{display:grid;gap:12px}.data-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);background:var(--ui-panel);border:1px solid var(--ui-line);border-radius:12px;padding:14px;gap:12px}.data-table td{display:flex;flex-direction:column;align-items:flex-start;min-width:0;border:0!important;padding:0!important;white-space:normal;overflow-wrap:anywhere;gap:4px;font-size:.88rem}.data-table td:before{content:attr(data-label);font-size:.7rem;font-weight:700;color:var(--ui-muted)}.data-table td:first-child{grid-column:1/-1}.data-table td:first-child:before{display:none}.data-table td:last-child{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:10px;padding-top:8px!important;border-top:1px solid var(--ui-line)!important}.data-table td:last-child:before{display:none}.data-table td[colspan]{grid-column:1/-1;display:block}.data-table .row-actions{min-width:0;white-space:normal}.data-table .row-actions .button,.data-table .text-button{min-height:40px}.order-table td:nth-child(2),.order-table td:nth-child(3){grid-column:1/-1}.order-table td:last-child{min-width:0}.product-cell{min-width:0;gap:10px}.product-cell strong,.product-cell small{overflow-wrap:anywhere;white-space:normal}.data-table .empty{width:100%;padding:18px 8px}
  .orders-toolbar{align-items:flex-start;gap:12px;flex-direction:column}.orders-toolbar .segment{display:flex;flex-wrap:wrap;width:100%;gap:4px}.orders-toolbar .segment button{min-height:42px;flex:1 1 auto;font-size:.75rem;padding:9px}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-cell{min-height:64px;padding:6px;align-items:center;gap:3px}.calendar-events{display:none}.calendar-weekday{font-size:.68rem;padding:9px 2px}.calendar-count{font-size:.68rem}.calendar-top{padding:13px}.calendar-top h2{font-size:1rem;min-width:0}.calendar-order{align-items:flex-start;gap:10px}.calendar-order>div{min-width:0;overflow-wrap:anywhere}
  .settings-panel{padding:18px 16px}.outlet-editor{padding:14px}.setup-checklist{padding:18px;gap:16px}.setup-checklist li{font-size:.82rem}.setup-checklist li>div{flex:1}.today-list{padding:4px 16px}.today-row>div{min-width:0;overflow-wrap:anywhere}.today-row .button{flex:none;min-height:42px}.today-row small{font-size:.78rem;line-height:1.5}.today-row strong{line-height:1.4}.chart-scroll svg{min-width:0}.chart-card{overflow:hidden}.chart-head{flex-wrap:wrap;gap:12px}.chart-range{flex-wrap:wrap}.help-faq{padding:0 17px}.help-faq summary{font-size:.9rem}
  .modal-backdrop{padding:10px}.modal{max-height:calc(100dvh - 20px);width:100%;border-radius:15px}.modal-head,.modal-body,.modal-actions{padding-left:17px;padding-right:17px}.modal-head h2{font-size:1.12rem}.modal-body{padding-top:18px;padding-bottom:18px}.modal-actions{flex-wrap:wrap;padding-top:12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.modal-actions .button{flex:1;min-width:110px;font-size:.83rem}.modal .field input,.modal .field textarea,.modal .field select{font-size:16px}.checkout-modal{max-height:calc(100dvh - 20px)}.cart-item-media{width:44px;height:44px;flex:0 0 44px}.cart-item-info{min-width:0}.cart-item-info strong{font-size:.9rem;line-height:1.4}.cart-line{gap:10px}.cart-line>.text-button{font-size:.74rem;min-height:40px;flex:none}.cart-line small{font-size:.76rem;line-height:1.5}.quantity-stepper button{width:36px;height:34px}.share-buttons .button{flex:1;min-width:120px}.share-modal #share-link{font-size:.8rem}.detail-grid{grid-template-columns:1fr}.owner-topbar{gap:10px;padding:18px}.owner-account-actions{align-items:stretch}.owner-account-actions label{width:100%}.owner-account-actions .button{min-height:42px;flex:1}.owner-account-links{gap:18px}.owner-account-links a{padding:9px 0}.owner-account-card{padding:18px}.owner-account-top>div{min-width:0}
  .toast{bottom:90px;left:16px;right:16px;text-align:center;font-size:.82rem}.store-shell+.toast{bottom:100px}.more-menu button,.more-menu a{min-height:54px}
}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.button:active:not(:disabled){transform:none}}
