
:root { --primary:#111827; --accent:#f59e0b; --muted:#6b7280; }
*{box-sizing:border-box} body{margin:0;font-family:system-ui,Segoe UI,Roboto,Arial}
.container{max-width:1100px;margin:0 auto;padding:1rem}
.flex{display:flex;gap:1rem}.between{justify-content:space-between;align-items:center}
.site-header{border-bottom:1px solid #eee;background:#fff;position:sticky;top:0;z-index:10}
.brand{font-weight:700;color:var(--primary);text-decoration:none}
.nav a{margin-left:1rem;text-decoration:none;color:var(--primary)}
.badge{background:var(--accent);color:#000;border-radius:999px;padding:.1rem .5rem;font-size:.8rem;margin-left:.25rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}
.card{border:1px solid #eee;border-radius:12px;overflow:hidden;background:#fff;display:flex;flex-direction:column}
.card img{width:100%;aspect-ratio:4/3;object-fit:cover}
.card .content{padding:.75rem}.price{font-weight:700}
.button{display:inline-block;padding:.5rem .75rem;border-radius:8px;border:1px solid #ddd;background:#fafafa;text-decoration:none;color:#111}
.button.primary{background:var(--accent);border-color:var(--accent)}
.form{max-width:420px;margin:1rem auto;border:1px solid #eee;border-radius:12px;padding:1rem;background:#fff}
.form label{display:block;margin:.5rem 0 .25rem}
.form input,.form select,.form textarea{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:8px}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border:1px solid #eee;padding:.5rem;text-align:left}
.alert{padding:.5rem .75rem;border-radius:8px;margin:.5rem 0}
.alert.ok{background:#ecfdf5;border:1px solid #10b981;color:#065f46}
.alert.err{background:#fef2f2;border:1px solid #ef4444;color:#991b1b}
.site-footer{border-top:1px solid #eee;background:#fafafa;margin-top:2rem}
.responsive-img{max-width:100%;height:auto}
.small{font-size:.875rem;color:var(--muted)}
