:root{--navy:#0d315d;--navy2:#092748;--blue:#0879d1;--cyan:#20b8de;--green:#15a862;--bg:#f3f7fa;--card:#fff;--text:#18334f;--muted:#738496;--line:#dbe5ec;--danger:#b42318;--shadow:0 12px 30px rgba(20,54,87,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}button,input{font:inherit}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:240px;background:linear-gradient(180deg,var(--navy),var(--navy2));padding:26px 18px;color:#d9e7f5;display:flex;flex-direction:column;z-index:20}.brand img{display:block;width:174px;filter:brightness(2.6)}.side-title{font-size:.68rem;letter-spacing:.14em;font-weight:900;color:#81b8df;margin:30px 10px 12px}.sidebar nav{display:grid;gap:7px}.sidebar nav a{padding:12px 14px;border-radius:11px;font-weight:750}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.11);color:#fff}.side-bottom{margin-top:auto;display:grid;gap:10px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.side-bottom a,.side-bottom button{background:none;border:0;color:#d9e7f5;text-align:left;padding:9px 10px;cursor:pointer}
.content{margin-left:240px;padding:34px;max-width:1500px}.topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.topbar h1{font-size:2.25rem;margin:5px 0 5px}.topbar p,.panel-head p{margin:0;color:var(--muted)}.eyebrow{color:#0872c6;font-size:.72rem;letter-spacing:.14em;font-weight:900}.site-link,.pill{background:#fff;border:1px solid var(--line);border-radius:12px;padding:10px 14px;font-weight:800;white-space:nowrap}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow)}.stat.primary{background:linear-gradient(135deg,#0d5eae,#0c91d6);color:#fff;border:0}.stat span,.stat small{display:block}.stat span{font-size:.86rem;font-weight:800}.stat strong{display:block;font-size:2.3rem;margin:8px 0}.stat small{color:var(--muted)}.stat.primary small{color:#daf2ff}
.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px;margin-bottom:18px;box-shadow:var(--shadow);scroll-margin-top:20px}.panel-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.panel h2{font-size:1.55rem;margin:4px 0 4px}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric-row{border:1px solid var(--line);border-radius:14px;padding:14px;display:flex;align-items:center;justify-content:space-between}.metric-row strong,.metric-row small{display:block}.metric-row small{color:var(--muted);font-size:.72rem;margin-top:3px}.metric-row b{font-size:1.5rem;color:#086dbd}
.partner-form{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px;background:#f8fbfd;border:1px solid var(--line);border-radius:15px;margin-bottom:18px}.partner-form label{font-size:.78rem;font-weight:800;color:#50667a}.partner-form input{width:100%;margin-top:6px;border:1px solid #cddce6;border-radius:10px;padding:11px;background:#fff;color:var(--text)}.partner-form .wide{grid-column:span 2}.partner-form .check{display:flex;align-items:center;gap:8px;padding-top:20px}.partner-form .check input{width:auto;margin:0}.wide-button{grid-column:span 2}
.btn{border:0;border-radius:11px;padding:12px 16px;font-weight:850;cursor:pointer}.btn.primary{background:linear-gradient(135deg,#086ec7,#0791d5);color:#fff}
.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}table{width:100%;border-collapse:collapse;min-width:720px}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #edf2f5;vertical-align:middle}th{background:#f7fafc;color:#65788a;font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}td{font-size:.9rem}td small{display:block;color:var(--muted);margin-top:3px}.status{padding:5px 9px;border-radius:999px;font-size:.74rem;font-weight:850}.status.on{background:#e9f9f1;color:#087944}.status.off{background:#f2f4f6;color:#65717c}.actions{display:flex;gap:6px}.actions form{margin:0}.actions button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 9px;cursor:pointer}.actions button.danger{color:var(--danger)}.empty{text-align:center;color:var(--muted);padding:26px}.admin-footer{text-align:center;color:#8a9aaa;font-size:.8rem;padding:14px}
.login-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#eef8ff,#f7fbfd)}.login-card{width:min(430px,calc(100% - 28px));background:#fff;border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:0 20px 50px rgba(20,54,87,.12)}.login-logo img{width:180px;display:block;margin-bottom:24px}.login-card h1{margin:6px 0 7px;font-size:2rem}.login-card>p{color:var(--muted);margin:0 0 20px}.login-card form{display:grid;gap:14px}.login-card label{font-size:.8rem;font-weight:800}.login-card input{width:100%;margin-top:6px;border:1px solid #cad9e4;border-radius:11px;padding:12px}.login-error{background:#fff1f0;border:1px solid #ffd2cc;color:#a82a1f;border-radius:10px;padding:10px 12px;margin-bottom:14px}.back-link{display:block;margin-top:18px;color:#0b6fbe;font-weight:800}
@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.metric-grid{grid-template-columns:repeat(2,1fr)}.partner-form{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.sidebar{position:static;width:auto;min-height:auto;padding:16px}.brand img{width:150px}.side-title{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:14px}.sidebar nav a{white-space:nowrap;background:rgba(255,255,255,.07)}.side-bottom{display:none}.content{margin-left:0;padding:18px 12px}.topbar{align-items:center}.topbar h1{font-size:1.7rem}.site-link{display:none}.cards{grid-template-columns:1fr 1fr;gap:10px}.stat{padding:15px}.stat strong{font-size:1.9rem}.panel{padding:15px;border-radius:16px}.panel-head{align-items:center}.metric-grid{grid-template-columns:1fr 1fr}.partner-form{grid-template-columns:1fr}.partner-form .wide,.wide-button{grid-column:auto}.table-wrap{margin:0 -2px}.footer{display:none}}
@media(max-width:430px){.cards,.metric-grid{grid-template-columns:1fr}.topbar p{font-size:.9rem}.panel-head{flex-direction:column}.pill{padding:7px 10px}.login-card{padding:24px}}

/* ADMIN V2.1 — refinamentos finais */
body{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  letter-spacing:0;
}
.topbar h1,.panel h2,.stat strong,.metric-row strong,.partner-form,.table-wrap{
  letter-spacing:0;
}
.metric-row{min-height:68px}
.metric-row strong{line-height:1.25}
.field-help{display:block;margin-top:5px;color:var(--muted);font-size:.7rem;font-weight:600}
.partner-form input[type=file]{padding:8px;background:#fff}
.admin-footer{padding-top:20px}

/* Admin V2.2 - densidade visual da Visao Geral */
#visao{gap:12px;margin-bottom:14px}
#visao .stat{min-height:112px;padding:14px 16px;border-radius:15px}
#visao .stat span{font-size:.78rem}
#visao .stat strong{font-size:1.85rem;line-height:1;margin:6px 0}
#visao .stat small{font-size:.72rem;line-height:1.25}
#metricas{padding:18px 20px}
#metricas .panel-head{margin-bottom:12px}
#metricas .panel-head h2{font-size:1.35rem}
#metricas .metric-grid{gap:8px}
#metricas .metric-row{min-height:54px;padding:10px 12px;border-radius:11px}
#metricas .metric-row strong{font-size:.82rem;line-height:1.2}
#metricas .metric-row b{font-size:1.3rem}
