:root{--bg:#07111f;--p:#0d1b2e;--c:#10223a;--line:#203957;--txt:#eaf2ff;--mut:#8fa4bd;--b:#38bdf8;--g:#22c55e;--r:#ef4444;--y:#f59e0b}*{box-sizing:border-box}body{margin:0;background:linear-gradient(135deg,#06101d,#0b1f35);color:var(--txt);font-family:system-ui,Segoe UI,Arial}.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;padding:14px 22px;background:#07111fee;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.brand{justify-self:center;text-align:center;font-size:22px;letter-spacing:.4px;color:var(--txt)}.menu-wrap{justify-self:start;position:relative}.menu-btn{font-size:22px;line-height:1;padding:10px 14px;border-radius:12px}.side-menu{position:absolute;left:0;top:48px;min-width:230px;background:#08172a;border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 18px 40px #0008;gap:8px;z-index:20}.side-menu button{width:100%;text-align:left}.user-area{justify-self:end;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}main{max-width:1180px;margin:auto;padding:20px}button{background:var(--b);color:#00111f;border:0;border-radius:12px;padding:10px 14px;font-weight:800;cursor:pointer}input,select,textarea{background:#071426;color:var(--txt);border:1px solid var(--line);border-radius:12px;padding:12px;width:100%}textarea{min-height:85px}small,p,span,li{color:var(--mut)}code,pre{background:#071426;border:1px solid var(--line);border-radius:10px;color:#d8ecff}code{padding:2px 6px}pre{padding:12px;white-space:pre-wrap;overflow:auto}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.cards.mini{grid-template-columns:repeat(4,1fr);margin-bottom:12px}.cards>div,.panel{background:var(--p);border:1px solid var(--line);border-radius:18px;padding:18px;margin:14px 0}.cards strong{display:block;font-size:28px;margin:8px 0}.cards.mini strong{font-size:20px}.ok strong{color:var(--g)}.red strong{color:var(--r)}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.grid textarea,.grid button,.grid .hint{grid-column:1/-1}.hint{min-height:20px;color:var(--mut);font-size:14px}.okmsg{color:var(--g)}.warnmsg{color:var(--y)}.item{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#08172a;border:1px solid var(--line);border-radius:14px;padding:12px;margin:8px 0}.tag{border-radius:999px;padding:4px 8px;background:#1f3859;font-size:12px}.statusbox{background:#08172a;border:1px solid var(--line);border-radius:14px;padding:12px;margin:12px 0}.actions{display:flex;gap:8px;flex-wrap:wrap}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}button.danger{background:var(--r);color:#fff}.accounts-split .panel{overflow:auto}.accounts-split table{min-width:540px}.actions-cell{width:118px;min-width:118px}.action-buttons{display:grid;grid-template-columns:1fr;gap:8px;align-items:stretch;justify-items:stretch}.action-buttons button{display:block;width:100%;min-width:96px;margin:0;padding:8px 10px;border-radius:10px;font-size:13px;line-height:1.1;white-space:nowrap}.btn-paid{background:var(--g);color:#03210d}.btn-cancel{background:var(--y);color:#2d1b00}@media(max-width:900px){.topbar{grid-template-columns:auto 1fr auto;padding:12px}.brand{font-size:18px}.user-area span{display:none}.cards,.cards.mini,.two,.grid{grid-template-columns:1fr}.accounts-split table{min-width:520px}.side-menu{top:44px}}
#events{
  max-height:320px;
  overflow-y:auto;
  padding-right:8px;
  scrollbar-width:thin;
  scrollbar-color:var(--b) #071426;
}
#events::-webkit-scrollbar{width:10px}
#events::-webkit-scrollbar-track{background:#071426;border-radius:10px}
#events::-webkit-scrollbar-thumb{background:var(--b);border-radius:10px}
#events .item{margin-right:2px}

.panel-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px;flex-wrap:wrap}.panel-title h2{margin:0}.panel-title strong{background:#08172a;border:1px solid var(--line);border-radius:999px;padding:8px 12px;color:var(--b);font-size:18px;white-space:nowrap}.btn-refund{background:#8b5cf6;color:#fff}

/* Login compacto */
body.login{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:linear-gradient(135deg,#06101d,#0b1f35);
}
.loginbox{
  width:100%;
  max-width:360px;
  background:var(--p);
  border:1px solid var(--line);
  border-radius:20px;
  padding:26px;
  box-shadow:0 20px 50px #0007;
}
.loginbox h1{
  margin:0 0 6px;
  text-align:center;
  font-size:26px;
}
.loginbox p{
  margin:0 0 18px;
  text-align:center;
}
.loginbox input{
  height:44px;
  padding:10px 12px;
  margin:8px 0;
  font-size:15px;
}
.loginbox button{
  width:100%;
  height:44px;
  margin-top:12px;
  padding:10px 14px;
  font-size:15px;
}
@media(max-width:480px){.loginbox{max-width:330px;padding:22px}.loginbox h1{font-size:23px}}

.login-error{
  background:#3b1111;
  border:1px solid #ef4444;
  color:#ffd4d4;
  border-radius:12px;
  padding:10px 12px;
  margin:10px 0 12px;
  font-weight:700;
  text-align:center;
  font-size:14px;
}

@keyframes loginShake{
  0%,100%{transform:translateX(0)}
  15%{transform:translateX(-10px)}
  30%{transform:translateX(10px)}
  45%{transform:translateX(-8px)}
  60%{transform:translateX(8px)}
  75%{transform:translateX(-4px)}
  90%{transform:translateX(4px)}
}
.loginbox.shake{animation:loginShake .55s ease-in-out}
.loginbox input.input-error{
  border-color:#ef4444;
  box-shadow:0 0 0 2px rgba(239,68,68,.25);
}


/* Seletor de tema no canto superior direito após login */
.theme-switcher{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.theme-btn{padding:8px 10px;border-radius:999px;font-size:12px;line-height:1;background:transparent;color:var(--txt);border:1px solid var(--line)}
.theme-btn:hover,.theme-btn.active{background:var(--b);color:var(--btnText,#00111f);border-color:var(--b)}
body.theme-vox{--bg:#07111f;--p:#0d1b2e;--c:#10223a;--line:#203957;--txt:#eaf2ff;--mut:#8fa4bd;--b:#38bdf8;--g:#22c55e;--r:#ef4444;--y:#f59e0b;--btnText:#00111f}
body.theme-dark{--bg:#05070b;--p:#10131a;--c:#151a24;--line:#26364a;--txt:#f8fafc;--mut:#a8b3c7;--b:#CD4C00;--g:#22c55e;--r:#ef4444;--y:#CD4C00;--btnText:#111827;background:radial-gradient(circle at 85% 8%,rgba(0,174,255,.22),transparent 28%),linear-gradient(135deg,#030508,#0b1018 55%,#0d1524)}
body.theme-light{--bg:#f7fbff;--p:#ffffff;--c:#eef6fd;--line:#e5edf5;--txt:#243044;--mut:#6b7280;--b:#0b8fd3;--g:#16a34a;--r:#d94b3d;--y:#d97706;--btnText:#ffffff;background:linear-gradient(180deg,#ffffff 0%,#f5fbff 48%,#eef7ff 100%)}
body.theme-light .topbar{background:#fffffffa;border-bottom:1px solid #edf2f7;box-shadow:0 8px 28px rgba(15,23,42,.06)}
body.theme-dark .topbar{background:#05070bf2;border-bottom-color:#1d4ed8;box-shadow:0 8px 34px rgba(0,174,255,.12)}
body.theme-dark .brand{color:#CD4C00;text-shadow:0 0 18px rgba(205,76,0,.22)}
body.theme-dark .cards>div,body.theme-dark .panel{background:linear-gradient(180deg,#151922,#0b0f17);border-color:#26364a;box-shadow:0 18px 45px rgba(0,0,0,.45),inset 0 1px 0 rgba(0,174,255,.08)}
body.theme-dark .cards>div:hover,body.theme-dark .panel:hover{border-color:#1d9bf0}
body.theme-dark .side-menu,body.theme-dark input,body.theme-dark select,body.theme-dark textarea,body.theme-dark code,body.theme-dark pre,body.theme-dark .panel-title strong{background:#080d14;color:var(--txt);border-color:#26364a}
body.theme-dark .theme-btn.active,body.theme-dark .theme-btn:hover{background:#CD4C00;color:#fff;border-color:#CD4C00}
body.theme-dark .tag,body.theme-dark .hint{border-color:#1d9bf0}
body.theme-dark a,body.theme-dark .panel-title strong,body.theme-dark #bank{color:#38bdf8}
body.theme-dark button{background:#CD4C00;color:#fff}
body.theme-dark .menu-btn{background:#101827;color:#CD4C00;border:1px solid #26364a}
body.theme-dark .btn-paid{background:#16a34a;color:#fff}
body.theme-dark .btn-cancel{background:#CD4C00;color:#fff}
body.theme-dark button.danger{background:#ef4444;color:#fff}
body.theme-dark .btn-refund{background:#2563eb;color:#fff}
body.theme-light .cards>div,body.theme-light .panel{background:#ffffff;border-color:#e9f0f7;box-shadow:0 12px 30px rgba(15,23,42,.05)}
body.theme-light .cards>div{background:linear-gradient(180deg,#ffffff,#f8fbff)}
body.theme-light .panel:nth-of-type(2),body.theme-light .two .panel{box-shadow:0 10px 28px rgba(11,143,211,.08)}
body.theme-light .brand{color:#d94b3d;font-weight:900}
body.theme-light h2{color:#2f3b4f}
body.theme-light .side-menu,body.theme-light input,body.theme-light select,body.theme-light textarea,body.theme-light code,body.theme-light pre,body.theme-light .panel-title strong{background:#f8fbff;color:var(--txt);border-color:#e5edf5}
body.theme-light .theme-btn{background:#ffffff;color:#4b5563;border-color:#e5edf5}
body.theme-light .theme-btn.active,body.theme-light .theme-btn:hover{background:#d94b3d;color:#fff;border-color:#d94b3d}
body.theme-light button{background:#0b8fd3;color:#fff;box-shadow:0 8px 18px rgba(11,143,211,.18)}
body.theme-light .menu-btn{background:#ffffff;color:#0b8fd3;border:1px solid #e5edf5;box-shadow:0 8px 18px rgba(15,23,42,.06)}
body.theme-light .btn-paid{background:#16a34a;color:#fff}
body.theme-light .btn-cancel{background:#f59e0b;color:#fff}
body.theme-light button.danger{background:#d94b3d;color:#fff}
body.theme-light .btn-refund{background:#0b8fd3;color:#fff}
body.theme-light table{background:#fff}
body.theme-light th{color:#6b7280;background:#f3f8fc}
body.theme-light td{border-bottom-color:#edf2f7}
body.theme-light .tag,body.theme-light .hint{background:#f6fbff;border-color:#e5edf5;color:#4b5563}
body.theme-light .ok strong{color:#16a34a}
body.theme-light .red strong{color:#d94b3d}
body.theme-light #events .item{background:#fbfdff;border-color:#edf2f7}
@media(max-width:760px){.topbar{grid-template-columns:auto 1fr;align-items:start}.brand{justify-self:start}.user-area{grid-column:1/3;justify-self:stretch;justify-content:space-between}.theme-switcher{justify-content:flex-start}.theme-btn{font-size:11px;padding:7px 9px}}


/* Ícones de tema + ajuste de fonte */
body{font-size:calc(16px * var(--fontScale,1))}
.theme-switcher{gap:8px}
.theme-icon,.font-btn{width:40px;height:40px;min-width:40px;padding:0;border-radius:14px;display:inline-grid;place-items:center;font-size:19px;font-weight:900;line-height:1}
.theme-vox-icon{font-family:system-ui,Segoe UI,Arial;font-weight:1000;letter-spacing:-1px}
.font-controls{display:flex;align-items:center;gap:6px;margin-left:4px;padding-left:8px;border-left:1px solid var(--line)}
.font-btn{background:transparent;color:var(--txt);border:1px solid var(--line);font-size:15px}
.font-btn:hover{background:var(--b);color:var(--btnText,#00111f);border-color:var(--b)}
.font-btn:disabled{opacity:.45;cursor:not-allowed}
body.theme-light .font-btn{background:#ffffff;color:#4b5563;border-color:#e5edf5}
body.theme-light .font-btn:hover{background:#d94b3d;color:#fff;border-color:#d94b3d}
body.theme-dark .font-btn{background:#101827;color:#f8fafc;border-color:#26364a}
body.theme-dark .font-btn:hover{background:#CD4C00;color:#fff;border-color:#CD4C00}
body.theme-dark .theme-vox-icon,body.theme-vox .theme-vox-icon{color:#fff}
body.theme-light .theme-vox-icon{color:#d94b3d}
@media(max-width:760px){.theme-icon,.font-btn{width:36px;height:36px;min-width:36px;border-radius:12px;font-size:14px}.font-controls{gap:5px;margin-left:0;padding-left:6px}}


/* Manter ícones de tema e A+/A- fixos quando muda o tamanho da fonte */
body{font-size:16px}
main{font-size:calc(16px * var(--fontScale,1))}
.topbar,.user-area,.theme-switcher,.theme-switcher button,.font-controls,.font-controls button{font-size:16px;line-height:1;transform:none}
.user-area{flex-wrap:nowrap;min-width:0}
.theme-switcher{flex:0 0 auto;width:272px;min-width:272px;max-width:272px;flex-wrap:nowrap;justify-content:flex-end;align-items:center}
.theme-icon,.font-btn{flex:0 0 40px;width:40px;min-width:40px;max-width:40px;height:40px;min-height:40px;max-height:40px;font-size:18px}
.font-controls{flex:0 0 auto;white-space:nowrap}
@media(max-width:760px){.theme-switcher{width:auto;min-width:224px;max-width:none;justify-content:flex-start}.theme-icon,.font-btn{flex-basis:36px;width:36px;min-width:36px;max-width:36px;height:36px;min-height:36px;max-height:36px;font-size:14px}}


/* Evitar corte dos botões de ação quando a fonte aumenta */
.accounts-split .panel{overflow-x:auto;overflow-y:visible;padding-bottom:22px}
.accounts-split table{min-width:760px;table-layout:auto}
.accounts-split th:last-child,.accounts-split td:last-child{width:168px;min-width:168px;max-width:168px}
.actions-cell{width:168px!important;min-width:168px!important;max-width:168px!important;padding-right:14px!important;overflow:visible!important}
.action-buttons{width:136px;min-width:136px;max-width:136px;overflow:visible!important}
.action-buttons button{width:136px!important;min-width:136px!important;max-width:136px!important;min-height:38px;padding:9px 12px!important;font-size:14px!important;line-height:1.15!important;white-space:nowrap;overflow:visible;text-overflow:clip}
@media(max-width:900px){.accounts-split table{min-width:780px}.accounts-split th:last-child,.accounts-split td:last-child,.actions-cell{width:172px!important;min-width:172px!important;max-width:172px!important}.action-buttons,.action-buttons button{width:140px!important;min-width:140px!important;max-width:140px!important}}


/* Ajuste definitivo: botões de ação acompanham A+/A- sem subir, sumir ou cortar */
.accounts-split .panel{overflow-x:auto!important;overflow-y:visible!important;padding-bottom:18px!important}
.accounts-split table{min-width:max-content!important;table-layout:auto!important;border-collapse:separate;border-spacing:0}
.accounts-split th,.accounts-split td{vertical-align:top!important}
.accounts-split th:last-child,.accounts-split td:last-child{position:sticky;right:0;z-index:2;background:var(--p);box-shadow:-10px 0 18px rgba(0,0,0,.18);width:auto!important;min-width:calc(9.8em + 20px)!important;max-width:none!important}
body.theme-light .accounts-split th:last-child,body.theme-light .accounts-split td:last-child{background:#fff;box-shadow:-10px 0 18px rgba(15,23,42,.08)}
.action-buttons{display:grid!important;grid-template-columns:1fr!important;gap:.42em!important;align-items:start!important;justify-items:stretch!important;width:9.2em!important;min-width:9.2em!important;max-width:none!important;overflow:visible!important;margin:0!important}
.action-buttons button{display:block!important;width:100%!important;min-width:0!important;max-width:none!important;min-height:2.35em!important;height:auto!important;margin:0!important;padding:.48em .62em!important;border-radius:.72em!important;font-size:.82em!important;line-height:1.12!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important;transform:none!important}
@media(max-width:900px){.accounts-split th:last-child,.accounts-split td:last-child{min-width:calc(9.4em + 16px)!important}.action-buttons{width:8.9em!important;min-width:8.9em!important}.action-buttons button{font-size:.78em!important;padding:.45em .55em!important}}


/* Contas a pagar/pagas: mostrar só 3 registros e rolar se passar */
.accounts-split .panel{overflow:visible!important}
.accounts-table-scroll{max-height:34em;overflow:auto!important;padding-bottom:10px;border-radius:12px;scrollbar-width:thin;scrollbar-color:var(--b) rgba(15,23,42,.35)}
.accounts-table-scroll::-webkit-scrollbar{width:10px;height:10px}
.accounts-table-scroll::-webkit-scrollbar-track{background:rgba(15,23,42,.35);border-radius:10px}
.accounts-table-scroll::-webkit-scrollbar-thumb{background:var(--b);border-radius:10px}
.accounts-table-scroll table{margin:0;min-width:max-content!important;width:100%}
.accounts-table-scroll thead th{position:sticky;top:0;z-index:4;background:var(--p);box-shadow:0 1px 0 var(--line)}
.accounts-table-scroll thead th:last-child{z-index:6}
body.theme-light .accounts-table-scroll thead th{background:#f3f8fc}
@media(max-width:900px){.accounts-table-scroll{max-height:32em}}


/* Menu lateral estilo Efí - aplicado por cima do layout antigo */
body{background:#f4f7fb;color:var(--txt);overflow-x:hidden}.efi-topbar{position:sticky;top:0;z-index:50;display:grid!important;grid-template-columns:260px 1fr auto!important;align-items:center!important;gap:18px!important;min-height:76px;padding:14px 34px!important;background:#fff!important;border-bottom:1px solid #e9eef5!important;box-shadow:0 4px 22px rgba(15,23,42,.04)!important}.efi-logo{display:flex;align-items:baseline;gap:5px;font-size:22px;font-weight:800;color:#1f2937}.efi-logo-vox{font-size:30px;font-weight:950;letter-spacing:-1.5px;color:#CD4C00}.welcome-area{justify-self:start;font-size:24px;font-weight:900;color:#1f2937}.welcome-area span{color:#CD4C00}.top-actions{display:flex;align-items:center;gap:12px;justify-content:flex-end}.efi-menu-btn{display:grid!important;grid-template-rows:auto auto!important;gap:8px!important;place-items:center!important;background:transparent!important;color:#111827!important;box-shadow:none!important;border:0!important;border-radius:0!important;padding:0 8px!important;min-width:58px!important}.efi-menu-btn span{font-size:12px;font-weight:900;color:#111827;letter-spacing:.4px}.efi-menu-btn i,.efi-menu-btn i:before{content:"";display:block;width:28px;height:2px;background:#111827;border-radius:8px}.efi-menu-btn i:before{transform:translateY(8px)}.app-layout{display:grid;grid-template-columns:84px minmax(0,1fr);gap:30px;max-width:1440px;margin:0 auto;padding:18px 28px 40px;transition:grid-template-columns .22s ease}body.menu-open .app-layout{grid-template-columns:300px minmax(0,1fr)}.app-layout main{max-width:none;width:100%;margin:0;padding:0}.efi-side-menu{position:sticky!important;top:94px!important;left:auto!important;display:flex!important;flex-direction:column!important;gap:8px!important;align-self:start;width:84px!important;min-width:0!important;max-height:calc(100vh - 112px);overflow-y:auto;background:#fff!important;border:1px solid #edf2f7!important;border-radius:18px!important;padding:10px!important;box-shadow:0 16px 38px rgba(15,23,42,.08)!important;z-index:10!important;transition:width .22s ease}.efi-side-menu::-webkit-scrollbar{width:6px}.efi-side-menu::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}body.menu-open .efi-side-menu{width:300px!important}.account-card{background:#2b2b2b;color:#fff;border-radius:8px;padding:8px;min-height:102px;overflow:hidden;display:flex;flex-direction:column;gap:8px}.account-top{display:flex;align-items:center;gap:9px}.account-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#CD4C00;flex:0 0 42px}.account-text{display:none;min-width:0}.account-text strong{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.account-text small{display:block;font-size:12px;color:#fff;opacity:.95;white-space:nowrap}.account-arrow{display:none;margin-left:auto;color:#fff}.manager-btn{display:none!important;width:100%;align-items:center;gap:8px;background:#4b4b4b!important;color:#fff!important;box-shadow:none!important;border-radius:8px!important;padding:10px!important;font-size:12px!important;text-align:left!important}.manager-btn b{font-size:12px;color:#fff}.manager-btn span{font-size:18px;color:#fff}body.menu-open .account-text,body.menu-open .account-arrow{display:block}body.menu-open .manager-btn{display:flex!important}.menu-item{position:relative;display:flex!important;align-items:center!important;gap:14px!important;width:100%!important;min-height:48px!important;background:transparent!important;color:#2f3b4b!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-align:left!important;padding:10px 10px!important;font-weight:500!important;white-space:nowrap!important}.menu-item:hover{background:#f6fbff!important;border-radius:10px!important}.menu-item.active{color:#0ab2d6!important}.menu-item.active:before{content:"";position:absolute;left:-10px;top:7px;bottom:7px;width:4px;border-radius:4px;background:#0ab2d6}.menu-ico{width:40px;height:28px;display:grid;place-items:center;flex:0 0 40px;color:inherit!important;font-size:22px;line-height:1}.menu-label{display:none;color:inherit!important;font-size:15px;overflow:hidden;text-overflow:ellipsis}.menu-item em{display:none;margin-left:auto;background:#0aa6c8;color:#fff;border-radius:5px;padding:2px 6px;font-size:10px;font-style:normal;font-weight:800}body.menu-open .menu-label,body.menu-open .menu-item em{display:inline-block}.menu-logout{margin-top:auto}.menu-logout button{color:#b42318!important}.theme-switcher{width:auto!important;min-width:0!important;max-width:none!important}.theme-icon,.font-btn{width:34px!important;min-width:34px!important;max-width:34px!important;height:34px!important;min-height:34px!important;max-height:34px!important;border-radius:10px!important}body.theme-light .efi-topbar,body.theme-vox .efi-topbar,body.theme-dark .efi-topbar{background:#fff!important;border-bottom-color:#e9eef5!important}body.theme-dark .efi-logo,body.theme-dark .welcome-area,body.theme-dark .efi-menu-btn span{color:#111827!important}body.theme-dark .efi-logo-vox,body.theme-dark .welcome-area span{color:#CD4C00!important}body.theme-dark .efi-menu-btn i,body.theme-dark .efi-menu-btn i:before{background:#111827!important}body.theme-dark .efi-side-menu,body.theme-dark .account-card{box-shadow:0 16px 38px rgba(0,0,0,.25)!important}body.theme-vox .efi-side-menu,body.theme-dark .efi-side-menu{background:#fff!important;border-color:#edf2f7!important}.cards{margin-top:0}.cards>div,.panel{border-radius:18px}.panel h2{margin-top:0}@media(max-width:900px){.efi-topbar{grid-template-columns:1fr auto!important;padding:12px 16px!important;gap:10px!important}.efi-logo{font-size:17px}.efi-logo-vox{font-size:25px}.welcome-area{grid-column:1/3;grid-row:2;font-size:22px}.top-actions{grid-column:2;grid-row:1}.theme-switcher{display:none!important}.app-layout{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px}.efi-side-menu{top:128px!important;width:72px!important;padding:8px!important}.account-card{min-height:86px}.account-avatar{width:38px;height:38px;flex-basis:38px}.menu-ico{width:34px;flex-basis:34px;font-size:20px}body.menu-open .app-layout{grid-template-columns:minmax(230px,280px) minmax(0,1fr)}body.menu-open .efi-side-menu{width:100%!important}.two,.cards,.cards.mini,.grid{grid-template-columns:1fr!important}}


/* Cards de saldo: Efí + CellCash */
.cards{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important}
.balance-card{position:relative;overflow:hidden}
.efi-balance-card:after,.cellcash-balance-card:after{content:"";position:absolute;right:-24px;top:-24px;width:82px;height:82px;border-radius:50%;opacity:.16;pointer-events:none}
.efi-balance-card:after{background:#0b8fd3}
.cellcash-balance-card:after{background:#CD4C00}
.cellcash-balance-card strong{color:#CD4C00}
body.theme-dark .cellcash-balance-card strong{color:#CD4C00}
body.theme-light .cellcash-balance-card strong{color:#d94b3d}
#cellcashStatus{display:block;margin-top:4px}


/* Menu hover abre e botão MENU trava */
@media (hover:hover) and (pointer:fine){
  body:not(.menu-open) .app-layout:has(.efi-side-menu:hover){grid-template-columns:300px minmax(0,1fr)!important}
  body:not(.menu-open) .efi-side-menu:hover{width:300px!important}
  body:not(.menu-open) .efi-side-menu:hover .account-text,
  body:not(.menu-open) .efi-side-menu:hover .account-arrow{display:block!important}
  body:not(.menu-open) .efi-side-menu:hover .manager-btn{display:flex!important}
  body:not(.menu-open) .efi-side-menu:hover .menu-label,
  body:not(.menu-open) .efi-side-menu:hover .menu-item em{display:inline-block!important}
}
.efi-menu-btn[aria-expanded="true"] span::after{content:" travado";font-size:10px;color:#CD4C00;margin-left:4px}


/* Correção fonte grande nos balões e saldo auto-sync */
.cards{align-items:stretch!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important}
.cards>div{min-width:0!important;min-height:128px!important;display:flex!important;flex-direction:column!important;justify-content:center!important;gap:.35em!important;overflow:visible!important}
.cards>div span,.cards>div small{overflow-wrap:anywhere!important;word-break:normal!important;line-height:1.25!important}
.cards strong{font-size:clamp(1.45rem,2.2vw,2rem)!important;line-height:1.08!important;overflow-wrap:anywhere!important;word-break:normal!important;white-space:normal!important;margin:.18em 0!important}
.balance-card{overflow:visible!important}
@media(max-width:1100px){.cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}.cards>div{min-height:118px!important;padding:16px!important}}
@media(max-width:700px){.cards{grid-template-columns:1fr!important}.cards>div{min-height:auto!important}.cards strong{font-size:clamp(1.35rem,7vw,1.9rem)!important}}


/* Mobile confortável Vox Financeiro */
@media(max-width:700px){
  html{font-size:18px!important;-webkit-text-size-adjust:100%}
  body{font-size:18px!important;background:#f4f7fb!important;overflow-x:hidden!important}
  main{font-size:calc(18px * var(--fontScale,1))!important}
  .efi-topbar{
    position:sticky!important;top:0!important;grid-template-columns:1fr auto!important;
    gap:8px!important;min-height:auto!important;padding:12px 12px 10px!important;
  }
  .efi-logo{font-size:18px!important;line-height:1!important;min-width:0!important}
  .efi-logo-vox{font-size:27px!important;letter-spacing:-1px!important}
  .welcome-area{grid-column:1/3!important;grid-row:2!important;font-size:20px!important;line-height:1.15!important;white-space:normal!important}
  .top-actions{grid-column:2!important;grid-row:1!important;gap:6px!important}
  .efi-menu-btn{min-width:54px!important;padding:0 4px!important}
  .efi-menu-btn span{font-size:12px!important}
  .efi-menu-btn i,.efi-menu-btn i:before{width:26px!important}
  .app-layout{
    display:block!important;max-width:100%!important;width:100%!important;
    padding:10px 10px 28px!important;margin:0!important;
  }
  .app-layout main{width:100%!important;max-width:100%!important;padding:0!important;margin:0!important}
  .efi-side-menu{
    position:sticky!important;top:98px!important;width:100%!important;max-height:none!important;
    display:grid!important;grid-template-columns:repeat(4,minmax(62px,1fr))!important;
    align-items:center!important;gap:6px!important;padding:8px!important;margin:0 0 10px!important;
    border-radius:16px!important;overflow:visible!important;
  }
  .account-card{display:none!important}
  .menu-item{min-height:54px!important;justify-content:center!important;padding:8px 6px!important;border-radius:12px!important;gap:6px!important}
  .menu-ico{width:auto!important;height:auto!important;flex:0 0 auto!important;font-size:24px!important}
  .menu-label{display:block!important;font-size:12px!important;line-height:1.05!important;text-align:center!important;white-space:normal!important;max-width:82px!important}
  .menu-item.active:before{left:8px!important;right:8px!important;top:auto!important;bottom:0!important;width:auto!important;height:3px!important}
  .menu-logout{margin-top:0!important}
  body.menu-open .app-layout{display:block!important}
  body.menu-open .efi-side-menu{width:100%!important;grid-template-columns:1fr!important;align-items:stretch!important}
  body.menu-open .menu-item{justify-content:flex-start!important;min-height:50px!important;padding:10px 12px!important}
  body.menu-open .menu-label{font-size:16px!important;text-align:left!important;max-width:none!important;white-space:nowrap!important}
  .cards,.cards.mini,.two,.grid{grid-template-columns:1fr!important;gap:12px!important;width:100%!important}
  .cards>div,.panel{width:100%!important;margin:10px 0!important;padding:16px!important;border-radius:16px!important;min-height:auto!important}
  .cards strong{font-size:clamp(1.65rem,8vw,2.25rem)!important;line-height:1.05!important}
  .panel h2{font-size:1.25rem!important;line-height:1.15!important}
  input,select,textarea,button{font-size:1rem!important;min-height:46px!important}
  .item{display:block!important;padding:14px!important;font-size:1rem!important}
  .item button{margin-top:10px!important;width:100%!important}
  .accounts-split{display:block!important}
  .accounts-split .panel{overflow-x:auto!important;-webkit-overflow-scrolling:touch!important}
  .accounts-split table{min-width:720px!important;font-size:.92rem!important}
  #events{max-height:280px!important;overflow-y:auto!important}
}
@media(max-width:390px){
  html,body{font-size:17px!important}
  main{font-size:calc(17px * var(--fontScale,1))!important}
  .efi-side-menu{grid-template-columns:repeat(2,minmax(120px,1fr))!important}
  .menu-label{font-size:13px!important;max-width:none!important}
}


/* Mobile: menu abre somente ao clicar no botão MENU */
@media(max-width:700px){
  body:not(.menu-open) .efi-side-menu{display:none!important}
  body.menu-open .efi-side-menu{
    display:grid!important;grid-template-columns:1fr!important;width:100%!important;
    margin:0 0 12px!important;padding:10px!important;gap:8px!important;
    border-radius:16px!important;position:sticky!important;top:98px!important;
  }
  body.menu-open .menu-item{justify-content:flex-start!important;min-height:52px!important;padding:12px 14px!important;border-radius:12px!important}
  body.menu-open .menu-ico{width:34px!important;flex:0 0 34px!important;font-size:24px!important}
  body.menu-open .menu-label{display:block!important;font-size:17px!important;line-height:1.1!important;text-align:left!important;max-width:none!important;white-space:nowrap!important}
  body.menu-open .menu-item.active:before{left:0!important;top:8px!important;bottom:8px!important;width:4px!important;height:auto!important;right:auto!important}
  body:not(.menu-open) .app-layout{padding-top:10px!important}
}
/* Ajuste pedido: botões de tema um pouco menores */
.theme-icon{width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important;min-height:30px!important;max-height:30px!important;border-radius:9px!important;font-size:16px!important}
/* Ajuste pedido: mostrar temas também no dispositivo móvel */
@media(max-width:900px){
  .efi-topbar{grid-template-columns:1fr!important;align-items:center!important}
  .top-actions{grid-column:1!important;grid-row:auto!important;width:100%;display:flex!important;justify-content:space-between!important;gap:10px!important;flex-wrap:nowrap!important}
  .theme-switcher{display:flex!important;width:auto!important;min-width:0!important;max-width:none!important;justify-content:flex-start!important;gap:6px!important;flex-wrap:nowrap!important}
  .theme-icon{flex:0 0 30px!important;width:30px!important;min-width:30px!important;max-width:30px!important;height:30px!important;min-height:30px!important;max-height:30px!important;font-size:15px!important;border-radius:9px!important}
  .font-controls{gap:5px!important;margin-left:2px!important;padding-left:6px!important}
  .font-btn{flex:0 0 32px!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:30px!important;min-height:30px!important;max-height:30px!important;font-size:12px!important;border-radius:9px!important}
  .efi-menu-btn{min-width:54px!important;padding:0 4px!important}
}
/* Ajuste pedido: no celular esconder temas ao rolar e mostrar no topo */
@media(max-width:900px){
  body.mobile-controls-hidden .theme-switcher{display:none!important}
  body.mobile-controls-hidden .top-actions{justify-content:flex-end!important}
}

/* Comprovantes: pastas por mês/ano e upload pelo computador */
.receipt-form label{display:grid;gap:6px;color:var(--mut);font-weight:800}
.receipt-folders{display:grid;gap:14px}
.receipt-year{display:grid;gap:10px}
.receipt-year h3{margin:4px 0;color:var(--txt)}
.receipt-month{border:1px solid var(--line);border-radius:14px;background:var(--c);overflow:hidden}
.receipt-month summary{cursor:pointer;padding:13px 14px;font-weight:900;color:var(--txt);display:flex;justify-content:space-between;gap:10px;align-items:center}
.receipt-month summary b{background:var(--b);color:var(--btnText,#00111f);border-radius:999px;padding:3px 9px;font-size:.85em}
.receipt-list{display:grid;gap:8px;padding:0 12px 12px}
.receipt-item{display:flex;justify-content:space-between;gap:12px;align-items:center;background:var(--p);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.receipt-item span{min-width:0}.receipt-item b{display:block;overflow-wrap:anywhere}.receipt-item small{display:block;color:var(--mut);margin-top:4px}.receipt-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 12px;border-radius:10px;background:var(--b);color:var(--btnText,#00111f);font-weight:900;text-decoration:none}
@media(max-width:700px){.receipt-item{display:grid;grid-template-columns:1fr}.receipt-actions{justify-content:flex-start}.receipt-actions .button-link,.receipt-actions button{width:100%}}
/* Extrato de saídas */
#tabExtrato table b{color:var(--r)}
#tabExtrato .tag{background:rgba(239,68,68,.14);color:var(--r);border-color:rgba(239,68,68,.25)}
