:root{color-scheme:light;--ink:#17231d;--muted:#66736d;--green:#1f7a4f;--soft:#eef7f1;--line:#dce8e0;--orange:#f39b4a;font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;background:#f6f8f6;color:var(--ink)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.topbar strong,.topbar small{display:block}.topbar small{color:var(--muted);margin-top:2px}.page{width:min(760px,100%);margin:auto;padding:16px 14px 60px}nav{display:flex;gap:8px;margin-bottom:14px}.tab,.actions button,.text-button{border:0;background:transparent;padding:9px 12px;border-radius:12px;color:var(--muted)}.tab.active,.actions button.active{background:var(--soft);color:var(--green);font-weight:700}.hero{padding:24px 4px}.hero span{color:var(--green);font-weight:700}.hero h1{font-size:28px;margin:8px 0}.hero p,.muted{color:var(--muted)}.dish-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.dish-card,.panel,.auth-card,.empty{background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 7px 26px rgba(33,69,49,.06)}.dish-image{width:100%;height:128px;object-fit:cover;border-radius:14px;margin-bottom:13px;background:linear-gradient(135deg,#e7f5eb,#fff3dd)}.dish-image.placeholder{display:grid;place-items:center;font-size:42px}.dish-top{display:flex;justify-content:space-between;gap:6px}.pill{display:inline-block;padding:5px 9px;background:var(--soft);color:var(--green);font-size:12px;border-radius:999px}.pill.selected{background:#fff0e0;color:#a95512}.dish-card h3{font-size:20px;margin:14px 0 5px}.price{font-weight:700}.actions{display:flex;gap:6px;flex-wrap:wrap}.actions button{background:#f4f5f4}.match{margin:10px 0;padding:8px;background:#fff7df;color:#8b6015;border-radius:10px;font-size:13px}.finalize,.primary{width:100%;border:0;background:var(--green);color:#fff;font-weight:700;padding:12px;border-radius:12px;margin-top:12px}.finalize.danger{background:#fff1ef;color:#a53d34}.finalize:disabled{opacity:.4;cursor:not-allowed}.panel{margin-top:16px}.panel h2{display:flex;justify-content:space-between}.panel h2 small{color:var(--muted)}label{display:grid;gap:6px;margin:12px 0;color:var(--muted);font-size:14px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:11px;padding:11px;background:#fff;color:var(--ink)}.shopping-row{grid-template-columns:22px 1fr auto;align-items:center;padding:9px 0;border-bottom:1px solid #edf1ee;margin:0}.shopping-row input,.inline input{width:auto}.shopping-row em{font-style:normal}.score-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.inline{display:flex;align-items:center}.empty{text-align:center;padding:60px 20px}.empty span{font-size:46px}.history-row{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line)}.history-row small{display:block;color:var(--muted);margin-top:4px}dialog{width:min(600px,calc(100% - 28px));max-height:85vh;border:0;border-radius:22px;padding:26px;box-shadow:0 20px 80px rgba(0,0,0,.28)}dialog::backdrop{background:rgba(16,28,21,.48)}.dialog-close{float:right;border:0;background:#eef1ef;border-radius:50%;width:34px;height:34px;font-size:20px}.tutorials{display:grid;gap:9px}.tutorials a{display:grid;text-decoration:none;color:var(--ink);padding:12px;background:var(--soft);border-radius:12px}.tutorials small{color:var(--muted);margin-top:4px}.auth-shell,.loading{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-card{width:min(420px,100%);padding:28px}.brand{color:var(--green);font-weight:700}.auth-card h1{font-size:30px}.auth-card p,.notice{color:var(--muted)}.notice{min-height:22px;padding:4px 0}.loading{color:var(--green)}
@media(max-width:620px){.dish-grid{grid-template-columns:1fr}.hero h1{font-size:25px}.page{padding-inline:12px}.score-grid{grid-template-columns:1fr}.history-row{display:grid;gap:5px}}
.menu-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px}.menu-toolbar .hero{flex:1}.refresh-button{min-height:44px;border:0;border-radius:14px;padding:12px 18px;background:var(--green);color:#fff;font-weight:700;white-space:nowrap}.refresh-button:disabled{cursor:wait;opacity:.58}.empty .refresh-button{margin-top:12px}@media(max-width:620px){.menu-toolbar{align-items:stretch;flex-direction:column;gap:0}.menu-toolbar .refresh-button{width:100%;margin-bottom:18px}}
.location-panel{background:linear-gradient(135deg,#eef7f1,#fffaf1);border:1px solid var(--line);border-radius:18px;padding:16px;margin-bottom:8px}.location-summary{display:grid;gap:4px}.location-summary span,.location-summary small,.price-source{color:var(--muted)}.price-source{font-size:12px;margin-top:-6px}.settings{margin-top:12px}.settings summary{cursor:pointer;color:var(--green);font-weight:700}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 12px}.settings-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.settings-actions button{border:1px solid var(--line);border-radius:12px;padding:11px;background:#fff;color:var(--green);font-weight:700}.settings-actions .primary{margin:0;background:var(--green);color:#fff}.shopping-group{margin-top:16px}.shopping-group h3{font-size:15px;color:var(--green);margin:0 0 6px}.shopping-row small{display:block;color:var(--muted);margin-top:2px}@media(max-width:620px){.settings-grid,.settings-actions{grid-template-columns:1fr}.settings-actions{gap:7px}.location-panel{padding:14px}}
