:root{--g:#0f5132;--g2:#157347;--gl:#e8f4ee;--gold:#f5b301;--ink:#14231b;--mut:#5d6b63;--line:#dfe7e2;--bg:#f6f8f7;--red:#c0392b;--r:14px}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.45 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg)}
.wrap{max-width:860px;margin:0 auto;padding:0 14px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
a{color:var(--g2)}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.top{background:var(--g);color:#fff;position:sticky;top:0;z-index:5;box-shadow:0 2px 10px rgba(0,0,0,.15)}
.top-in{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:10px;padding-bottom:8px}
.logo{display:flex;align-items:center;gap:8px;color:#fff;text-decoration:none;font-size:20px;letter-spacing:-.3px}
.logo b{color:var(--gold)}
.logo-mark{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--gold);color:var(--g);font-weight:800}
.area select{font:inherit;font-size:15px;font-weight:600;color:var(--g);background:#fff;border:0;border-radius:999px;padding:7px 12px;max-width:170px}
.tabs{display:flex;gap:4px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none}
.tabs::-webkit-scrollbar{display:none}
.tabs a{flex:0 0 auto;color:#d8eadf;text-decoration:none;font-size:14px;font-weight:600;padding:7px 11px;border-radius:999px;white-space:nowrap}
.tabs a.on{background:#fff;color:var(--g)}
main{padding-top:14px;padding-bottom:20px;min-height:60vh}
.hero{font-size:24px;line-height:1.2;margin:4px 0 12px;letter-spacing:-.4px}
.hero span{display:block;font-size:16px;font-weight:500;color:var(--mut);margin-top:4px}
.hero em{font-style:normal;color:var(--g2)}
.search{display:flex;gap:8px}
.search input{flex:1;min-width:0;font:inherit;font-size:17px;padding:13px 14px;border:2px solid var(--line);border-radius:var(--r);background:#fff}
.search input:focus{border-color:var(--g2);outline:none}
.search button,.alert-form button{font:inherit;font-weight:700;background:var(--g2);color:#fff;border:0;border-radius:var(--r);padding:0 18px;cursor:pointer}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.chips button{font:inherit;font-size:14px;background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;cursor:pointer;color:var(--ink)}
.filters{display:flex;flex-wrap:wrap;gap:8px 14px;margin:8px 0 6px;font-size:14px;color:var(--mut)}
.filters select{font:inherit;font-size:14px;padding:6px 8px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);max-width:100%}
.hint{font-size:14px;color:var(--mut)}
.link{background:none;border:0;padding:0;font:inherit;color:var(--g2);text-decoration:underline;cursor:pointer}
.muted{color:var(--mut)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:14px;margin:12px 0;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.prod-h{display:flex;gap:12px;align-items:center}
.prod-h img{width:58px;height:58px;object-fit:contain;border-radius:10px;background:#fff;border:1px solid var(--line);flex:0 0 auto}
.prod-h .ph{width:58px;height:58px;border-radius:10px;background:var(--gl);flex:0 0 auto;display:grid;place-items:center;font-size:24px}
.prod-t{min-width:0}
.prod-t h3{margin:0;font-size:17px;line-height:1.25;overflow-wrap:anywhere}
.prod-t .sub{font-size:13px;color:var(--mut);overflow-wrap:anywhere}
.tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}
.tag{font-size:11px;font-weight:700;background:var(--gl);color:var(--g);border-radius:6px;padding:2px 6px}
.save{margin:12px 0 8px;background:#fff6d6;border:1px solid #f1d98a;color:#7a5300;font-weight:700;border-radius:10px;padding:8px 10px;font-size:15px}
.rows{list-style:none;margin:0;padding:0}
.row{display:flex;align-items:center;gap:10px;padding:10px 6px;border-top:1px solid var(--line)}
.row:first-child{border-top:0}
.rank{display:inline-block;font-size:12px;font-weight:800;color:var(--mut);margin-bottom:2px;text-transform:uppercase;letter-spacing:.3px}
.rank .medal{font-size:16px;margin-right:3px;vertical-align:-2px}
.rk0{color:var(--g)}.rk1{color:#5b6b75}.rk2{color:#8a5a2b}
.r1{background:linear-gradient(90deg,#e6f6ec,#fff);border-radius:10px;border-top-color:transparent}
.r1 .rank{color:var(--g)}
.r1 .price{font-size:22px;color:var(--g)}

.st{flex:1;min-width:0}
.st b{display:block;font-size:15px;overflow-wrap:anywhere}
.st small{color:var(--mut);font-size:12px}
.pr{text-align:right;flex:0 0 auto}
.price{font-size:18px;font-weight:800}
.reg{display:block;font-size:12px;color:var(--mut);text-decoration:line-through}
.ppo{display:block;font-size:12px;color:var(--mut)}
.badge{display:inline-block;font-size:11px;font-weight:800;color:#fff;background:var(--red);border-radius:6px;padding:1px 6px;margin-left:4px;vertical-align:2px}
.more{display:block;width:100%;font:inherit;font-weight:700;margin:12px 0;padding:12px;background:#fff;border:1px dashed var(--g2);color:var(--g2);border-radius:var(--r);cursor:pointer}
.notonline{font-size:13px;color:var(--mut);margin-top:6px}
.empty{text-align:center;color:var(--mut);padding:30px 10px}
.basket{list-style:none;padding:0;margin:12px 0}
.bi{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:10px 12px;margin:8px 0}
.bi-top{display:flex;justify-content:space-between;gap:8px;align-items:center}
.bi-top b{text-transform:capitalize}
.bi select{width:100%;font:inherit;font-size:14px;margin-top:6px;padding:7px;border:1px solid var(--line);border-radius:10px;background:#fff}
.bi .x{background:none;border:0;font-size:20px;color:var(--mut);cursor:pointer;padding:0 4px}
.qty{width:58px;font:inherit;padding:4px 6px;border:1px solid var(--line);border-radius:8px}
.storetotal{display:flex;align-items:center;gap:10px;padding:11px 6px;border-top:1px solid var(--line)}
.storetotal .st small{display:block}
.mix{background:var(--gl);border-radius:10px;padding:10px;margin-top:10px;font-size:14px}
.sp{display:flex;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}
.sp img{width:44px;height:44px;object-fit:contain;flex:0 0 auto;border-radius:8px;border:1px solid var(--line);background:#fff}
.sp .st b{font-size:14px;font-weight:600}
.storecard h3{margin:0 0 4px;font-size:17px}
.storecard p{margin:3px 0;font-size:14px}
.ok{color:var(--g2);font-weight:700}.no{color:#a15c00;font-weight:700}
.btns{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.btns a{font-size:13px;font-weight:700;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:6px 10px;color:var(--g2)}
.alert-form label{display:block;font-size:14px;font-weight:600;margin:10px 0}
.alert-form input{display:block;width:100%;font:inherit;padding:11px 12px;margin-top:4px;border:2px solid var(--line);border-radius:12px}
.alert-form button{padding:12px 18px;width:100%}
.foot{font-size:12px;color:var(--mut);padding-bottom:30px;border-top:1px solid var(--line);padding-top:10px}
.loading{padding:30px;text-align:center;color:var(--mut)}
.chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin-left:-14px;margin-right:-14px;padding:0 14px}
.chips::-webkit-scrollbar{display:none}
.chips button{flex:0 0 auto}
.r1 .rank{font-size:13px}
@media (max-width:420px){.hero{font-size:21px;margin-bottom:10px}.hero span{font-size:14px}.filters label{flex:1 1 45%}.filters select{width:100%}}
@media (min-width:700px){.hero{font-size:30px}.prod-h img,.prod-h .ph{width:72px;height:72px}.chips{flex-wrap:wrap;margin:10px 0;padding:0}}

.list{list-style:none;margin:6px 0;padding:0;background:#fff;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.list li+li{border-top:1px solid var(--line)}
.li{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;padding:10px 12px;font:inherit;color:inherit;cursor:pointer}
.li:active,.li:hover{background:#f3f8f5}
.li img,.li .ph{width:52px;height:52px;object-fit:contain;flex:0 0 auto;border-radius:8px;background:#fff;border:1px solid var(--line);display:grid;place-items:center;font-size:20px}
.li-t{flex:1;min-width:0}
.li-t>b{display:block;font-size:15px;line-height:1.25;overflow-wrap:anywhere}
.li-t small{display:block;font-size:13px;color:var(--mut)}
.li-from b{color:var(--g);font-size:15px}
.li-n{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--mut);text-align:right;white-space:nowrap}
.li-n.multi{color:var(--g2)}
.li-n i{font-style:normal;font-size:22px;margin-left:4px;vertical-align:-3px;color:#9aa8a0}
.back{font:inherit;font-weight:700;color:var(--g2);background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;margin:6px 0;cursor:pointer}

.scanbtn{display:block;width:100%;text-align:left;font:inherit;font-weight:800;font-size:17px;color:#fff;background:linear-gradient(135deg,#157347,#0f5132);border:0;border-radius:var(--r);padding:13px 16px;margin:0 0 12px;cursor:pointer;box-shadow:0 2px 8px rgba(15,81,50,.25)}
.scanbtn small{display:block;font-weight:500;font-size:13px;color:#d6efe1}
.scanbtn.small{display:inline-block;width:auto;font-size:15px;padding:10px 14px;margin:6px 0 0}
.bi.off{opacity:.55}

.updated{background:#fff8e1;border:1px solid #f3dc8c;color:#5c4400;border-radius:12px;padding:9px 12px;font-size:14px;margin:0 0 10px}
.step{font-size:15px;font-weight:800;color:var(--g);margin:14px 0 8px;text-transform:uppercase;letter-spacing:.4px}
.step:first-of-type{margin-top:4px}
.areachips{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.achip{font:inherit;font-weight:700;font-size:15px;min-height:48px;padding:8px 6px;border-radius:12px;border:2px solid var(--line);background:#fff;color:var(--ink);cursor:pointer;line-height:1.15}
.achip.on{background:var(--g);border-color:var(--g);color:#fff;box-shadow:0 2px 8px rgba(15,81,50,.3)}
.achip small{display:block;font-size:11px;font-weight:600;opacity:.7}
.search.big input{font-size:18px;padding:15px 14px}
.search.big button{font-size:17px;padding:0 20px}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.tile{display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;font:inherit;background:#fff;border:2px solid var(--line);border-radius:16px;padding:14px 12px;min-height:118px;color:var(--ink);text-decoration:none;cursor:pointer;box-shadow:0 1px 3px rgba(0,0,0,.05)}
.tile:active,.tile:hover{border-color:var(--g2);background:#f3f8f5}
.tile span{font-size:30px;line-height:1}
.tile b{font-size:16px;margin-top:6px;line-height:1.2}
.tile small{font-size:12.5px;color:var(--mut);line-height:1.3}
#tab-search .scanbtn{display:none}
@media (min-width:700px){.areachips{grid-template-columns:repeat(6,1fr)}.grid{grid-template-columns:repeat(3,1fr)}}

/* 💬 Ask chat */
.tile-ask{width:100%;min-height:0;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center;margin-bottom:10px;background:linear-gradient(135deg,#0f5132,#157347);color:#fff;border-color:#0f5132}
.tile-ask b{margin:0;font-size:18px}.tile-ask small{color:#d9efe3;display:block}.tile-ask span{font-size:34px;grid-row:1/3}
.tile-ask:hover,.tile-ask:active{background:linear-gradient(135deg,#0c4429,#11613b);color:#fff}
#kc-fab{position:fixed;right:14px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:center;gap:6px;font:inherit;font-size:18px;background:var(--gold);color:#1d1a05;border:0;border-radius:999px;padding:12px 18px;box-shadow:0 6px 18px rgba(0,0,0,.25);cursor:pointer}
#kc-fab b{font-weight:800}
#kc-chat{position:fixed;inset:0;z-index:50;background:#fff;display:flex;flex-direction:column;height:100%;height:100dvh}
#kc-chat[hidden]{display:none}
body.kc-open{overflow:hidden}
#kc-chat header{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--g);color:#fff;padding:12px 14px;padding-top:calc(12px + env(safe-area-inset-top))}
#kc-chat header b{font-size:18px;display:block}#kc-chat header small{color:#cfe8da;font-size:13px}
#kc-x{font:inherit;font-size:30px;line-height:1;background:transparent;border:0;color:#fff;width:44px;height:44px;cursor:pointer}
#kc-log{flex:1;overflow-y:auto;padding:14px 12px;background:var(--bg);-webkit-overflow-scrolling:touch}
.kc-msg{display:flex;flex-direction:column;margin:0 0 10px;max-width:88%}
.kc-u{margin-left:auto;align-items:flex-end}.kc-a{align-items:flex-start}
.kc-b{padding:10px 13px;border-radius:18px;font-size:16px;line-height:1.4;white-space:normal;word-wrap:break-word}
.kc-u .kc-b{background:var(--g2);color:#fff;border-bottom-right-radius:6px}
.kc-a .kc-b{background:#fff;border:1px solid var(--line);border-bottom-left-radius:6px}
.kc-card{margin-top:6px;background:#fff;border:2px solid var(--gl);border-radius:14px;padding:10px 12px;width:100%;min-width:250px}
.kc-card>b{display:block;font-size:15px;line-height:1.25}.kc-card small{display:block;color:var(--mut);font-size:12.5px}
.kc-card ol{list-style:none;margin:6px 0 4px;padding:0}.kc-card li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-top:1px solid var(--line);font-size:15px}
.kc-card li:first-child{border-top:0;font-weight:700;color:var(--g)}
.kc-card details{margin-top:4px;font-size:13px}.kc-card summary{color:var(--g2);cursor:pointer}
.kc-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.kc-links a{display:inline-block;background:var(--gl);color:var(--g);text-decoration:none;font-weight:600;font-size:14px;padding:8px 12px;border-radius:999px}
#kc-chips{display:flex;gap:6px;overflow-x:auto;padding:8px 10px;background:#fff;border-top:1px solid var(--line);scrollbar-width:none}
#kc-chips::-webkit-scrollbar{display:none}
#kc-chips button{flex:0 0 auto;font:inherit;font-size:14px;background:#fff;border:1.5px solid var(--g2);color:var(--g);border-radius:999px;padding:7px 12px;cursor:pointer;white-space:nowrap}
#kc-form{display:flex;gap:8px;padding:8px 10px calc(10px + env(safe-area-inset-bottom));background:#fff}
#kc-in{flex:1;font:inherit;font-size:16px;padding:12px 14px;border:2px solid var(--line);border-radius:999px;min-width:0}
#kc-in:focus{border-color:var(--g2);outline:none}
#kc-form button{font:inherit;font-size:20px;width:50px;height:50px;border-radius:50%;border:0;background:var(--g2);color:#fff;cursor:pointer}
.kc-dots{display:flex;align-items:center;gap:4px}.kc-dots i{width:8px;height:8px;border-radius:50%;background:#9db3a6;animation:kcb 1s infinite}.kc-dots i:nth-child(2){animation-delay:.15s}.kc-dots i:nth-child(3){animation-delay:.3s}
.kc-dots span{margin-left:8px;color:var(--mut);font-size:14px}
@keyframes kcb{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}
@media(min-width:700px){#kc-chat{inset:auto 20px 20px auto;width:400px;height:640px;max-height:calc(100vh - 40px);border-radius:18px;overflow:hidden;box-shadow:0 12px 40px rgba(0,0,0,.25)}body.kc-open{overflow:auto}#kc-chat header{padding-top:12px}}
.foot{padding-bottom:80px}
