﻿:root{--paper: #ffffff;--surface-elevated: #f3fbf7;--bg-page: #e4f6ee;--mint-100: #e4f6ee;--mint-200: #c9eddd;--mint-300: #a6e1cb;--mint-500: #4fb894;--mint-600: #3a9a7b;--mint-700: #276b55;--mint-800: #205544;--ink: #2e3033;--ink-soft: #6c7076;--line: #e6eae8;--gold: #fdc72e;--gold-deep: #e8a81c;--gold-100: #fff3d6;--gold-150: #fdebc8;--gold-ink: #8a6a00;--gold-ink-deep: #8a5f00;--pom: #c94f4f;--pom-100: #fbe4e4;--danger: #b04141;--vipps: #ff5b24;--vipps-button: #cc4409;--vipps-button-hover: #b83c08;--vipps-ink: #c73a00;--stripe: #635bff;--stripe-button: #4f45e4;--stripe-button-hover: #4338ca;--stripe-ink: #4f45e4;--on-dark-dim: rgba(255, 255, 255, 0.2);--radius: 16px;--radius-sm: 12px;--radius-xs: 8px;--radius-pill: 9999px;--text-xs: 0.75rem;--tap-min: 44px;--text-meta: 0.8125rem;--text-body: 1rem;--text-title: 1.25rem;--text-display: clamp(40px, 6vw, 88px);--text-display-xl: clamp(2.75rem, 11.5vw, 3.5rem);--font: "Helvetica Neue Pro", "Helvetica Neue", Arial, sans-serif;--focus-ring: 2px solid var(--mint-700);--transition-fast: 180ms;--transition-normal: 300ms;--ease-out: cubic-bezier(0.16, 1, 0.3, 1);--tab-bar-height: 62px;--bottom-clearance: calc(var(--tab-bar-height) + env(safe-area-inset-bottom, 0px))}.hero,.sheet-head,.loyalty-card,.board-head{background-color:var(--surface-elevated);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='84' height='84' viewBox='0 0 84 84'%3E%3Cg fill='none' stroke='%23C9EDDD' stroke-opacity='.4' stroke-width='1'%3E%3Crect x='26' y='26' width='32' height='32'/%3E%3Crect x='26' y='26' width='32' height='32' transform='rotate(45 42 42)'/%3E%3C/g%3E%3C/svg%3E");background-size:84px 84px}.step-star,.loyalty-star,.empty-star{clip-path:polygon(50% 0%, 60% 26%, 85.4% 14.6%, 74% 40%, 100% 50%, 74% 60%, 85.4% 85.4%, 60% 74%, 50% 100%, 40% 74%, 14.6% 85.4%, 26% 60%, 0% 50%, 26% 40%, 14.6% 14.6%, 40% 26%)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}.skip-link{position:absolute;inset-inline-start:16px;top:8px;transform:translateY(-56px);z-index:100;padding:8px 16px;border-radius:var(--radius-sm);background:var(--ink);color:var(--paper);font-weight:700;transition:transform 180ms ease}.skip-link:focus-visible{transform:none}body{margin:0;font-family:var(--font);font-size:var(--text-body);line-height:1.5;color:var(--ink);background:var(--bg-page)}h1,h2,h3{margin:0 0 .5rem;line-height:1.25;font-weight:700}p{margin:0 0 .75rem}a{color:var(--mint-700);text-decoration:none}img{display:block;max-width:100%}ul,ol{margin:0;padding:0}hgroup>p{margin:0}button{cursor:pointer}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:var(--focus-ring);outline-offset:2px}::selection{background:var(--mint-100)}main.shell{max-width:480px;margin:0 auto;padding:16px 16px calc(var(--bottom-clearance) + 24px);min-height:100dvh;background:var(--paper)}.brand-bar{position:sticky;top:0;z-index:40;background:var(--paper);border-bottom:1px solid var(--line)}.brand-link{max-width:480px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:8px 16px;color:var(--ink)}.brand-logo{height:32px;width:auto}.brand-name{font-weight:700;letter-spacing:.05em}.page-title{font-size:var(--text-title);margin:4px 0 12px}.section-title{font-size:var(--text-title);margin:4px 0 12px;display:flex;align-items:center;gap:8px}.section-title:not(:first-child){margin-top:16px}main.shell>:is(.card,.hero,.loyalty-card)+.card{margin-top:16px}.page-actions{display:flex;flex-direction:column;gap:8px;margin-top:16px}.app-footer{margin-top:32px;padding:16px 4px 8px;border-top:1px solid var(--line);text-align:center;font-size:var(--text-meta)}.app-footer p{margin:0}.footer-facts{display:flex;flex-wrap:wrap;justify-content:center;column-gap:12px}.footer-facts span{white-space:nowrap}.footer-sahtein{color:var(--mint-700);font-weight:700}body.act-item main.shell{padding-bottom:calc(var(--bottom-clearance) + 190px)}.toast{position:fixed;top:calc(64px + env(safe-area-inset-top, 0px));left:50%;transform:translateX(-50%);z-index:60;display:flex;align-items:center;gap:12px;max-width:calc(100% - 32px);padding:8px 12px 8px 16px;border:1px solid var(--ink);border-radius:var(--radius-pill);color:var(--paper);font-weight:600;font-size:var(--text-meta)}.toast-ok{background:var(--mint-700)}.toast-alert{background:var(--danger)}.toast-body{margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.toast-close{flex:none;width:44px;height:44px;margin:-8px -8px;border:0;padding:0;border-radius:50%;background:var(--on-dark-dim);color:var(--paper);font-size:var(--text-body);line-height:1}.toast-out{opacity:0;transform:translateX(-50%) translateY(-6px);transition:opacity 180ms ease,transform 180ms ease}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}.button,.tab,.step-star,.toast,.toast-out,.cart-bar,.cart-bar-pulse{transition:none;animation:none}.button:active{transform:none}}:where(button,.button){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--tap-min);border:1px solid var(--mint-700);border-radius:var(--radius-sm);padding:8px 16px;background:rgba(0,0,0,0);color:var(--mint-700);font-weight:700;text-align:center;text-decoration:none;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:transform 180ms ease,background-color var(--transition-fast) var(--ease-out)}:where(button:hover,.button:hover){background:var(--mint-100)}:where(button:active,.button:active){transform:scale(0.98)}:where(button:disabled,.button:disabled){opacity:.6;cursor:default}.button-primary{border-color:rgba(0,0,0,0);background:var(--mint-700);color:var(--paper)}.button-primary:hover{background:var(--mint-800)}.button-vipps{border-color:rgba(0,0,0,0);background:var(--vipps-button);color:var(--paper)}.button-vipps:hover{background:var(--vipps-button-hover)}.vipps-heart{display:inline-flex;vertical-align:-3px;margin-inline-start:2px}.vipps-heart svg{display:block}.button-reorder,.button-deliver,.button-dispatch{border-color:rgba(0,0,0,0);background:var(--gold);color:var(--ink)}.button-reorder:hover,.button-deliver:hover,.button-dispatch:hover{background:var(--gold-deep)}:where(button.is-loading,.button.is-loading){opacity:.8;cursor:progress}.button-stripe{border-color:rgba(0,0,0,0);background:var(--stripe-button);color:var(--paper)}.button-stripe:hover{background:var(--stripe-button-hover)}form:not(.button_to)>button[type=submit],.vipps-form>button,.page-actions>.button,.cart-summary>.button,.vipps-login>.button,.loyalty-rules-card>.button,.auth-card>.button,.auth-card>.button_to>button,.board-card .button_to>button,.sheet-footer .button{width:100%;min-height:48px}.cart-summary>.button-vipps,.checkout-form>.button-vipps,.auth-card>.button-vipps,.vipps-form>button,.sheet-footer .button{padding:12px 20px}.item-add,.order-actions .button{padding:4px 12px;font-size:var(--text-meta)}.field{margin:0 0 16px}.field label,.field legend{display:block;font-size:var(--text-meta);font-weight:600;color:var(--ink-soft);margin-bottom:8px}input[type=text],input[type=tel],input[type=number],input[type=url],input[type=email],input[type=password],textarea,select{width:100%;margin:0;padding:12px 16px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper)}textarea{min-height:80px;resize:vertical}input:focus-visible,textarea:focus-visible,select:focus-visible{border-color:var(--mint-500);outline:var(--focus-ring);outline-offset:0}.auth-form input:not([type=hidden]){font-size:var(--text-title);padding:12px 16px;letter-spacing:.05em}fieldset{border:0;padding:0;margin:0 0 16px}.card{background:var(--surface-elevated);border:0;border-radius:var(--radius);padding:16px}.card>:last-child,.hero>:last-child,.loyalty-card>:last-child{margin-bottom:0}.chip{display:inline-flex;align-items:center;min-height:var(--tap-min);gap:4px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--mint-100);border:1px solid rgba(0,0,0,0);color:var(--mint-700);font-size:var(--text-meta);font-weight:600;white-space:nowrap}a.chip:hover{background:var(--mint-200)}.chip[aria-current]{background:var(--mint-700);color:var(--paper)}.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:var(--radius-xs);font-size:var(--text-xs);font-weight:700;background:var(--mint-100);color:var(--mint-700)}.badge-weight,.badge-payment,.badge-mode{background:var(--surface-elevated);color:var(--ink-soft)}.badge-promo,.badge-last-used,.badge-paid-steps,.badge-signature,.badge-veg,.badge-sharing,.badge-secret,.badge-deal{background:var(--gold-100);color:var(--gold-ink)}.state-chip{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-pill);font-size:var(--text-meta);font-weight:700;white-space:nowrap}.state-placed{background:var(--mint-100);color:var(--mint-700)}.state-confirmed{background:var(--gold-100);color:var(--gold-ink)}.state-preparing{background:var(--gold-150);color:var(--gold-ink-deep)}.state-ready{background:var(--mint-700);color:var(--paper)}.state-picked_up{background:var(--mint-200);color:var(--mint-700)}.state-delivered{background:var(--surface-elevated);color:var(--ink-soft)}.state-cancelled{background:var(--pom-100);color:var(--danger)}.empty{text-align:center;padding:32px 20px}.empty-star{display:block;width:44px;height:44px;margin:0 auto 12px;background:var(--mint-200)}.empty-title{font-size:var(--text-title)}.empty-body{color:var(--ink-soft)}.empty-action{margin-top:8px}.hero{border:0;border-radius:var(--radius);padding:24px 20px}.hero-mark{width:56px;height:56px;margin:0 0 8px}.hero-greeting{color:var(--mint-700);font-weight:700;margin-bottom:2px}.hero-title{font-size:var(--text-display)}.hero-meta{display:flex;align-items:center;gap:4px;color:var(--ink-soft);font-size:var(--text-meta);margin-bottom:2px}.hero-meta span{white-space:nowrap}.hero-rating{display:inline-flex;color:var(--gold-deep)}.reorder-card{display:flex;align-items:center;justify-content:space-between;gap:12px}.reorder-title{color:var(--gold-ink);font-size:var(--text-title);margin:0}.reorder-copy p{margin:2px 0 0;font-size:var(--text-meta)}.category-chips{position:sticky;top:48px;z-index:30;display:flex;gap:8px;overflow-x:auto;margin:12px -16px 0;padding:12px 16px;background:var(--paper);scrollbar-width:none;-webkit-overflow-scrolling:touch;mask-image:linear-gradient(to right, #000 85%, transparent)}.category-chips::-webkit-scrollbar{display:none}.menu-section{scroll-margin-top:130px;display:grid;gap:12px}.item-card{display:flex;align-items:center;gap:12px;padding:16px}.item-card-hit{flex:1;display:flex;align-items:center;gap:12px;min-width:0;color:inherit}.item-emoji{flex:none;width:56px;height:56px;border-radius:var(--radius-sm);background:var(--mint-100);display:flex;align-items:center;justify-content:center;font-size:var(--text-display)}.item-body{min-width:0}.item-name{display:block;font-weight:700}.item-facts{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:4px}.item-badges{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.item-side{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.item-price{font-weight:700;white-space:nowrap}.heat{display:inline-flex;align-items:center;gap:3px}.heat-dot{width:8px;height:8px;border-radius:50%;background:var(--line)}.heat-1 .heat-dot.on{background:var(--mint-500)}.heat-2 .heat-dot.on{background:var(--gold)}.heat-3 .heat-dot.on{background:var(--pom)}.heat-label{margin-inline-start:4px;font-size:var(--text-xs);font-weight:700;color:var(--ink-soft)}.item-photo{flex:none;width:56px;height:56px;border-radius:var(--radius-sm);object-fit:cover;background:var(--mint-100)}.sheet-head{border:0;border-radius:var(--radius);padding:24px 20px;margin-bottom:16px}.sheet-emoji{display:block;font-size:var(--text-display-xl);line-height:1;margin-bottom:8px}.sheet-facts{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 0}.sheet-description{font-size:var(--text-body)}.origin-story{border-inline-start:3px solid var(--mint-300);padding:4px 0 4px 12px;color:var(--ink-soft);font-size:var(--text-meta);font-style:italic}.option-group legend{display:flex;align-items:center;gap:8px;font-weight:700;color:var(--ink);margin-bottom:8px}.option-chips{display:flex;flex-wrap:wrap;gap:8px}.option-chip{display:inline-flex;align-items:center;min-height:var(--tap-min);gap:8px;padding:8px 16px;border-radius:var(--radius-pill);background:var(--surface-elevated);border:1px solid var(--line);font-size:var(--text-meta);cursor:pointer}.option-chip input[type=checkbox],.option-chip input[type=radio]{accent-color:var(--mint-600);margin:0}.option-chip:has(input:checked){background:var(--mint-100);border-color:var(--mint-300)}.option-chip input:disabled{opacity:.4}.option-price{color:var(--ink-soft);font-size:var(--text-meta)}.quantity-stepper{display:inline-flex;align-items:center;gap:4px}.quantity-button{flex:none;width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-elevated);font-size:var(--text-title);font-weight:700;line-height:1;padding:0}.quantity-input{width:56px;text-align:center;font-weight:700;border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 4px}.sheet-total{display:flex;justify-content:space-between;align-items:center;padding:12px 2px;font-size:var(--text-body);font-weight:700}.sheet-footer{position:fixed;inset-inline:0;bottom:calc(var(--tab-bar-height) + env(safe-area-inset-bottom, 0px));z-index:35;display:flex;justify-content:center;padding:12px 16px 16px;background:var(--paper);border-top:1px solid var(--line);pointer-events:none}.sheet-footer .button{pointer-events:auto;max-width:448px}.sheet-photo{display:block;width:100%;max-width:320px;aspect-ratio:1/1;object-fit:cover;border-radius:var(--radius);margin:0 auto 12px;background:var(--mint-100)}.cart-line{display:grid;grid-template-columns:44px 1fr auto;gap:12px}.line-emoji{width:44px;height:44px;border-radius:var(--radius-sm);background:var(--mint-100);display:flex;align-items:center;justify-content:center;font-size:var(--text-title)}.line-body h2{font-size:var(--text-body);margin:0}.line-options{color:var(--ink-soft);font-size:var(--text-meta);margin:2px 0}.line-note{color:var(--mint-700);font-size:var(--text-meta);font-style:italic;margin:2px 0}.line-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:var(--text-meta)}.line-sum{font-weight:700;white-space:nowrap;font-size:var(--text-body)}.line-tools{display:flex;align-items:center;gap:4px;margin-top:8px}.quantity-value{min-width:20px;text-align:center;font-weight:700}.line-remove{background:none;border:0;padding:12px 8px;color:var(--danger);font-size:var(--text-meta);font-weight:600}.cart-summary{margin-top:16px}.cart-subtotal{display:flex;justify-content:space-between;font-size:var(--text-body);font-weight:700;padding:4px 0 8px}.promo-hint{display:flex;align-items:center;gap:8px;color:var(--mint-700);font-size:var(--text-meta);background:var(--surface-elevated);border-radius:var(--radius-sm);padding:8px 12px}.mode-toggle{display:flex;gap:8px;margin:12px 0}.mode-toggle .chip{flex:1;justify-content:center}.cart-action-note{text-align:center;color:var(--ink-soft);font-size:var(--text-meta);margin-top:8px}.cart-bar{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(var(--tab-bar-height) + env(safe-area-inset-bottom, 0px) + 8px);width:calc(100% - 32px);max-width:448px;z-index:45;display:flex;align-items:center;gap:12px;padding:8px 12px 8px 16px;border:1px solid var(--ink);border-radius:var(--radius-pill);background:var(--ink);color:var(--paper);font-weight:700}.cart-bar-info{display:flex;flex-direction:column;min-width:0}.cart-bar-title{font-size:var(--text-xs);color:var(--mint-200)}.cart-bar-meta{font-size:var(--text-meta);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-bar-action{margin-inline-start:auto;flex:none;display:inline-flex;align-items:center;min-height:var(--tap-min);background:var(--gold);color:var(--ink);border-radius:var(--radius-pill);padding:0 16px}.cart-bar-pulse{animation:cart-bar-pulse 300ms ease}@keyframes cart-bar-pulse{0%{transform:translateX(-50%) scale(1)}40%{transform:translateX(-50%) scale(1.03)}100%{transform:translateX(-50%) scale(1)}}.page-carts .cart-bar,.page-checkout .cart-bar{display:none}.vipps-login{margin:16px 0;text-align:center}.vipps-login strong{display:block;margin-bottom:4px}.vipps-login strong+p{margin:0}.vipps-login .button{margin-top:12px}.login-or{display:flex;align-items:center;gap:12px;color:var(--ink-soft);font-size:var(--text-meta);margin:16px 0 0}.login-or::before,.login-or::after{content:"";flex:1;height:1px;background:var(--line)}.payment-option{display:flex;align-items:center;gap:12px;margin:16px 0}.payment-option-text{flex:1;margin:0}.payment-option strong{display:block}.vipps-wordmark{flex:none;height:32px;width:auto}.promo-line{display:flex;align-items:center;gap:8px;color:var(--mint-700);font-weight:600;font-size:var(--text-meta)}.promo-line span{color:var(--mint-700);font-weight:700}.totals{margin:12px 0}.checkout-subtotal{display:flex;justify-content:space-between;gap:12px;margin:0;padding:4px 0}.totals-discount{color:var(--mint-700);font-weight:600}.totals-sum{font-size:var(--text-title);font-weight:700;border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.totals-note{color:var(--ink-soft);font-size:var(--text-meta);margin:8px 0 0}.zone-feedback{min-height:20px;font-size:var(--text-meta);font-weight:600;margin:8px 0 0}.zone-feedback:empty{margin:0}.zone-ok{color:var(--mint-700)}.zone-fail{color:var(--danger)}.steps-note{text-align:center;color:var(--ink-soft);font-size:var(--text-meta);margin-top:8px}.vipps-mock{max-width:360px;margin:32px auto;text-align:center}.vipps-head{background:var(--surface-elevated);border:0;border-radius:var(--radius);padding:32px 20px;margin-bottom:16px}.vipps-head .vipps-wordmark{display:block;height:64px;width:auto;margin:0 auto 12px}.vipps-amount{font-size:var(--text-display);font-weight:700;margin:4px 0}.vipps-verify{font-size:var(--text-title);font-weight:700;margin:4px 0}.vipps-reference{margin:0}.vipps-merchant{color:var(--ink-soft);margin:0}.vipps-cancel{display:inline-block;margin-top:16px;color:var(--ink-soft);font-weight:600}.vipps-note{color:var(--ink-soft);font-size:var(--text-xs);margin-top:12px}.stripe-wordmark{flex:none;font-weight:700;font-size:var(--text-body);color:var(--stripe-ink);border:2px solid var(--stripe);border-radius:var(--radius-xs);padding:4px 12px}.vipps-head .stripe-wordmark{display:block;border:0;padding:0;font-size:var(--text-display);margin-bottom:12px}.stripe-lock{display:inline-flex;vertical-align:-3px;margin-inline-start:2px}.stripe-lock svg{display:block}dl.totals{display:grid;grid-template-columns:1fr auto;column-gap:12px;row-gap:8px}dl.totals dd{margin:0;text-align:end}.track-head h1{font-size:var(--text-title)}.track-eta{display:inline-flex;align-items:center;gap:8px;background:var(--mint-100);color:var(--mint-700);font-weight:700;border-radius:var(--radius-pill);padding:8px 16px}.timeline{list-style:none;margin:16px 0 8px;position:relative}.timeline::before{content:"";position:absolute;inset-inline-start:16px;margin-inline-start:-1px;top:16px;bottom:16px;width:2px;background:var(--mint-200)}.step{position:relative;display:flex;align-items:center;gap:16px;padding:8px 0;color:var(--ink-soft)}.step-star{position:relative;z-index:1;flex:none;width:32px;height:32px;background:var(--mint-200);transition:background-color 180ms ease}.step-done{color:var(--mint-700)}.step-done .step-star{background:var(--mint-500)}.step[aria-current=step]{color:var(--ink)}.step[aria-current=step] .step-star{background:var(--gold)}.step-label{font-weight:600}.step[aria-current=step] .step-label{font-weight:700}.courier-line{display:flex;align-items:center;gap:8px;background:var(--surface-elevated);border-radius:var(--radius-sm);padding:12px;font-size:var(--text-meta);font-weight:600}.track-cancelled{background:var(--pom-100);color:var(--danger);border-radius:var(--radius-sm);padding:12px;font-weight:700}.tip-choices{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 4px}.thanks-line{text-align:center;font-weight:700;color:var(--mint-700);margin-top:16px}.order-card-head{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px}.order-lines{font-size:var(--text-meta);margin:0 0 12px}.order-card-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.order-actions{margin-inline-start:auto;display:flex;gap:8px}.order-head .state-chip,.order-head .badge{margin-inline-end:8px}.order-head p{margin:0}.order-lines-list{list-style:none}.order-line{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:8px 0;border-top:1px solid var(--line);font-size:var(--text-meta)}.order-line .line-options{display:block}.order-delivery{margin-top:16px;border-top:1px solid var(--line);padding-top:8px;font-size:var(--text-meta)}.board-head{border:0;border-radius:var(--radius);padding:16px;margin-bottom:16px}.board-head h1{margin:0;font-size:var(--text-title)}.board-grid{display:grid;gap:16px;grid-template-columns:1fr}.board-column-title{display:flex;align-items:center;gap:8px;font-size:var(--text-body);margin:0 0 8px}.board-count{background:var(--mint-100);color:var(--mint-700);border-radius:var(--radius-pill);font-size:var(--text-meta);padding:2px 8px}.board-card{margin-bottom:12px;padding:12px}.board-card-top{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:8px}.board-card-items{font-size:var(--text-meta);margin:0 0 8px}.board-card-phone{font-size:var(--text-meta);margin:0 0 12px}.board-card-address{font-size:var(--text-meta);margin:0 0 4px}.board-wait{font-size:var(--text-meta);text-align:center;margin:0}.board-empty{font-size:var(--text-meta);margin:0}.run-stop{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding:12px 0}.run-stop:first-of-type{border-top:0}.run-info{min-width:0}.run-info strong{display:block}.run-address{color:var(--ink-soft);font-size:var(--text-meta);margin:0}.run-meta{color:var(--ink-soft);font-size:var(--text-meta);margin:2px 0 0}.loyalty-card{border:0;border-radius:var(--radius);padding:24px 16px;text-align:center}.loyalty-brand{display:flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:var(--text-body);margin:0}.loyalty-mark{display:inline-block;width:28px;height:28px}.loyalty-stars{display:grid;grid-template-columns:repeat(5, 32px);justify-content:center;padding:0;list-style:none;gap:12px;margin:16px 0 12px}.loyalty-star{width:32px;height:32px;background:var(--mint-200);transition:background-color var(--transition-normal) var(--ease-out)}.loyalty-star-stamped{background:var(--gold)}.loyalty-progress{font-weight:700;color:var(--mint-700);margin-bottom:0}.loyalty-rules li{list-style:none;position:relative;padding:8px 0 8px 28px;border-top:1px solid var(--line);font-size:var(--text-meta)}.loyalty-rules li::before{content:"✦";position:absolute;left:4px;top:8px;color:var(--mint-500);font-size:var(--text-meta)}.loyalty-rules-card .button{margin-top:8px}.loyalty-login p{margin:0 0 8px}.tab-bar{position:fixed;inset-inline:0;bottom:0;z-index:40;display:flex;justify-content:center;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom, 0px)}.tab-bar ul{display:flex;width:100%;max-width:480px;gap:2px;padding:8px;list-style:none}.tab{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:var(--tap-min);gap:2px;padding:4px;border-radius:var(--radius-sm);color:var(--ink-soft);font-size:var(--text-xs);font-weight:600}.tab[aria-current=page]{background:var(--mint-100);color:var(--mint-700)}.tab-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;line-height:1}.tab-icon svg{display:block}.tab-badge{position:absolute;top:-4px;right:-8px;min-width:20px;height:20px;padding:0 4px;border-radius:var(--radius-pill);background:var(--gold);color:var(--ink);font-size:var(--text-xs);font-weight:700;display:inline-flex;align-items:center;justify-content:center}.tab-badge[hidden]{display:none}.fact-list{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:12px;row-gap:2px;padding:0;list-style:none}.mode-icon{display:inline-flex;vertical-align:-2px;margin-inline-end:2px;color:var(--mint-700)}.mode-icon svg{display:block}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.about-credits li{list-style:none;position:relative;padding:8px 0 8px 28px;border-top:1px solid var(--line);font-size:var(--text-meta)}.about-credits li::before{content:"✦";position:absolute;left:4px;top:8px;color:var(--mint-500);font-size:var(--text-meta)}.auth-card{max-width:420px;margin:8px auto 0}.auth-status{font-weight:700;color:var(--mint-700)}
