:root { font-family: system-ui, Arial; }
body { background:#0b1020; color:#e9ecf1; margin:0; }
.container { max-width: 980px; margin: 0 auto; padding: 18px; }
a { color:#9bd2ff; text-decoration:none; }
h1,h2 { margin: 8px 0 14px; }
.card { background:#121a33; border:1px solid #22315f; padding:14px; border-radius:12px; margin: 12px 0; }
.grid { display:grid; grid-template-columns: 1fr 1fr 1fr auto; gap:10px; align-items:end; }
label { display:block; font-size: 12px; opacity: .9; margin-bottom: 6px; }
input { width:100%; padding:10px; border-radius:10px; border:1px solid #2a3b74; background:#0f1730; color:#fff; }
button { padding:10px 12px; border-radius:10px; border:1px solid #2a3b74; background:#1d2b56; color:#fff; cursor:pointer; }
button.secondary { background:#0f1730; }
.row { display:flex; justify-content:space-between; align-items:center; gap:12px; }
table { width:100%; border-collapse: collapse; }
th,td { padding:10px; border-bottom:1px solid #22315f; vertical-align: top; }
.muted { opacity: .85; }
.center { text-align:center; }
.qr { width: 280px; max-width: 90%; border-radius: 12px; background:#fff; padding:10px; }
.alert { padding:10px; border-radius:10px; background:#3b1a1a; border:1px solid #7a2a2a; }
.result { margin-top:12px; font-size: 18px; padding: 10px; border-radius: 10px; }
.result.ok { background:#10351f; border:1px solid #1f6b3b; }
.result.warn { background:#3b3311; border:1px solid #7a6a2a; }
.result.bad { background:#3b1a1a; border:1px solid #7a2a2a; }
@media (max-width: 860px) { .grid { grid-template-columns: 1fr; } }
