body { font-family: "Segoe UI", sans-serif; background:#0f1419; color:#e8eef4; margin:0; }
a { color:#6ee7d2; }
.login-body { display:flex; min-height:100vh; align-items:center; justify-content:center; }
.card { background:#18222c; padding:24px; margin:16px; border-radius:12px; }
header { display:flex; gap:16px; align-items:center; padding:16px 24px; background:#11181f; }
header strong { margin-right:auto; }
label { display:block; margin:8px 0; }
input, select, button { padding:8px 10px; border-radius:8px; border:1px solid #334155; background:#0f1419; color:#e8eef4; }
button { background:#128f7a; border:none; cursor:pointer; }
button.danger { background:#b91c1c; }
.hint { color:#94a3b8; font-size:13px; margin:0 0 12px 0; }
.row { display:flex; flex-wrap:wrap; gap:12px; align-items:flex-end; }
table { width:100%; border-collapse:collapse; font-size:13px; }
th, td { border-bottom:1px solid #243040; padding:8px; text-align:left; vertical-align:top; }
.ops form { display:inline-block; margin:0 4px 4px 0; }
.ops .time-adjust input { width:3.5em; }
.ok { background:#14532d; padding:8px; border-radius:8px; margin-bottom:12px; }
.note-edit { display:flex; gap:6px; align-items:center; margin:0; }
.note-edit input { width:8.5em; min-width:6em; }
.err { background:#7f1d1d; padding:8px; border-radius:8px; margin-bottom:12px; }
h1,h2 { margin-top:0; }
code { color:#fde68a; }
.confirm-card dt { color:#94a3b8; margin-top:10px; }
.confirm-card dd { margin:4px 0 0 0; }
.btn-link { display:inline-block; padding:8px 14px; background:#334155; color:#e8eef4; text-decoration:none; border-radius:8px; }
