:root { color-scheme: light; font-family: Inter, Segoe UI, system-ui, sans-serif; }
body { margin: 0; background: #f5f7fb; color: #172033; }
a { color: #155eef; text-decoration: none; }
.topbar { display: flex; align-items: center; gap: 22px; padding: 16px 28px; background: #0f172a; color: white; }
.brand { color: white; font-weight: 800; font-size: 18px; }
.topbar nav { display: flex; gap: 14px; flex: 1; }
.topbar nav a { color: #dbeafe; }
.topbar form { margin: 0; }
button, .btn { border: 0; border-radius: 10px; background: #155eef; color: white; padding: 10px 14px; font-weight: 700; cursor: pointer; display: inline-block; }
button.secondary, .btn.secondary { background: #e2e8f0; color: #172033; }
.container { max-width: 1120px; margin: 32px auto; padding: 0 20px; }
.card { background: white; border: 1px solid #e2e8f0; border-radius: 18px; padding: 24px; box-shadow: 0 16px 36px #0f172a0d; }
.grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.metric strong { display: block; font-size: 32px; margin-top: 8px; }
.actions { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 18px; }
table { width: 100%; border-collapse: collapse; background: white; border-radius: 14px; overflow: hidden; }
th, td { padding: 13px 14px; border-bottom: 1px solid #e2e8f0; text-align: left; }
th { background: #f8fafc; color: #475569; font-size: 13px; text-transform: uppercase; }
.form { display: grid; gap: 16px; max-width: 760px; }
.form-row { display: grid; gap: 6px; }
input, select, textarea { border: 1px solid #cbd5e1; border-radius: 10px; padding: 11px 12px; font: inherit; }
textarea { min-height: 100px; }
.validation-summary-errors, .field-validation-error { color: #b42318; }
.alert { background: #dcfce7; color: #166534; border: 1px solid #86efac; border-radius: 12px; padding: 12px 14px; margin-bottom: 16px; }
.login { max-width: 420px; margin: 10vh auto; }
.muted { color: #64748b; }
@media (max-width: 820px) { .grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .topbar { flex-wrap: wrap; } }

/* Administração de contas e refinamentos do painel */
.brand { display:flex; align-items:center; gap:10px; white-space:nowrap; }
.brand span { display:grid; place-items:center; width:34px; height:34px; border-radius:10px; background:linear-gradient(135deg,#2563eb,#14b8a6); font-size:12px; }
.account { display:flex; align-items:center; gap:12px; font-size:13px; }
.account > a { color:#dbeafe; max-width:190px; overflow:hidden; text-overflow:ellipsis; }
button.ghost { background:transparent; border:1px solid #334155; padding:8px 12px; }
.hero { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:24px; padding:28px; border-radius:22px; color:white; background:linear-gradient(135deg,#0f172a,#1e3a5f); }
.hero h1 { margin:8px 0; font-size:30px; }.hero p { margin:0; color:#bfdbfe; }
.eyebrow { color:#2563eb; font-size:12px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }.hero .eyebrow { color:#67e8f9; }
.metrics .metric { color:inherit; transition:transform .15s,box-shadow .15s; }.metrics .metric:hover { transform:translateY(-2px); box-shadow:0 20px 40px #0f172a14; }.metric small,.form-row small,td small { display:block; margin-top:6px; color:#64748b; }
.quick { display:flex; justify-content:space-between; align-items:center; gap:24px; margin-top:18px; }.quick h2 { margin:0 0 5px; }.quick p { margin:0; }.quick-links { display:flex; flex-wrap:wrap; gap:10px; }.quick-links a { padding:10px 12px; border-radius:10px; background:#eff6ff; font-weight:700; }
.table-wrap { overflow-x:auto; border-radius:14px; box-shadow:0 10px 25px #0f172a0a; }.inline-form { display:inline; }.text-right { text-align:right; }.empty { padding:32px; text-align:center; color:#64748b; }
.badge { display:inline-block; padding:5px 9px; border-radius:999px; font-size:12px; font-weight:800; }.badge.success { color:#166534; background:#dcfce7; }.badge.inactive { color:#475569; background:#e2e8f0; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.form.narrow { max-width:520px; }.hint { margin:-4px 0 0; color:#64748b; font-size:13px; }.form-link { text-align:center; font-weight:700; }.login-options { display:flex; justify-content:flex-end; font-size:14px; }.center { text-align:center; }.success-icon { display:grid; place-items:center; width:54px; height:54px; margin:0 auto 14px; border-radius:50%; color:#166534; background:#dcfce7; font-size:26px; font-weight:900; }.alert.error { color:#991b1b; background:#fee2e2; border-color:#fecaca; }
@media (max-width:980px) { .topbar nav { order:3; width:100%; overflow-x:auto; padding-top:8px; }.account { margin-left:auto; } }
@media (max-width:640px) { .hero,.quick,.actions { align-items:stretch; flex-direction:column; }.grid,.form-grid { grid-template-columns:1fr; }.container { margin-top:20px; }.topbar { padding:14px 18px; }.account > a { display:none; } }