/* Bonvilo approved mobile layout, 22 October 2026 */
:root{--red:#a93232}button,input,select,textarea{font:inherit}::selection{background:#dce4cf;color:#123f2d}:focus-visible{outline:2px solid #637c43;outline-offset:3px}.test-tag{font-size:10px}.btn.danger{background:var(--red);color:#fffdf8}.favorite-tools{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px;margin-bottom:24px}.favorite-tools>div{display:flex;background:var(--sage);border-radius:12px;padding:4px}.favorite-tools button{width:40px;height:40px;display:grid;place-items:center;background:transparent;border-radius:8px;color:var(--green);font-size:23px}.favorite-tools button[aria-pressed=true]{background:var(--paper)}.favorite-tools svg{width:19px;height:19px}.favorite-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.favorite-small{min-width:0;overflow:hidden;background:var(--paper);border-radius:14px}.favorite-open{padding:0;display:block;width:100%;text-align:left;background:transparent;color:var(--green)}.favorite-open>img{width:100%;height:118px;object-fit:cover;display:block}.favorite-copy{padding:14px 12px 18px;display:grid;gap:9px;min-width:0}.favorite-copy strong{font-size:16px;line-height:1.2;overflow-wrap:anywhere}.favorite-copy small{font-size:12px;color:var(--muted)}.favorite-track{height:4px;background:var(--sage);border-radius:4px;overflow:hidden}.favorite-track>span{display:block;height:100%;background:var(--green)}.favorite-cards.list{grid-template-columns:1fr}.favorite-cards.list .favorite-open{display:flex;align-items:center;padding:12px;gap:15px}.favorite-cards.list img{height:76px;width:76px;border-radius:10px}.favorite-cards.list .favorite-copy{flex:1;padding:0}.discover-link{border-bottom:1px solid var(--line);margin-block:16px 0}.compact-offers .offer{display:flex;align-items:flex-start;padding:12px;gap:14px;text-align:left}.compact-offers .offer>img{width:96px;height:96px;aspect-ratio:1;border-radius:10px;flex-shrink:0}.compact-offers .offer-copy{padding:0;min-width:0}.compact-offers .offer-copy h3{font-size:18px;font-family:inherit;letter-spacing:0;margin:5px 0}.compact-offers .offer-copy p{font-size:12px;margin-top:5px;overflow-wrap:anywhere}.compact-offers .price{font-size:21px;font-family:inherit}.nav-item{position:relative}.nav-badge{position:absolute;top:0;left:calc(50% + 7px);min-width:18px;height:18px;padding:0 4px;border-radius:12px;background:var(--red);color:white;font-size:11px;line-height:18px;border:1px solid var(--paper);font-variant-numeric:tabular-nums}.rescue-filter{display:grid;gap:9px;margin-bottom:24px}.rescue-filter span{font-size:12px;color:var(--muted)}.award-row{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line);align-items:center}.award-row>div:first-child{flex:1;min-width:0}.award-row h3{font:600 18px/1.3 inherit;margin:0}.award-row p,.award-row small{font-size:12px;color:var(--muted)}.award-row progress{height:5px;width:100%;accent-color:var(--green)}.award-medal{width:84px;height:84px;border:3px solid #c8bb91;border-radius:50%;display:grid;place-items:center;align-content:center;color:var(--green);background:#f2ecd9;flex-shrink:0}.award-medal svg{width:34px;height:34px}.award-medal strong{font-size:14px}.award-row.locked .award-medal{opacity:.5;filter:grayscale(1)}#modal-body>.btn+.btn{margin-top:12px}.new-auth header,.new-auth .sidebar{display:none}.signed-out.new-auth .app-nav{display:block}.new-auth main{padding:0 22px 36px}.signup-welcome{padding-top:clamp(42px,15dvh,140px)}.signup-welcome h1{font:600 27px/1.22 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:-.5px}.signup-welcome>p{font-size:14px;line-height:1.35;color:var(--muted);margin:14px 0 0}.auth-logo{position:relative;height:92px;overflow:hidden;width:100%;margin:24px 0 32px}.auth-logo img{position:absolute;width:113.04%;max-width:none;left:-6.56%;top:-119.57%;height:auto}.signup-welcome h2{font:600 29px/1.22 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:-.5px}.auth-actions{display:grid;gap:16px;margin-top:48px}.auth-actions .btn{min-height:52px}.signup-welcome>.text-btn{margin-top:20px}.auth-form-view{padding-top:35px}.auth-form-view h1{font:600 27px/1.2 -apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;letter-spacing:-.5px;margin-block:32px}.auth-form-view h2{font:600 23px/1.3 inherit;margin-bottom:22px}.auth-form-view form{display:grid;gap:15px}.auth-form-view label{font-size:13px;font-weight:600}.auth-form-view p{font-size:14px;line-height:1.5;color:var(--muted);margin-block:10px 20px}.auth-form-view .privacy-check{display:flex;align-items:flex-start;gap:12px;line-height:1.5}.auth-form-view .privacy-check input{width:20px;height:20px;flex-shrink:0;accent-color:var(--green)}.auth-form-view .text-btn{display:inline;font-size:13px;min-height:0;text-decoration:underline}.code-field{font-size:26px;letter-spacing:.25em;text-align:center}.auth-form-view .back{display:flex}.auth-form-view .form-status{color:var(--red)}.new-auth .bottom{display:flex;justify-content:space-around}.new-auth .bottom button{flex:1}.new-auth .bottom svg{display:block;margin:auto}main[data-page=home]>.intro:after{content:none}main[data-page=home]>.intro:before{content:none}main[data-page=home]>.intro{padding-bottom:0}.btn{touch-action:manipulation}#modal{padding-bottom:env(safe-area-inset-bottom)}
@media(max-width:360px){.favorite-cards{gap:10px}.favorite-open>img{height:100px}.favorite-copy{padding:12px 9px}.favorite-copy strong{font-size:15px}.compact-offers .offer>img{width:78px;height:78px}.signup-welcome h1{font-size:25px}.signup-welcome h2{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

.invite-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.invite-heading .business-logo{max-width:104px;height:66px;margin:0}.reward-moment{text-align:center}.reward-moment .award-medal{margin:8px auto 28px}.reward-moment h2{margin-bottom:20px}.reward-moment .btn{margin-top:24px}.reward-moment .text-btn{margin-top:14px}.reward-moment{animation:moment-arrive 240ms ease-out}@keyframes moment-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

html.rescue-pull-active,html.rescue-pull-active body{overscroll-behavior-y:contain}.rescue-pull-state{position:fixed;z-index:45;top:96px;left:22px;right:22px;max-width:640px;margin:0 auto;background:var(--paper);border-radius:12px;display:grid;place-items:center;overflow:hidden;color:var(--green);font-size:13px;text-align:center;height:0}.rescue-pull-state[hidden]{display:none}.rescue-pull-state[data-state=loading]:before{content:"";width:16px;height:16px;border:2px solid var(--sage);border-top-color:var(--green);border-radius:50%;animation:rescue-refresh-spin .8s linear infinite}.rescue-pull-state[data-state=error]{color:var(--red)}@keyframes rescue-refresh-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.rescue-pull-state[data-state=loading]:before{animation:none;border-color:var(--green)}}

.receipt-history>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;cursor:pointer;font-size:18px;font-weight:600;min-height:36px}.receipt-history>summary::-webkit-details-marker{display:none}.receipt-history>summary svg{transform:rotate(90deg)}.receipt-history[open]>summary{margin-bottom:16px}.receipt-history[open]>summary svg{transform:rotate(-90deg)}.branch-week{margin-top:16px}.branch-week>summary{cursor:pointer}.today-hours{color:var(--green)}

/* Active section remains visible on mobile and its detail routes. */
.bottom .nav-item[aria-current="page"]{background:var(--sage);border-radius:12px;color:var(--green);font-weight:600}
.bottom .nav-item[aria-current="page"]:after{content:"";position:absolute;bottom:2px;left:calc(50% - 9px);width:18px;height:2px;background:currentColor;border-radius:2px}
