:root{
  --blue:#1268e8;--blue-dark:#0a43a4;--blue-soft:#edf5ff;--green:#16b878;--green-soft:#eafaf3;
  --red:#ef476f;--red-soft:#fff0f3;--amber:#f5a623;--amber-soft:#fff7e8;--purple:#7c5ce7;
  --ink:#102a43;--muted:#718096;--line:#e7edf5;--bg:#f5f8fc;--card:#fff;--shadow:0 8px 24px rgba(31,65,114,.08);
  --sidebar:214px;--topbar:68px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);min-height:100vh}a{color:inherit}button,input,select,textarea{font:inherit}.muted{color:var(--muted);font-size:13px}

/* Sidebar */
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:linear-gradient(180deg,#0f5fc9 0%,#0a409d 100%);color:#fff;padding:18px 12px 14px;display:flex;flex-direction:column;z-index:40;box-shadow:8px 0 28px rgba(7,52,123,.13)}
.brand{display:flex;align-items:center;gap:11px;padding:4px 8px 20px;border-bottom:1px solid rgba(255,255,255,.13);margin-bottom:12px}.brand-mark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,#20b9ff,#1476ff);font-weight:900;box-shadow:0 8px 18px rgba(0,0,0,.18)}.brand-text{display:grid;min-width:0}.brand-text strong{font-size:17px;line-height:1.1}.brand-text span{font-size:10px;opacity:.75;margin-top:4px}.side-nav{display:grid;gap:5px}.side-link{display:flex;align-items:center;gap:12px;min-height:45px;border-radius:10px;padding:0 13px;text-decoration:none;color:rgba(255,255,255,.9);font-weight:650;font-size:14px;transition:.18s}.side-link:hover{background:rgba(255,255,255,.10);color:#fff;transform:translateX(1px)}.side-link.ativo{background:linear-gradient(90deg,#1b83ff,#1970eb);box-shadow:0 7px 16px rgba(3,39,106,.25);color:#fff}.nav-icon{width:22px;height:22px;display:grid;place-items:center;flex:0 0 22px}.nav-icon svg{width:20px;height:20px}.sidebar-spacer{flex:1}.support-card{border:1px solid rgba(255,255,255,.20);background:rgba(255,255,255,.08);border-radius:12px;padding:12px;display:grid;grid-template-columns:36px 1fr;gap:8px;align-items:center;margin:12px 0}.support-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.15);font-weight:900}.support-card div:nth-child(2){display:grid}.support-card strong{font-size:13px}.support-card span{font-size:11px;opacity:.75}.support-card a{grid-column:1/-1;background:#1886ff;color:#fff;text-decoration:none;text-align:center;padding:9px;border-radius:9px;font-size:12px;font-weight:800}.logout-link{margin-top:2px;border:1px solid rgba(255,255,255,.09)}

/* Topbar */
.topbar{position:fixed;top:0;left:var(--sidebar);right:0;height:var(--topbar);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);z-index:35}.topbar-left,.topbar-right{display:flex;align-items:center;gap:12px}.icon-btn{width:38px;height:38px;border:0;background:transparent;color:#1d4d89;border-radius:10px;display:grid;place-items:center;cursor:pointer;position:relative}.icon-btn:hover{background:#f0f5fb}.icon-btn svg{width:21px;height:21px}.menu-toggle{display:none}.global-search{height:40px;width:min(470px,45vw);position:relative}.global-search .search-icon{position:absolute;left:12px;top:10px;width:19px;height:19px;color:#6a83a5}.global-search .search-icon svg{width:19px;height:19px}.global-search input{width:100%;height:100%;border:1px solid #dbe5f1;border-radius:9px;padding:0 14px 0 40px;background:#f8fbff;color:var(--ink);outline:none}.global-search input:focus{border-color:#8fc2ff;box-shadow:0 0 0 3px rgba(21,111,239,.08)}.system-status{display:flex;align-items:center;gap:7px;color:#276247;font-size:12px;font-weight:750}.system-status i{width:8px;height:8px;border-radius:50%;background:#20c77b;box-shadow:0 0 0 4px #e6fff4}.notification-dot{position:absolute;right:2px;top:1px;background:#ef3340;color:#fff;border-radius:99px;min-width:16px;height:16px;display:grid;place-items:center;font-size:9px;font-weight:800;border:2px solid white}.user-chip{display:flex;align-items:center;gap:9px;border-left:1px solid var(--line);padding-left:15px}.avatar{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#1c5ab3;color:#fff;font-size:12px;font-weight:850}.user-meta{display:grid}.user-meta strong{font-size:12px}.user-meta small{font-size:10px;color:var(--muted)}.sidebar-overlay{display:none}

/* Main layout */
.container{margin-left:var(--sidebar);padding:calc(var(--topbar) + 22px) 24px 34px;max-width:none}.dashboard-page{max-width:1660px}.page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px}.page-heading h1{font-size:25px;margin:0 0 5px;letter-spacing:-.4px}.page-heading p{margin:0;color:var(--muted);font-size:13px}.period-chip{background:#fff;border:1px solid var(--line);border-radius:9px;padding:9px 12px;font-size:12px;color:#57708f;box-shadow:0 2px 8px rgba(31,65,114,.03)}.period-chip strong{color:#146ae7}.welcome-banner{display:flex;align-items:center;gap:12px;border:1px solid #bdebd7;background:linear-gradient(90deg,#edfbf6,#f8fffc);border-radius:11px;padding:13px 16px;margin-bottom:14px;color:#0b7553}.welcome-icon{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:#17bc7a;color:#fff;font-size:20px;font-weight:900}.welcome-banner>div:nth-child(2){display:grid}.welcome-banner strong{font-size:14px}.welcome-banner span{font-size:11px;color:#5d7c72;margin-top:3px}.welcome-right{margin-left:auto;font-size:12px;font-weight:800}

/* Dashboard cards */
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.kpi-card{min-height:92px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--blue);border-radius:11px;box-shadow:0 4px 16px rgba(32,74,128,.05);padding:14px;display:grid;grid-template-columns:44px 1fr auto;gap:12px;align-items:center;position:relative;overflow:hidden}.kpi-card .kpi-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-size:18px;font-weight:900}.kpi-card>div:nth-child(2){display:grid}.kpi-card span{font-size:12px;font-weight:750}.kpi-card strong{font-size:25px;line-height:1.1;margin:2px 0;color:#124aa0}.kpi-card small{font-size:10px;color:var(--muted)}.kpi-card>b{position:absolute;right:12px;top:10px;font-size:9px;padding:5px 8px;border-radius:99px;background:var(--blue-soft);color:var(--blue)}.kpi-green{border-left-color:var(--green)}.kpi-green .kpi-icon{background:var(--green-soft);color:var(--green)}.kpi-green strong{color:#0f9b63}.kpi-green>b{background:var(--green-soft);color:#0f9b63}.kpi-red{border-left-color:var(--red)}.kpi-red .kpi-icon{background:var(--red-soft);color:var(--red)}.kpi-red strong{color:#ef315e}.kpi-red>b{background:var(--red-soft);color:#ef315e}.kpi-amber{border-left-color:var(--amber)}.kpi-amber .kpi-icon{background:var(--amber-soft);color:var(--amber)}.kpi-amber strong{color:#e08c08}.kpi-amber>b{background:var(--amber-soft);color:#cc7d04}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.summary-card,.dash-card,.painel,.card{background:var(--card);border:1px solid var(--line);border-radius:11px;box-shadow:0 4px 16px rgba(32,74,128,.055)}.summary-card{padding:13px 14px}.summary-title{display:flex;align-items:center;gap:9px}.summary-title>div{display:grid;min-width:0}.summary-title strong{font-size:12.5px}.summary-title small{font-size:10px;color:var(--muted);margin-top:2px}.summary-title em{margin-left:auto;font-style:normal;font-size:8.5px;font-weight:800;background:#eef5ff;color:#176ce8;border-radius:99px;padding:5px 7px}.summary-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-weight:900}.summary-icon.green{background:var(--green-soft);color:var(--green)}.summary-icon.blue{background:var(--blue-soft);color:var(--blue)}.summary-icon.red{background:var(--red-soft);color:var(--red)}.metric-split{display:grid;grid-template-columns:1fr 1fr;margin-top:12px}.metric-split>div{display:grid;text-align:center;padding:0 8px}.metric-split>div+div{border-left:1px solid var(--line)}.metric-split b{font-size:14px}.metric-split span{font-size:9.5px;color:var(--muted);margin-top:3px}.mini-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-top:12px}.mini-metrics>div{display:grid;text-align:center}.mini-metrics>div+div{border-left:1px solid var(--line)}.mini-metrics b{font-size:15px;color:#1357b7}.mini-metrics span{font-size:9px;color:var(--muted)}.green-text{color:#0ca66a!important}.red-text{color:#e6385f!important}.amber-text{color:#e18b08!important}
.charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.dash-card{padding:14px}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.card-head>div{display:grid}.card-head strong{font-size:13px}.card-head span{font-size:10px;color:var(--muted);margin-top:2px}.card-head a{font-size:9.5px;font-weight:800;color:#176ce8;text-decoration:none;background:#eef5ff;padding:5px 8px;border-radius:99px}.tag{font-size:8.5px!important;color:#176ce8!important;background:#eef5ff;border-radius:99px;padding:5px 8px;font-weight:800}.chart-shell{height:170px;width:100%;background:linear-gradient(180deg,#fbfdff,#fff);border-radius:8px;overflow:hidden}.spark-chart{width:100%;height:100%;display:block}.chart-labels{display:grid;grid-template-columns:repeat(14,1fr);gap:2px;color:#8a9cb2;font-size:8px;text-align:center;margin-top:3px}.auto-card{margin-bottom:12px}.auto-grid{display:grid;grid-template-columns:minmax(0,2.8fr) repeat(4,minmax(95px,.7fr));gap:10px;align-items:center}.auto-chart{height:115px}.auto-stat{height:72px;border-radius:9px;background:#f7faff;display:grid;place-items:center;align-content:center;text-align:center}.auto-stat b{font-size:17px;color:#1459bd}.auto-stat span{font-size:9.5px;color:var(--muted);margin-top:3px}.lower-grid{display:grid;grid-template-columns:1.35fr .85fr .9fr;gap:12px;margin-bottom:12px}.compact-table{font-size:10.5px}.compact-table th,.compact-table td{padding:8px 7px}.compact-table th{font-size:9.5px}.donut-row{display:grid;grid-template-columns:145px 1fr;gap:14px;align-items:center;min-height:170px}.donut{width:138px;height:138px;border-radius:50%;background:conic-gradient(var(--green) 0 calc(var(--p)*1%), var(--red) calc(var(--p)*1%) 100%);position:relative;display:grid;place-items:center}.donut:after{content:"";position:absolute;width:86px;height:86px;border-radius:50%;background:#fff;box-shadow:inset 0 0 0 1px #eef2f7}.donut>div{z-index:1;display:grid;text-align:center}.donut strong{font-size:22px}.donut span{font-size:10px;color:var(--muted)}.legend-list{display:grid;gap:12px}.legend-list>div{display:grid;grid-template-columns:10px 1fr auto;gap:8px;align-items:center;font-size:10px}.legend-list b{font-size:10px}.legend-dot{width:8px;height:8px;border-radius:50%}.green-bg{background:var(--green)}.red-bg{background:var(--red)}.blue-bg{background:var(--blue)}.recent-list{display:grid}.recent-row{display:grid;grid-template-columns:22px 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #edf1f6}.recent-row:last-child{border-bottom:0}.check-circle{width:18px;height:18px;border-radius:50%;display:grid;place-items:center;background:#e6fbf2;color:#0ba66a;font-size:10px;font-weight:900}.recent-row>div{display:grid}.recent-row strong{font-size:10.5px}.recent-row small{font-size:9px;color:var(--muted);margin-top:2px}.recent-row>b{font-size:10px;color:#0ca66a}.bottom-grid{display:grid;grid-template-columns:.75fr 1.6fr;gap:12px}.rank-row{display:grid;grid-template-columns:24px 1fr auto;gap:8px;align-items:center;padding:6px 0;border-bottom:1px solid #eef2f7}.rank-row span{width:20px;height:20px;border-radius:7px;background:#eef5ff;color:#176ce8;display:grid;place-items:center;font-size:9px;font-weight:850}.rank-row strong,.rank-row b{font-size:10.5px}.server-row{display:grid;grid-template-columns:150px 1fr 35px;gap:12px;align-items:center;padding:7px 0}.server-row>div:first-child{display:grid}.server-row strong{font-size:10.5px}.server-row span{font-size:9px;color:var(--muted)}.progress{height:9px;background:#edf2f8;border-radius:99px;overflow:hidden}.progress i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#4fa1ff,#176ce8)}.server-row>b{font-size:10.5px;color:#176ce8;text-align:right}

/* Existing pages */
.painel{padding:20px;margin-bottom:18px}.painel h1,.painel h2{margin-top:0}.boas-vindas{font-size:20px;margin-bottom:18px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px}.card{padding:20px}.card span{display:block;color:#667085;margin-bottom:8px}.card strong{font-size:28px}.linha-titulo{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.btn,button{display:inline-block;background:#176ce8;color:#fff;border:0;border-radius:9px;padding:10px 14px;text-decoration:none;cursor:pointer;font-weight:750}.secundario{background:#6b7280}.danger-btn{background:#b91c1c}.renovar-btn,.renovar{background:#059669!important;color:#fff!important;border-radius:7px;padding:6px 9px}.mini{padding:6px 9px}.danger{color:#b91c1c!important}.busca,.form-inline{display:flex;gap:10px;margin:18px 0;flex-wrap:wrap}.busca input{flex:1;min-width:250px}.form-inline input{min-width:160px;flex:1}.tabela-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #e5e7eb;white-space:nowrap}th{background:#f8fafc;color:#5f7590;font-size:12px}td{font-size:12px}.acoes{display:flex;gap:8px;flex-wrap:wrap}.acoes a{text-decoration:none;color:#2563eb}.status{display:inline-block;border-radius:999px;padding:5px 9px;font-size:10px;font-weight:750;background:#e5e7eb}.status.ativo{background:#dcfce7;color:#166534}.status.vencido{background:#fee2e2;color:#991b1b}.status.vence-hoje{background:#fef3c7;color:#92400e}.status.sem-data{background:#eef2f7;color:#667085}label{display:block;font-weight:650;margin:12px 0 6px;color:#25405f}input,textarea,select{width:100%;padding:11px;border:1px solid #d7e1ec;border-radius:9px;font:inherit;background:#fff;color:#18324f;outline:none}input:focus,textarea:focus,select:focus{border-color:#83b9ff;box-shadow:0 0 0 3px rgba(23,108,232,.08)}.alert{padding:10px 12px;border-radius:8px;margin:12px 0}.erro{background:#fee2e2;color:#991b1b}.ok{background:#dcfce7;color:#166534}.form-card{max-width:900px;margin:0 auto 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid label{margin:0}.full{grid-column:1/-1}.botoes{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.checkbox-line{display:flex!important;align-items:center;gap:9px;font-weight:600}.checkbox-line input{width:auto!important;margin:0}.regras-box{background:#f8fafc;border:1px solid #e5e7eb;border-radius:10px;padding:14px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.regras-box>strong{grid-column:1/-1}.painel form{margin:0}.painel .acoes form{display:inline-block}.alert.erro{white-space:pre-wrap;word-break:break-word}

/* Login */
.login-bg{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#0b49a8,#1478ed);padding:20px}.login-card{width:min(420px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 24px 60px rgba(0,0,0,.25)}.login-card h1{margin-top:0}.login-card button{width:100%;margin-top:16px}

@media(max-width:1250px){.kpi-grid,.summary-grid{grid-template-columns:repeat(2,1fr)}.lower-grid{grid-template-columns:1fr 1fr}.payments-card{grid-column:1/-1}.auto-grid{grid-template-columns:1fr 1fr 1fr}.auto-chart{grid-column:1/-1}.bottom-grid{grid-template-columns:1fr 1fr}}
@media(max-width:900px){:root{--sidebar:240px}.sidebar{transform:translateX(-102%);transition:.22s}.topbar{left:0;padding:0 14px}.container{margin-left:0;padding-left:14px;padding-right:14px}.menu-toggle{display:grid}.global-search{width:min(440px,60vw)}.user-meta,.system-status span,.theme-indicator{display:none}.menu-open .sidebar{transform:translateX(0)}.menu-open .sidebar-overlay{display:block;position:fixed;inset:0;background:rgba(8,25,50,.38);z-index:38}.charts-grid,.bottom-grid{grid-template-columns:1fr}.lower-grid{grid-template-columns:1fr}.payments-card{grid-column:auto}}
@media(max-width:650px){.topbar-right{gap:4px}.global-search{width:50vw}.global-search input{font-size:12px}.page-heading{align-items:stretch;flex-direction:column}.period-chip{align-self:flex-start}.welcome-right{display:none}.kpi-grid,.summary-grid{grid-template-columns:1fr}.kpi-card{grid-template-columns:42px 1fr}.kpi-card>b{display:none}.charts-grid{grid-template-columns:1fr}.auto-grid{grid-template-columns:1fr 1fr}.auto-chart{grid-column:1/-1}.chart-labels span:nth-child(even){display:none}.donut-row{grid-template-columns:1fr;justify-items:center}.legend-list{width:100%}.bottom-grid{grid-template-columns:1fr}.server-row{grid-template-columns:110px 1fr 30px}.form-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.support-card{display:none}}
@media(max-width:430px){.cards{grid-template-columns:1fr}.global-search{display:none}.topbar{height:58px}.container{padding-top:76px}.user-chip{border-left:0;padding-left:0}.welcome-banner{align-items:flex-start}.welcome-banner strong{font-size:12px}.welcome-banner span{font-size:10px}}

/* Geografia de clientes */
.geo-section{margin-top:12px}.geo-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin:8px 0 12px}.geo-heading h2{margin:0;font-size:17px;letter-spacing:-.2px}.geo-heading p{margin:4px 0 0;color:var(--muted);font-size:11px}.geo-chip{font-size:9px;font-weight:850;color:#176ce8;background:#eef5ff;border:1px solid #dceaff;padding:6px 9px;border-radius:99px;white-space:nowrap}.geo-grid{display:grid;grid-template-columns:1.05fr 2fr 2fr 1.05fr;gap:12px}.geo-map-card{min-height:315px}.geo-map{height:245px;width:100%;display:grid;place-items:center;border-radius:10px;background:linear-gradient(180deg,#fbfdff,#f6f9fd);overflow:hidden}.geo-map>div{max-width:100%!important}.geo-map span{font-size:11px;color:var(--muted)}.geo-note{margin-top:8px;color:#8a9cb2;font-size:9px;text-align:center}.geo-rank-card{min-height:315px}.geo-rank-row{display:grid;grid-template-columns:25px 1fr auto;gap:8px;align-items:center;padding:7px 0;border-bottom:1px solid #edf2f7}.geo-rank-row:last-child{border-bottom:0}.geo-rank-row>span{width:21px;height:21px;border-radius:7px;display:grid;place-items:center;background:#eef5ff;color:#176ce8;font-size:9px;font-weight:850}.geo-rank-row>div{display:grid;min-width:0}.geo-rank-row strong{font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.geo-rank-row small{font-size:8.5px;color:var(--muted);margin-top:2px}.geo-rank-row b{font-size:11px;color:#176ce8}.geo-empty,.geo-map-fallback{height:220px;display:grid;place-items:center;text-align:center;padding:20px;color:var(--muted);font-size:11px}.geo-map-fallback{height:100%}
@media(max-width:1350px){.geo-grid{grid-template-columns:1fr 1.8fr}.geo-rank-card,.geo-map-card{min-height:300px}}
@media(max-width:800px){.geo-heading{align-items:flex-start;flex-direction:column}.geo-grid{grid-template-columns:1fr}.geo-map-card,.geo-rank-card{min-height:auto}.geo-map{height:270px}}

/* Ações rápidas dos clientes - visual em ícones */
.acoes-icones{display:flex;align-items:center;gap:7px;min-width:230px;flex-wrap:wrap}
.acao-icone{width:38px;height:38px;border-radius:10px;display:inline-grid!important;place-items:center;color:#fff!important;text-decoration:none!important;box-shadow:0 3px 8px rgba(15,35,70,.12);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}
.acao-icone:hover{transform:translateY(-1px);filter:brightness(1.05);box-shadow:0 6px 14px rgba(15,35,70,.18)}
.acao-icone svg{width:20px;height:20px;fill:currentColor}
.acao-editar{background:#0f83f6}.acao-renovar{background:#813ef3}.acao-perfil{background:#8b3df5}.acao-mensagem{background:#f59e0b}.acao-whatsapp{background:#08b779}.acao-excluir{background:#ef315d}
@media(max-width:650px){.acoes-icones{min-width:200px;gap:6px}.acao-icone{width:36px;height:36px;border-radius:9px}.acao-icone svg{width:19px;height:19px}}

/* Perfil do cliente */
.perfil-topo{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.perfil-identidade{display:flex;align-items:center;gap:12px}.perfil-avatar{width:54px;height:54px;border-radius:16px;background:linear-gradient(135deg,#176ce8,#7c5ce7);color:#fff;display:grid;place-items:center;font-weight:900;font-size:19px;box-shadow:0 8px 20px rgba(23,108,232,.18)}.perfil-identidade h1{margin:0;font-size:23px}.perfil-identidade p{margin:4px 0 0;color:var(--muted);font-size:12px}.perfil-acoes{display:flex;gap:8px;flex-wrap:wrap}.perfil-acoes .acao-icone{width:40px;height:40px}.perfil-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.perfil-info{background:#f8fbff;border:1px solid #e1eaf5;border-radius:11px;padding:13px;display:grid;gap:4px}.perfil-info span{font-size:10px;text-transform:uppercase;letter-spacing:.4px;color:#7890ad;font-weight:800}.perfil-info strong{font-size:14px;color:#173b68;word-break:break-word}.perfil-obs{margin-top:12px;background:#fbfcfe;border:1px solid #e5ebf3;border-radius:11px;padding:14px}.perfil-obs h2{font-size:14px;margin:0 0 7px}.perfil-obs p{margin:0;color:#506984;white-space:pre-wrap;font-size:12px;line-height:1.5}@media(max-width:950px){.perfil-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.perfil-grid{grid-template-columns:1fr}.perfil-topo{align-items:flex-start}.perfil-identidade h1{font-size:19px}}

/* Central de mensagens / sino de envio manual */
.notification-wrap{position:relative}.notification-panel{position:absolute;right:0;top:50px;width:min(390px,88vw);max-height:66vh;overflow:auto;background:#fff;border:1px solid #e3eaf3;border-radius:15px;box-shadow:0 18px 48px rgba(24,49,83,.22);z-index:80;padding:8px}.notification-panel[hidden]{display:none}.notification-head{display:flex;align-items:center;justify-content:space-between;padding:10px 11px;border-bottom:1px solid #edf2f7}.notification-head strong{font-size:14px;color:#203c5f}.notification-head a{font-size:10px;color:#176ce8;text-decoration:none;font-weight:800}.notification-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border-bottom:1px solid #f0f3f7;text-decoration:none;color:#203c5f;border-radius:10px}.notification-item:hover{background:#f5f9ff}.notification-item>span{display:grid;gap:2px;font-size:12px;font-weight:800}.notification-item small{font-size:9px;color:#8293a8;font-weight:600}.notification-item b{width:21px;height:21px;border:2px solid #8d7cf4;border-radius:50%;display:grid;place-items:center;color:#8d7cf4;font-size:0}.notification-footer{display:block;padding:11px;text-align:center;text-decoration:none;color:#176ce8;font-size:11px;font-weight:850}.mensagem-central h1{margin-bottom:5px}.aviso-api{background:#f7f9fc;border:1px solid #e4eaf2;border-radius:10px;padding:11px;color:#5b6f88;font-size:11px;line-height:1.5}.modelos-lista{display:grid;gap:9px}.modelo-item{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;border:1px solid #e5ebf3;border-radius:11px;background:#fbfcfe}.modelo-item>div:first-child{display:grid;gap:3px}.modelo-item strong{font-size:12px}.modelo-item span{font-size:9.5px;color:#8395aa}.modelo-item .botoes form{margin:0}@media(max-width:650px){.notification-panel{position:fixed;left:12px;right:12px;top:66px;width:auto;max-height:72vh}.modelo-item{align-items:flex-start;flex-direction:column}.modelo-item .botoes{width:100%}}


/* V9 — dados de acesso dos clientes no servidor */
.dados-servidor-titulo{display:flex;flex-direction:column;gap:4px;margin-top:4px;padding:12px 14px;border:1px solid #dbe4f0;border-radius:12px;background:#f8fbff}
.senha-inline{display:flex;align-items:center;gap:8px;min-width:220px}.senha-inline input{min-width:120px;max-width:180px;padding:8px 10px;border:1px solid #d7deea;border-radius:9px;background:#fff}
.senha-perfil{display:flex!important;align-items:center;gap:8px}.senha-perfil input{max-width:160px;padding:7px 9px;border:1px solid #d7deea;border-radius:9px;background:#fff}
@media(max-width:700px){.senha-inline{min-width:190px}.senha-inline input{max-width:130px}.senha-perfil{flex-wrap:wrap}}


/* V9.5 — templates interativos e cores de vencimento/servidor */
.server-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;font-size:10.5px;font-weight:850;border:1px solid transparent;white-space:nowrap}.server-badge i{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 3px rgba(255,255,255,.72)}
.server-cor-0{background:#f1f4f8;color:#74869c;border-color:#e2e8f0}.server-cor-1{background:#ecf5ff;color:#1171d6;border-color:#cfe6ff}.server-cor-2{background:#f2efff;color:#6c4de6;border-color:#ddd5ff}.server-cor-3{background:#eafaf4;color:#0a8d69;border-color:#c8efdf}.server-cor-4{background:#fff4e7;color:#cc6e08;border-color:#ffe0b9}.server-cor-5{background:#fff0f5;color:#d83d73;border-color:#ffd2e2}.server-cor-6{background:#eef9fb;color:#16889b;border-color:#cdeff4}
.vencimento-pill{min-width:105px;display:inline-grid;gap:2px;padding:7px 9px;border-radius:10px;border:1px solid transparent}.vencimento-pill strong{font-size:11px;line-height:1.15}.vencimento-pill small{font-size:8.5px;font-weight:750;opacity:.82;white-space:nowrap}.venc-vencido{background:#fff0f2;color:#d92d50;border-color:#ffd2dc}.venc-hoje{background:#fff3e6;color:#d26a00;border-color:#ffd9ac}.venc-proximo{background:#fff9df;color:#a87100;border-color:#f6e7a5}.venc-atencao{background:#eef4ff;color:#4168cc;border-color:#d7e2ff}.venc-ativo{background:#eaf9f1;color:#0d8a58;border-color:#c8ecd9}.venc-sem-data{background:#f2f4f7;color:#7a8798;border-color:#e2e7ee}
.mensagem-topo{align-items:flex-start}.templates-rapidos{display:flex;gap:8px;overflow:auto;padding:4px 1px 12px;margin:5px 0 12px;scrollbar-width:thin}.template-chip{min-width:150px;max-width:220px;display:grid;gap:3px;padding:10px 12px;border:1px solid #e1e8f2;border-radius:12px;background:#fbfdff;text-decoration:none;color:#24415f;transition:.15s ease}.template-chip:hover,.template-chip.selecionado{border-color:#87b7ff;background:#f0f6ff;box-shadow:0 5px 14px rgba(23,108,232,.09);transform:translateY(-1px)}.template-chip span{font-size:11px;font-weight:850}.template-chip small{font-size:8.5px;color:#7e91a8;line-height:1.25}.template-preview{background:linear-gradient(180deg,#fbfdff,#f6f9fd);border:1px solid #dfe8f3;border-radius:12px;padding:12px 14px;display:grid;gap:6px}.template-preview strong{font-size:11px;color:#26486d}.template-preview p{margin:0;white-space:pre-wrap;line-height:1.5;font-size:11px;color:#4f6883}.template-preview span{width:max-content;max-width:100%;padding:4px 8px;border-radius:999px;font-size:8.5px;font-weight:850}.preview-meta{background:#e7f8ef;color:#087a4e}.preview-alt{background:#fff2df;color:#b66b05}.envio-botoes{display:flex;gap:8px;flex-wrap:wrap}.template-editor{padding:0!important;overflow:hidden}.template-editor>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;background:#fbfdff}.template-editor>summary::-webkit-details-marker{display:none}.template-editor>summary span{display:grid;gap:3px}.template-editor>summary strong{font-size:13px;color:#24415f}.template-editor>summary small{font-size:9.5px;color:#8192a7}.template-editor>summary b{font-size:18px;color:#7190b5;transition:.2s}.template-editor[open]>summary b{transform:rotate(180deg)}.template-editor-body{padding:16px 18px 18px;border-top:1px solid #e9eef5}.variaveis-modelo{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 12px;border-radius:10px;background:#f7f9fc;border:1px solid #e6ebf2}.variaveis-modelo strong{font-size:9.5px;color:#5c7189;margin-right:2px}.variaveis-modelo span{padding:3px 7px;background:#fff;border:1px solid #dce5ef;border-radius:7px;font-size:9px;font-weight:800;color:#37628e}.modelos-cards .modelo-item>div:first-child{max-width:70%}.modelo-item p{margin:4px 0 0;font-size:9.5px;color:#60768e;line-height:1.35}.modelos-cards .modelo-item{border-left:4px solid #8ab6f7}
@media(max-width:750px){.server-badge{padding:5px 8px}.vencimento-pill{min-width:96px}.mensagem-topo{gap:10px}.templates-rapidos{margin-right:-8px}.template-chip{min-width:145px}.modelos-cards .modelo-item>div:first-child{max-width:100%}}

/* V10 — Mensalistas / sócios cobrados por conexão */
.mensalistas-page{max-width:1600px}.mensalista-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.mensalista-kpi{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 16px;box-shadow:0 4px 16px rgba(32,74,128,.05);display:grid;gap:4px}.mensalista-kpi span{font-size:10px;text-transform:uppercase;letter-spacing:.35px;color:#7b8fa7;font-weight:850}.mensalista-kpi strong{font-size:22px;color:#1459b8}.mensalistas-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mensalista-card{border:1px solid #e2e9f2;border-radius:13px;background:linear-gradient(180deg,#fff,#fbfdff);padding:14px;box-shadow:0 5px 15px rgba(31,65,114,.05);display:grid;gap:12px}.mensalista-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.mensalista-card-head>div{display:grid;gap:3px}.mensalista-card-head strong{font-size:13px;color:#203f64}.mensalista-card-head small{font-size:9.5px;color:#8294aa}.mensalista-status{padding:4px 8px;border-radius:99px;font-size:8.5px;font-weight:850}.mensalista-status.on{background:#e8f8f0;color:#078653}.mensalista-status.off{background:#f1f3f6;color:#7a8797}.mensalista-inativo{opacity:.65}.mensalista-dados{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:6px}.mensalista-dados>div{border:1px solid #e8edf4;background:#f8faff;border-radius:9px;padding:9px;display:grid;gap:3px}.mensalista-dados span{font-size:8.5px;color:#8192a7}.mensalista-dados b{font-size:11.5px;color:#31516f}.mensalista-dados .destaque{background:#edf7ff;border-color:#d2e9ff}.mensalista-dados .destaque b{color:#0f6bd6}.mensalista-vencimento{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:10px;border:1px solid #d9e8f8;background:#f2f8ff;color:#326899}.mensalista-vencimento span{font-size:8.5px;font-weight:800}.mensalista-vencimento strong{font-size:11px;margin-left:auto}.mensalista-vencimento small{font-size:8.5px}.mensalista-vencimento.proximo{background:#fff8df;border-color:#f1e2a5;color:#9c7000}.mensalista-vencimento.urgente{background:#fff0e9;border-color:#ffd4bf;color:#c65116}.mensalista-acoes{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.mensalista-acoes form{margin:0}.mensalista-vazio{grid-column:1/-1;padding:24px;text-align:center;color:#8091a5;border:1px dashed #d9e1eb;border-radius:12px}.mensalista-preview{display:grid;gap:8px;padding:13px;background:#f8fbff;border:1px solid #dfe9f4;border-radius:11px}.mensalista-preview strong{font-size:11px;color:#294e75}.mensalista-preview pre{white-space:pre-wrap;margin:0;font:11px/1.55 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#506a84}.mensalista-preview .btn{width:max-content}.check-line{display:flex!important;align-items:center!important;gap:8px;padding-top:27px}.check-line input{width:auto!important}
@media(max-width:1150px){.mensalistas-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:750px){.mensalista-kpis,.mensalistas-grid{grid-template-columns:1fr}.mensalista-dados{grid-template-columns:1fr 1fr}.mensalista-dados .destaque{grid-column:1/-1}.mensalista-vencimento{flex-wrap:wrap}.mensalista-vencimento strong{margin-left:0}.check-line{padding-top:0}}

/* V11 — conexões por cliente, edição de planos e status visual */
.acessos-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 9px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.acessos-badge strong{font-size:11px;line-height:1}.acessos-badge small{font-size:8.5px;font-weight:800}.acessos-1{background:#edf5ff;color:#176bd5;border-color:#d1e5ff}.acessos-2{background:#f1edff;color:#704ce0;border-color:#ddd4ff}.acessos-3{background:#eaf9f4;color:#0c8a66;border-color:#c9ecdf}.acessos-4{background:#fff2e7;color:#c86a09;border-color:#ffddb9}
.cliente-row{transition:background .15s ease,box-shadow .15s ease}.cliente-row td:first-child{border-left:4px solid transparent}.cliente-vencido{background:#fff6f7}.cliente-vencido td:first-child{border-left-color:#ef476f}.cliente-hoje{background:#fffbea}.cliente-hoje td:first-child{border-left-color:#f2b600}.cliente-pago{background:#f5fcf8}.cliente-pago td:first-child{border-left-color:#18b878}.cliente-row:hover{filter:brightness(.99)}
.plano-form-v11{align-items:flex-end;gap:9px;flex-wrap:wrap}.plano-form-v11>input[name="nome"]{min-width:210px;flex:1}.mini-field{display:grid;gap:4px;min-width:105px}.mini-field span{font-size:9px;color:#72859b;font-weight:800}.mini-field input{width:120px}.plano-form-v11 .btn{height:40px;display:inline-flex;align-items:center}
.status.ativo{background:#e8f8ef!important;color:#087a4e!important}.status.vence-hoje{background:#fff5c9!important;color:#9b6a00!important}.status.vencido{background:#ffe9ee!important;color:#c92b4d!important}
@media(max-width:800px){.plano-form-v11{display:grid;grid-template-columns:1fr 1fr}.plano-form-v11>input[name="nome"]{grid-column:1/-1;width:100%}.mini-field input{width:100%}.plano-form-v11 button,.plano-form-v11 .btn{width:100%;justify-content:center}}
