.root{--bg:#f7fafc;--surface:#ffffff;--muted:#6b7280;--accent:#0ea5a4;--glass:rgba(255,255,255,0.6)}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Segoe UI,Arial,Helvetica,sans-serif;background:linear-gradient(180deg,#fbfdff,#f1f5f9);color:#0f172a}
.wrap{max-width:1100px;margin:0 auto;padding:0 20px}
.topbar{background:#fff;border-bottom:1px solid #e6edf3}
.topbar .wrap{display:flex;align-items:center;gap:16px;height:64px}
.brand{font-weight:700;font-size:20px;color:#0f172a}
.nav{margin-left:8px}
.nav a{color:#334155;margin-right:14px;text-decoration:none;font-weight:500}
.actions{margin-left:auto;display:flex;align-items:center;gap:12px}
.search{padding:8px 12px;border-radius:999px;border:1px solid #e2e8f0;width:220px}
.cta{background:var(--accent);background:#06b6d4;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}
.hero.large{padding:36px 0;background:linear-gradient(90deg,rgba(6,182,212,0.06),transparent)}
.hero h1{margin:0;font-size:28px}
.lede{color:#475569;margin-top:8px}
.layout{display:grid;grid-template-columns:1fr 300px;gap:28px;padding:28px 0}
.catalog .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:20px}
.card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 8px 24px rgba(16,24,40,0.06);display:flex;flex-direction:column}
.thumb{height:160px;overflow:hidden}
.thumb img{width:100%;height:100%;object-fit:cover;display:block}
.card h3{margin:12px 16px 6px;font-size:16px}
.muted{color:var(--muted);margin:0 16px 12px}
.row{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 16px;margin-top:auto}
.price{font-weight:700;color:#0f172a}
.btn{background:#06b6d4;color:#fff;border:none;padding:8px 12px;border-radius:8px;cursor:pointer}
.btn:hover{transform:translateY(-2px)}
.sidebar .panel{background:rgba(255,255,255,0.8);padding:14px;border-radius:10px;box-shadow:0 6px 18px rgba(16,24,40,0.04);margin-bottom:14px}
.sidebar h4{margin:0 0 8px}
.sidebar ul{list-style:none;padding:0;margin:0}
.sidebar li{margin:6px 0}
.sidebar a{color:#0f172a;text-decoration:none}
.footer{border-top:1px solid #e6edf3;padding:20px 0;background:transparent}
.foot-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;color:#475569}
@media(max-width:900px){.layout{grid-template-columns:1fr}.actions .search{display:none}.nav{display:none}}

@media(prefers-reduced-motion: no-preference){.btn{transition:transform .18s ease,box-shadow .18s}
}
