:root{--pad:16px;--radius:14px;--maxw:1200px}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#fafafa;color:#111}header{padding:20px var(--pad);background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:2}.wrap{max-width:var(--maxw);margin:0 auto;margin-top:1rem}.brand{display:flex;align-items:center;gap:12px;margin-bottom:10px}.brand img{width:28px;height:28px;border-radius:6px}h1{margin:0;font-size:22px}.controls{display:flex;gap:12px;flex-wrap:wrap;padding:0 var(--pad)}input[type=search],select{padding:10px 12px;border:1px solid #ddd;border-radius:10px;min-width:220px;background:#fff}main{padding:20px var(--pad) 40px}ul.grid{list-style:none;padding:0;margin:0;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.card{display:flex;flex-direction:column;background:#fff;border:1px solid #eee;border-radius:var(--radius);text-decoration:none;color:inherit;box-shadow:0 6px 18px #0000000f;overflow:hidden;position:relative;transition:transform .15s ease,box-shadow .15s ease;animation:fadeInUp .45s ease both;height:100%;justify-content:space-between}.card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #0000001a}.media{position:relative;background:#fff}.thumb{display:block;aspect-ratio:1/1;background:#fff}.thumb img{width:100%;height:100%;object-fit:contain;display:block}.badge{position:absolute;top:10px;left:10px;background:#e53935;color:#fff;font-weight:700;padding:4px 8px;border-radius:8px;font-size:12px}.body{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;height:100%;justify-content:space-between}.site{font-size:12px;opacity:.7}.title{font-size:15px;line-height:1.3;min-height:2.6em}.prices{margin-top:auto}.price-old{text-decoration:line-through;opacity:.7;font-size:14px}.price-now{font-size:18px;font-weight:700;margin-top:2px}.price-note{font-size:12px;opacity:.8;margin-top:2px}.btn{display:inline-block;text-align:center;padding:10px 12px;border:1px solid #ddd;border-radius:10px}.hidden{display:none!important}footer{text-align:center;padding:20px;color:#666;font-size:12px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
