body { font-family: system-ui, sans-serif; margin: 0; background: #1a1d23; color: #e8eaed; }
a { color: #8ab4f8; }
.admin-login { display: flex; min-height: 100vh; align-items: center; justify-content: center; }
.card { background: #2d3139; padding: 2rem; border-radius: 8px; max-width: 360px; width: 100%; }
.stack label { display: block; margin-bottom: 0.75rem; }
.stack input, .stack textarea, .stack select { width: 100%; box-sizing: border-box; padding: 0.5rem; margin-top: 0.25rem; background: #12141a; border: 1px solid #444; color: inherit; border-radius: 4px; }
button, .btn { display: inline-block; padding: 0.5rem 1rem; background: #8ab4f8; color: #111; border: none; border-radius: 4px; cursor: pointer; text-decoration: none; font-size: 1rem; }
button.secondary, .btn.secondary { background: #444; color: #eee; }
.err { color: #f28b82; }
.ok { color: #81c995; }
.muted { opacity: 0.75; font-size: 0.9rem; }
.admin-wrap { max-width: 960px; margin: 0 auto; padding: 1rem; }
.admin-nav { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 1.5rem; align-items: center; }
.admin-nav a { margin-right: 0.5rem; }
table.data { width: 100%; border-collapse: collapse; }
table.data th, table.data td { border: 1px solid #444; padding: 0.5rem; text-align: left; }
table.data th { background: #2d3139; }
.form-block { margin-bottom: 1.5rem; }
.form-block label { display: block; margin-bottom: 0.25rem; }
textarea.code { min-height: 120px; font-family: ui-monospace, monospace; font-size: 0.85rem; }
