*{box-sizing:border-box}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;margin:0;background:#f7fafc;color:#111}
.container{max-width:1100px;margin:0 auto;padding:24px}
h1{font-size:28px;margin:0 0 16px} h2{font-size:18px;margin:0 0 12px}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px;margin-bottom:16px;box-shadow:0 2px 6px rgba(0,0,0,.04)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.row{display:flex;align-items:center;gap:12px;margin:8px 0}
table{width:100%;border-collapse:collapse} th,td{border-bottom:1px solid #edf2f7;padding:8px;text-align:left}
th{background:#f8fafc;font-weight:600}
button{background:#111;color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}
button:hover{opacity:.9}
input[type="text"],input[type="number"],select{border:1px solid #e2e8f0;border-radius:10px;padding:8px;width:100%}
.badge{display:inline-block;padding:3px 8px;border:1px solid #cbd5e0;border-radius:999px;font-size:12px;margin-right:6px}
.box{border:2px dashed #cbd5e0;border-radius:12px;padding:12px;margin:12px 0}
.kv{display:grid;grid-template-columns:140px 1fr;gap:8px;font-size:14px}
.small{font-size:12px;color:#4a5568}
.footer{margin-top:8px;font-size:12px;color:#4a5568}
.removeBtn{background:#e53e3e}
@media (max-width:900px){.grid{grid-template-columns:1fr}}