
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,'Helvetica Neue',Arial}
.container{max-width:1100px;margin:0 auto;padding:16px}
.site-header,.site-footer{background:#0f172a;color:#fff}
.site-header a{color:#fff;margin-right:12px;text-decoration:none}
.brand{font-weight:700}
.card{border:1px solid #e5e7eb;border-radius:12px;padding:16px;margin-bottom:14px;background:#fff}
.btn{display:inline-block;padding:8px 12px;border-radius:8px;border:1px solid #0ea5e9;background:#0ea5e9;color:#fff;text-decoration:none}
.btn.secondary{background:#fff;color:#0ea5e9}
input,select,textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:8px;margin:6px 0}
table{width:100%;border-collapse:collapse}
th,td{border:1px solid #e2e8f0;padding:8px;text-align:left}
.badge{display:inline-block;background:#f1f5f9;border:1px solid #e2e8f0;color:#334155;border-radius:999px;padding:4px 10px;margin-right:6px}
.alert{padding:10px;border-radius:8px;margin-bottom:10px}
.alert.success{background:#ecfeff;border:1px solid #67e8f9}
.alert.error{background:#fee2e2;border:1px solid #fecaca}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
.small{font-size:12px;color:#475569}
nav a.active{font-weight:700}
label small{color:#64748b}
/* Slightly raise flag baseline and keep a consistent size */
.flag-icon { vertical-align: -2px; border-radius: 2px; }
