:root{--bg:#eef0f2;--card:#fff;--tx:#1d252c;--mu:#66727d;--bd:#d9dee3;--ac:#d9531e;--acx:#fff;--ok:#1b8a4b;--wr:#b87408;--er:#c0352b;--hd:#1d252c;color-scheme:light}
@media(prefers-color-scheme:dark){:root{--bg:#12171b;--card:#1b2227;--tx:#e8ecef;--mu:#93a0aa;--bd:#2b343b;--ac:#f0763f;--acx:#1a1008;--ok:#3cc477;--wr:#e5a73a;--er:#f0675c;--hd:#0c1014;color-scheme:dark}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--tx);font:15px/1.45 system-ui,-apple-system,"Segoe UI",sans-serif}
header{background:var(--hd);color:#e8ecef;padding:12px 16px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
header small{color:#93a0aa;display:block}
a{color:var(--ac)}
.btn,button{background:var(--ac);color:var(--acx);border:0;border-radius:4px;padding:7px 12px;cursor:pointer;font:inherit;font-weight:500;text-decoration:none;display:inline-block}
.btn.g,button.g{background:transparent;color:var(--tx);border:1px solid var(--bd)}
header .btn.g{color:#e8ecef;border-color:#3a4650}
button.r{background:var(--er);color:#fff}button:disabled{opacity:.45;cursor:not-allowed}
input,select{font:inherit;color:inherit;background:var(--card);border:1px solid var(--bd);border-radius:4px;padding:7px 9px;max-width:100%}
nav{display:flex;gap:2px;overflow-x:auto;background:var(--card);border-bottom:1px solid var(--bd);padding:0 8px}
nav a{color:var(--mu);text-decoration:none;border-bottom:3px solid transparent;padding:11px 12px;white-space:nowrap}
nav a.on{color:var(--tx);border-bottom-color:var(--ac)}
main{max-width:980px;margin:0 auto;padding:16px}
h2{font-size:18px;margin:4px 0 12px}h3{font-size:15px;margin:0 0 8px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:6px;padding:14px;margin-bottom:12px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.sp{justify-content:space-between}
.mu{color:var(--mu);font-size:13px}.n{font-variant-numeric:tabular-nums}
.tag{display:inline-block;padding:1px 8px;border-radius:10px;font-size:12px;border:1px solid currentColor}
.ok{color:var(--ok)}.wr{color:var(--wr)}.er{color:var(--er)}.ac{color:var(--ac)}
.bar{height:8px;background:var(--bd);border-radius:4px;overflow:hidden;margin:6px 0}.bar i{display:block;height:100%;background:var(--ac)}
table{width:100%;border-collapse:collapse}td,th{padding:8px 6px;border-bottom:1px solid var(--bd);text-align:left;font-weight:400;vertical-align:middle}th{color:var(--mu);font-size:13px}
.wrap{overflow-x:auto}
.flash{padding:10px 12px;border-radius:4px;margin-bottom:12px;border:1px solid var(--ok);color:var(--ok)}.flash.err{border-color:var(--er);color:var(--er)}
.tl{display:flex;margin:12px 0 4px}.tl div{flex:1;text-align:center;font-size:12px;color:var(--mu);position:relative}
.tl div:before{content:"";display:block;width:14px;height:14px;border-radius:50%;background:var(--bd);margin:0 auto 4px;position:relative;z-index:1}
.tl div:after{content:"";position:absolute;top:6px;left:-50%;width:100%;height:2px;background:var(--bd)}.tl div:first-child:after{display:none}
.tl .d{color:var(--tx)}.tl .d:before,.tl .d:after{background:var(--ok)}.tl .x{color:var(--er)}.tl .x:before,.tl .x:after{background:var(--er)}
.login{max-width:380px;margin:40px auto}.login input{width:100%;margin-bottom:10px}
.note{background:var(--bg);border-radius:4px;padding:8px 10px;font-size:13px;color:var(--mu);margin-bottom:12px}
form.inline{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap}
.thumb{width:48px;height:48px;object-fit:cover;border-radius:4px;border:1px solid var(--bd);background:var(--bg);display:block}
.pimg{width:100%;height:130px;object-fit:cover;border-radius:4px;background:var(--bg);margin-bottom:8px;display:block}
.ph{display:flex;align-items:center;justify-content:center;color:var(--mu);font-size:11px;text-align:center}
details summary{cursor:pointer;color:var(--mu);font-size:13px}

/* catalog, shop and product pages */
main.wide{max-width:1180px}
.crumbs{font-size:13px;color:var(--mu);margin-bottom:10px}.crumbs a{color:var(--mu)}
.shopwrap{display:grid;grid-template-columns:230px minmax(0,1fr);gap:16px;align-items:start}
@media(max-width:760px){.shopwrap{grid-template-columns:1fr}}
.catlist{list-style:none;margin:0;padding:0}
.catlist a{display:flex;justify-content:space-between;gap:8px;padding:6px 0;color:var(--tx);text-decoration:none;border-bottom:1px solid var(--bd)}
.catlist a.on{color:var(--ac);font-weight:600}.catlist .cnt{color:var(--mu);font-size:13px}
.toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:14px}
.plist{display:grid;gap:12px}
.pcard{background:var(--card);border:1px solid var(--bd);border-radius:6px;overflow:hidden;display:flex;flex-direction:column}
.pcard .pimg{height:180px;margin:0;border-radius:0}
.pimgwrap{position:relative;display:block}
.ribbon{position:absolute;top:8px;left:8px;background:var(--er);color:#fff;font-size:12px;padding:2px 8px;border-radius:3px}
.pbody{padding:10px 12px 12px}
.ptitle{display:block;color:var(--tx);font-weight:600;text-decoration:none;margin:2px 0}.ptitle:hover{color:var(--ac)}
.price{font-size:17px;font-weight:600}
.pcard.list{flex-direction:row}.pcard.list .pimgwrap{flex:0 0 170px}.pcard.list .pimg{height:100%;min-height:150px}
@media(max-width:560px){.pcard.list{flex-direction:column}.pcard.list .pimgwrap{flex:none}.pcard.list .pimg{height:180px}}
.pager{display:flex;gap:4px;flex-wrap:wrap;justify-content:center;margin:16px 0}
.pager a,.pager span{padding:6px 11px;border:1px solid var(--bd);border-radius:4px;text-decoration:none;color:var(--tx);background:var(--card)}
.pager .cur{background:var(--ac);color:var(--acx);border-color:var(--ac)}
.cats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.ccard{display:block;background:var(--card);border:1px solid var(--bd);border-radius:6px;padding:10px;color:var(--tx);text-decoration:none}
.ccard:hover{border-color:var(--ac)}.cname{font-weight:600;margin-top:8px}
.cimg{width:100%;height:150px;object-fit:cover;border-radius:4px;background:var(--bg);display:block}
.pdetail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px}
@media(max-width:760px){.pdetail{grid-template-columns:1fr}}
.bigimg{width:100%;max-height:440px;object-fit:contain;border-radius:6px;background:var(--bg);display:block}
.bigimg.ph{height:300px}.cimg.ph{height:150px}
.feat{margin:6px 0 0;padding-left:20px}
table.info{width:auto;margin-top:8px}table.info th{padding-right:18px}
code{background:var(--bg);padding:1px 5px;border-radius:3px;font-size:13px}
.brand{display:flex;gap:10px;align-items:center}.hlogo{height:38px;width:auto;background:#fff;border-radius:4px;padding:2px 5px;display:block}
.loginlogo{max-width:170px;height:auto}
