@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-arabic-wght-normal-Cafbb7Zc.woff2) format("woff2-variations");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-latin-ext-wght-normal-tDTa1Fj6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Vazirmatn Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/vazirmatn-latin-wght-normal-BFexNX-K.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--espresso: #2b1d16;--roast: #4a3326;--mocha: #6b4c3b;--caramel: #c8894a;--caramel-deep: #a86a32;--latte: #e8d5bc;--crema: #f3e6d3;--foam: #fbf6ef;--milk: #fffaf3;--ink: #2b1d16;--ink-soft: #6f5a4b;--ink-mute: #9a8676;--line: rgba(74, 51, 38, .12);--danger: #b4492f;--ok: #5d7b4f;--shadow-sm: 0 2px 8px rgba(43, 29, 22, .1);--shadow: 0 10px 30px rgba(43, 29, 22, .16), 0 2px 6px rgba(43, 29, 22, .08);--shadow-lg: 0 24px 60px rgba(43, 29, 22, .28);--r-sm: 10px;--r: 16px;--r-lg: 24px;--nav-h: 76px;--safe-b: env(safe-area-inset-bottom, 0px);--ease: cubic-bezier(.2, .8, .2, 1);--z-chrome: 10;--z-sheet: 20;--z-chat: 25;--z-dock: 30;--z-popover: 40;--z-modal: 50;--z-toast: 60;color-scheme:light;font-family:Vazirmatn Variable,Tahoma,sans-serif;font-feature-settings:"ss01";color:var(--ink);background:var(--foam)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{overflow:hidden;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none;padding:0}button:disabled{cursor:default;opacity:.55}:focus-visible{outline:2.5px solid var(--caramel);outline-offset:2px;border-radius:8px}h1,h2,h3,p{margin:0}ul{list-style:none;margin:0;padding:0}.app{position:fixed;inset:0;overflow:hidden;overflow:clip}.map{position:absolute;inset:0;background:#f4ece1}.app .map.maplibregl-map,.app>.map{position:absolute;inset:0;width:100%;height:100%}.maplibregl-ctrl-bottom-left{bottom:calc(var(--nav-h) + var(--safe-b) + 84px)}.maplibregl-ctrl-group{border-radius:12px!important;box-shadow:var(--shadow-sm)!important}.maplibregl-ctrl-attrib{font-size:10px;background:#fffaf3cc!important}.maplibregl-ctrl-bottom-right{bottom:calc(var(--nav-h) + var(--safe-b) + 124px)}.topbar{position:absolute;inset-inline:12px;top:calc(env(safe-area-inset-top,0px) + 12px);display:flex;gap:8px;align-items:center;justify-content:space-between;flex-wrap:wrap;pointer-events:none;z-index:var(--z-chrome)}.topbar__end{display:flex;gap:8px;align-items:center}.avatar{position:relative;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--milk);color:var(--roast);border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .16s ease,background-color .2s ease}.avatar:after{content:"";position:absolute;inset:-4px;border-radius:50%;pointer-events:none;background:conic-gradient(from 200deg,var(--caramel),rgba(200,137,74,0) 45%,var(--caramel) 90%);-webkit-mask:radial-gradient(circle,transparent 24px,#000 25px);mask:radial-gradient(circle,transparent 24px,#000 25px);opacity:.35;transition:opacity .2s ease}.avatar:hover:after,.avatar.is-open:after{opacity:1}.avatar:active{transform:scale(.94)}.avatar--user{background:var(--espresso);color:var(--crema);font-weight:800;font-size:17px;border-color:transparent}.topbar>*{pointer-events:auto}.city-chip{display:inline-flex;align-items:center;gap:8px;height:44px;padding-inline:6px 14px;background:var(--espresso);color:var(--crema);border-radius:999px;box-shadow:var(--shadow)}.brand{background:var(--caramel);color:var(--espresso);font-weight:800;font-size:13px;padding:6px 12px;border-radius:999px;letter-spacing:-.2px}.city-chip__name{font-weight:700}.loc-actions{display:flex;gap:6px}.pill{display:inline-flex;align-items:center;gap:6px;height:40px;padding-inline:12px;background:var(--milk);border-radius:999px;box-shadow:var(--shadow-sm);font-size:13.5px;font-weight:600;border:1px solid var(--line);transition:background .2s,color .2s}.pill.is-on{background:var(--caramel);color:var(--espresso);border-color:transparent}@media (max-width: 599px){.topbar{flex-wrap:nowrap}.pill{width:44px;height:44px;padding:0;justify-content:center}.pill__text{display:none}}.filters{position:absolute;top:calc(env(safe-area-inset-top,0px) + 66px);inset-inline:0;display:flex;gap:6px;padding:4px 12px 10px;z-index:var(--z-chrome);pointer-events:none}.filters>*{pointer-events:auto;max-width:100%}.filter{flex:none;height:34px;padding-inline:14px;border-radius:999px;font-size:13px;font-weight:600;background:#fffaf3f0;border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:transform .15s var(--ease),background .2s}.filter:active{transform:scale(.96)}.filter.is-on{background:var(--roast);color:var(--crema);border-color:transparent}.pick-hint{position:absolute;top:calc(env(safe-area-inset-top,0px) + 128px);inset-inline:0;margin-inline:auto;width:max-content;display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:999px;background:var(--espresso);color:var(--crema);font-size:13.5px;box-shadow:var(--shadow);animation:rise .3s var(--ease)}.user-pin{width:36px;height:48px;cursor:grab;filter:drop-shadow(0 5px 5px rgba(43,29,22,.38))}.user-pin svg{position:relative;width:100%;height:100%;display:block;animation:user-bob 3.2s ease-in-out infinite;transform-origin:50% 100%}.user-pin__pulse{position:absolute;left:50%;bottom:-2px;width:46px;height:18px;margin-left:-23px;border-radius:50%;background:radial-gradient(closest-side,#ffbe6e8c,#ffbe6e00);animation:user-pulse 2.4s ease-out infinite}.user-pin:active{cursor:grabbing}@keyframes user-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes user-pulse{0%{transform:scale(.5);opacity:.9}to{transform:scale(1.6);opacity:0}}.reduce-motion .user-pin svg,.reduce-motion .user-pin__pulse{animation:none}@media (prefers-reduced-motion: reduce){.user-pin svg,.user-pin__pulse{animation:none}}.results{position:absolute;inset-inline:10px;bottom:calc(var(--nav-h) + var(--safe-b) + 50px);max-height:64px;background:var(--milk);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;transition:max-height .35s var(--ease);z-index:var(--z-sheet);overscroll-behavior:contain;animation:sheet-up .32s var(--ease)}.results__chev{flex:none;color:var(--ink-mute);transition:transform .3s var(--ease)}.results.is-open .results__chev{transform:rotate(180deg)}.results.is-open{max-height:min(52vh,460px);overflow-y:auto}.results__head{width:100%;display:flex;align-items:center;gap:10px;padding:14px 16px 12px;position:relative;text-align:start}.results__grip,.panel__grip{position:absolute;top:6px;inset-inline:0;margin-inline:auto;width:38px;height:4px;border-radius:4px;background:var(--latte)}.results__title{flex:1;font-weight:700;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.results__badge{flex:none;font-size:12px;font-weight:700;color:var(--espresso);background:var(--caramel);padding:4px 10px;border-radius:999px}.results__list{padding:0 8px 10px}.result{width:100%;display:grid;grid-template-columns:14px 1fr;grid-template-rows:auto auto;column-gap:10px;padding:10px;border-radius:12px;text-align:start;transition:background .15s}.result:hover{background:var(--foam)}.result__dot{grid-row:span 2;align-self:center;width:12px;height:12px;border-radius:50%;background:var(--roast);box-shadow:0 0 0 3px var(--crema)}.result--full .result__dot{background:var(--caramel)}.result--partial .result__dot{background:#a8784b}.result__name{font-weight:700;font-size:14.5px}.result__meta{font-size:12.5px;color:var(--ink-mute)}.panel{position:absolute;inset-inline:0;bottom:0;max-height:78vh;overflow-y:auto;z-index:var(--z-sheet);overscroll-behavior:contain;background:var(--milk);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-lg);padding:22px 18px calc(var(--nav-h) + var(--safe-b) + 14px);animation:sheet-up .38s var(--ease)}.panel__head{display:flex;gap:12px;align-items:center}.panel__cover{flex:none;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(140deg,var(--roast),var(--espresso));color:var(--crema);font-size:26px;font-weight:800;box-shadow:inset 0 0 0 3px #f3e6d31f}.panel__title{flex:1;min-width:0}.panel__title h2{font-size:19px;font-weight:800;line-height:1.4}.panel__sub{font-size:13px;color:var(--ink-mute);margin-top:2px;display:flex;flex-wrap:wrap;gap:4px 14px}.panel__sub span+span:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--latte);margin-inline-end:10px;vertical-align:middle}.icon-btn{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--foam)}.trust{display:flex;align-items:center;gap:8px;margin-top:14px;padding:9px 12px;border-radius:var(--r-sm);font-size:12.5px;background:#f6ecdf;color:var(--mocha)}.trust--ok{background:#e7efe1;color:var(--ok)}.panel__actions{display:flex;gap:8px;margin-top:12px}.btn{display:inline-flex;align-items:center;gap:8px;height:42px;padding-inline:16px;border-radius:12px;font-weight:700;font-size:14px}.btn--ghost{background:var(--foam);border:1px solid var(--line)}.tabs{display:flex;gap:4px;margin-top:16px;padding:4px;background:var(--foam);border-radius:14px}.tabs button{flex:1;height:38px;border-radius:11px;font-weight:700;font-size:14px;color:var(--ink-soft);transition:background .2s}.tabs button.is-active{background:var(--milk);color:var(--ink);box-shadow:var(--shadow-sm)}.panel__body{padding-top:14px}.match-note{font-size:13px;font-weight:700;color:var(--caramel-deep);margin-bottom:10px}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:6px 12px;border-radius:999px;background:var(--foam);border:1px solid var(--line);font-size:13px}.chip--match{background:var(--caramel);border-color:transparent;color:var(--espresso);font-weight:700}.facts{margin:16px 0 0;display:grid;gap:12px}.facts div{display:grid;gap:2px}.facts dt{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--ink-mute)}.facts dd{margin:0;font-size:14.5px}.facts dd[dir=ltr]{text-align:right}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:end}.muted{color:var(--ink-mute);font-size:13.5px;margin-top:10px}.source{margin-top:16px;font-size:11.5px;color:var(--ink-mute)}.related{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}.related__row{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.related__item{flex:none;display:grid;gap:2px;text-align:start;min-width:132px;max-width:180px;padding:10px 12px;border-radius:14px;background:var(--foam);border:1px solid var(--line)}.related__item span{font-weight:700;font-size:13.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.related__item small{color:var(--ink-mute);font-size:12px}.related__item--full{border-color:var(--caramel);box-shadow:inset 0 0 0 1px var(--caramel)}.state{padding:10px 16px 14px;font-size:13.5px;color:var(--ink-soft)}.state--error{color:var(--danger)}.state--soon{text-align:center;padding:26px 8px;color:var(--ink-mute)}.skeleton{display:grid;gap:10px}.skeleton span{height:14px;border-radius:8px;background:linear-gradient(90deg,var(--foam),var(--crema),var(--foam));background-size:200% 100%;animation:shimmer 1.2s infinite}.skeleton span:nth-child(2){width:70%}.skeleton span:nth-child(3){width:45%}.list-title{font-size:12.5px;color:var(--ink-mute);font-weight:700;margin:12px 4px 6px}.eyebrow{font-size:12px;font-weight:800;color:var(--caramel-deep);letter-spacing:.2px}.toast{position:absolute;inset-inline:0;margin-inline:auto;width:max-content;max-width:calc(100% - 32px);bottom:calc(var(--nav-h) + var(--safe-b) + 130px);z-index:var(--z-toast);padding:11px 18px;border-radius:14px;background:var(--espresso);color:var(--crema);font-size:13.5px;box-shadow:var(--shadow);animation:rise .3s var(--ease)}.toast--error{background:#5a2a1f}.sheet-backdrop{position:fixed;inset:0;z-index:var(--z-modal);background:#2b1d166b;display:grid;align-items:end;animation:fade .25s}.sheet{background:var(--milk);border-radius:var(--r-lg) var(--r-lg) 0 0;box-shadow:var(--shadow-lg);padding:22px 18px calc(18px + var(--safe-b));max-height:88vh;display:flex;flex-direction:column;animation:sheet-up .38s var(--ease)}.sheet__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.sheet__head h2{font-size:22px;font-weight:800;margin-top:4px}.search{display:flex;align-items:center;gap:10px;margin-top:16px;height:50px;padding-inline:14px;border-radius:14px;background:var(--foam);border:1px solid var(--line)}.search input{flex:1;border:0;background:none;outline:none;font-size:15.5px}.city-list{overflow-y:auto;margin-top:6px}.city{width:100%;display:flex;align-items:center;gap:10px;padding:13px 10px;border-radius:12px;text-align:start}.city:hover,.city.is-current{background:var(--foam)}.city svg{color:var(--caramel-deep);flex:none}.city__name{flex:1;font-weight:700}.city__meta{font-size:12.5px;color:var(--caramel-deep);font-weight:700}.city__meta--muted{color:var(--ink-mute);font-weight:500}.dock{position:absolute;inset-inline:0;bottom:0;z-index:var(--z-dock);height:calc(var(--nav-h) + var(--safe-b));padding:0 6px var(--safe-b);display:grid;grid-template-columns:1fr 1fr 104px 1fr 1fr;align-items:stretch;border-radius:28px 28px 0 0;color:var(--latte);filter:drop-shadow(0 -8px 22px rgba(43,29,22,.28));touch-action:manipulation}.dock:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(180deg,#ffecd624,#ffecd600 1.5px),radial-gradient(120% 140% at 50% 0%,#4a3326,#33231a 46%,#22170f);-webkit-mask:radial-gradient(circle 50px at 50% -4px,transparent 49px,#000 50px);mask:radial-gradient(circle 50px at 50% -4px,transparent 49px,#000 50px)}.dock__crema{position:absolute;left:0;top:9px;width:58px;height:42px;border-radius:16px;z-index:1;background:linear-gradient(180deg,#dda265,#c8894a 55%,#ad6e36);box-shadow:inset 0 1px #fff5e68c,inset 0 -2px 6px #5a321440,0 6px 16px #c8894a59;transition:transform .42s cubic-bezier(.22,1,.36,1),opacity .2s ease;pointer-events:none}.dock__crema:after{content:"";position:absolute;top:5px;inset-inline:12px;height:5px;border-radius:6px;background:#fff6e88c;filter:blur(1.5px)}.dock__item{position:relative;z-index:2;display:grid;grid-template-rows:52px auto;justify-items:center;align-content:start;padding-top:8px;color:#e8d5bca8;transition:color .2s ease}.dock__item:hover{color:var(--crema)}.dock__icon{position:relative;display:grid;place-items:center;width:58px;height:42px;border-radius:16px;transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s ease}.dock__item:active .dock__icon{transform:scale(.92);transition-duration:.12s}.dock__item.is-active .dock__icon{color:var(--espresso);transform:translateY(-1px)}.dock__label{font-size:11.5px;font-weight:600;line-height:1;margin-top:1px;transition:color .2s ease}.dock__item.is-active .dock__label{color:var(--crema);font-weight:800}.dock__item:focus-visible{outline:none}.dock__item:focus-visible .dock__icon{outline:2.5px solid var(--caramel);outline-offset:2px}.bean{position:absolute;top:4px;inset-inline-start:6px;width:9px;height:12px;transform:rotate(-24deg)}.bean ellipse{fill:var(--caramel)}.bean path{fill:none;stroke:#2b1d16;stroke-width:1.2;stroke-linecap:round}.dock__item.is-active .bean ellipse{fill:var(--espresso)}.dock__item.is-active .bean path{stroke:var(--caramel)}.dock__cup-slot{position:relative;z-index:3;display:grid;justify-items:center}.dock__cup{position:absolute;top:-40px;width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 50% 28%,#5a3d2e,#33231a 58%,#22170f);box-shadow:inset 0 1.5px #ffecd62e,inset 0 -6px 14px #00000059,0 12px 24px #2b1d1661;transition:transform .42s cubic-bezier(.22,1,.36,1),box-shadow .3s ease}.dock__cup:before{content:"";position:absolute;inset:-3px;border-radius:50%;background:conic-gradient(from 210deg,#c8894a00,#c8894a8c,#c8894a00 70%);-webkit-mask:radial-gradient(circle,transparent 43px,#000 44px);mask:radial-gradient(circle,transparent 43px,#000 44px);opacity:.45;transition:opacity .3s ease}.dock__cup:hover{transform:translateY(-2px)}.dock__cup:active{transform:translateY(0) scale(.95);transition-duration:.12s}.dock__cup.is-open{transform:translateY(-7px)}.dock__cup.is-open:before{opacity:1}.dock--chat .dock__crema{opacity:0}.cup{width:62px;height:62px;overflow:visible}.cup__saucer{fill:#d6c0a2}.cup__handle{stroke:#eadbc5}.cup__lift{transform-box:fill-box;transform-origin:50% 100%;transition:transform .48s cubic-bezier(.22,1,.36,1)}.cup--steam .cup__lift{transform:translateY(-2px) rotate(-5deg)}.cup__steam path{stroke:var(--latte);stroke-dasharray:1;stroke-dashoffset:1;opacity:0;transform-box:fill-box;transform-origin:50% 100%}.dock__cup:hover .cup:not(.cup--steam) .cup__steam path,.dock__cup:focus-visible .cup:not(.cup--steam) .cup__steam path{animation:steam-rise 1.5s cubic-bezier(.22,1,.36,1) 1}.cup--steam .cup__steam path{animation:steam-rise 2.6s cubic-bezier(.22,1,.36,1) infinite}.cup__steam path:nth-child(2){animation-delay:.32s!important}.cup__steam path:nth-child(3){animation-delay:.64s!important}.cup__swirl{transform-box:fill-box;transform-origin:center}.cup--busy .cup__swirl{animation:stir 1.1s ease-in-out infinite}@keyframes steam-rise{0%{stroke-dashoffset:1;opacity:0;transform:translateY(5px)}30%{opacity:.95}65%{stroke-dashoffset:0}to{stroke-dashoffset:-1;opacity:0;transform:translateY(-7px)}}@keyframes stir{0%,to{transform:scaleX(1)}50%{transform:scaleX(-1)}}.chat{position:absolute;inset-inline:10px;bottom:calc(var(--nav-h) + var(--safe-b) + 34px);z-index:var(--z-chat);overscroll-behavior:contain;height:min(62vh,560px);display:flex;flex-direction:column;background:linear-gradient(180deg,rgba(255,250,243,.97),var(--milk));border-radius:28px;box-shadow:var(--shadow-lg);backdrop-filter:blur(6px);transform-origin:50% 110%;transform:translateY(40px) scale(.2);opacity:0;pointer-events:none;transition:transform .5s var(--ease),opacity .35s}.chat.is-open{transform:none;opacity:1;pointer-events:auto}.chat__steam{position:absolute;bottom:-34px;inset-inline:0;height:40px;display:flex;justify-content:center;gap:10px;pointer-events:none}.chat__steam span{width:18px;height:40px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(255,250,243,.9),transparent 70%);filter:blur(3px);animation:wisp 2.8s ease-in-out infinite}.chat__steam span:nth-child(2){animation-delay:.6s}.chat__steam span:nth-child(3){animation-delay:1.2s}.chat__head{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 18px 8px}.chat__head h2{font-size:18px;font-weight:800;margin-top:2px}.chat__list{flex:1;overflow-y:auto;padding:8px 14px;display:flex;flex-direction:column;gap:8px}.bubble{max-width:86%;padding:10px 14px;border-radius:18px;font-size:14.5px;line-height:1.85;white-space:pre-wrap;animation:rise .25s var(--ease)}.bubble--assistant{align-self:flex-start;background:var(--crema);border-start-start-radius:6px}.bubble--user{align-self:flex-end;background:var(--roast);color:var(--crema);border-start-end-radius:6px}.bubble--error{background:#f6dfd7;color:#6d2a1b}.typing{display:inline-flex;gap:4px;padding:6px 2px}.typing i{width:7px;height:7px;border-radius:50%;background:var(--mocha);animation:blink 1.2s infinite}.typing i:nth-child(2){animation-delay:.2s}.typing i:nth-child(3){animation-delay:.4s}.suggest{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.suggest button{padding:8px 12px;border-radius:999px;border:1px dashed var(--latte);font-size:13px;background:var(--milk)}.chat__input{display:flex;gap:8px;align-items:flex-end;padding:10px 12px 14px}.chat__input textarea{flex:1;resize:none;max-height:120px;min-height:48px;padding:12px 14px;border-radius:16px;border:1px solid var(--line);background:var(--foam);outline:none;font-size:15px;line-height:1.6}.chat__input textarea:focus{border-color:var(--caramel)}.send{width:48px;height:48px;border-radius:16px;background:var(--caramel);color:var(--espresso);display:grid;place-items:center}.send svg{transform:scaleX(-1)}@media (min-width: 900px){:root{--nav-h: 72px}.topbar{inset-inline:20px;top:18px}.filters{top:74px;padding-inline:20px}.results{inset-inline-start:20px;inset-inline-end:auto;width:380px;bottom:110px;max-height:72px}.results.is-open{max-height:calc(100vh - 260px)}.panel{inset-inline-start:auto;inset-inline-end:20px;top:128px;bottom:110px;width:400px;max-height:none;border-radius:var(--r-lg);padding-bottom:20px;animation:slide-in .38s var(--ease)}.dock{inset-inline:0;margin-inline:auto;width:560px;bottom:16px;border-radius:30px;height:var(--nav-h);padding-bottom:0}.chat{inset-inline-start:20px;inset-inline-end:auto;width:420px;bottom:120px;height:min(68vh,620px);transform-origin:50% 120%}.sheet-backdrop{align-items:center;justify-items:center}.sheet{width:520px;border-radius:var(--r-lg);max-height:80vh}.maplibregl-ctrl-bottom-left{bottom:110px}.maplibregl-ctrl-bottom-right{bottom:200px}.toast{bottom:110px}}@keyframes steam{0%,to{transform:translateY(0) scaleY(1);opacity:.4}50%{transform:translateY(-4px) scaleY(1.12);opacity:1}}@keyframes wisp{0%{transform:translateY(8px) scaleX(.8);opacity:0}40%{opacity:.9}to{transform:translateY(-22px) scaleX(1.3);opacity:0}}@keyframes sheet-up{0%{transform:translateY(40px);opacity:0}to{transform:none;opacity:1}}@keyframes slide-in{0%{transform:translate(-24px);opacity:0}to{transform:none;opacity:1}}@keyframes rise{0%{transform:translateY(8px);opacity:0}to{transform:none;opacity:1}}@keyframes fade{0%{opacity:0}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes blink{0%,to{opacity:.25}50%{opacity:1}}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}.scrim{position:fixed;inset:0;z-index:calc(var(--z-popover) - 1)}.account{position:absolute;top:calc(env(safe-area-inset-top,0px) + 66px);inset-inline-end:12px;z-index:var(--z-popover);width:min(340px,calc(100% - 24px));max-height:calc(100% - 180px);overflow-y:auto;overscroll-behavior:contain;padding:16px;border-radius:22px;background:var(--milk);border:1px solid var(--line);box-shadow:var(--shadow-lg);transform-origin:top left;animation:pop .22s cubic-bezier(.22,1,.36,1)}.account__head{display:flex;gap:12px;align-items:center}.account__head h2{font-size:17px;font-weight:800}.account__head p{font-size:12.5px;color:var(--ink-mute);margin-top:2px}.account__avatar{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;flex:none;background:linear-gradient(140deg,var(--crema),var(--latte));color:var(--roast);font-size:20px;font-weight:800;box-shadow:inset 0 0 0 1px var(--line)}.account__avatar.is-user{background:linear-gradient(140deg,var(--roast),var(--espresso));color:var(--crema)}.account__card{margin-top:14px;padding:14px;border-radius:16px;display:grid;gap:8px;background:linear-gradient(135deg,#f6ecdf,#fbf3e8);border:1px solid var(--line)}.account__card-title{display:flex;gap:6px;align-items:center;font-weight:800;font-size:14px;color:var(--caramel-deep)}.account__card p{font-size:13px;line-height:1.9;color:var(--ink-soft)}.account__card small{font-size:11.5px;color:var(--ink-mute);text-align:center}.btn--primary{background:var(--espresso);color:var(--crema);justify-content:center;width:100%}.btn--danger{background:var(--danger);color:#fff}.account__list{display:grid;margin-top:8px}.account__row{display:flex;align-items:center;gap:12px;width:100%;padding:12px 8px;border-radius:12px;text-align:start;color:var(--ink);text-decoration:none;font-size:14.5px;transition:background-color .18s ease}.account__row:hover{background:var(--foam)}.account__row>svg:first-child{color:var(--mocha);flex:none}.account__row span{flex:1}.account__row em{font-style:normal;font-size:13px;color:var(--ink-mute)}.account__chev{color:var(--ink-mute);flex:none}.switch{position:relative;flex:none;width:40px;height:24px;border-radius:12px;background:var(--latte);transition:background-color .2s ease}.switch:after{content:"";position:absolute;top:3px;inset-inline-start:3px;width:18px;height:18px;border-radius:50%;background:var(--milk);box-shadow:var(--shadow-sm);transition:transform .22s cubic-bezier(.22,1,.36,1)}.switch.is-on{background:var(--caramel)}.switch.is-on:after{transform:translate(-16px)}.account__confirm{padding:12px;border-radius:12px;background:#f6e3dc;display:grid;gap:10px;font-size:13.5px}.account__confirm div{display:flex;gap:8px}.account__foot{display:flex;gap:6px;align-items:center;margin-top:8px;padding-top:12px;border-top:1px solid var(--line);font-size:11.5px;color:var(--ink-mute)}.soon{position:absolute;inset-inline:10px;bottom:calc(var(--nav-h) + var(--safe-b) + 54px);z-index:var(--z-sheet);padding:30px 22px 26px;border-radius:26px;background:var(--milk);box-shadow:var(--shadow-lg);text-align:center;animation:sheet-up .36s var(--ease)}.soon__close{position:absolute;top:14px;inset-inline-end:14px}.soon__badge{width:64px;height:64px;margin:0 auto 14px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(140deg,var(--roast),var(--espresso));color:var(--crema);box-shadow:inset 0 0 0 3px #f3e6d31a,0 10px 22px #2b1d1638}.soon h2{font-size:20px;font-weight:800;margin-top:4px}.soon__text{max-width:34ch;margin:10px auto 0;font-size:14px;line-height:2;color:var(--ink-soft)}.bubble-wrap{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.bubble-wrap--user{align-items:flex-end}.bubble__action{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:var(--espresso);color:var(--crema);font-size:12.5px;font-weight:700;transition:transform .14s ease}.bubble__action:active{transform:scale(.96)}@media (min-width: 900px){.soon{inset-inline:0;margin-inline:auto;width:440px;bottom:120px}.account{top:74px;inset-inline-end:20px}}@keyframes pop{0%{opacity:0;transform:translateY(-6px) scale(.97)}to{opacity:1;transform:none}}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}@media (prefers-reduced-motion: reduce){.cup--steam .cup__steam path{animation:none!important;stroke-dashoffset:0;opacity:.8}}.reduce-motion .cup--steam .cup__steam path{animation:none!important;stroke-dashoffset:0;opacity:.8}.rec{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:6px}.rec__card{background:#fffaf3eb;color:var(--espresso, #3b2a20);border-radius:12px;padding:8px 10px;font-size:13px}.rec__name{all:unset;cursor:pointer;display:flex;gap:8px;align-items:baseline;justify-content:space-between;width:100%}.rec__name span{opacity:.7;font-size:12px}.rec__why,.rec__unknown{margin:3px 0 0;line-height:1.5}.rec__unknown{opacity:.65}.load-wait,.load-fail{display:grid;justify-items:center;align-content:center;gap:12px;padding:96px 20px;text-align:center;color:var(--ink-soft);font-size:14.5px}.load-wait small{color:var(--ink-mute)}.load-wait__dot{width:10px;height:10px;border-radius:50%;background:var(--caramel);animation:load-pulse 1.4s ease-in-out infinite}@keyframes load-pulse{0%,to{transform:scale(.7);opacity:.5}50%{transform:scale(1.3);opacity:1}}@media (prefers-reduced-motion: reduce){.load-wait__dot{animation:none}}.app-crash{min-height:100vh;background:var(--foam)}.mcard{position:absolute;inset-inline:12px;bottom:calc(var(--cup-space) + 8px);z-index:var(--z-sheet);border-radius:20px;background:#2b1d16f0;color:var(--crema);box-shadow:var(--shadow-lg);border:1px solid rgba(255,220,180,.14);backdrop-filter:blur(8px);animation:mcard-in .32s cubic-bezier(.22,1,.36,1)}@keyframes mcard-in{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}.mcard{padding:14px 14px 12px;display:grid;gap:10px}.mcard__top{display:flex;align-items:flex-start;gap:12px;min-width:0;padding-inline-end:30px}.mcard__body{flex:1;min-width:0;display:grid;gap:4px;text-align:start}.mcard__title{font-size:16.5px;font-weight:800;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;text-wrap:balance}.mcard__meta{display:flex;flex-wrap:wrap;gap:2px 0;font-size:13px;line-height:1.6;color:#f3e6d3c7}.mcard__meta span+span:before{content:"";display:inline-block;width:3px;height:3px;border-radius:50%;background:currentColor;opacity:.5;margin-inline:8px;vertical-align:middle}.mcard__trust{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;font-size:12px;line-height:1.6;color:#f3e6d3b3}.mcard__trust.is-ok{color:#b5d3a6}.mcard__trust em{font-style:normal;padding:1px 9px;border-radius:999px;background:var(--caramel);color:var(--espresso);font-weight:800}.mcard__desc{font-size:13px;line-height:1.85;color:#f3e6d3d1;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;overflow-wrap:anywhere;margin:0}.mcard__actions{display:flex;gap:8px;align-items:stretch}.mcard__actions>*{flex:1 1 0;min-width:0}.mcard__primary{height:44px;border-radius:14px;background:var(--caramel);color:var(--espresso);font-weight:800;font-size:14.5px}.mcard__primary:focus-visible{outline:2.5px solid #fff3e2;outline-offset:2px}.mcard .dirmenu{display:flex}.mcard .dirmenu>.btn{width:100%;height:44px;justify-content:center;border-radius:14px;background:#fff0dc1a;color:var(--crema);border:1px solid rgba(255,220,180,.28)}.mcard__close{position:absolute;top:10px;inset-inline-end:10px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#fff0dc1f;color:var(--crema)}.mcard__close:focus-visible{outline:2.5px solid var(--caramel)}.chat{inset-inline:12px;margin-inline:auto;bottom:calc(var(--cup-space) + 6px);height:min(54vh,520px);background:radial-gradient(120% 90% at 50% 100%,#4a2f1df5,#20140cf0);color:var(--crema);border-radius:32px;border:1px solid rgba(255,210,160,.14);box-shadow:0 0 40px #c8894a40,var(--shadow-lg);backdrop-filter:blur(10px);clip-path:circle(0% at 50% 112%);opacity:1;transform:none;transition:clip-path .62s cubic-bezier(.22,1,.36,1),visibility 0s linear .62s;visibility:hidden}.chat.is-open{clip-path:circle(150% at 50% 112%);visibility:visible;transition:clip-path .72s cubic-bezier(.22,1,.36,1) .12s,visibility 0s}.chat__smoke{position:absolute;inset:-34px -26px -40px;width:calc(100% + 52px);height:calc(100% + 74px);z-index:-1;pointer-events:none;opacity:.9}.chat.is-busy .chat__smoke{animation:smoke-drift 3.2s ease-in-out infinite alternate}@keyframes smoke-drift{0%{transform:translateY(0) scale(1)}to{transform:translateY(-6px) scale(1.015)}}.chat .eyebrow{color:#ffcf8a}.chat .icon-btn{background:#fff0dc1a;color:var(--crema)}.chat__list{gap:10px}.bubble-wrap{align-items:flex-end}.bubble-wrap--user{align-items:flex-start}.bubble--assistant{align-self:auto;background:#784e308c;color:#fff3e2;border:1px solid rgba(255,220,180,.12);border-start-start-radius:18px;border-end-end-radius:6px}.bubble--user{align-self:auto;background:#f3e6d3;color:#2b1d16;border-start-end-radius:18px;border-end-start-radius:6px}.bubble--error{background:#b4492f4d;color:#ffd9cc}.typing i{background:#ffcf8a}.suggest button{background:#fff0dc14;border-color:#ffcf8a66;color:var(--crema)}.bubble__action{background:#ffcf8a;color:var(--espresso)}.chat__input textarea{background:#fff0dc14;border-color:#ffdcb42e;color:var(--crema)}.chat__input textarea::placeholder{color:#f3e6d380}@media (min-width: 900px){.chat{inset-inline:0;width:460px;bottom:196px;height:min(62vh,580px)}.mcard{inset-inline:0;margin-inline:auto;width:420px;bottom:196px}}.reduce-motion .chat,.reduce-motion .chat.is-open{transition:none}@media (prefers-reduced-motion: reduce){.chat,.chat.is-open{transition:none}}.user-pin{width:22px;height:22px;border-radius:50%;background:#2f7bf6;border:3px solid #fff;box-shadow:0 0 0 10px #2f7bf62e,0 2px 6px #0000004d}.maplibregl-ctrl-bottom-right,.maplibregl-ctrl-bottom-left{bottom:calc(var(--cup-space) + 70px)!important}.count-pill{position:absolute;inset-inline:0;margin-inline:auto;width:max-content;max-width:calc(100% - 24px);bottom:calc(var(--cup-space) + 8px);z-index:var(--z-sheet);display:inline-flex;align-items:center;gap:8px;height:44px;padding-inline:16px;border-radius:999px;background:var(--milk);color:var(--ink);font-weight:700;font-size:14px;box-shadow:var(--shadow);border:1px solid var(--line);animation:rise .3s var(--ease)}.count-pill__badge{padding:3px 10px;border-radius:999px;background:var(--caramel);color:var(--espresso);font-size:12px}:root{--nav-h: 122px}.panel{z-index:calc(var(--z-page) + 4)}@media (min-width: 900px){.panel{bottom:150px}.count-pill{bottom:196px}}@media (max-width: 599px){.ccard__main .cover{aspect-ratio:2 / 1}}.chat{z-index:calc(var(--z-dock) + 2)}.chat.is-open{transition:clip-path .76s var(--ease-out) 60ms,visibility 0s}:root{--z-page: 18;--gutter: clamp(16px, 3.4vw, 56px);--dock-space: calc(122px + var(--safe-b));--cup-space: calc(180px + var(--safe-b));--head-h: 76px;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in: cubic-bezier(.55, 0, .75, .2)}@media (min-width: 900px){:root{--dock-space: 170px}}.stage{position:absolute;inset:0;z-index:var(--z-page);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(120,90,60,.45) transparent;background:var(--foam);pointer-events:auto}.stage.is-exit{pointer-events:none}.stage--explore{background:#1d130c}.stage--orders{background:#f5ecdd}.page{--pg-bg: var(--foam);--pg-ink: var(--ink);--pg-mute: var(--ink-mute);--pg-card: var(--milk);--pg-line: var(--line);min-height:100%;display:flex;flex-direction:column;background:var(--pg-bg);color:var(--pg-ink);padding-bottom:var(--dock-space)}.page__head{position:sticky;top:0;z-index:3;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;padding:calc(env(safe-area-inset-top,0px) + 14px) var(--gutter) 12px;background:color-mix(in srgb,var(--pg-bg) 88%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid transparent}.page__titles{flex:1 1 auto;min-width:0}.page__head h1{font-size:clamp(22px,2.2vw,30px);font-weight:800}.page__head p{font-size:13px;color:var(--pg-mute);margin-top:2px}.page__actions{flex:0 1 auto}.page__back{width:42px;height:42px;flex:none;border-radius:14px;display:grid;place-items:center;background:var(--pg-card);color:var(--pg-ink);border:1px solid var(--pg-line);box-shadow:var(--shadow-sm);transition:transform .14s ease}.page__back:active{transform:scale(.94)}.page__body{flex:1;padding:6px var(--gutter) 28px;display:flex;flex-direction:column;gap:16px}@media (max-width: 640px){.page__actions{flex:1 1 100%}}.sample-tag{position:absolute;top:8px;inset-inline-start:8px;z-index:2;padding:2px 8px;border-radius:8px;background:#2b1d16c7;color:#ffe7c7;font-size:11px;font-weight:700}.btn--cream{background:var(--crema);color:var(--espresso);justify-content:center}.ccard__main>.cover{flex:none;width:100%}.cover{position:relative;aspect-ratio:16 / 10;border-radius:16px;overflow:hidden;background:var(--roast)}.cover svg{width:100%;height:100%;display:block;transition:transform .6s var(--ease-out)}.cover--small{aspect-ratio:auto;width:78px;height:64px;border-radius:12px;flex:none}.cover__tag{position:absolute;bottom:8px;inset-inline-end:8px;padding:2px 8px;border-radius:8px;background:#00000073;color:#f3e6d3;font-size:10.5px}.cafes__search{margin:0;width:min(380px,100%);height:44px}@media (max-width: 640px){.cafes__search{width:100%}}.cafes__filters{display:flex;gap:6px;flex-wrap:wrap}.cafes__layout{display:grid;gap:22px;align-items:start;grid-template-columns:minmax(0,1fr)}@media (min-width: 1100px){.cafes__layout{grid-template-columns:minmax(0,1fr) clamp(320px,26vw,420px)}}.cafes__grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr))}.cafes__grid>li{animation:card-in .46s var(--ease-out) both}@keyframes card-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.ccard{position:relative;height:100%;border-radius:22px;background:var(--milk);border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .24s var(--ease-out),box-shadow .24s ease,border-color .2s}.ccard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.ccard:hover .cover svg{transform:scale(1.06)}.ccard--full{border-color:#c8894a99}.ccard.is-selected{border-color:var(--caramel);box-shadow:0 0 0 3px #c8894a59,var(--shadow);transform:translateY(-3px)}.ccard__main{display:flex;flex-direction:column;justify-content:flex-start;width:100%;height:100%;text-align:start;padding:8px}.ccard__main .cover{border-radius:15px}.ccard__body{padding:12px 6px 6px;display:grid;gap:7px}.ccard__body h2{font-size:16.5px;font-weight:800}.ccard__meta{display:flex;gap:12px;font-size:12.5px;color:var(--ink-mute)}.ccard__meta span+span:before{content:"•";margin-inline-end:8px;color:var(--latte)}.ccard__tags{display:flex;flex-wrap:wrap;gap:5px}.ccard__match{padding:3px 9px;border-radius:999px;background:var(--caramel);color:var(--espresso);font-size:11.5px;font-weight:800}.ccard__match--part{background:#ecd3b4}.mini{padding:3px 9px;border-radius:999px;background:var(--foam);border:1px solid var(--line);font-size:11.5px}.mini--on{border-color:var(--caramel);color:var(--caramel-deep);font-weight:700}.ccard__trust{display:flex;align-items:center;gap:5px;font-size:11.5px;color:var(--ink-mute)}.ccard__trust.is-ok{color:var(--ok)}.ccard__rating{margin-inline-start:auto}.ccard__map{position:absolute;top:16px;inset-inline-end:16px;width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#fffaf3eb;color:var(--roast);box-shadow:var(--shadow-sm);transition:transform .16s}.ccard__map:hover{transform:scale(1.08)}.cafes__aside{position:sticky;top:calc(var(--head-h) + 16px);align-self:start}.pv{border-radius:26px;background:var(--milk);border:1px solid var(--line);box-shadow:var(--shadow);padding:10px;animation:pv-in .42s var(--ease-out) both}@keyframes pv-in{0%{opacity:0;transform:translate(-18px) scale(.98)}to{opacity:1;transform:none}}.pv .cover{aspect-ratio:4 / 3;border-radius:18px}.pv__body{display:grid;gap:10px;padding:14px 8px 8px}.pv__body h2{font-size:21px;font-weight:800}.pv__meta{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-soft)}.pv__actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:4px}.pv__actions .btn--primary{width:auto}.pv--empty{display:grid;justify-items:center;gap:12px;text-align:center;padding:48px 28px;color:var(--ink-mute);border-style:dashed;box-shadow:none;background:transparent}.pv--empty p{font-size:13.5px;line-height:1.9;max-width:28ch}.page--explore{--pg-bg: #1d130c;--pg-ink: #f6e9d6;--pg-mute: rgba(246, 233, 214, .62);--pg-card: rgba(255, 240, 220, .08);--pg-line: rgba(255, 220, 180, .16);background:radial-gradient(90% 60% at 80% 0%,rgba(200,137,74,.18),transparent 60%),var(--pg-bg)}.page--orders{--pg-bg: #f5ecdd;--pg-card: #fffaf0;--pg-line: rgba(74, 51, 38, .16);background:repeating-linear-gradient(180deg,transparent 0 31px,rgba(74,51,38,.05) 31px 32px),var(--pg-bg)}.rv{display:grid;gap:20px;align-items:start;grid-template-columns:minmax(0,1fr)}@media (min-width: 960px){.cal__day{aspect-ratio:1.6}.rv{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}}.cal{padding:clamp(14px,2vw,28px);border-radius:28px;background:var(--pg-card);border:1px solid var(--pg-line);box-shadow:var(--shadow);transform-origin:50% 0}.cal__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cal__head h2{font-size:clamp(19px,2vw,26px);font-weight:800}.cal__nav{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--foam);border:1px solid var(--pg-line)}.cal__grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(4px,.6vw,10px)}.cal__dow{text-align:center;font-size:12.5px;font-weight:800;color:var(--caramel-deep);padding-bottom:4px}.cal__day{aspect-ratio:1.15;display:grid;place-items:center;border-radius:14px;font-weight:700;font-size:clamp(14px,1.3vw,18px);background:#ffffff8c;border:1px solid var(--pg-line);transition:background .16s,transform .16s}.cal__day:hover{background:#fff;transform:translateY(-2px)}.cal__day.is-today{background:var(--espresso);color:var(--crema);border-color:transparent;box-shadow:0 6px 16px #2b1d164d}.cal__note{display:flex;align-items:center;gap:6px;margin-top:14px;font-size:12.5px;color:var(--ink-soft);line-height:1.8}.rv__side{display:grid;gap:16px}.rv__empty,.rv__ready{padding:16px;border-radius:24px;background:var(--pg-card);border:1px solid var(--pg-line)}.resv__tabs{display:flex;gap:4px;padding:4px;border-radius:14px;background:var(--foam);border:1px solid var(--line)}.resv__tabs button{flex:1;height:38px;border-radius:11px;font-weight:700;color:var(--ink-soft)}.resv__tabs .is-active{background:var(--espresso);color:var(--crema)}.rv__zero{display:grid;justify-items:center;gap:8px;text-align:center;padding:30px 12px 16px;color:var(--ink-mute)}.rv__zero h2{color:var(--ink);font-size:17px;font-weight:800}.rv__zero p{font-size:13.5px;line-height:1.9;max-width:36ch;margin-bottom:8px}.rv__ready h2,.pf__card h3{font-size:15px;font-weight:800;margin-bottom:10px}.rv__ready ul,.pf__later{display:grid;gap:8px}.rv__ready li,.pf__later li{display:flex;align-items:center;gap:12px;padding:10px;border-radius:16px;background:var(--foam);border:1px solid var(--line)}.rv__ico{width:40px;height:40px;flex:none;border-radius:12px;display:grid;place-items:center;background:#ecd3b4;color:var(--roast)}.rv__ready li div,.pf__later li div{flex:1;display:grid;gap:2px;min-width:0}.rv__ready small,.pf__later small{font-size:12px;color:var(--ink-mute)}.rv__ready em,.pf__later em{font-style:normal;font-size:11.5px;font-weight:700;padding:3px 10px;border-radius:999px;background:#f6ecdf;color:var(--mocha)}.page--profile{background:radial-gradient(80% 50% at 100% 0%,rgba(200,137,74,.22),transparent 60%),linear-gradient(180deg,#fbf3e8,var(--foam))}.pf2__hero{display:grid;gap:18px 28px;align-items:center;padding:clamp(18px,3vw,40px);border-radius:30px;background:linear-gradient(150deg,#3a2516,#6b4428);color:var(--crema);box-shadow:var(--shadow-lg);grid-template-columns:auto minmax(0,1fr)}.pf2__ring{padding:5px;border-radius:50%;background:conic-gradient(from 210deg,#ffcf8a59,#ffcf8a1a 40%,#ffcf8a59)}.pf2__ring.is-user{background:conic-gradient(from 210deg,#ffcf8a,#c8894a,#8a5a37,#ffcf8a)}.pf2__avatar{width:clamp(88px,12vw,150px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--crema),var(--latte));color:var(--roast);font-size:clamp(34px,5vw,58px);font-weight:800;border:4px solid #4a2d19}.pf2__id{display:grid;gap:6px;min-width:0}.pf2__id h2{font-size:clamp(22px,2.6vw,32px);font-weight:800}.pf2__handle{font-size:14px;opacity:.75;unicode-bidi:plaintext;text-align:start}.pf2__bio{font-size:14px;line-height:1.9;max-width:60ch;opacity:.9}.pf2__stats{display:flex;gap:22px;margin-top:4px}.pf2__stats strong{font-size:18px;margin-inline-end:4px}.pf2__soon{font-size:12px;opacity:.6}.pf2__auth{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;padding-top:14px;border-top:1px solid rgba(255,220,180,.16)}.pf2__auth small{flex:1 1 280px;font-size:12.5px;line-height:1.9;opacity:.7}.btn--outline{border:1px solid rgba(255,220,180,.5);color:var(--crema);justify-content:center}.btn--cream:disabled{background:#f3e6d366;color:#2b1d16b3}@media (max-width: 560px){.pf2__hero{grid-template-columns:1fr;justify-items:center;text-align:center}.pf2__handle{text-align:center}.pf2__stats,.pf2__auth{justify-content:center}}.pf2__tabs{position:sticky;top:var(--head-h);z-index:2;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;padding:6px;border-radius:18px;background:#fff;border:1px solid rgba(74,51,38,.28);box-shadow:var(--shadow-sm)}.pf2__tabs::-webkit-scrollbar{display:none}.pf2__tabs button{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;height:44px;padding-inline:16px;border-radius:13px;font-weight:700;font-size:14px;color:var(--espresso);transition:background .2s,color .2s}.pf2__tabs button:hover{background:#c8894a1f}.pf2__tabs .is-active{background:var(--espresso);color:var(--crema)}.pf2__panel{animation:card-in .36s var(--ease-out) both}.pgrid{display:grid;gap:16px}.pgrid__ghost{display:grid;gap:clamp(4px,.8vw,10px);grid-template-columns:repeat(auto-fill,minmax(min(100%,150px),1fr))}.pgrid__slot{aspect-ratio:1;display:grid;place-items:center;border-radius:14px;border:1.5px dashed rgba(107,76,59,.28);color:#6b4c3b59;background:#fffaf380}.pgrid__ghost .pgrid__slot:nth-child(n+4){display:none}@media (min-width: 700px){.pgrid__ghost .pgrid__slot:nth-child(n+4){display:grid}}.pgrid__empty{display:grid;justify-items:center;gap:8px;text-align:center;padding:28px 12px;color:var(--ink-mute)}.pgrid__ico{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;border:2px solid var(--ink-soft);color:var(--ink-soft)}.pgrid__empty h2{color:var(--ink);font-size:18px;font-weight:800;margin-top:4px}.pgrid__empty p{font-size:13.5px;line-height:1.9;max-width:46ch}.pgrid__state{margin-top:4px;padding:3px 12px;border-radius:999px;background:#f6ecdf;color:var(--mocha);font-size:11.5px;font-weight:700}.pf__card{padding:14px 16px 12px;border-radius:24px;background:var(--milk);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.pf__card h3{font-size:15px;font-weight:800;margin-bottom:10px}.pf__settings{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start}.pf__card .account__row{width:100%}.map{transition:transform .72s var(--ease-out),filter .72s var(--ease-out);transform-origin:50% 100%}.view-cafes .map{transform:translateY(-5%) scale(1.05);filter:brightness(.8) saturate(.85)}.view-explore .map{transform:perspective(1400px) translateZ(-220px) rotateX(9deg);filter:brightness(.4) saturate(.7)}.view-orders .map{transform:scale(.97);filter:brightness(.6) sepia(.25)}.view-profile .map{transform:scale(1.03);filter:brightness(.55)}.view-chat .map{filter:brightness(.86)}.stage--cafes.is-enter{animation:cafes-in .64s var(--ease-out) both}.stage--cafes.is-exit{animation:cafes-out .24s var(--ease-in) both}@keyframes cafes-in{0%{clip-path:inset(100% 0 0 0 round 32px)}to{clip-path:inset(0 0 0 0 round 0)}}@keyframes cafes-out{to{clip-path:inset(100% 0 0 0 round 32px)}}.stage--explore.is-enter{animation:fade-in .32s ease both}.stage--explore.is-enter .xhero{animation:card-in .64s var(--ease-out) 80ms both}.stage--explore.is-enter .xsec{animation:card-in .64s var(--ease-out) both;animation-delay:calc(.18s + var(--s, 0) * 70ms)}.stage--explore.is-exit{animation:fade-out .24s var(--ease-in) both}.stage--orders.is-enter{animation:fade-in .26s ease both}.stage--orders.is-enter .cal{animation:cal-in .72s var(--ease-out) both}.stage--orders.is-enter .cal__day{animation:day-in .42s var(--ease-out) both;animation-delay:calc(.2s + var(--d, 0) * 8ms)}.stage--orders.is-enter .rv__side>*{animation:card-in .56s var(--ease-out) .36s both}.stage--orders.is-enter .rv__side>*:nth-child(2){animation-delay:.46s}.stage--orders.is-exit{animation:fade-out .24s var(--ease-in) both}@keyframes cal-in{0%{opacity:0;transform:scale(.88) translateY(-18px)}to{opacity:1;transform:none}}@keyframes day-in{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}.stage--profile.is-enter{animation:prof-in .76s var(--ease-out) both}.stage--profile.is-enter .pf2__hero{animation:focus-in .82s var(--ease-out) .12s both}.stage--profile.is-exit{animation:prof-out .26s var(--ease-in) both}@keyframes prof-in{0%{clip-path:circle(0% at 88% 100%)}to{clip-path:circle(150% at 88% 100%)}}@keyframes prof-out{to{clip-path:circle(0% at 88% 100%)}}@keyframes focus-in{0%{opacity:0;filter:blur(10px);transform:scale(1.04)}to{opacity:1;filter:none;transform:none}}@keyframes fade-in{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}.reduce-motion .map,.reduce-motion .stage,.reduce-motion .stage *,.reduce-motion .cafes__grid>li,.reduce-motion .pv{animation:none!important;transition:none!important}@media (prefers-reduced-motion: reduce){.map,.stage,.stage *,.cafes__grid>li,.pv{animation:none!important;transition:none!important}}@media (max-width: 560px){.pf2__tabs{overflow:visible;padding:5px;gap:2px}.pf2__tabs button{flex-direction:column;gap:3px;height:58px;padding-inline:2px;font-size:12px}.pf2__tabs button svg{width:20px;height:20px}}.fbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.fchip{flex:none;display:inline-flex;align-items:center;gap:8px;height:40px;padding-inline:14px 16px;border-radius:999px;font-size:13.5px;font-weight:600;color:var(--ink);background:#fffcf7eb;border:1px solid var(--line);box-shadow:var(--shadow-sm);transition:background-color .18s ease,color .18s ease,transform .16s ease,border-color .18s ease}.fchip svg{color:var(--caramel-deep);transition:color .18s ease}.fchip:hover{border-color:var(--latte);background:#fff}.fchip:active{transform:scale(.96)}.fchip:focus-visible{outline:2.5px solid var(--caramel);outline-offset:2px}.fchip.is-on{background:var(--espresso);color:var(--crema);border-color:transparent;box-shadow:0 6px 16px #2b1d1647}.fchip.is-on svg{color:#ffc77a}.fchip--clear{background:transparent;border-style:dashed;border-color:var(--latte);color:var(--mocha);box-shadow:none}.fchip--clear svg{color:inherit}.page__toolbar{flex:1 1 100%;min-width:0}.fbar--m{position:relative;flex-wrap:nowrap}.fchip--toggle svg:last-child{transition:transform .2s ease}.fchip--toggle svg.is-flipped{transform:rotate(180deg)}.fbar--m .fchip--toggle{height:44px;padding-inline:14px 12px;background:#fffcf7d1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-color:#4a332633;box-shadow:0 6px 18px #2b1d1629}.fbar--m .fchip--toggle.is-on{background:var(--espresso)}.fchip__count{min-width:22px;height:22px;padding-inline:6px;border-radius:11px;display:inline-grid;place-items:center;font-size:12px;font-weight:800;background:var(--caramel);color:var(--espresso)}.fbar__panel{position:absolute;top:calc(100% + 10px);inset-inline:0 auto;width:min(calc(100vw - 24px),420px);z-index:6;display:grid;gap:12px;padding:14px;border-radius:24px;background:#fffbf5e0;-webkit-backdrop-filter:blur(22px) saturate(1.3);backdrop-filter:blur(22px) saturate(1.3);border:1px solid rgba(255,255,255,.7);box-shadow:0 24px 50px #2b1d1647,inset 0 1px #fffc;animation:cd-in .24s cubic-bezier(.22,1,.36,1) both}.fbar__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.fbar__head strong{font-size:15px;font-weight:800}.fbar__head span{font-size:12.5px;color:var(--ink-soft)}.fbar__chips{display:flex;flex-wrap:wrap;gap:8px}.fbar__panel .fchip{height:42px}.fbar__foot{display:flex;gap:8px;padding-top:4px}.fbar__clear{display:inline-flex;align-items:center;gap:6px;height:44px;padding-inline:14px;border-radius:14px;font-weight:700;font-size:13.5px;background:#fff;border:1px solid var(--line);color:var(--ink)}.fbar__clear:disabled{opacity:.45}.fbar__done{flex:1;height:44px;border-radius:14px;font-weight:800;font-size:14px;background:var(--espresso);color:var(--crema);transition:transform .14s ease}.fbar__done:active{transform:scale(.97)}@media (prefers-reduced-motion: reduce){.fchip{transition:none}}@media (min-width: 900px){.filters .fbar--m .fbar__panel{inset-inline:0 auto;width:max-content;max-width:min(480px,calc(100vw - 200px));margin-inline-start:calc(var(--rail-w, 90px) + var(--rail-edge, 16px) - 12px)}}html:root{--nav-h: 64px;--dock-space: calc(92px + var(--safe-b));--cup-space: calc(92px + var(--safe-b));--chrome-clear: 138px;--rail-h: min(470px, calc(100vh - var(--chrome-clear) - 24px));--rail-w: 90px;--rail-edge: 16px}@media (min-width: 900px){html:root{--dock-space: 28px;--cup-space: 28px;--rail-top: max(calc(50% - var(--rail-h) / 2), var(--chrome-clear))}}.rail{--amber: #ffc77a;--cream: #fff3e2;--out: cubic-bezier(.22, 1, .36, 1);position:absolute;z-index:calc(var(--z-dock) + 3);touch-action:manipulation;inset-inline:10px;bottom:calc(10px + var(--safe-b));height:var(--nav-h);display:grid;grid-template-columns:1fr 1fr 1.15fr 1fr 1fr;align-items:center;gap:2px;padding:0 6px;border-radius:26px;color:#fff0dec7;background:linear-gradient(180deg,#ffecd61a,#ffecd600 40%),linear-gradient(160deg,#3e291bf0,#1e130cf5);box-shadow:inset 0 1px #ffe2be29,inset 0 0 0 1px #ffdcb412,0 14px 32px #140a0457,0 2px 6px #140a044d;-webkit-backdrop-filter:blur(14px) saturate(1.2);backdrop-filter:blur(14px) saturate(1.2)}.rail__btn{position:relative;display:grid;justify-items:center;align-content:center;gap:1px;height:100%;background:none;border-radius:18px;color:inherit;-webkit-tap-highlight-color:transparent;transition:color .2s ease}.rail__plate{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:15px;transition:background-color .24s ease,box-shadow .24s ease}.ri{width:34px;height:34px;overflow:visible;filter:drop-shadow(1px 3px 2.5px rgba(10,5,2,.5));transition:transform .34s var(--out)}.rail__label{font-size:10.5px;font-weight:700;line-height:1;color:#fff0deb3;transition:color .2s ease}.rail__btn:hover .ri,.rail__btn:focus-visible .ri{transform:translateY(-2px) scale(1.05)}.rail__btn:active .ri{transform:translateY(0) scale(.93);transition-duration:.11s}.rail__btn:hover .rail__label,.rail__btn:focus-visible .rail__label{color:var(--cream)}.rail__btn:focus-visible{outline:2.5px solid var(--amber);outline-offset:-3px}.rail__btn.is-active .rail__plate{background:radial-gradient(90% 90% at 30% 20%,#ffc77a4d,#ffc77a1a);box-shadow:inset 0 0 0 1px #ffd29659,0 0 18px #ffb46447}.rail__btn.is-active .ri{transform:translateY(-2px) scale(1.08)}.rail__btn.is-active .rail__label{color:var(--amber)}.rail__btn:after{content:"";position:absolute;width:18px;height:3px;border-radius:3px;bottom:2px;inset-inline:0;margin-inline:auto;background:var(--amber);box-shadow:0 0 8px #ffbe6ecc;opacity:0;transform:scaleX(.3);transition:opacity .24s ease,transform .34s var(--out)}.rail__btn.is-active:after{opacity:1;transform:none}.ri *{transform-box:fill-box}.ri__awning{transform-origin:50% 0;transition:transform .4s var(--out)}.rail__btn:hover .ri__awning,.rail__btn.is-active .ri__awning{transform:rotate(-3deg) scaleY(1.05)}.ri__win{transition:filter .3s ease}.rail__btn:hover .ri__win,.rail__btn.is-active .ri__win{filter:brightness(1.18) drop-shadow(0 0 3px #ffb866)}.ri__pin{transform-origin:50% 100%}.rail__btn:hover .ri__pin{animation:ri-hop .7s var(--out) 1}.rail__btn.is-active .ri__pin{animation:ri-hop 2.6s ease-in-out infinite}.rail__btn.is-active .ri__route{animation:ri-dash 1.6s linear infinite}.ri__page{transform-origin:50% 100%;transition:transform .38s var(--out)}.rail__btn:hover .ri__page,.rail__btn.is-active .ri__page{transform:rotate(-3deg)}.ri__check{transform-origin:50% 50%;transition:transform .38s cubic-bezier(.34,1.56,.64,1)}.rail__btn:hover .ri__check,.rail__btn.is-active .ri__check{transform:scale(1.14) rotate(-8deg)}.ri__bust{transform-origin:50% 100%;transition:transform .38s var(--out)}.rail__btn:hover .ri__bust,.rail__btn.is-active .ri__bust{transform:translateY(-1.5px)}.ri__dot{transform-origin:50% 50%}.rail__btn.is-active .ri__dot{animation:ri-pulse 2.2s ease-in-out infinite}@keyframes ri-hop{0%,to{transform:translateY(0)}30%{transform:translateY(-2.5px) scale(1.06)}55%{transform:translateY(0) scale(1.02,.96)}}@keyframes ri-dash{to{stroke-dashoffset:-9}}@keyframes ri-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.6}}.rail__cup{position:relative;height:100%;display:grid}.rail__btn--cup .ri{width:36px;height:42px}.rail__btn--cup .rail__plate{width:42px;height:46px}.rail__steam{position:absolute;inset-inline:0;margin-inline:auto;bottom:calc(100% - 22px);width:34px;height:52px;pointer-events:none;opacity:.55;transition:opacity .4s ease,transform .6s var(--out);transform-origin:50% 100%}.rail__steam-art{width:100%;height:100%;overflow:visible}.rail__steam-art path{fill:none;stroke:#fff3e2cc;stroke-width:2.4;stroke-linecap:round;filter:blur(1.4px);stroke-dasharray:60;animation:ri-steam 3.6s ease-in-out infinite}.rail__steam-art path:nth-child(2){animation-delay:.9s}.rail__steam-art path:nth-child(3){animation-delay:1.8s}@keyframes ri-steam{0%{stroke-dashoffset:60;opacity:0}35%{opacity:.9}to{stroke-dashoffset:-60;opacity:0}}.rail.is-chat .rail__steam{opacity:1;transform:scaleY(1.45)}.rail.is-busy .rail__steam-art path{animation-duration:2s}.rail__btn--cup:hover .ri{transform:translateY(-2px) rotate(-3deg)}.rail__btn--cup.is-active .ri{transform:translateY(-2px) rotate(-4deg) scale(1.06)}@media (min-width: 900px){.rail{inset-inline:var(--rail-edge) auto;bottom:auto;top:var(--rail-top);transform:none;height:var(--rail-h);width:var(--rail-w);grid-template-columns:1fr;grid-auto-rows:1fr;padding:16px 8px;gap:4px;border-radius:32px;align-items:stretch}.rail__cup{order:0;margin-bottom:8px}.rail__cup:after{content:"";position:absolute;inset-inline:14px;bottom:-6px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,220,180,.28),transparent)}.rail__btn[data-slot=cafes]{order:1}.rail__btn[data-slot=orders]{order:2}.rail__btn[data-slot=explore]{order:3}.rail__btn[data-slot=profile]{order:4}.rail__btn{height:auto;min-height:56px}.rail__cup .rail__btn{height:100%}.rail__plate{width:62px;height:62px;border-radius:21px}.ri{width:54px;height:54px}.rail__btn--cup .rail__plate{width:62px;height:70px}.rail__btn--cup .ri{width:50px;height:60px}.rail__label{position:absolute;inset-inline-start:calc(100% + 12px);top:50%;transform:translate(6px,-50%);white-space:nowrap;pointer-events:none;padding:7px 12px;border-radius:12px;font-size:12.5px;color:var(--cream);background:#22150df0;box-shadow:0 8px 20px #140a044d;opacity:0;transition:opacity .16s ease,transform .26s var(--out)}.rail__btn:hover .rail__label,.rail__btn:focus-visible .rail__label{opacity:1;transform:translateY(-50%)}.rail__btn.is-active .rail__label{color:var(--cream)}.rail__btn:after{width:3px;height:24px;bottom:auto;top:50%;inset-inline:auto;inset-inline-start:-8px;margin:0;transform:translateY(-50%) scaleY(.3)}.rail__btn.is-active:after{transform:translateY(-50%)}.rail__steam{inset-inline:auto;inset-inline-start:calc(100% - 20px);margin:0;bottom:auto;top:14px;width:52px;height:34px;transform:rotate(-90deg);transform-origin:0 100%}.rail.is-chat .rail__steam{transform:rotate(-90deg) scaleY(1.2);opacity:.85}.rail__btn--cup.is-active .rail__label{display:none}}@media (max-width: 380px){.rail__label{font-size:10px}.ri{width:31px;height:31px}}@media (min-width: 900px){html:root .chat{inset-inline-start:calc(var(--rail-edge) + var(--rail-w) + 22px);inset-inline-end:auto;bottom:auto;top:var(--rail-top);width:min(460px,44vw);height:min(72vh,660px);transform:none;clip-path:circle(0% at calc(100% + 36px) 52px)}html:root .chat.is-open{clip-path:circle(160% at calc(100% + 36px) 52px)}html:root .count-pill{bottom:28px}html:root .mcard{bottom:28px}html:root .results{bottom:28px}html:root .maplibregl-ctrl-bottom-right{right:calc(var(--rail-w) + var(--rail-edge) + 14px);bottom:24px!important}html:root .maplibregl-ctrl-bottom-left{bottom:24px!important}}@media (prefers-reduced-motion: reduce){.rail *,.rail{animation:none!important;transition:none!important}.rail__steam{opacity:.6}}.reduce-motion .rail *,.reduce-motion .rail{animation:none!important;transition:none!important}.reduce-motion .rail__steam{opacity:.6}@media (min-width: 900px){html:root .page__head,html:root .page__body{padding-inline-start:calc(var(--gutter) + var(--rail-w) + var(--rail-edge))}}html:root .topbar--page{inset-inline:0;top:0;z-index:24;flex-wrap:nowrap;align-items:center;height:calc(env(safe-area-inset-top,0px) + var(--topbar-h));padding:env(safe-area-inset-top,0px) var(--gutter) 0;background:color-mix(in srgb,var(--strip, var(--foam)) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.view-explore .topbar--page{--strip: #1d130c}.view-orders .topbar--page{--strip: #f5ecdd}html:root .page{padding-top:calc(env(safe-area-inset-top,0px) + var(--topbar-h))}html:root .page__head{top:calc(env(safe-area-inset-top,0px) + var(--topbar-h));padding-top:10px}.view-explore .topbar--page .city-chip{background:#3e291b;box-shadow:inset 0 0 0 1px #ffdcb429}@media (max-width: 899px){html:root{--nav-h: 80px;--dock-space: calc(110px + var(--safe-b));--cup-space: calc(110px + var(--safe-b));--notch-r: 43px}.rail{height:var(--nav-h);bottom:calc(8px + var(--safe-b));inset-inline:max(8px,env(safe-area-inset-left,0px)) max(8px,env(safe-area-inset-right,0px));padding:8px 2px 0;border-radius:30px;background:none;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;isolation:isolate;grid-template-columns:1fr 1fr 1.34fr 1fr 1fr;align-items:end;filter:drop-shadow(0 14px 14px rgba(20,10,4,.36)) drop-shadow(0 2px 3px rgba(20,10,4,.34))}.rail:before{content:"";position:absolute;inset:0;z-index:-2;border-radius:30px;background:linear-gradient(180deg,#ffe8c833,#ffe8c800 38%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='120'><filter id='n' x='0' y='0' width='100%25' height='100%25'><feTurbulence type='fractalNoise' baseFrequency='0.012 0.55' numOctaves='3' seed='7'/><feColorMatrix values='0 0 0 0 0.05  0 0 0 0 0.03  0 0 0 0 0.01  0 0 0 0.9 -0.12'/></filter><rect width='160' height='120' filter='url(%23n)'/></svg>") 0 0 / 160px 120px,repeating-linear-gradient(178deg,rgba(255,214,160,.06) 0 1px,transparent 1px 11px),linear-gradient(165deg,#6a4329,#4a2e1b 55%,#301d10);box-shadow:inset 0 1px #ffe6c457,inset 0 0 0 1px #ffdcb41a,inset 0 -10px 18px #0a050259;-webkit-mask:radial-gradient(circle var(--notch-r) at 50% -1px,transparent calc(var(--notch-r) - 1px),#000 var(--notch-r));mask:radial-gradient(circle var(--notch-r) at 50% -1px,transparent calc(var(--notch-r) - 1px),#000 var(--notch-r))}.rail:after{content:"";position:absolute;z-index:-1;top:-1px;inset-inline:0;margin-inline:auto;width:calc(var(--notch-r) * 2 + 3px);height:calc(var(--notch-r) + 2px);border-radius:0 0 999px 999px;border:1.5px solid rgba(255,226,190,.34);border-top:0;pointer-events:none;box-shadow:inset 0 -6px 10px #0a050259}.rail__btn{height:100%;gap:3px;padding-bottom:8px}.rail__plate{width:50px;height:46px;border-radius:18px;transition:background-color .24s ease,box-shadow .24s ease,transform .16s var(--out)}.ri{width:44px;height:44px}.rail__label{font-size:11.5px;letter-spacing:-.1px;color:#fff0dedb}.rail__btn:active .rail__plate{transform:scale(.88);box-shadow:0 0 0 9px #ffc77a29;transition-duration:80ms}.rail__btn:active .ri{transform:scale(.94)}.rail__btn.is-active .rail__plate{animation:rail-pop .46s cubic-bezier(.34,1.56,.64,1) both}.rail__btn.is-active .ri{transform:translateY(-3px) scale(1.1)}.rail__btn:after{bottom:3px;width:22px}@keyframes rail-pop{0%{transform:scale(.78)}to{transform:none}}.rail__cup{align-self:stretch}.rail__btn--cup{padding-bottom:8px}.rail__btn--cup .rail__plate{width:66px;height:66px;border-radius:50%;transform:translateY(-17px);background:radial-gradient(80% 80% at 35% 25%,#8a5a37,#3a2516 75%);box-shadow:inset 0 1px #ffe6c473,inset 0 0 0 1.5px #ffcd8c66,0 8px 14px #0a050280}.rail__btn--cup .ri{width:50px;height:56px}.rail__btn--cup:active .rail__plate{transform:translateY(-15px) scale(.9)}.rail__btn--cup.is-active .rail__plate{animation:rail-cup-pop .52s cubic-bezier(.34,1.56,.64,1) both;background:radial-gradient(80% 80% at 35% 25%,#c8894a,#5a3a24 78%);box-shadow:inset 0 1px #fff0d299,inset 0 0 0 1.5px #ffdca0b3,0 0 24px #ffb46473,0 8px 14px #0a050280}@keyframes rail-cup-pop{0%{transform:translateY(-9px) scale(.84)}to{transform:translateY(-17px)}}.rail__btn--cup .rail__label{transform:translateY(-14px)}.rail__btn--cup:after{display:none}.rail__steam{bottom:calc(100% - 12px)}}@media (max-width: 899px) and (max-width: 374px){.ri{width:38px;height:38px}.rail__label{font-size:10.5px}.rail__plate{width:44px}.rail__btn--cup .rail__plate{width:60px;height:60px}}.dirmenu{position:relative;display:inline-flex}.dirmenu .btn{gap:8px}.dirmenu__list{position:absolute;top:calc(100% + 8px);inset-inline-start:0;z-index:30;display:grid;gap:2px;min-width:232px;max-width:min(300px,90vw);padding:8px;border-radius:18px;background:#fffcf7fa;border:1px solid var(--line);box-shadow:var(--shadow-lg);animation:cd-in .2s cubic-bezier(.22,1,.36,1) both}.dirmenu__item{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:12px;font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;background:none;text-align:start;width:100%}.dirmenu__item svg{color:var(--caramel-deep);flex:none}.dirmenu__item:hover,.dirmenu__item:focus-visible{background:#f6ecdf;outline:none}.dirmenu__item:focus-visible{box-shadow:inset 0 0 0 2px var(--caramel)}.dirmenu__note{margin:4px 6px 2px;font-size:11.5px;line-height:1.8;color:var(--ink-mute)}.dirmenu--compact .dirmenu__icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--caramel);color:var(--espresso)}.dirmenu--compact .dirmenu__icon:disabled{opacity:.5}.dirmenu--compact .dirmenu__list{top:auto;bottom:calc(100% + 8px)}@media (prefers-reduced-motion: reduce){.dirmenu__list{animation:none}}.mcard .dirmenu__list{top:auto;bottom:calc(100% + 8px);inset-inline-start:auto;inset-inline-end:0}
