
:root{
 --azul:#123d68;--azul2:#0d2f4d;--azul3:#1d5f96;--fundo:#f4f7fa;
 --texto:#263b4a;--muted:#667b89;--linha:#dce6ed;--card:#fff;
 --radius:14px;--shadow:0 8px 28px rgba(20,52,75,.08)
}
*{box-sizing:border-box}
html{font-size:16px}
body{margin:0!important;background:var(--fundo)!important;color:var(--texto)!important;
 font-family:Arial,Helvetica,sans-serif!important;line-height:1.5}
a{color:var(--azul3);text-decoration:none}a:hover{text-decoration:underline}
img{max-width:100%;height:auto}
.aemc-nav{background:#fff;border-bottom:1px solid var(--linha);position:relative;z-index:50}
.aemc-navin{width:min(1160px,94%);min-height:76px;margin:auto;display:flex;align-items:center;gap:24px}
.aemc-brand{display:flex;align-items:center;gap:11px;color:var(--azul)!important;font-weight:800;text-decoration:none!important;white-space:nowrap}
.aemc-mark{display:inline-flex;align-items:center;justify-content:center;background:var(--azul);color:#fff;width:52px;height:42px;border-radius:9px;font-size:18px}
.aemc-menu{margin-left:auto;display:flex;align-items:center;gap:5px;list-style:none;padding:0}
.aemc-menu>li{position:relative}.aemc-menu a{display:block;padding:11px 12px;color:#344f61;font-weight:700;font-size:14px;text-decoration:none;border-radius:8px}
.aemc-menu a:hover,.aemc-menu a.is-active{background:#edf5fa;color:var(--azul)}
.aemc-drop{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:220px;border:1px solid var(--linha);border-radius:10px;box-shadow:var(--shadow);padding:6px}
.aemc-menu li:hover>.aemc-drop{display:block}.aemc-drop a{padding:10px 12px}
.aemc-burger{display:none;margin-left:auto;border:1px solid var(--linha);background:#fff;color:var(--azul);border-radius:8px;font-size:25px;padding:5px 10px;cursor:pointer}
.aemc-mobile{display:none;background:#fff;border-top:1px solid var(--linha);padding:8px 4% 14px}
.aemc-mobile a{display:block;padding:11px 5px;border-bottom:1px solid #edf2f5;color:#344f61;font-weight:700}
.aemc-hero{background:linear-gradient(135deg,var(--azul),var(--azul3));color:#fff;padding:48px 0}
.aemc-container,.wrap,.aemc-page,.assoc-page,.parceiros-page,.it-page{width:min(1080px,92%)!important;max-width:1080px!important;margin-left:auto!important;margin-right:auto!important}
.aemc-hero h1{color:#fff!important;margin:0 0 8px;font-size:36px}.aemc-hero p{margin:0;opacity:.92}
.wrap{padding-top:28px;padding-bottom:35px}
.wrap>h1,.aemc-page h1,.assoc-page h1,.parceiros-page h1,.it-page h1{color:var(--azul)!important;font-size:30px!important;margin-top:0}
.hero,.mini{border-radius:var(--radius)}
.cards{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px!important;margin:22px 0!important}
.card,.usr-card,.assoc-card,.aemc-card,.parceiros-card,.it-card,.comunicados-box{
 background:#fff!important;border:1px solid var(--linha)!important;border-radius:var(--radius)!important;
 box-shadow:var(--shadow)!important
}
.card{overflow:hidden}.card>a{display:block!important;padding:22px!important;height:100%;color:var(--texto)!important;text-decoration:none!important}
.card strong{display:block;color:var(--azul);font-size:18px;margin-top:8px}.card span{color:var(--muted)}
table{border-collapse:collapse!important;background:#fff}
.tbgeral,.usr-card,table[width="760"],table[style*="760px"]{width:100%!important;max-width:100%!important}
th{background:#edf4f8!important;color:#355266!important;text-align:left!important}
th,td{padding:11px 12px!important;border-color:#e5edf2!important}
tr:nth-child(even) td{background:#fbfcfd}
.usr-scroll,.table-responsive{overflow-x:auto!important;-webkit-overflow-scrolling:touch;border-radius:10px}
input[type=text],input[type=password],input[type=email],input[type=tel],input[type=number],select,textarea{
 max-width:100%;min-height:42px;border:1px solid #c7d5de!important;border-radius:8px!important;background:#fff!important;
 padding:9px 11px!important;font:inherit!important;color:var(--texto)!important
}
input:focus,select:focus,textarea:focus{outline:2px solid #b7d5e9;outline-offset:1px}
input[type=submit],input[type=button],button,.bta,.usr-btn,.assoc-btn{
 min-height:42px;border:0!important;border-radius:8px!important;background:var(--azul)!important;color:#fff!important;
 padding:9px 18px!important;font-weight:700!important;cursor:pointer
}
blockquote{margin:0!important;padding:0!important}
.visual1,.mini,.sub,.assoc-topo p,.aemc-topo p,.parceiros-topo p{color:var(--muted)!important}
h1,h2,h3,h4{color:var(--azul)}
.msgcritica{display:block;background:#fff4f4;border:1px solid #f0cccc;border-radius:9px;padding:14px;color:#8a2d2d}
.aemc-test{font-size:12px;text-align:center;color:#738795;padding:12px;background:#eef3f6}
@media(max-width:850px){
 .aemc-menu{display:none}.aemc-burger{display:block}.aemc-mobile.open{display:block}
 .aemc-brand span:last-child{display:none}.cards{grid-template-columns:repeat(2,1fr)!important}
}
@media(max-width:600px){
 .aemc-navin{min-height:66px}.aemc-hero{padding:34px 0}.aemc-hero h1{font-size:28px}
 .wrap{padding-top:20px}.cards{grid-template-columns:1fr!important}
 table{font-size:14px}.usr-scroll{width:100%}
 input[type=text],input[type=password],input[type=email],input[type=tel],select,textarea{width:100%!important}
 input[type=submit],input[type=button],button{min-height:46px}
}


/* ===== Boleto - nova interface ===== */
.boleto-page{width:min(760px,92%);margin:34px auto 55px}
.boleto-card{background:#fff;border:1px solid var(--linha);border-radius:14px;
 box-shadow:var(--shadow);padding:26px}
.boleto-card h1{margin-top:0;color:var(--azul);font-size:29px}
.boleto-card p{color:var(--muted)}
.boleto-form{display:grid;gap:16px;margin-top:22px}
.boleto-field label{display:block;font-weight:700;color:#355266;margin-bottom:7px}
.boleto-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.boleto-help{background:#eef5fa;border-radius:9px;padding:13px 15px;color:#496273;font-size:14px}
@media(max-width:600px){.boleto-card{padding:20px}.boleto-actions>*{width:100%}}


/* ===== cal - área operacional ===== */
.cal-shell{width:min(1180px,94%);margin:28px auto 50px}
.cal-title{margin:0 0 18px;color:var(--azul);font-size:30px}
.cal-panel{background:#fff;border:1px solid var(--linha);border-radius:14px;
 box-shadow:var(--shadow);padding:22px;margin-bottom:20px}
.system-status{width:min(1180px,94%)!important;margin:12px auto 0!important;
 background:#edf5fa!important;border:1px solid #d7e6ef!important;border-radius:9px!important;
 padding:9px 13px!important;color:#496273!important;font-size:13px!important}
.cal-procura,.cal-form-altera{background:var(--fundo)!important}
.cal-procura table,.cal-form-altera table{max-width:100%!important}
.cal-procura .tbgeral,.cal-form-altera .tbgeral{width:100%!important}
.cal-actions{display:flex;gap:10px;flex-wrap:wrap}
.cal-login-wrap{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:30px 15px}
.cal-login-card{width:min(470px,100%);background:#fff;border:1px solid var(--linha);
 border-radius:16px;box-shadow:var(--shadow);padding:30px}
.cal-login-card h1{margin:0 0 8px;font-size:29px}.cal-login-card p{color:var(--muted)}
.cal-login-card label{display:block;font-weight:700;margin:14px 0 6px;color:#355266}
.cal-login-card input[type=text],.cal-login-card input[type=password]{width:100%!important}
.cal-login-card input[type=submit]{width:100%;margin-top:18px}
.cal-login-error{background:#fff1f1;border:1px solid #efcaca;color:#8b2f2f;
 border-radius:9px;padding:11px 13px;margin-top:14px}
@media(max-width:760px){
 .cal-shell{width:94%;margin-top:18px}
 .cal-panel{padding:16px}
 .system-status{width:94%!important}
}


/* ===== adm - administração ===== */
.adm-shell{width:min(1220px,94%);margin:26px auto 55px}
.adm-panel{background:#fff;border:1px solid var(--linha);border-radius:14px;box-shadow:var(--shadow);padding:22px;margin-bottom:20px}
.adm-title{color:var(--azul);font-size:30px;margin:0 0 18px}
.adm-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.adm-status{width:min(1220px,94%);margin:12px auto;background:#edf5fa;border:1px solid #d7e6ef;border-radius:9px;padding:9px 13px;color:#496273;font-size:13px}
@media(max-width:760px){.adm-shell{width:94%;margin-top:18px}.adm-panel{padding:16px}.adm-status{width:94%}}


/* Barra horizontal superior para tabelas largas */
.aemc-scrolltop{overflow-x:auto;overflow-y:hidden;height:17px;margin:0 0 4px}
.aemc-scrolltop-inner{height:1px}
.aemc-scrollhost{overflow-x:auto;max-width:100%}
