:root{--red:#ff6a4d;--red-dark:#e95138;--cream:#fff9ee;--yellow:#ffe8ad;--pink:#ffd9cf;--ink:#4b352d;--muted:#8a6f64;--card:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--cream);color:var(--ink);margin:0;font-family:PingFang SC,Microsoft YaHei,system-ui,sans-serif}button,a{font:inherit}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fff9eeeb;border-bottom:1px solid #4b352d12;justify-content:space-between;align-items:center;height:76px;padding:0 max(5vw,24px);display:flex;position:sticky;top:0}.brand{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;font-size:18px;font-weight:800;display:flex}.brand img{object-fit:contain;width:48px;height:48px}.brand span{text-align:left;flex-direction:column;display:flex}.brand small{color:var(--muted);letter-spacing:1px;margin-top:2px;font-size:10px}.site-header nav{gap:8px;display:flex}.site-header nav button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:20px;padding:10px 18px}.site-header nav button.active{background:var(--pink);color:var(--red-dark);font-weight:700}.hero{grid-template-columns:1fr 1fr;align-items:center;max-width:1180px;min-height:560px;margin:auto;padding:60px 44px 36px;display:grid;position:relative}.hero:before{content:"";background:var(--yellow);opacity:.6;border-radius:50%;width:420px;height:420px;position:absolute;top:54px;right:3%}.hero-copy,.mascot{z-index:1;position:relative}.eyebrow{color:var(--red);letter-spacing:2.5px;font-size:12px;font-weight:800;display:inline-block}.hero h1,.simple-page h1{letter-spacing:-3px;margin:14px 0 18px;font-size:68px;line-height:1.08}.hero h1 em{color:var(--red);font-style:normal}.hero-copy>p{color:var(--muted);font-size:18px}.mascot{place-items:center;display:grid}.mascot img{filter:drop-shadow(0 22px 32px #aa53372e);width:min(470px,45vw)}.bubble{background:#fff;border-radius:24px;padding:14px 22px;font-weight:700;position:absolute;top:2%;right:10%;transform:rotate(4deg);box-shadow:0 10px 30px #4b352d14}.location{text-align:left;cursor:pointer;background:#fff;border:1px solid #4b352d14;border-radius:18px;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;width:min(440px,100%);margin-top:26px;padding:15px 18px;display:grid;box-shadow:0 12px 30px #4b352d0f}.location>span:first-child{font-size:24px}.location span:nth-child(2){flex-direction:column;display:flex}.location small,.location i{color:var(--muted);font-size:11px;font-style:normal}.location strong{margin:3px 0}.location b{color:var(--red);font-size:24px}.decision-card{background:var(--card);text-align:center;border-radius:28px;max-width:920px;margin:0 auto 80px;padding:28px;box-shadow:0 20px 60px #6643321c}.filters{justify-content:center;align-items:center;gap:24px;display:flex}.filters>span{font-weight:700}.filters>div{background:#fff2e7;border-radius:18px;gap:4px;padding:5px;display:flex}.filters button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:14px;padding:11px 24px}.filters button.selected{color:var(--red-dark);background:#fff;font-weight:800;box-shadow:0 4px 12px #4b352d14}.decision-card>p{color:var(--muted);font-size:13px}.primary{background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:28px;justify-content:center;align-items:center;width:100%;min-height:56px;font-weight:800;text-decoration:none;display:flex;box-shadow:0 12px 28px #ff6a4d47}.primary:hover{background:var(--red-dark);transform:translateY(-1px)}.primary:disabled{opacity:.7}.wheel-section,.nearby,.simple-page{max-width:1180px;margin:auto;padding:76px 44px}.wheel-section{background:#fff2e7;grid-template-columns:1fr 1fr;align-items:center;max-width:none;display:grid}.wheel-section>*{width:100%;max-width:560px}.wheel-section>.section-title{justify-self:end}.section-title span{letter-spacing:2px;color:var(--red);font-size:12px;font-weight:800}.section-title h2{margin:9px 0;font-size:38px}.section-title p{max-width:430px;color:var(--muted);line-height:1.8}.wheel-wrap{place-items:center;height:430px;display:grid;position:relative}.pointer{z-index:4;color:var(--red-dark);font-size:36px;position:absolute;top:18px}.wheel{--rotation:0deg;background:conic-gradient(#ff8068 0 45deg,#ffe091 45deg 90deg,#ffb5a6 90deg 135deg,#ffd673 135deg 180deg,#ff8068 180deg 225deg,#ffe091 225deg 270deg,#ffb5a6 270deg 315deg,#ffd673 315deg 360deg);width:350px;height:350px;transform:rotate(var(--rotation));border:12px solid #fff;border-radius:50%;transition:transform 2.5s cubic-bezier(.12,.65,.12,1);position:relative;box-shadow:0 20px 50px #7d49332e}.wheel>span{--i:0;text-align:center;width:90px;transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-130px);margin-left:-45px;font-weight:800;position:absolute;top:50%;left:50%}.wheel-center{background:#fff;border-radius:50%;place-items:center;width:76px;height:76px;margin:-38px;font-size:35px;display:grid;position:absolute;inset:50% auto auto 50%;box-shadow:0 5px 18px #4b352d2e}.restaurant-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px;display:grid}.restaurant-card{background:#fff;border:1px solid #4b352d0f;border-radius:20px;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:18px;display:grid;box-shadow:0 10px 28px #4b352d0f}.food-icon{background:#fff2e7;border-radius:16px;place-items:center;width:52px;height:52px;font-size:25px;display:grid}.restaurant-card small{color:var(--red);font-weight:700}.restaurant-card h3{margin:4px 0;font-size:16px}.restaurant-card p{color:var(--muted);margin:0;font-size:12px}.restaurant-card>button{color:var(--red);cursor:pointer;background:0 0;border:0;font-size:25px}.simple-page{min-height:calc(100vh - 76px);padding-top:110px}.simple-page h1{font-size:52px}.simple-page>p{color:var(--muted);max-width:640px;line-height:1.8}.empty{background:#fff;border-radius:26px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:250px;margin-top:50px;font-size:38px;display:flex}.empty strong{font-size:20px}.empty span{color:var(--muted);font-size:14px}.profile{text-align:center}.profile>img{width:190px}.profile>p{margin:16px auto}.about-card{background:#fff;border-radius:18px;justify-content:space-between;max-width:420px;margin:30px auto;padding:18px 24px;display:flex}.about-card span{color:var(--muted)}.mobile-nav{display:none}.sheet-backdrop{z-index:50;background:#321f187a;place-items:end center;padding:24px;display:grid;position:fixed;inset:0}.result-sheet{background:var(--cream);text-align:center;border-radius:34px 34px 20px 20px;width:min(520px,100%);padding:22px 32px 30px;animation:.35s rise;position:relative}.result-sheet>img{width:145px;margin-top:-80px}.result-sheet>p{color:var(--muted);margin:2px}.result-sheet h2{margin:10px;font-size:28px}.result-meta{justify-content:center;gap:8px;margin:16px;display:flex}.result-meta span{background:#fff;border-radius:14px;padding:8px 12px;font-size:13px}.close{color:var(--muted);background:0 0;border:0;font-size:28px;position:absolute;top:15px;right:20px}.favorite-action,.again{color:var(--red-dark);cursor:pointer;background:0 0;border:0;padding:14px;font-weight:700}.again{color:var(--muted)}@keyframes rise{0%{transform:translateY(100%)}to{transform:none}}@media (width<=760px){body{padding-bottom:74px}.site-header{display:none}.hero{flex-direction:column;min-height:auto;padding:52px 22px 20px;display:flex;overflow:hidden}.hero:before{width:310px;height:310px;top:170px;right:-80px}.hero-copy{width:100%}.hero h1{margin-top:10px;font-size:48px}.hero-copy>p{font-size:15px}.mascot{width:100%;height:300px}.mascot img{width:320px;max-width:none}.bubble{font-size:13px;top:2%;right:2%}.location{margin-top:5px}.decision-card{margin:12px 16px 52px;padding:20px 16px}.filters{text-align:left;display:block}.filters>div{grid-template-columns:repeat(3,1fr);margin-top:12px;display:grid}.filters button{padding:11px 5px;font-size:13px}.decision-card>p{text-align:left}.wheel-section{padding:48px 20px;display:block}.section-title h2{font-size:30px}.wheel-wrap{height:350px}.wheel{width:290px;height:290px}.wheel>span{transform:rotate(calc(var(--i)*45deg + 22.5deg)) translateY(-105px);font-size:13px}.nearby,.simple-page{padding:52px 20px}.restaurant-grid{grid-template-columns:1fr}.simple-page h1{font-size:42px}.mobile-nav{z-index:40;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf8f5;border-top:1px solid #4b352d14;grid-template-columns:repeat(3,1fr);height:70px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-nav button{color:var(--muted);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:11px;display:flex}.mobile-nav button span{font-size:20px}.mobile-nav button.active{color:var(--red);font-weight:800}.sheet-backdrop{padding:0}.result-sheet{border-radius:30px 30px 0 0;padding-bottom:28px}}.category-filters{scrollbar-width:none;gap:7px;margin-bottom:16px;padding:0 0 14px;display:flex;overflow-x:auto}.category-filters::-webkit-scrollbar{display:none}.category-filters button{color:var(--muted);background:#fff;border:1px solid #4b352d1a;border-radius:99px;flex:none;padding:8px 13px;font-size:12px}.category-filters button.selected{color:#fff;border-color:var(--red);background:var(--red)}.sweet-quote{font-size:13px;color:var(--red-dark)!important;margin:8px 0!important}.dianping{min-height:48px;color:var(--red-dark);background:#ffe5dc;border-radius:24px;justify-content:center;align-items:center;margin-top:9px;font-size:13px;font-weight:800;text-decoration:none;display:flex}.location-panel{width:min(440px,100%)}.location-panel .location{width:100%}.location:disabled{opacity:.72;cursor:wait}.manual-location{grid-template-columns:1fr auto;gap:8px;margin-top:9px;display:grid}.manual-location input{min-width:0;height:44px;color:var(--ink);background:#fff;border:1px solid #4b352d1a;border-radius:14px;outline:none;padding:0 14px}.manual-location input:focus{border-color:var(--red)}.manual-location button{color:#fff;background:var(--ink);border:0;border-radius:14px;padding:0 16px;font-size:12px;font-weight:800}.manual-location button:disabled{opacity:.6}.result-address{color:var(--muted);font-size:12px;margin:2px 0 12px!important}
