:root { color-scheme: light; }
body { font-family: 'Segoe UI', Tahoma, sans-serif; margin:0; background:#f4f5f7; color:#1b1b1b; }
header { background:#1f3a5f; color:#fff; padding:12px 20px; display:flex; align-items:center; justify-content:space-between; }
header h1 { margin:0; font-size:18px; }
header nav a { color:#fff; margin-left:14px; text-decoration:none; font-size:14px; }
header nav a:hover { text-decoration:underline; }
.container { max-width:1100px; margin:20px auto; background:#fff; padding:22px 28px; border-radius:8px; box-shadow:0 1px 3px rgba(0,0,0,.08); }
h2 { margin-top:0; font-size:18px; border-bottom:1px solid #e1e1e1; padding-bottom:8px; }
table { width:100%; border-collapse:collapse; margin-top:10px; font-size:14px; }
th, td { text-align:left; padding:8px 10px; border-bottom:1px solid #eee; }
th { background:#f7f8fa; }
button, .btn { background:#1f3a5f; color:#fff; border:0; padding:7px 14px; border-radius:4px; cursor:pointer; font-size:13px; text-decoration:none; }
button.danger, .btn.danger { background:#a8213b; }
button.small, .btn.small { padding:4px 10px; font-size:12px; }
input[type=text], input[type=password], select { padding:6px 8px; border:1px solid #ccc; border-radius:4px; font-size:14px; }
.flash { padding:10px 12px; border-radius:4px; margin-bottom:14px; }
.flash.ok   { background:#e2f6e9; border:1px solid #8ed3a3; color:#1f5132; }
.flash.err  { background:#fde7ea; border:1px solid #e59da8; color:#831f2c; }
.row { display:flex; gap:10px; align-items:center; flex-wrap:wrap; margin-bottom:10px; }
.muted { color:#666; font-size:12px; }
.tag { display:inline-block; background:#eef2f7; color:#1f3a5f; padding:2px 8px; border-radius:10px; font-size:12px; margin:1px; }
.tag.on  { background:#e2f6e9; color:#1f5132; }
.tag.off { background:#fde7ea; color:#831f2c; }
code { background:#f3f3f3; padding:1px 5px; border-radius:3px; }
