/* Teal & Pearl: shared presentation only. Existing catalogue, permissions and actions remain authoritative. */
:root{color-scheme:light;--tp-bg:#f3f8f6;--tp-accent:#096b65;--tp-accent-dark:#07534e;--tp-soft:#dbece6;--tp-ink:#173c37;--tp-muted:#53665f;--tp-line:#cedbd5;--tp-card:#fff;--tp-danger:#a22d32;--green:var(--tp-accent);--orange:var(--tp-accent);--cream:var(--tp-bg);--line:var(--tp-line);--app-teal:var(--tp-accent);--app-orange:var(--tp-accent);--app-paper:var(--tp-bg);--app-ink:var(--tp-ink)}
html{background:var(--tp-bg);scroll-padding:16px}body{background:var(--tp-bg)!important;color:var(--tp-ink)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif!important;line-height:1.5;-webkit-font-smoothing:antialiased}*,*::before,*::after{box-sizing:border-box}img{max-width:100%}h1,h2,h3{color:var(--tp-ink);line-height:1.2;letter-spacing:-.035em;overflow-wrap:anywhere}h1{font-size:clamp(1.5rem,3vw,2rem)}h2{font-size:clamp(1.2rem,2.5vw,1.6rem)}h3{font-size:1.05rem}p,li,label,summary,small{overflow-wrap:anywhere}.muted,.subtitle,.desc,.inline-status{color:var(--tp-muted)!important}a{color:var(--tp-accent-dark);text-underline-offset:3px}
button,input,select,textarea{font:inherit}button,[role=button],.button{min-height:48px;min-width:48px;border-radius:12px;border:1px solid var(--tp-line);background:var(--tp-card);color:var(--tp-ink);padding:10px 14px;line-height:1.3;white-space:normal;overflow-wrap:anywhere;cursor:pointer;touch-action:manipulation}button:hover:not(:disabled){border-color:var(--tp-accent);background:var(--tp-soft)}button:disabled{cursor:not-allowed;opacity:.58}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #007f96!important;outline-offset:3px!important}button.primary,.primary,.add,.orderBtn,.app-inbox-entry,button[type=submit],.card .qty .plus{background:var(--tp-accent)!important;border-color:var(--tp-accent)!important;color:#fff!important;border-radius:12px!important;box-shadow:none!important}button.primary:hover,.add:hover,.orderBtn:hover{background:var(--tp-accent-dark)!important}.danger,button.danger{background:#fff1f0!important;border-color:#e2a8a6!important;color:var(--tp-danger)!important}.minus{color:var(--tp-danger)!important}
input:not([type=checkbox]):not([type=radio]),select,textarea{min-width:0;max-width:100%;min-height:48px;border:1px solid var(--tp-line)!important;border-radius:12px!important;background:white!important;color:var(--tp-ink)!important;padding:11px 12px;font-size:1rem;box-shadow:none!important}textarea{min-height:96px;resize:vertical}input[type=checkbox],input[type=radio]{accent-color:var(--tp-accent);width:22px;height:22px;min-height:22px;flex-shrink:0}label{color:var(--tp-ink);font-weight:600}fieldset{min-width:0;border:1px solid var(--tp-line);border-radius:14px;padding:14px;margin:14px 0}legend{font-weight:700;padding:0 6px}summary{cursor:pointer;min-height:48px;padding:12px 2px;font-weight:650}details{border-color:var(--tp-line)!important}hr{border:0;border-top:1px solid var(--tp-line)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:.85rem;max-width:100%}table{max-width:100%;border-collapse:collapse}th,td{padding:10px;text-align:left;border-bottom:1px solid var(--tp-line);overflow-wrap:anywhere}
/* Compact real branding, full-shop search and a catalogue of vertical product rows. */
body.customer-app header.top,header.site-header{background:var(--tp-bg)!important;color:var(--tp-ink)!important;box-shadow:none!important;border-bottom:1px solid var(--tp-line);padding:12px 20px!important;height:auto;min-height:72px}.brandbox,.site-header .brand{min-width:0;gap:10px}.brandlogo,.site-header .brand img{width:44px!important;height:44px!important;border-radius:12px;object-fit:contain;background:#fff}.brand{font-size:1.2rem!important;letter-spacing:-.04em}.hours-brand,.brandbox .muted{font-size:.7rem!important;line-height:1.4}.gear{background:white!important;color:var(--tp-accent)!important}.status,.pill,.badge,.role-tag{border-radius:999px;background:var(--tp-soft);color:var(--tp-accent-dark);font-weight:700}.status.closed{background:#fce9e6!important;color:#8c2929!important}.wrap{max-width:1200px!important}.search{width:100%;margin:12px 0 4px!important;background:#fff!important;min-height:50px!important;border-radius:15px!important}.quickbar{gap:8px!important;padding:8px 0!important;align-items:center}.quickbar button{font-size:.8rem!important;border-radius:12px!important;min-height:48px!important;background:#fff!important;border:1px solid var(--tp-line)!important;color:var(--tp-accent-dark)!important}.hero{background:var(--tp-soft)!important;border:1px solid var(--tp-line)!important;color:var(--tp-ink)!important;border-radius:16px!important;padding:14px 18px!important;margin:8px 0!important;min-height:0!important}.hero small{font-size:.65rem;letter-spacing:.12em;font-weight:700}.hero h2{font-size:clamp(1.15rem,2vw,1.5rem)!important;letter-spacing:-.025em!important;margin:5px 0!important;color:var(--tp-ink)!important}.hero #heroText,.hero #prepText{font-size:.85rem!important;color:var(--tp-muted)!important}.specials-carousel{border-radius:16px!important;max-height:160px}.cats{background:var(--tp-bg)!important;top:0!important;padding:10px 0!important;gap:8px!important;max-width:100%;scrollbar-width:thin}.cats button,.chip{border:1px solid var(--tp-line)!important;border-radius:999px!important;background:white!important;color:var(--tp-ink)!important;font-weight:600;padding:11px 16px!important;min-height:48px!important}.cats button.active,.chip.active,.choice .active{background:var(--tp-accent)!important;color:#fff!important;border-color:var(--tp-accent)!important}
#products.grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 24px!important}#products .card{position:relative;display:grid!important;grid-template-columns:96px minmax(0,1fr) auto;grid-template-rows:auto auto auto;column-gap:14px;row-gap:4px;align-items:center;border:0!important;border-bottom:1px solid var(--tp-line)!important;border-radius:0!important;padding:18px 0!important;background:transparent!important;box-shadow:none!important;min-width:0;overflow:visible!important}#products .card .photo{grid-column:1;grid-row:1/4;width:96px!important;height:104px!important;min-height:0!important;aspect-ratio:auto!important;border-radius:14px;background-color:white!important;background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;overflow:hidden}#products .card h3{grid-column:2;grid-row:1;margin:0!important;padding:0!important;font-size:1rem!important;line-height:1.3;min-height:0!important}#products .card .desc{grid-column:2;grid-row:2;font-size:.8rem!important;line-height:1.4;padding:0!important;margin:0!important;min-height:0!important}#products .card .price{grid-column:2;grid-row:3;font-size:1rem!important;font-weight:750;color:var(--tp-ink)!important;margin:3px 0 0!important;padding:0!important}#products .card .qty{grid-column:3;grid-row:1/4;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px;margin:0!important;padding:0!important;max-width:140px}#products .card .qty button{min-width:48px;min-height:48px;padding:10px 12px!important}.card.sold{opacity:.7}.photo button{max-width:100%}
.bottom{background:linear-gradient(transparent,var(--tp-bg) 35%)!important;padding:12px 16px!important}.orderBtn{width:100%;max-width:760px!important;min-height:56px!important;font-size:1rem!important;border-radius:15px!important;box-shadow:0 5px 18px #173c3718!important}.customer-navigation,.app-nav{background:#fff!important;border-color:var(--tp-line)!important}.customer-navigation button,.app-nav button{color:var(--tp-muted)!important;background:transparent!important;border:0;font-size:.85rem!important;border-radius:12px;min-height:48px!important}.customer-navigation button[aria-current=page],.app-nav button[aria-current=page]{color:var(--tp-accent-dark)!important;background:var(--tp-soft)!important;font-weight:750}.customer-navigation .shop-helper{min-width:48px!important}
/* All functional dialogs share the same surface, without altering hidden/access states. */
dialog,.app-order-dialog,.modal .sheet,.inbox-panel,.revision-panel,.delivery-card,.order-card,.profile-panel{background:#fff!important;color:var(--tp-ink)!important;border:1px solid var(--tp-line)!important;border-radius:18px!important;box-shadow:0 12px 40px #173c3712!important}dialog,.app-order-dialog{width:min(720px,calc(100% - 24px));max-height:90dvh;overflow:auto;padding:22px!important}dialog::backdrop,.app-order-dialog::backdrop{background:#123c3766}.modal .sheet{padding:24px!important}.close,dialog>button:first-child{min-width:48px;min-height:48px;background:var(--tp-bg)!important;color:var(--tp-accent-dark)!important;border:1px solid var(--tp-line)!important;border-radius:50%!important}.field{margin-bottom:14px}.two,.choice,.card-actions,.ownerAction,.order-actions,.inbox-tools{gap:10px!important}.choice button{flex:1;min-width:0}.cartline{gap:12px;padding:12px 0;border-bottom:1px solid var(--tp-line)}.cartline span{min-width:0;overflow-wrap:anywhere}.cartline b{flex-shrink:0}.stickyCheckout{background:#fff!important;border-top:1px solid var(--tp-line);padding-top:12px}.privacy-note{color:var(--tp-muted)!important;font-size:.8rem}.message{border-radius:14px!important;background:var(--tp-bg)!important;color:var(--tp-ink)!important;border-color:var(--tp-line)!important}.message.own,.message.mine{background:var(--tp-soft)!important}.inbox-events,.event,.timeline-event{border-color:var(--tp-line)!important;color:var(--tp-muted)!important}.latest-order{background:var(--tp-soft)!important;border-color:var(--tp-accent)!important}.order-summary{background:#fff!important;color:var(--tp-ink)!important;border-color:var(--tp-line)!important}.order-summary strong{font-size:1.1rem!important}.order-summary small{font-size:.8rem!important}.customer-order-detail .order-actions button{flex:1 1 160px}.shop-helper-panel,#prosperitaHelpPanel{background:#fff!important;color:var(--tp-ink)!important;border-color:var(--tp-line)!important;border-radius:18px!important;max-width:calc(100vw - 24px)}
/* Owner and driver workspaces: compact controls, legible working data. */
body.owner-app #adminModal{background:var(--tp-bg)!important}body.owner-app #adminModal>.sheet{background:var(--tp-bg)!important;border:0!important;border-radius:0!important;box-shadow:none!important;max-width:1280px!important;margin:auto}body.owner-app #adminContent{min-width:0}.owner-primary-nav{gap:8px!important;padding:8px 0!important}.owner-primary-nav>button{border-radius:12px!important;border:1px solid var(--tp-line)!important;background:white!important;color:var(--tp-ink)!important;min-height:48px!important}.owner-primary-nav>button[aria-current=page]{background:var(--tp-accent)!important;color:white!important}.owner-more,.owner-account{background:white;border:1px solid var(--tp-line);border-radius:12px;padding:0 12px}.owner-secondary-controls button{margin:4px}.order-workflow-card,.menu-product-row,.special-editor{border:1px solid var(--tp-line)!important;border-radius:16px!important;background:#fff!important;box-shadow:none!important;padding:18px!important}.owner-queue-controls{background:#fff;border:1px solid var(--tp-line);border-radius:16px;padding:14px}.owner-loaded-summary,.metric{background:var(--tp-soft)!important;border-color:var(--tp-line)!important;color:var(--tp-ink)!important}.workspace{max-width:1440px;margin:auto}.workspace main{min-width:0;background:var(--tp-bg)!important}.driver-goods li{padding:12px 0;border-bottom:1px solid var(--tp-line)}.driver-goods p{color:var(--tp-muted)}.driver-assignment{gap:8px!important}.driver-assignment select{width:100%;min-width:0}.app-nav{gap:8px}.app-nav button{justify-content:flex-start;text-align:left}.page-title{font-size:1.75rem!important}.account-row{background:#fff!important;border-color:var(--tp-line)!important}
@media(max-width:760px){#products.grid{grid-template-columns:minmax(0,1fr)!important}header.top,.site-header{padding:10px 14px!important}.wrap{padding-left:14px!important;padding-right:14px!important}.modal .sheet,dialog,.app-order-dialog{padding:18px!important}.customer-navigation{gap:4px;padding-left:8px!important;padding-right:8px!important}.customer-navigation button{min-width:0!important;padding:8px 5px;font-size:.8rem!important;flex:1}.workspace main{padding:20px 14px 112px!important}.app-nav button{justify-content:center;text-align:center;font-size:.8rem!important}.two{grid-template-columns:minmax(0,1fr)!important}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.owner-primary-nav{grid-template-columns:repeat(3,minmax(0,1fr))!important}.owner-primary-nav>button{font-size:.9rem!important;padding:10px 6px!important}.order-workflow-card,.menu-product-row{padding:14px!important}.customer-order-detail .order-actions button{flex-basis:100%}}
@media(max-width:400px){#products .card{grid-template-columns:76px minmax(0,1fr);column-gap:12px;padding:14px 0!important}#products .card .photo{width:76px!important;height:90px!important;grid-row:1/4}#products .card .qty{grid-column:2;grid-row:4;justify-content:flex-start;max-width:none}#products .card h3{font-size:.95rem!important}.brand{font-size:1rem!important}.brandlogo{width:38px!important;height:38px!important}.quickbar button{font-size:.75rem!important}.modal .sheet,dialog,.app-order-dialog{padding:14px!important}.metric-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-height:500px){dialog,.app-order-dialog{max-height:94dvh}.site-header{min-height:58px}.customer-navigation,.app-nav{padding-top:4px!important;padding-bottom:4px!important}.customer-navigation button,.app-nav button{min-height:48px!important}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* The managed catalogue nests its cards; retain category/service sections verbatim. */
#products.grid{grid-template-columns:minmax(0,1fr)!important}.product-grid-inner{grid-column:1/-1;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 24px!important;width:100%}#products .card{grid-template-rows:auto auto auto auto auto auto}#products .card .photo{grid-row:1/7}#products .card .item-code{grid-column:2;grid-row:1;font-size:.65rem!important;letter-spacing:.04em;color:var(--tp-muted)!important;margin:0}#products .card h3{grid-row:2}#products .card .badges{position:static!important;grid-column:2;grid-row:3;display:flex;flex-wrap:wrap;gap:4px}#products .card .badges:empty{display:none}#products .card .badges span{background:var(--tp-soft)!important;color:var(--tp-accent-dark)!important;font-size:.65rem;padding:3px 6px;border-radius:6px}#products .card .special-copy,#products .card .desc{grid-column:2;grid-row:auto;font-size:.8rem!important;color:var(--tp-muted)!important;margin:0!important;padding:0!important;font-weight:400}#products .card .price{grid-row:6}#products .card .qty{grid-row:1/7}.subcategory-card,.meal-builder-list button{background:white!important;color:var(--tp-ink)!important;border:1px solid var(--tp-line)!important;border-radius:16px!important;box-shadow:none!important}.subcategory-card b,.meal-builder-list button b{color:var(--tp-accent-dark)!important}.subcategory-card small{color:var(--tp-muted)!important}.subcategory-photo{background-color:var(--tp-soft)!important}.special-product-slide,.special-product-copy{background:var(--tp-soft)!important;color:var(--tp-ink)!important}.special-product-copy h3,.special-product-copy small,.special-product-copy span,.special-product-copy strong{color:var(--tp-ink)!important}.special-tap{background:var(--tp-accent)!important;color:white!important}.cigarette-age-notice{background:#fff1d6!important;color:#6d4700!important}.meal-builder-list button.added{background:var(--tp-soft)!important}.shop-helper-bubble{background:var(--tp-accent)!important;color:#fff!important}
@media(max-width:760px){.product-grid-inner{grid-template-columns:minmax(0,1fr)!important}}
@media(max-width:400px){#products .card .qty{grid-row:7;grid-column:2}#products .card .photo{grid-row:1/7}}

/* Override legacy ID-specific orange/black chrome and injected install styles. */
#openBadge.status{background:var(--tp-soft)!important;color:var(--tp-accent-dark)!important;border:1px solid var(--tp-line)!important}#openBadge.status.closed{background:#fce9e6!important;color:#8c2929!important;border-color:#e7b6b0!important}#installBtn,#quickbar #installBtn,.prosperita-install-cta,.prosperita-install-dialog button{background:var(--tp-accent)!important;border:1px solid var(--tp-accent)!important;color:white!important;box-shadow:none!important;text-shadow:none!important}#orderBtn.orderBtn{background:var(--tp-accent)!important;border-color:var(--tp-accent)!important;color:white!important}.brandlogo{border:1px solid var(--tp-line)!important}.cats .chip.active{background:var(--tp-accent)!important;border-color:var(--tp-accent)!important}#quickbar .share-app{animation:none!important;text-shadow:none!important;box-shadow:none!important;filter:none!important}.stock-stage{background:var(--tp-accent)!important}.stock-order{border-left-color:var(--tp-accent)!important}
@media(max-width:400px){#products .card{grid-template-columns:72px minmax(0,1fr) auto}#products .card .photo{width:72px!important;height:90px!important}#products .card .qty{grid-column:3;grid-row:1/7;max-width:76px}#products .card .qty .add{width:auto!important;min-width:48px;padding:10px 8px!important;font-size:.8rem}#products .card:has(.qty .badge) .qty{grid-column:2/4;grid-row:7;max-width:none;justify-content:flex-start}}

#installInvitation{padding:10px 12px!important;margin:6px 0!important;background:var(--tp-soft)!important;border-color:var(--tp-line)!important;display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center}#installInvitation p{margin:0;font-size:.8rem;line-height:1.4}#installInvitation button{margin:0!important;padding:8px 10px;font-size:.8rem}#installInvitation button:last-child{background:#fff!important;color:var(--tp-accent-dark)!important;border-color:var(--tp-line)!important}#products .card{min-height:130px!important}.hero small{color:var(--tp-accent-dark)!important}
@media(max-width:400px){#installInvitation{grid-template-columns:1fr 1fr}#installInvitation p{grid-column:1/-1}}

dialog[aria-label="Confirm delivery at destination"]>button{border-radius:14px!important}dialog[aria-label="Confirm delivery at destination"]>button:first-of-type{background:var(--tp-accent)!important;color:white!important;border:0!important;min-height:120px!important;font-size:1.5rem!important;float:none!important;width:100%!important}#staff-app form:has(input[autocomplete="username"]){display:grid;grid-template-columns:minmax(0,1fr);gap:10px;max-width:480px;margin:20px 0}#staff-app form:has(input[autocomplete="username"]) input,#staff-app form:has(input[autocomplete="username"]) button{width:100%}#staff-app form:has(input[autocomplete="username"]) label{display:block}body.owner-app .owner-queue-controls{display:flex!important;flex-wrap:wrap!important}body.owner-app .owner-queue-controls>*{flex:1 1 11rem!important;min-width:0!important;max-width:100%}

body.owner-app #admin>.tabs{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr))!important;gap:8px!important}body.owner-app #admin>.tabs>button{background:#fff!important;color:var(--tp-accent-dark)!important;border:1px solid var(--tp-line)!important;min-height:48px!important;white-space:normal!important;overflow-wrap:normal!important;word-break:normal!important}body.owner-app #admin>.tabs>button[aria-current="page"]{background:var(--tp-accent)!important;color:white!important}body.owner-app .order-filters{display:flex!important;flex-wrap:wrap!important;gap:8px!important}body.owner-app .order-filters>:not(.sr-only){flex:1 1 11rem!important;min-width:0!important;max-width:100%!important}body.owner-app .order-filters .sr-only{flex:0 0 0!important}

body.customer-app #products .product-grid-inner .card .qty .add,body.customer-app #products .product-grid-inner .card .qty .plus{background:var(--tp-accent)!important;border-color:var(--tp-accent)!important;color:white!important}.inbox-panel>header{display:flex;align-items:flex-start;gap:12px}.inbox-panel>header>h2{min-width:0;flex:1}.inbox-panel>header>button{flex-shrink:0;min-width:5rem;white-space:nowrap;overflow-wrap:normal}

body.owner-app #admin>.tabs{display:flex!important;flex-wrap:wrap!important}body.owner-app #admin>.tabs>button{flex:1 1 auto!important;min-width:max-content!important;max-width:100%!important}body.owner-app #admin>.tabs>details{flex:1 0 100%!important;min-width:0!important}

.modal:not(#adminModal){z-index:2200!important;overflow-y:auto!important}.modal:not(#adminModal)>.sheet{max-height:94dvh!important;overflow-y:auto!important;overscroll-behavior:contain}

body .advertise-product{background:var(--tp-soft)!important;color:var(--tp-accent-dark)!important;border-color:var(--tp-line)!important}.ad-product-preview{background:var(--tp-bg)!important;border:1px solid var(--tp-line)!important;color:var(--tp-ink)!important}.ad-notification-preview{background:var(--tp-soft)!important;color:var(--tp-ink)!important}.ad-notification-preview small{color:var(--tp-accent-dark)!important}.ad-schedule-row.paused{opacity:1!important;border-style:dashed!important}.ad-schedule-row.paused>small{color:var(--tp-muted)!important}form:has(#fallback-minutes){display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;max-width:540px;align-items:center}form:has(#fallback-minutes)>:not(#fallback-enabled):not(label[for="fallback-enabled"]){grid-column:1/-1}form:has(#driver-access-record){display:grid;grid-template-columns:minmax(0,1fr);gap:10px;max-width:540px}form:has(#driver-access-record) input,form:has(#driver-access-record) select{width:100%}

body .subcategory-back,body .mobipay-machine-note{background:var(--tp-soft)!important;color:var(--tp-accent-dark)!important;border-color:var(--tp-line)!important}
