.shell{display:grid;grid-template-columns:250px 1fr;gap:28px;padding:30px 0 70px}.shell .side{align-self:start;position:sticky;top:90px;max-height:calc(100vh - 108px);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--gray200) transparent}.shell .side::-webkit-scrollbar{width:8px}.shell .side::-webkit-scrollbar-thumb{background:var(--gray200);border-radius:100px}.shell .side::-webkit-scrollbar-track{background:transparent}.shell .fbox{background:#fff;border:1px solid var(--gray200);border-radius:var(--r2);padding:16px 16px 18px;box-shadow:var(--sh);margin-bottom:16px}.shell .fbox h4{font-size:11px;letter-spacing:var(--lsw);text-transform:uppercase;color:var(--green800);margin-bottom:10px}.shell .chips{display:flex;flex-wrap:wrap;gap:7px}.shell .chip{font-size:12px;font-weight:600;border:1px solid var(--gray200);background:#fff;color:var(--muted);padding:5px 11px;border-radius:100px;cursor:pointer;transition:.14s;font-family:var(--body)}.shell .chip:hover{border-color:var(--green);color:var(--green)}.shell .chip.on{background:var(--green);color:#fff;border-color:var(--green)}.shell .search{width:100%;padding:11px 13px;border:1px solid var(--gray200);border-radius:var(--r);font-family:var(--body);font-size:14px}.shell .search:focus{outline:none;border-color:var(--green)}.shell .toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap;gap:10px}.shell .count{font-size:14px;color:var(--muted)}.shell .count b{color:var(--green800)}.shell .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.shell .card{background:#fff;border:1px solid var(--gray200);border-radius:var(--r2);overflow:hidden;box-shadow:var(--sh);transition:.18s;display:flex;flex-direction:column}.shell .card:hover{box-shadow:var(--sh2);transform:translateY(-4px)}.shell .card .ph{aspect-ratio:4/3;background:var(--gray100);overflow:hidden;position:relative}.shell .card .ph img{width:100%;height:100%;object-fit:cover;transition:.3s}.shell .card:hover .ph img{transform:scale(1.05)}.shell .card .ph .noimg{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--green100);font-size:40px;background:var(--green50)}.shell .badge{position:absolute;top:11px;left:11px;font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;padding:4px 10px;border-radius:100px}.shell .badge.n{background:var(--green);color:#fff}.shell .badge.u{background:var(--gold);color:var(--green900)}.shell .badge-h{position:absolute;top:11px;right:11px;background:#1f3328d1;color:#fff;font-size:10.5px;font-weight:700;padding:4px 9px;border-radius:100px}.shell .card .body{padding:15px 16px 17px;display:flex;flex-direction:column;flex:1}.shell .card .vend{font-size:10.5px;font-weight:700;letter-spacing:var(--lsw);text-transform:uppercase;color:var(--gold600)}.shell .card h3{font-size:16px;font-weight:800;letter-spacing:0;color:var(--green800);margin:2px 0 9px;line-height:1.2}.shell .card .ph{display:block;cursor:pointer}.shell .card h3 a{color:inherit;text-decoration:none}.shell .card h3 a:hover{color:var(--green)}.shell .card .attrs{display:grid;grid-template-columns:auto 1fr;gap:3px 10px;margin:0 0 11px}.shell .card .attrs>div{display:contents}.shell .card .attrs dt{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);align-self:center}.shell .card .attrs dd{margin:0;font-size:13px;font-weight:600;color:var(--green800)}.shell .card .specs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.shell .card .spec{display:inline-flex;align-items:baseline;gap:5px;background:var(--gray50);border:1px solid var(--gray200);border-radius:7px;padding:3px 9px}.shell .card .spec em{font-style:normal;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.shell .card .spec b{font-size:12px;font-weight:700;color:var(--ink)}.shell .card .foot{margin-top:auto;display:flex;gap:8px}.shell .card .foot .btn{flex:1;justify-content:center;padding:9px 10px;font-size:12.5px}.shell .empty{grid-column:1/-1;text-align:center;padding:60px 20px;color:var(--muted)}.only-mobile,.backdrop{display:none}body.sheet-open{overflow:hidden}@media (max-width:1150px){.shell .grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:920px){.shell{grid-template-columns:1fr}.shell main{min-width:0}.only-desktop{display:none}.mobtools{display:block;position:sticky;top:72px;z-index:40;background:var(--green);margin:0 -26px 18px;padding:12px 26px;box-shadow:0 8px 16px #1f33281a}.msearch{display:flex;align-items:center;gap:9px;background:#fff;border-radius:12px;padding:11px 13px}.msearch .mic{font-size:15px;line-height:1}.msearch input{flex:1;min-width:0;border:none;outline:none;background:transparent;font-family:var(--body);font-size:15px;color:var(--ink);-webkit-appearance:none}.msearch input::placeholder{color:var(--muted)}.mchips{display:flex;gap:8px;margin-top:11px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none;-ms-overflow-style:none}.mchips::-webkit-scrollbar{display:none}.mchip{flex:none;font-size:12.5px;font-weight:700;padding:7px 14px;border-radius:100px;background:#ffffff24;color:#fff;white-space:nowrap;border:1px solid rgba(255,255,255,.18);font-family:var(--body);cursor:pointer}.mchip.on{background:var(--gold);color:var(--green900);border-color:var(--gold)}.shell .toolbar{margin-bottom:14px}.filterbtn{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:700;color:var(--green800);background:#fff;border:1px solid var(--gray200);border-radius:100px;padding:8px 15px;cursor:pointer;font-family:var(--body);box-shadow:var(--sh)}.filterbtn .fbadge{background:var(--gold);color:var(--green900);border-radius:100px;font-size:10.5px;line-height:1.5;padding:1px 7px;font-weight:800}.shell .side{position:fixed;inset:auto 0 0;z-index:120;background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -14px 40px #00000040;max-height:84vh;overflow-y:auto;padding:8px 20px 22px;margin:0;transform:translateY(102%);transition:transform .28s cubic-bezier(.4,0,.2,1)}.shell .side.open{transform:translateY(0)}.sheet-head{display:block;position:sticky;top:0;background:#fff;margin:0 -20px 8px;padding:6px 20px 8px;z-index:2}.handle{display:block;width:44px;height:5px;border-radius:100px;background:var(--gray200);margin:0 auto 12px}.sheet-top{display:flex;align-items:center;justify-content:space-between}.sheet-top h3{font-size:18px;margin:0}.sheet-actions{display:flex;align-items:center;gap:12px}.sheet-clear{background:none;border:none;font-size:13px;font-weight:700;color:var(--green);cursor:pointer;font-family:var(--body)}.sheet-close{display:flex;align-items:center;justify-content:center;background:var(--gray100);border:none;width:32px;height:32px;border-radius:50%;font-size:14px;color:var(--green800);cursor:pointer;line-height:1}.shell .side .fbox{background:transparent;border:none;box-shadow:none;padding:4px 0 2px;margin-bottom:10px}.shell .side .fbox h4{color:var(--muted);margin-bottom:9px}.sheet-apply{display:block;width:100%;text-align:center;background:var(--gold);color:var(--green900);font-weight:800;font-size:15px;padding:14px;border-radius:12px;border:none;cursor:pointer;font-family:var(--body);margin-top:8px}.backdrop{display:block;position:fixed;inset:0;background:#0f1a1480;z-index:110;opacity:0;visibility:hidden;transition:.24s}.backdrop.show{opacity:1;visibility:visible}}@media (max-width:620px){.shell{padding:22px 0 60px}.shell .grid{grid-template-columns:1fr;gap:12px}.shell .card{flex-direction:row;align-items:stretch;border-radius:14px;min-width:0}.shell .card:hover{transform:none;box-shadow:var(--sh)}.shell .card .ph{width:118px;flex:none;aspect-ratio:auto;height:auto;align-self:stretch;min-height:120px}.shell .card .ph img{height:100%}.shell .card .body{min-width:0}.shell .badge{top:8px;left:8px;padding:3px 8px;font-size:9px}.shell .badge-h{top:8px;right:8px;font-size:9.5px;padding:3px 7px}.shell .card .body{padding:11px 13px 12px}.shell .card h3{font-size:15px;margin:1px 0 7px}.shell .card .attrs{margin:0 0 8px;gap:2px 10px}.shell .card .attrs>div:nth-child(n+3){display:none}.shell .card .attrs dd{font-size:12.5px}.shell .card .specs{margin:0 0 10px;gap:5px}.shell .card .spec{padding:2px 8px}.shell .card .specs .spec:nth-child(n+2){display:none}.shell .card .foot{gap:7px;align-items:center}.shell .card .foot .btn-ghost{display:none}.shell .card .foot .btn-gold{padding:10px 12px;font-size:12.5px}}
