/* MommaBills admin — plain, functional, for Tom. */
.admin { font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: #1a1a1a; }

.admin-bar {
    display: flex; align-items: center; justify-content: space-between;
    gap: 16px; padding: 12px 20px; background: #14202b; color: #fff;
}
.admin-bar .brand { color: #fff; font-weight: 700; text-decoration: none; font-size: 18px; }
.admin-nav { display: flex; align-items: center; gap: 18px; }
.admin-nav a { color: #cfe0ee; text-decoration: none; }
.admin-nav a:hover { color: #fff; text-decoration: underline; }

.admin-main { max-width: 900px; margin: 0 auto; padding: 20px; }
.notice {
    background: #fff4d6; border: 1px solid #e6c65c; color: #6b5300;
    padding: 10px 14px; border-radius: 6px; margin-bottom: 16px; font-size: 15px;
}
.admin-main h1 { font-size: 24px; margin: 4px 0 16px; }
.admin-main h2 { font-size: 18px; margin: 26px 0 10px; }

table.grid { border-collapse: collapse; width: 100%; font-size: 15px; }
table.grid th, table.grid td { border: 1px solid #d7dee6; padding: 8px 10px; text-align: left; vertical-align: middle; }
table.grid th { background: #f0f3f6; }
td.num, th.num { text-align: right; white-space: nowrap; }
tr.paid td { background: #f4f8f5; color: #5c6a78; }

.pill { display: inline-block; padding: 3px 10px; border-radius: 999px; font-size: 13px; font-weight: 700; }
.pill.paid { color: #0f7a37; background: #e5f5ec; }
.pill.due { color: #1f5fbf; background: #e8f0fd; }
.pill.scheduled { color: #6a5acd; background: #eeecfb; }
.pill.overdue { color: #fff; background: #c1121f; }

button, .btn {
    font: inherit; cursor: pointer; border: 1px solid #b7c2ce; background: #fff;
    padding: 6px 12px; border-radius: 8px;
}
button.primary, .btn.primary { background: #14202b; color: #fff; border-color: #14202b; }
button.danger { color: #c1121f; border-color: #e3a2a7; }
button:hover { background: #f0f3f6; }
button.primary:hover { background: #223447; }

.linkbtn { background: none; border: none; color: #cfe0ee; padding: 0; cursor: pointer; }
.linkbtn:hover { color: #fff; text-decoration: underline; background: none; }
.inline-form { display: inline; }
.row-actions { display: flex; gap: 8px; flex-wrap: wrap; }

form.card, .card {
    background: #fff; border: 1px solid #d7dee6; border-radius: 12px; padding: 16px; margin: 10px 0;
}
.field { display: flex; flex-direction: column; gap: 4px; margin-bottom: 12px; }
.field label { font-weight: 600; font-size: 14px; }
.field input, .field select, .field textarea {
    font: inherit; padding: 8px 10px; border: 1px solid #b7c2ce; border-radius: 8px; max-width: 420px;
}
.field-row { display: flex; gap: 14px; flex-wrap: wrap; align-items: flex-end; }

.login { max-width: 360px; margin: 80px auto; text-align: center; font-family: -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
.login h1 { font-size: 24px; }
.login input { font: inherit; padding: 10px 12px; border: 1px solid #b7c2ce; border-radius: 8px; width: 100%; margin: 8px 0; }
.login .err { color: #c1121f; }

.muted { color: #5c6a78; font-size: 13px; }
a.plain { color: #1f5fbf; }
