/* A quiet paper counter, isolated from the site's day/night palette. */
#matchaModeButton{background:#a8bd7b;color:#23351e;border:2px solid #70864e;white-space:nowrap;font-family:"Pixelify Sans",monospace;box-shadow:3px 3px 0 #273a21;font-size:16px;padding:10px 12px}
#matchaModeButton:hover{border-color:#536b3c}
#matchaModeButton:active{box-shadow:none}
body.matcha-open{overflow:hidden}
.matcha-mode{--mm-ink:#344330;--mm-green:#657c48;--mm-paper:#f7f6ef;position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;color:var(--mm-ink);background-color:var(--mm-paper);background-image:url('/images/matcha/paper.svg');background-size:650px;overflow:auto;font-family:"Pixelify Sans",monospace;font-size:18px;line-height:1.5;color-scheme:light}
.matcha-mode::backdrop{background:#f7f6ef}
.matcha-mode *{box-sizing:border-box}
.matcha-mode button,.matcha-mode input,.matcha-mode textarea{font:inherit;color:inherit}
.matcha-mode button{cursor:pointer}
.matcha-mode button:disabled{cursor:not-allowed;opacity:.5}
.matcha-mode button:focus-visible,.matcha-mode textarea:focus-visible,.matcha-mode input:focus-visible{outline:3px solid #637e40;outline-offset:5px}
.mm-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 38px;border-bottom:1px solid #68794a30;background:#f8f7f0ed;position:sticky;top:0;z-index:10}
.mm-wordmark{font-size:23px;font-weight:700;letter-spacing:2px}.mm-wordmark small{font-size:13px;font-weight:400;letter-spacing:0;margin-left:12px;color:#737766}
.mm-cancel{background:transparent;border:1px solid #869371;padding:7px 16px;font-size:15px!important;border-radius:3px;white-space:nowrap}
.mm-status{text-align:center;margin:0;background:#e6ebd7;font-size:16px}.mm-status:empty{display:none}
.mm-content{max-width:1440px;margin:0 auto;padding:28px 42px 40px}
.mm-menu-heading{text-align:center;padding:12px 0 26px}.mm-eyebrow{font-size:12px;letter-spacing:2px;color:#7a836d;font-weight:600}
.matcha-mode h1{font-family:"Pixelify Sans",monospace;font-size:clamp(30px,4vw,54px);font-weight:500;line-height:1.15;margin:10px 0}.mm-menu-heading>p:not(.mm-eyebrow){color:#77816c;margin:12px 0}.mm-tag{display:inline-block;font-size:12px;letter-spacing:1px;background:#e9eddd;padding:5px 12px;border-radius:20px}
.mm-categories{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;padding:15px 0 25px}.mm-categories button{border:1px solid #a3af93;background:#fff8;border-radius:4px;padding:7px 13px;font-size:14px}.mm-categories button[aria-pressed=true]{background:#61784a;color:#fff;border-color:#61784a}
.mm-menu-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:28px;align-items:start}.mm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.mm-card{position:relative;display:flex;align-items:center;flex-direction:column;text-align:center;background:#fff9;border:1px solid #d3d8c7;border-radius:5px;padding:13px 10px 14px;box-shadow:0 3px 0 #d8daca60;transition:transform .18s,border-color .18s;min-width:0}.mm-card:hover{transform:translateY(-3px);border-color:#728951}.mm-card.is-selected{border:2px solid #6c844b;background:#f0f3e4;padding:12px 9px 13px}.mm-drink-art{display:block;width:150px;height:160px;object-fit:contain;image-rendering:pixelated;flex:none}.mm-card .mm-drink-art{width:135px;height:145px}.mm-card.is-locked .mm-drink-art{filter:saturate(.55);opacity:.65}.mm-card strong{font-size:17px;line-height:1.2;min-height:42px;margin:6px 0}.mm-card-category{font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#7c8770}.mm-price{font-size:25px;font-weight:700;color:#617843}.mm-price small{font-size:11px;font-weight:400}.mm-availability{font-size:9px;letter-spacing:1px;color:#7a826d;margin-top:6px}
.mm-detail{position:sticky;top:100px;background:#fdfcf5;border:1px solid #d1d7c1;box-shadow:4px 5px 0 #d6dbc866;border-radius:4px;padding:24px}.mm-detail>.mm-drink-art{margin:auto;width:165px;height:175px}.mm-detail h2{font-size:25px;line-height:1.15;margin:12px 0}.mm-detail>p:not(.mm-eyebrow){font-size:16px;color:#727c65}.mm-detail-price{color:#4e673c!important;font-size:30px!important;border-bottom:1px solid #d6dccb;padding-bottom:12px;margin:10px 0}.mm-detail-price span{font-size:13px}.mm-order-form fieldset{border:0;padding:0;margin:0 0 16px}.mm-order-form legend{font-size:18px;margin-bottom:8px}.mm-order-form legend small{display:block;font-size:12px;color:#7c826f}.mm-order-form label{display:block;font-size:14px;margin:5px 0}.mm-order-form input{accent-color:#647c46;margin-right:6px}.mm-note-label{font-size:11px!important;letter-spacing:1px}.mm-order-form textarea{width:100%;resize:vertical;min-height:75px;border:1px solid #c0c9ae;border-radius:2px;background:#f9faf3;padding:10px;font-size:14px}.mm-primary{border:1px solid #536b3c;color:#fff!important;background:#647e49;border-radius:3px;padding:12px 20px;font-size:17px!important;box-shadow:3px 3px 0 #c7d0b8}.mm-order-form .mm-primary{width:100%;display:flex;justify-content:space-between}.mm-form-error{font-size:13px;color:#8b4639}.mm-form-error:empty{display:none}.mm-locked-note{padding:15px;background:#eef0e5;border:1px dashed #aeb99c;font-size:15px}.mm-source{text-align:center;font-size:12px;color:#7c826f;margin:30px 0 0}.mm-source a{color:#526c38}
.mm-coupon{position:relative;text-align:center;border:1px solid #b8c3a7;background:#f6f7e9;padding:14px 17px;margin-top:24px;box-shadow:3px 4px 0 #d9deca;clip-path:polygon(0 0,100% 0,100% 40%,97% 44%,97% 56%,100% 60%,100% 100%,0 100%,0 60%,3% 56%,3% 44%,0 40%)}.mm-coupon-head{display:flex;justify-content:space-between;font-size:8px;letter-spacing:1px;border-bottom:1px dashed #bdc7ae;padding-bottom:7px}.mm-coupon h3{font-size:15px;margin:8px 0}.mm-stamps{display:flex;justify-content:center;gap:10px;margin:12px 0}.mm-stamps span{display:grid;place-items:center;width:33px;height:33px;border:1px dashed #adb998;border-radius:50%;font-size:15px;color:#9da88b}.mm-stamps .stamped{color:#5d793e;border:2px solid #819960;font-size:25px;transform:rotate(-12deg)}.mm-coupon p{font-size:11px;margin:7px 0}.mm-redeem{background:transparent;border:0;border-bottom:1px solid #6a814e;font-size:12px!important;color:#4d6835!important;padding:5px}.mm-receipt-scene{text-align:center;padding:20px 0 80px}.mm-receipt-scene>p{color:#78826a}.mm-receipt{margin:35px auto 0;width:min(360px,100%);filter:drop-shadow(3px 10px 9px #50593f22);text-align:center}.mm-receipt-top{background:#fffef9;padding:25px 26px 10px;border-top:5px solid #82936b}.mm-receipt h2{font-size:25px;margin:0;letter-spacing:3px}.mm-receipt p{font-size:13px;overflow-wrap:anywhere}.mm-receipt hr{border:0;border-top:1px dashed #a5ab99;margin:18px 0}.mm-receipt-line{display:flex;justify-content:space-between;gap:20px;text-align:left;font-size:15px}.mm-receipt-line>span:last-child{white-space:nowrap}.mm-receipt-thanks{padding-top:10px;letter-spacing:1px}.mm-tear{display:flex;flex-direction:column;align-items:center;width:100%;padding:0 15px 25px;border:0;border-top:2px dashed #9da78c;background:#fffef9;touch-action:none;user-select:none;clip-path:polygon(0 0,100% 0,100% 94%,95% 100%,90% 94%,85% 100%,80% 94%,75% 100%,70% 94%,65% 100%,60% 94%,55% 100%,50% 94%,45% 100%,40% 94%,35% 100%,30% 94%,25% 100%,20% 94%,15% 100%,10% 94%,5% 100%,0 94%)}.mm-tear>span:first-child{font-size:16px;letter-spacing:2px;color:#8b9779}.mm-tear strong{font-size:16px;margin:8px 0}.mm-tear small{font-size:12px;color:#7e8870}.mm-barcode{font-size:24px;letter-spacing:2px;margin-top:14px}.mm-tear.is-torn{animation:mm-tear-away .35s forwards}
.mm-focus{min-height:calc(100dvh - 170px);display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:12px}.mm-focus h1{font-size:24px;margin:5px 0}.mm-focus>p{font-size:16px;color:#768368;margin:6px 0}.mm-clock{font-size:clamp(62px,9vw,116px);line-height:1.15;color:#4c6437;font-variant-numeric:tabular-nums;letter-spacing:6px}.mm-order-note{font-size:13px!important;max-width:440px;overflow-wrap:anywhere}.mm-coupon-dock{margin-top:auto;padding-top:20px;width:min(380px,100%);padding-bottom:8px}.mm-coupon-dock .mm-coupon{margin-top:0}.mm-brewing{position:relative;width:310px;height:205px;margin:5px 0 15px}.mm-brewing>.mm-drink-art{position:absolute;right:18px;bottom:0;width:155px;height:170px;animation:mm-cup 5s ease-in-out infinite}.mm-bowl{position:absolute;left:28px;top:65px;width:105px;height:58px;border-radius:5px 5px 45px 45px;background:#b6c29b;border:4px solid #536b3b;transform:rotate(-8deg);animation:mm-bowl 5s infinite;z-index:2}.mm-bowl:before{content:'';position:absolute;inset:-13px -4px auto;height:23px;border:4px solid #536b3b;border-radius:50%;background:repeating-radial-gradient(ellipse,#8fa755 0 6px,#c2d086 7px 10px)}.mm-bowl span{position:absolute;left:17px;top:13px;width:7px;height:16px;background:#e6ebd5;border-radius:2px}.mm-whisk{position:absolute;left:68px;top:5px;z-index:3;transform-origin:50% 80%;animation:mm-whisk 1s linear infinite}.mm-whisk i{display:block;width:12px;height:49px;background:repeating-linear-gradient(90deg,#b19a67 0 3px,#e6d5a1 3px 5px);border:2px solid #8d7a50;margin:auto}.mm-whisk b{display:block;width:40px;height:25px;background:repeating-linear-gradient(90deg,#b39d63 0 2px,transparent 2px 5px);border:2px solid #b39d63;border-radius:8px 8px 16px 16px}.mm-pour{position:absolute;left:130px;top:85px;height:12px;width:72px;background:#849f4e;transform:rotate(28deg);transform-origin:left;animation:mm-pour 5s infinite;z-index:1}.mm-spark{position:absolute;color:#8d9f69;font-size:27px;animation:mm-spark 2s infinite}.mm-spark.s1{right:15px;top:15px}.mm-spark.s2{left:17px;bottom:13px;animation-delay:1s}.is-complete .mm-whisk,.is-complete .mm-bowl,.is-complete .mm-pour{display:none}.is-complete .mm-brewing>.mm-drink-art{right:77px}
@keyframes mm-whisk{0%,100%{transform:rotate(-15deg) translateX(-7px)}50%{transform:rotate(12deg) translateX(8px)}}@keyframes mm-bowl{0%,55%,100%{transform:rotate(-8deg)}70%,85%{transform:rotate(22deg)}}@keyframes mm-pour{0%,55%,95%,100%{opacity:0;scale:.1 1}65%,85%{opacity:1;scale:1 1}}@keyframes mm-cup{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes mm-spark{50%{opacity:.25;transform:translateY(-5px)}}@keyframes mm-tear-away{to{transform:translate(30px,160px) rotate(15deg);opacity:0}}
@media(max-width:1050px){.mm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mm-content{padding:22px}.mm-menu-layout{gap:18px;grid-template-columns:minmax(0,1fr) 280px}.mm-detail{padding:18px}}
@media(max-width:650px){.mm-top{padding:14px 16px;gap:10px}.mm-wordmark{font-size:17px;letter-spacing:1px}.mm-wordmark small{display:none}.mm-cancel{font-size:13px!important;padding:7px 9px}.mm-content{padding:18px 14px}.mm-menu-layout{display:flex;flex-direction:column-reverse}.mm-detail{position:static;width:100%}.mm-detail>.mm-drink-art{float:right;width:100px;height:110px}.mm-detail .mm-coupon{display:none}.mm-grid{width:100%;gap:10px}.mm-card .mm-drink-art{width:120px;height:128px}.mm-categories{gap:5px}.mm-categories button{font-size:12px;padding:6px 8px}.mm-focus{min-height:calc(100dvh - 135px)}.mm-brewing{scale:.85;margin:-12px 0}.mm-focus h1{font-size:21px}.mm-clock{font-size:72px}.mm-coupon-dock{padding-top:22px}}
@media(prefers-reduced-motion:reduce){.matcha-mode *{animation:none!important;transition:none!important}.mm-pour{display:none}}
.mm-detail{max-height:calc(100dvh - 120px);overflow:auto;scroll-margin-top:90px}
@media(max-width:650px){.mm-detail{max-height:none;overflow:visible}}
/* Keep the timer and loyalty card together within a typical laptop viewport. */
.mm-content:has(.mm-focus){padding-top:10px;padding-bottom:10px}
.mm-focus{min-height:calc(100dvh - 110px);padding-top:0}
.mm-focus .mm-brewing{height:155px;margin:0}
.mm-focus .mm-brewing>.mm-drink-art{height:145px;width:135px}
.mm-focus .mm-clock{font-size:clamp(62px,8vw,92px);line-height:1.05}
.mm-focus .mm-coupon{padding:10px 17px}
.mm-focus .mm-coupon-dock{padding-top:12px;padding-bottom:0}
.mm-focus .mm-stamps{margin:8px 0}
@media(max-width:650px){.mm-detail .mm-coupon{display:block}.mm-focus{min-height:calc(100dvh - 87px)}}
/* Clearer pixel numerals: Pixelify Sans makes 5 resemble a closed 8. */
.mm-clock,.mm-price,.mm-detail-price,.mm-stamps span:not(.stamped),.mm-redeem,.mm-receipt-line>span:last-child,.mm-receipt-line>strong:last-child{
  font-family:"VT323","Courier New",monospace;
  font-variant-numeric:tabular-nums;
  font-weight:400;
}
.mm-price small,.mm-detail-price span{font-family:"Pixelify Sans",monospace}
.mm-actions{display:flex;gap:12px;align-items:center}.mm-friends{position:relative;z-index:2;max-width:600px;margin:20px auto;padding:24px;border:1px solid #87966b;background:#faf9f1}.mm-friends input{display:block;width:100%;padding:12px;font:inherit}.mm-friend-list{max-height:280px;overflow-y:auto;display:grid;gap:8px;margin:18px 0}.mm-friend-list button{padding:12px;text-align:left;background:#e8edda;color:#35442c;border:1px solid #87966b;font:inherit}.mm-actions [hidden]{display:none}@media(max-width:650px){.mm-top{flex-wrap:wrap;gap:12px}.mm-actions{margin-left:auto}}
