:root{--bg:#f6f7f9;--card:#fff;--text:#1a1a1a;--muted:#8a8f98;--accent:#1d9e75;--border:#e6e8eb}@media (prefers-color-scheme:dark){:root{--bg:#14161a;--card:#1d2025;--text:#f0f1f3;--muted:#8a8f98;--accent:#25b386;--border:#2a2e35}}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.page{max-width:760px;margin:0 auto;padding:12px 14px 90px}.page.center{text-align:center;flex-direction:column;align-items:center;gap:14px;padding-top:60px;display:flex}.topbar{align-items:center;gap:12px;margin-bottom:12px;display:flex}.topbar h1{flex:1;font-size:20px}.topbar a{color:var(--accent);font-size:15px;text-decoration:none}.cart-btn{font-size:22px;position:relative}.badge{background:var(--accent);color:#fff;border-radius:10px;padding:1px 6px;font-size:11px;position:absolute;top:-6px;right:-10px}.search{border:1px solid var(--border);background:var(--card);width:100%;color:var(--text);border-radius:12px;margin-bottom:12px;padding:11px 14px;font-size:15px}.cats{gap:8px;margin-bottom:8px;padding-bottom:10px;display:flex;overflow-x:auto}.cats button{white-space:nowrap;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:20px;padding:7px 14px;font-size:14px}.cats button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:6px;padding:10px;display:flex}.card img,.card .noimg{aspect-ratio:1;object-fit:cover;background:var(--bg);border-radius:10px;width:100%}.card .name{flex:1;font-size:14px;line-height:1.3}.card .price{font-weight:600}.card .price span{color:var(--muted);font-size:12px;font-weight:400}.card button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:8px;font-size:14px}.card button:disabled{background:var(--muted);cursor:not-allowed}.checkout-bar{background:var(--accent);color:#fff;justify-content:space-between;align-items:center;max-width:760px;margin:0 auto;padding:14px 18px;font-weight:600;text-decoration:none;display:flex;position:fixed;bottom:0;left:0;right:0}.cart-list{flex-direction:column;gap:8px;margin-bottom:14px;display:flex}.cart-row{background:var(--card);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex}.cart-row .cn{flex:1;font-size:14px}.cart-row .cp{text-align:right;min-width:80px;font-weight:600}.qty{align-items:center;gap:10px;display:flex}.qty button{border:1px solid var(--border);background:var(--bg);width:28px;height:28px;color:var(--text);cursor:pointer;border-radius:8px;font-size:16px}.total-row{justify-content:space-between;padding:12px 4px;font-size:17px;display:flex}.form{flex-direction:column;gap:8px;margin-top:12px;display:flex}.form label{color:var(--muted);font-size:13px}.form input{border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:12px;padding:11px 14px;font-size:15px}.seg{gap:8px;display:flex}.seg button{border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:12px;flex:1;padding:10px}.seg button.on{background:var(--accent);color:#fff;border-color:var(--accent)}.btn{background:var(--card);color:var(--accent);border:none;border:1px solid var(--accent);text-align:center;cursor:pointer;border-radius:12px;padding:12px 20px;font-size:15px;text-decoration:none;display:inline-block}.btn.primary{background:var(--accent);color:#fff;border:none;width:100%}.muted{color:var(--muted)}.err{color:#e5484d;margin-top:10px}.install-bar{z-index:100;background:var(--card);border-top:1px solid var(--border);align-items:center;gap:10px;max-width:760px;margin:0 auto;padding:12px 14px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #00000014}.install-icon{font-size:24px}.install-text{flex:1;font-size:13px;line-height:1.35}.install-yes{background:var(--accent);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:9px 16px;font-size:14px}.install-close{background:var(--bg);width:30px;height:30px;color:var(--muted);cursor:pointer;border:none;border-radius:8px;font-size:14px}
