/* Minimal, clean UI */
:root { --b:#e6e6e6; --t:#111; --m:#666; --bg:#f6f7fb; --w:#fff; }
*{ box-sizing:border-box; font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
body.page{ margin:0; background:var(--bg); color:var(--t); }
.wrap{ max-width: 980px; margin: 20px auto; padding: 0 14px; }
.card{ background:var(--w); border:1px solid var(--b); border-radius:14px; padding:18px; max-width:520px; margin: 18px auto; box-shadow: 0 2px 10px rgba(0,0,0,.04); }
h1{ margin:0 0 6px; font-size: 26px; }
h2{ margin:0 0 10px; font-size: 18px; }
label{ display:block; margin: 10px 0 6px; font-size: 13px; color: var(--m); }
input, select{ width:100%; padding:10px 12px; border:1px solid var(--b); border-radius:10px; outline:none; }
button{ width:100%; margin-top:12px; padding:11px 12px; border:0; border-radius:12px; cursor:pointer; }
.muted{ color:var(--m); }
.small{ font-size: 12px; }
.alert{ background:#fff3f3; border:1px solid #ffd1d1; padding:10px 12px; border-radius:12px; margin:10px 0; }
.success{ background:#f2fff5; border:1px solid #c8f0d2; padding:10px 12px; border-radius:12px; margin:10px 0; }
.topbar{ display:flex; justify-content:space-between; align-items:center; padding: 14px; border-bottom:1px solid var(--b); background:var(--w); }
.topbar .right{ display:flex; gap:12px; align-items:center; }
.link{ color: inherit; text-decoration: none; border-bottom:1px dashed #bbb; }
.table{ width:100%; border-collapse:collapse; }
.table th, .table td{ border-bottom:1px solid var(--b); padding:10px; text-align:left; font-size: 13px; }
.grid{ display:grid; grid-template-columns:1fr 1fr; gap:12px; }
@media (max-width:640px){ .grid{ grid-template-columns:1fr; } .card{ max-width: 94%; } }
.kv{ display:grid; gap:8px; margin-top: 10px; }
