@import"https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@500;600;700;900&family=ZCOOL+XiaoWei&display=swap";:root{--paper:#f5eddd;--ink:#251f18;--muted:#786d5d;--red:#a63825;--green:#23483c;--safe-top:max(18px,env(safe-area-inset-top));--safe-bottom:max(12px,env(safe-area-inset-bottom));font-family:"Noto Serif SC",serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;margin:0;overflow:hidden;overscroll-behavior:none}button,a{font:inherit;-webkit-tap-highlight-color:transparent}.shell{position:relative;width:100%;height:100dvh;overflow:hidden;background:var(--paper)}.progress{position:fixed;z-index:20;top:0;left:0;width:100%;height:3px;background:#251f1814}.progress i{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(.1);transform-origin:left;transition:transform .2s ease}.slider{display:flex;width:100%;height:calc(100dvh - 74px - var(--safe-bottom));overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x}.slider::-webkit-scrollbar{display:none}.slide{position:relative;flex:0 0 100%;width:100%;height:100%;padding:calc(var(--safe-top) + 10px) 24px 18px;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always}.slide>span,.slide header>span,.meal-header span{font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.16em}.intro{display:flex;flex-direction:column;justify-content:space-between;color:#f8f0e2;background:radial-gradient(circle at 80% 18%,#e7af5e29,transparent 30%),linear-gradient(145deg,#173c33,#23483c 52%,#15352e)}.intro:after{content:"";position:absolute;inset:0;opacity:.16;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.intro>*{position:relative;z-index:1}.intro header,.intro footer,.meal-header,.actions,.meta p,dialog header,dialog footer{display:flex;align-items:center;justify-content:space-between}.intro header{font-family:system-ui,sans-serif;font-size:10px;letter-spacing:.12em}.intro-main{margin:auto 0}.brush{margin:0 0 12px;color:#d8ae6f;font-family:ZCOOL XiaoWei,serif;font-size:clamp(18px,6vw,26px);letter-spacing:.22em}.intro h1{max-width:5em;margin:0;font-size:clamp(56px,20vw,92px);font-weight:900;line-height:.94;letter-spacing:-.08em}.intro-main>p:not(.brush){margin:18px 0 24px;color:#f8f0e2c7;font-size:15px;letter-spacing:.08em}.stamp{display:inline-grid;gap:5px;padding:9px 13px;border:1px solid #f8f0e25c;font-size:12px;transform:rotate(-1deg)}.intro footer{gap:14px}.intro footer div{min-width:0;font-size:12px}.intro footer small{display:block;margin-bottom:2px;opacity:.56}.intro footer strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.intro footer button{display:flex;gap:7px;padding:0;border:0;color:inherit;background:transparent;font-size:13px;white-space:nowrap}.intro footer i{font-style:normal}.meal{display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;gap:clamp(9px,2.1vh,17px);background:linear-gradient(#251f180b 1px,transparent 1px),var(--paper);background-size:100% 28px}.meal:after{content:"";position:absolute;top:15%;right:-58px;width:150px;height:150px;border:1px solid #a638251f;border-radius:50%;box-shadow:0 0 0 18px #a6382508,0 0 0 36px #a6382505}.priority{color:#f8f0e2;background:linear-gradient(#fff0008 1px,transparent 1px),var(--green);background-size:100% 28px}.meal-header>div{display:grid;gap:5px}.meal-header strong{font-size:clamp(24px,8vw,36px);line-height:1}.meal-header>b{color:var(--red);font-family:system-ui,sans-serif;font-size:26px}.meal-header small{font-size:10px;opacity:.5}.priority .meal-header>b,.priority .kicker{color:#ddb77b}.meal-main{position:relative;z-index:1;align-self:center}.kicker{display:flex;align-items:center;gap:8px;margin:0;color:var(--red);font-size:12px;font-weight:700}.kicker i{width:22px;height:1px;background:currentColor}.meal h2{margin:8px 0 10px;font-size:clamp(38px,13vw,62px);font-weight:900;line-height:.98;letter-spacing:-.06em}.headline{max-width:22em;margin:0;color:var(--muted);font-size:clamp(13px,3.7vw,16px)}.priority .headline{color:#f8f0e2ad}.meal ul{display:flex;flex-wrap:wrap;gap:8px;margin:clamp(17px,3.8vh,28px) 0 0;padding:0;list-style:none}.meal li{min-height:30px;padding:5px 11px;border:1px solid #251f182e;border-radius:999px;font-size:12px;white-space:nowrap}.priority li{border-color:#f8f0e238}.meta{display:grid;gap:7px;padding-top:11px;border-top:1px solid #251f1824}.priority .meta{border-color:#f8f0e229}.meta p{gap:18px;margin:0;font-size:11px}.meta span{color:var(--muted)}.priority .meta span{color:#f8f0e28a}.meta strong{overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap}.actions{gap:10px}.actions button,.actions a,.end>button{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:2px;font-family:system-ui,sans-serif;font-size:13px;font-weight:750;text-decoration:none}.actions button{flex:1;border:1px solid #251f1838;color:inherit;background:transparent}.actions a{gap:7px;width:112px;border:1px solid var(--ink);color:var(--paper);background:var(--ink)}.actions svg{width:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.priority .actions button{border-color:#f8f0e24d}.priority .actions a{border-color:#f8f0e2;color:var(--green);background:#f8f0e2}.end{display:flex;flex-direction:column;justify-content:center;background:#d8ae6f}.seal{position:absolute;top:34px;right:22px;display:grid;width:56px;height:56px;place-items:center;border:2px solid var(--red);color:var(--red);font-size:28px;font-weight:900;transform:rotate(5deg)}.end h2{margin:10px 0 24px;font-size:clamp(40px,13vw,60px);line-height:1.05;letter-spacing:-.06em}.end ol{margin:0;padding:0;border-top:1px solid #251f184d;list-style:none}.end li{display:grid;grid-template-columns:34px 1fr;align-items:center;min-height:50px;border-bottom:1px solid #251f184d}.end li b{font-family:system-ui,sans-serif;font-size:10px}.end li p{margin:0;font-size:13px;font-weight:700}.end>button{width:130px;margin-top:24px;border:1px solid var(--ink);background:transparent}nav{position:fixed;z-index:15;bottom:0;left:0;display:flex;align-items:center;width:100%;height:calc(74px + var(--safe-bottom));padding:8px 12px var(--safe-bottom);overflow-x:auto;overflow-y:hidden;border-top:1px solid #251f181f;background:#f5edddf0;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);scrollbar-width:none;overscroll-behavior-x:contain}nav::-webkit-scrollbar{display:none}nav button{position:relative;display:grid;flex:0 0 44px;min-width:44px;height:48px;padding:5px 0;place-content:center;border:0;color:#251f187a;background:transparent;font-family:system-ui,sans-serif;font-size:12px}nav button small{font-size:8px;font-weight:800}nav button.active{color:var(--red)}nav button.active:after{content:"";position:absolute;bottom:0;left:50%;width:18px;height:2px;background:var(--red);transform:translate(-50%)}dialog{width:min(90vw,410px);margin:auto;padding:20px;border:0;border-radius:4px;color:var(--paper);background:var(--green);box-shadow:0 28px 80px #00000047}dialog::backdrop{background:#14110d94;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}dialog header{align-items:flex-start}dialog header span{font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.15em}dialog h3{margin:5px 0 0;font-size:24px}dialog header button{display:grid;width:38px;height:38px;padding:10px;place-items:center;border:1px solid #f8f0e23d;border-radius:50%;color:inherit;background:transparent}dialog svg{width:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.restaurant-story{display:grid;gap:0;margin:16px 0}.restaurant-story div{display:grid;grid-template-columns:64px 1fr;gap:11px;padding:11px 0;border-top:1px solid #f8f0e21f}.restaurant-story dt{color:#ddb77b;font-family:system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.08em}.restaurant-story dd{margin:0;color:#f8f0e2c7;font-size:12px;line-height:1.55}dialog footer{padding-top:13px;border-top:1px solid #f8f0e229;font-size:11px}dialog footer span{color:#f8f0e280}.error{display:grid;height:100%;margin:0;place-items:center}@media(max-height:700px){.slide{padding-top:calc(var(--safe-top) + 3px)}.meal{gap:7px}.meal h2{font-size:clamp(34px,11vw,48px)}.meal ul{margin-top:13px}.meal li{min-height:27px;padding:3px 9px}.intro h1{font-size:clamp(50px,17vw,72px)}}@media(max-height:700px){dialog{padding:16px}.restaurant-story{margin:10px 0}.restaurant-story div{grid-template-columns:58px 1fr;gap:8px;padding:8px 0}.restaurant-story dd{font-size:11px;line-height:1.4}}@media(min-width:760px){.slide{padding-right:max(8vw,48px);padding-left:max(8vw,48px)}.meal-main,.meta,.actions{max-width:640px}.intro h1{max-width:none}nav{padding-right:12vw;padding-left:12vw}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.intro footer div{max-width:58%}.intro footer button{flex:0 0 auto}.priority{background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),var(--green);background-size:100% 28px}.actual-badge{align-self:center;padding:5px 8px;border:1px solid #a638254d;border-radius:999px;color:var(--red);font-family:system-ui,sans-serif;font-size:10px;font-style:normal;font-weight:800;letter-spacing:.04em}.actual .meal-header{gap:10px}.actual .meal-header>div{min-width:0}.actual .meal-header>b{margin-left:auto}.meal-photo{position:absolute;z-index:0;inset:0;overflow:hidden}.meal-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(.96)}.meal-photo .secondary-photo{position:absolute;top:calc(var(--safe-top) + 62px);right:22px;width:92px;height:116px;border:2px solid #f8f0e2;border-radius:3px;box-shadow:0 8px 18px #0006;object-fit:cover}.has-photo:after{content:"";position:absolute;z-index:1;inset:auto 0 0;height:76%;border:0;border-radius:0;background:linear-gradient(180deg,transparent 0%,rgba(18,31,27,.22) 24%,rgba(18,31,27,.9) 76%,rgba(18,31,27,.98) 100%);box-shadow:none}.has-photo .meal-header,.has-photo .meal-main,.has-photo .meta,.has-photo .actions{position:relative;z-index:2}.has-photo .meal-header,.has-photo .meal-header>b,.has-photo .meal-main,.has-photo .meal-main .headline{color:#f8f0e2}.has-photo .kicker,.has-photo .actual-badge{color:#f1c982}.has-photo .actual-badge{border-color:#f1c9828c}.has-photo .meal li{border-color:#f8f0e25c}.has-photo .meta{border-color:#f8f0e238}.has-photo .meta span{color:#f8f0e299}.has-photo .actions button{border-color:#f8f0e280;color:#f8f0e2;background:#121f1b80;text-shadow:0 1px 2px #0008}.has-photo .actions a{border-color:#f8f0e2;color:#23483c;background:#f8f0e2}.actions.single button{flex-basis:100%}.skipped{background:linear-gradient(#251f1808 1px,transparent 1px),#e7dfd1;background-size:100% 28px}.skipped .actual-badge{color:#786d5d;border-color:#786d5d66}.skipped .kicker,.skipped .meal-header>b{color:#786d5d}.skipped .meal-main h2{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:#a6382570}.intro footer button{position:absolute;right:0;bottom:0}.intro header b{position:absolute;top:0;right:0}
