@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Montserrat:wght@500;600;700&display=swap');

:root {
    --senda-dark: #0f1824;
    --senda-main: #3388ff;
    --senda-light: #182434;
    --senda-star: #b8ff00;
    --text-muted: #64748b;
    --text-main: #162233;
    --aeac-blue-dark: #0f1824;
    --fds-opacity-level-3: 0.08;
    --senda-border: #d5dae5;
    --senda-surface: #f4f5f7;
    --acto-bg: #f4f5f7;
    --acto-surface: #ffffff;
    --acto-dark: #0f1824;
    --acto-dark-2: #182434;
    --acto-text: #162233;
    --acto-muted: #64748b;
    --acto-blue: #3388ff;
    --acto-blue-dark: #2374e6;
    --acto-mint: #97d3cb;
    --acto-border: #d5dae5;
    --acto-border-strong: #b0b6cb;
    --acto-shadow: 0 2px 8px rgba(15,24,36,.06);
    --acto-shadow-lg: 0 18px 48px rgba(15,24,36,.15);
}

*, *::before, *::after { box-sizing: border-box; }
html { width: 100%; min-height: 100%; overflow-x: hidden; -webkit-text-size-adjust: 100%; }
body { width: 100%; min-width: 0; min-height: 100%; overflow-x: hidden; }
img, svg, video, canvas { max-width: 100%; }
input, select, textarea, button { max-width: 100%; font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
[x-cloak], .is-hidden { display: none !important; }

/* Fundo institucional animado */
.header-animated {
    position: relative;
    overflow: hidden;
    background-color: var(--senda-dark);
}
.gradientBg {
    position: absolute;
    inset: 0;
    height: 100%;
    overflow: hidden;
    background: var(--aeac-blue-dark);
    z-index: 1;
}
.gradientsContainer { filter: blur(40px); width: 100%; height: 100%; position: absolute; }
.g1, .g2, .g3 {
    position: absolute;
    mix-blend-mode: hard-light;
    width: 90%;
    height: 90%;
    transform-origin: center center;
    border-radius: 50%;
}
.g1 { background: radial-gradient(circle at center, #3388ff 0, rgba(11, 98, 108, 0) 80%) no-repeat; top: 5%; left: 5%; animation: moveG1 30s ease-in-out infinite; }
.g2 { background: radial-gradient(circle at center, #182434 0, rgba(38, 77, 92, 0) 80%) no-repeat; top: calc(5% - 100px); left: calc(5% + 160px); animation: moveG2 30s ease-in infinite; }
.g3 { background: radial-gradient(circle at center, #0f1824 0, rgba(12, 56, 65, 0) 80%) no-repeat; top: calc(5% + 50px); left: calc(5% - 100px); animation: moveG3 30s ease infinite; }
.bgNoise {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background-image: url(https://static.jusbr.com/web/wingman/managed-assets/wingman-jusia-product-noise.png);
    opacity: var(--fds-opacity-level-3);
    z-index: 2;
    pointer-events: none;
}
.header-content { position: relative; z-index: 10; }

@keyframes moveG1 { 0% { transform: translateY(-50%) translateX(-40%) scale(1.7) } 25% { transform: translateY(50%) translateX(-40%) scale(1) } 50% { transform: translateY(-50%) translateX(40%) scale(1) } 75% { transform: translateY(50%) translateX(40%) scale(1.2) } to { transform: translateY(-50%) translateX(-40%) scale(1.7) } }
@keyframes moveG2 { 0% { transform: translateY(-50%) translateX(-40%) scale(1.4) } 25% { transform: translateY(50%) translateX(-40%) scale(1.8) } 50% { transform: translateY(-50%) translateX(40%) scale(1) } 75% { transform: translateY(50%) translateX(-40%) scale(1.8) } to { transform: translateY(-50%) translateX(-40%) scale(1.4) } }
@keyframes moveG3 { 0% { transform: translateY(-50%) translateX(-40%) scale(.8) } 25% { transform: translateY(50%) translateX(-40%) scale(1.1) } 50% { transform: translateY(-50%) translateX(40%) scale(1.4) } 75% { transform: translateY(50%) translateX(40%) scale(1.35) } to { transform: translateY(-50%) translateX(-40%) scale(.8) } }

/* Cabeçalho */
.portal-header { padding: .75rem 2rem; }
.portal-header__logo { height: 2.5rem; width: auto; display: block; }
.portal-header__action {
    min-width: 2.75rem;
    min-height: 2.75rem;
    border-radius: .875rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.profile-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: rgba(15, 23, 42, .65);
    backdrop-filter: blur(8px);
}
.profile-modal-card { width: min(100%, 24rem); max-height: calc(100dvh - 2rem); overflow-y: auto; }

/* Navegação responsiva */
.senda-main-nav { position: relative; z-index: 40; background: var(--senda-surface); color: var(--senda-dark); border-bottom: 1px solid var(--senda-border); box-shadow: 0 5px 15px rgba(12, 56, 65, .06); }
.senda-nav-shell { padding: 0 2rem; }
.senda-nav-menu { display: flex; align-items: stretch; flex-wrap: wrap; gap: .125rem; }
.senda-nav-group { position: relative; }
.nav-link {
    position: relative;
    min-height: 3.5rem;
    padding: 0 1.25rem;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    transition: color .2s ease, background-color .2s ease;
    white-space: nowrap;
}
.nav-link:hover, .nav-link:focus-visible, .nav-link.active { background-color: white; color: var(--senda-main); outline: none; }
.nav-link::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: var(--senda-star);
    transform: scaleX(0);
    transition: transform .2s ease;
}
.nav-link:hover::after, .nav-link:focus-visible::after, .nav-link.active::after { transform: scaleX(1); }
.nav-chevron { transition: transform .2s ease; }
.senda-nav-group.is-open .nav-chevron { transform: rotate(180deg); }
.senda-nav-dropdown {
    position: absolute;
    top: 100%;
    left: 0;
    width: 16rem;
    z-index: 60;
    visibility: hidden;
    opacity: 0;
    transform: translateY(.5rem);
    background: white;
    border: 1px solid #f0f2f3;
    border-radius: 0 0 1rem 1rem;
    box-shadow: 0 18px 35px rgba(12, 56, 65, .14);
    overflow: hidden;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.senda-nav-group:hover > .senda-nav-dropdown,
.senda-nav-group:focus-within > .senda-nav-dropdown,
.senda-nav-group.is-open > .senda-nav-dropdown { visibility: visible; opacity: 1; transform: translateY(0); }
.dropdown-item { display: flex; align-items: center; min-height: 3rem; transition: background-color .18s ease, color .18s ease, padding-left .18s ease; }
.dropdown-item:hover, .dropdown-item:focus-visible { background-color: #f5f8fc; color: var(--senda-main); padding-left: 1.5rem; outline: none; }
.senda-nav-mobile-title { display: none; }

/* Estrutura de página */
.portal-wrapper { display: flex; flex-direction: column; min-height: 100vh; min-height: 100dvh; }
.main-content { flex-grow: 1; min-width: 0; }
.main-content > * { min-width: 0; }
.overflow-x-auto { -webkit-overflow-scrolling: touch; scrollbar-width: thin; }
.table-responsive { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
table { border-collapse: collapse; }
.break-mobile { overflow-wrap: anywhere; word-break: break-word; }

/* Componentes existentes */
.action-card {
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: 0 4px 10px rgba(0,0,0,.1);
    color: white;
    position: relative;
    overflow: hidden;
    min-height: 160px;
}
.gradient-senda-1 { background: linear-gradient(135deg, var(--senda-main) 0%, var(--senda-dark) 100%); }
.gradient-senda-2 { background: linear-gradient(135deg, var(--senda-light) 0%, var(--senda-main) 100%); }
.gradient-senda-3 { background: linear-gradient(135deg, var(--senda-dark) 0%, var(--senda-light) 100%); }
.action-text { z-index: 2; }
.action-text h4 { font-size: 1.1rem; margin-bottom: 4px; font-weight: 700; }
.action-text p { font-size: .75rem; opacity: .9; margin-bottom: 15px; }
.bg-icon { position: absolute; right: -10px; bottom: -10px; font-size: 5rem; opacity: .15; z-index: 1; transform: rotate(-15deg); color: white; }
.btn-action-light { padding: 6px 12px; border-radius: 6px; border: none; cursor: pointer; font-weight: 600; font-size: .8rem; display: inline-flex; align-items: center; gap: 5px; background: rgba(255,255,255,.15); color: white; width: fit-content; transition: .2s; z-index: 2; text-decoration: none; }
.btn-action-light:hover { background: var(--senda-star); color: var(--senda-dark); }
.kpi-card { background: white !important; border-radius: 12px; padding: 20px; display: flex; align-items: center; gap: 15px; box-shadow: 0 2px 5px rgba(0,0,0,.05); border: 1px solid transparent; transition: .2s; }
.kpi-content .label { font-size: .8rem; color: #6b7280; font-weight: 500; display: block; }
.kpi-content .value { font-size: 1.4rem; font-weight: 700; color: #0f1824; margin-top: 2px; display: block; }

/* Login */
.login-page { min-height: 100vh; min-height: 100dvh; background: var(--senda-dark); }
.login-wrapper { position: relative; width: 100%; min-height: 100vh; min-height: 100dvh; overflow: hidden; display: flex; align-items: center; justify-content: center; padding: 1.5rem; }
.login-content { position: relative; z-index: 10; width: min(100%, 68rem); display: grid; grid-template-columns: minmax(0, 1fr) 26rem; gap: 4rem; align-items: center; }
.login-brand-panel { color: white; min-width: 0; }
.login-card { width: 100%; border-radius: 1.75rem; background: rgba(255,255,255,.98); box-shadow: 0 30px 80px rgba(0,0,0,.28); border: 1px solid rgba(255,255,255,.4); padding: 2.25rem; }
.login-input-wrap { position: relative; }
.login-input-icon { position: absolute; left: 1rem; top: 50%; transform: translateY(-50%); color: #9ca3af; pointer-events: none; }
.login-input { width: 100%; min-height: 3.5rem; padding: .85rem 1rem .85rem 2.85rem; border: 1px solid #e5e7eb; border-radius: 1rem; background: #f9fafb; font-weight: 700; color: var(--senda-dark); outline: none; transition: border-color .18s ease, box-shadow .18s ease, background-color .18s ease; }
.login-input.has-action { padding-right: 3.25rem; }
.login-input:focus { border-color: var(--senda-main); box-shadow: 0 0 0 4px rgba(11, 98, 108, .12); background: white; }
.login-password-toggle { position: absolute; right: .6rem; top: 50%; transform: translateY(-50%); width: 2.5rem; height: 2.5rem; border-radius: .75rem; color: #6b7280; }
.login-password-toggle:hover, .login-password-toggle:focus-visible { color: var(--senda-main); background: #eaf3ff; outline: none; }
.login-security-list { display: grid; gap: .75rem; margin-top: 2rem; }
.login-security-item { display: flex; align-items: center; gap: .75rem; color: rgba(255,255,255,.78); font-size: .75rem; font-weight: 700; }
.login-security-icon { width: 2rem; height: 2rem; border-radius: .7rem; display: inline-flex; align-items: center; justify-content: center; background: rgba(255,255,255,.1); color: var(--senda-star); flex: 0 0 auto; }

@media (max-width: 1023px) {
    .portal-header { padding: .65rem 1rem; }
    .portal-header__logo { height: 2.15rem; }
    .senda-nav-shell { padding: 0; }
    .senda-nav-mobile-title { display: flex; align-items: center; justify-content: space-between; min-height: 3rem; padding: 0 1rem; border-bottom: 1px solid var(--senda-border); background: white; }
    .senda-nav-menu { display: none; width: 100%; max-height: calc(100dvh - 7.5rem); overflow-y: auto; padding: .5rem; flex-direction: column; align-items: stretch; flex-wrap: nowrap; gap: .25rem; background: var(--senda-surface); }
    .senda-main-nav.is-open .senda-nav-menu { display: flex; }
    .senda-nav-group { width: 100%; }
    .nav-link { width: 100%; min-height: 3rem; padding: 0 .9rem; justify-content: space-between; border-radius: .75rem; }
    a.nav-link { justify-content: flex-start; }
    .nav-link::after { display: none; }
    .nav-link.active { background: #eaf4f4; }
    .senda-nav-dropdown { position: static; width: 100%; display: none; visibility: visible; opacity: 1; transform: none; margin-top: .25rem; border-radius: .75rem; box-shadow: none; border-color: #e7eeee; }
    .senda-nav-group:hover > .senda-nav-dropdown,
    .senda-nav-group:focus-within > .senda-nav-dropdown { display: none; }
    .senda-nav-group.is-open > .senda-nav-dropdown { display: block; }
    .dropdown-item { min-height: 2.85rem; padding-left: 1rem; padding-right: 1rem; }
    .main-content { padding-left: 1rem !important; padding-right: 1rem !important; }
    .login-content { grid-template-columns: 1fr; gap: 2rem; width: min(100%, 34rem); }
    .login-brand-panel { text-align: center; }
    .login-brand-panel img { margin-left: auto; margin-right: auto; }
    .login-brand-panel h1 { font-size: clamp(2rem, 8vw, 3.5rem); }
    .login-security-list { display: none; }
}

@media (max-width: 639px) {
    .portal-header__user-meta { display: none; }
    .profile-modal-backdrop { align-items: flex-end; padding: .5rem; }
    .profile-modal-card { width: 100%; border-radius: 1.5rem 1.5rem .75rem .75rem !important; max-height: calc(100dvh - 1rem); }
    .main-content { padding-top: 1.25rem !important; padding-bottom: 2rem !important; }
    .login-wrapper { align-items: flex-start; padding: 1rem; overflow-y: auto; }
    .login-content { padding: .5rem 0 1rem; gap: 1.25rem; }
    .login-brand-panel img { height: 2.75rem; margin-bottom: 1.25rem; }
    .login-brand-panel p { font-size: .7rem; }
    .login-card { border-radius: 1.35rem; padding: 1.35rem; }
    .action-card, .kpi-card { min-width: 0; }
    .mobile-stack-actions { width: 100%; flex-direction: column; }
    .mobile-stack-actions > * { width: 100%; justify-content: center; }
}

@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

@media print {
    .portal-header, .senda-main-nav, footer, .no-print { display: none !important; }
    body { background: white !important; overflow: visible; }
    .main-content { max-width: none !important; padding: 0 !important; }
}
@media (min-width: 1024px) {
    .senda-nav-dropdown.right-0 { right: 0; left: auto; }
}
@media (max-width: 1023px) {
    .main-content table { display: block; width: 100%; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    .main-content pre { max-width: 100%; overflow-x: auto; }
    .main-content iframe { max-width: 100%; }
}

/* ACTO Visual System 2026 */
html{background:var(--acto-bg)}
body{color:var(--acto-text);font-family:Inter,Arial,sans-serif}
body:not(.login-page){min-height:100vh;background:var(--acto-bg);font-size:14px;line-height:1.5}
h1,h2,h3,h4,h5,h6{font-family:Montserrat,Inter,Arial,sans-serif}
.acto-container{width:min(100%,1440px);margin:0 auto;padding:0 30px}

/* Cabeçalho compartilhado com os módulos Senda */
.main-header{position:sticky;top:0;z-index:1000;color:#fff;background:var(--acto-dark)}
.header-top{border-bottom:1px solid rgba(255,255,255,.09)}
.header-flex{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.header-brand-group{min-width:0;display:flex;align-items:center;gap:12px}
.brand-area{min-width:0;display:flex;align-items:center;gap:16px;text-decoration:none;color:#fff}
.brand-area img{width:135px;height:auto;max-height:34px;display:block}
.brand-divider{width:1px;height:30px;background:rgba(255,255,255,.17)}
.brand-text{min-width:0;display:flex;flex-direction:column;gap:1px;white-space:nowrap}
.brand-text strong{font:700 20px Montserrat,sans-serif;letter-spacing:.8px;color:var(--acto-blue)}
.brand-text small{font-size:9px;font-weight:600;letter-spacing:.65px;text-transform:uppercase;color:rgba(255,255,255,.58)}
.top-actions{display:flex;align-items:center;gap:14px}
.system-status{display:flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.05);color:rgba(255,255,255,.7);font-size:11px;white-space:nowrap}
.status-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 7px rgba(34,197,94,.9)}
.user-actions{position:relative;display:flex;align-items:center}
.user-profile-summary{display:flex;align-items:center;gap:9px;padding:5px 7px;border:0;border-radius:6px;background:transparent;color:#fff;cursor:pointer;text-align:left}
.user-profile-summary:hover,.user-profile-summary:focus-visible{background:rgba(255,255,255,.07);outline:none}
.avatar{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;background:var(--acto-blue);color:#fff;font-weight:700;overflow:hidden;flex:0 0 auto}
.avatar img{width:100%;height:100%;object-fit:cover}
.user-profile-copy{display:flex;flex-direction:column;max-width:180px;min-width:0}
.user-profile-copy strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-profile-copy small{font-size:10px;color:var(--acto-mint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.user-profile-chevron{font-size:9px;color:rgba(255,255,255,.6)}
.user-dropdown{display:none;position:absolute;right:0;top:48px;width:250px;border:1px solid var(--acto-border);border-radius:8px;background:#fff;color:var(--acto-text);box-shadow:var(--acto-shadow-lg);overflow:hidden;z-index:1200}
.user-dropdown.show{display:block}
.dropdown-header{padding:15px 18px;background:var(--acto-bg);border-bottom:1px solid var(--acto-border);display:flex;flex-direction:column}
.dropdown-header strong{font-size:13px}.dropdown-header span{font-size:11px;color:var(--acto-muted);margin-top:3px}
.user-dropdown a{display:flex;align-items:center;gap:11px;padding:12px 18px;text-decoration:none;font-size:12px;border-bottom:1px solid #eef0f4}
.user-dropdown a i{width:16px;color:var(--acto-blue)}
.user-dropdown a:hover{background:#f8fafc;color:var(--acto-blue)}
.user-dropdown a.logout{color:#b91c1c;border-bottom:0}.user-dropdown a.logout i{color:#b91c1c}
.mobile-menu-btn{display:none;width:40px;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:transparent;color:#fff;cursor:pointer}

/* Navegação */
.senda-main-nav{position:sticky;top:72px;z-index:900;background:#fff;color:var(--acto-text);border-bottom:1px solid rgba(176,182,203,.38);box-shadow:var(--acto-shadow)}
.senda-nav-shell{width:min(100%,1440px);margin:0 auto;padding:0 30px}
.senda-nav-menu{height:52px;display:flex;align-items:stretch;flex-wrap:nowrap;gap:1px}
.senda-nav-group{position:relative;height:100%}
.nav-link{height:100%;min-height:52px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--acto-muted);text-decoration:none;font-size:12px!important;font-weight:600!important;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:7px}
.nav-link>span{display:flex;align-items:center;gap:7px}
.nav-link i:not(.nav-chevron){font-size:12px}
.nav-link:hover,.nav-link:focus-visible,.nav-link.active{color:var(--acto-blue);border-bottom-color:var(--acto-blue);background:#f8fafc;outline:none}
.nav-link::after{display:none!important}
.nav-chevron{margin-left:2px;font-size:8px!important;transition:transform .18s ease}
.senda-nav-group.is-open .nav-chevron{transform:rotate(180deg)}
.senda-nav-dropdown{display:none;visibility:visible;opacity:1;transform:none;position:absolute;left:0;top:52px;width:245px;background:#fff;border:1px solid var(--acto-border);border-top:0;border-radius:0 0 7px 7px;box-shadow:var(--acto-shadow-lg);overflow:hidden;z-index:1100}
.senda-nav-group:hover>.senda-nav-dropdown,.senda-nav-group:focus-within>.senda-nav-dropdown,.senda-nav-group.is-open>.senda-nav-dropdown{display:block;visibility:visible;opacity:1;transform:none}
.dropdown-item{display:flex;align-items:center;gap:7px;min-height:42px;padding:10px 16px!important;border-bottom:1px solid #edf0f4!important;text-decoration:none;font-size:12px!important;color:var(--acto-text);transition:.16s}
.dropdown-item:last-child{border-bottom:0!important}
.dropdown-item i{width:17px!important;color:var(--acto-muted)!important;opacity:1!important}
.dropdown-item:hover,.dropdown-item:focus-visible{padding-left:18px!important;background:#f5f8fc;color:var(--acto-blue);outline:none}
.dropdown-item:hover i{color:var(--acto-blue)!important}
.senda-nav-mobile-title{display:none}

/* Estrutura e tipografia das páginas */
.portal-wrapper{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--acto-bg)!important}
.main-content{flex:1;width:min(100%,1440px)!important;max-width:1440px!important;margin:0 auto!important;padding:32px 30px 48px!important;min-width:0}
.main-content h1{color:var(--acto-text)!important;font-size:26px!important;font-weight:700!important;letter-spacing:-.5px!important;text-transform:none!important}
.main-content h2,.main-content h3{color:var(--acto-text);letter-spacing:-.15px}
.main-content>div:first-child h1,.main-content>section:first-child h1{margin:0}
.main-content p{line-height:1.55}
.main-content .italic{font-style:normal!important}
.main-content .tracking-tighter{letter-spacing:-.4px!important}
.main-content .tracking-widest,.main-content [class*="tracking-["]{letter-spacing:.45px!important}

/* Conversão da paleta antiga para a identidade dos módulos */
[class~="text-[#0f1824]"],[class~="text-[#162233]"]{color:var(--acto-text)!important}
[class~="text-[#3388ff]"]{color:var(--acto-blue)!important}
[class~="bg-[#0f1824]"]{background-color:var(--acto-dark)!important}
[class~="bg-[#3388ff]"]{background-color:var(--acto-blue)!important}
[class~="hover:bg-[#0f1824]"]:hover{background-color:var(--acto-blue-dark)!important}
[class~="hover:bg-[#3388ff]"]:hover{background-color:var(--acto-blue-dark)!important}
[class~="bg-[#eaf3ff]"],[class~="bg-[#eaf3ff]"],[class~="bg-[#f5f8fc]"],[class~="bg-[#f5f8fc]"]{background-color:#eaf3ff!important}
[class~="text-[var(--senda-main)]"]{color:var(--acto-blue)!important}
[class~="bg-[var(--senda-star)]"]{background-color:var(--senda-star)!important}
.gradient-senda-1{background:linear-gradient(135deg,#1e60d4 0%,#104299 100%)!important}
.gradient-senda-2{background:linear-gradient(135deg,#0f1824 0%,#1e293b 100%)!important}
.gradient-senda-3{background:linear-gradient(135deg,#2374e6 0%,#0f1824 100%)!important}

/* Raios, sombras e superfícies */
.rounded-3xl,[class~="rounded-[3rem]"],[class~="rounded-[2.5rem]"],[class~="rounded-[2.4rem]"],[class~="rounded-[2.2rem]"],[class~="rounded-[2rem]"],[class~="rounded-[1.6rem]"],[class~="rounded-[1.5rem]"],[class~="rounded-[1.2rem]"]{border-radius:10px!important}
.rounded-2xl{border-radius:8px!important}.rounded-xl{border-radius:6px!important}.rounded-lg{border-radius:6px!important}
.shadow-sm{box-shadow:var(--acto-shadow)!important}.shadow-md,.shadow-lg,.shadow-xl,.shadow-2xl{box-shadow:0 12px 30px rgba(15,24,36,.10)!important}
.main-content .bg-white.rounded-3xl,.main-content .bg-white.rounded-2xl,.main-content [class~="bg-white"][class~="rounded-[2rem]"],.main-content [class~="bg-white"][class~="rounded-[2.5rem]"],.main-content form.bg-white,.main-content section.bg-white{border-color:rgba(176,182,203,.38)!important;box-shadow:var(--acto-shadow)!important}
.main-content .border-gray-100{border-color:rgba(176,182,203,.38)!important}
.main-content .border-gray-200{border-color:var(--acto-border)!important}

/* Botões e ações */
.main-content a[class~="bg-[#3388ff]"],.main-content button[class~="bg-[#3388ff]"]{background:var(--acto-blue)!important;color:#fff!important}
.main-content a[class~="bg-[#0f1824]"],.main-content button[class~="bg-[#0f1824]"]{background:var(--acto-dark)!important;color:#fff!important}
.main-content a[class*="px-"][class*="py-"][class*="font-black"],.main-content button[class*="px-"][class*="py-"][class*="font-black"]{min-height:40px;border-radius:6px!important;font-size:11px!important;font-weight:600!important;letter-spacing:.35px!important;transition:.18s}
.main-content a[class~="bg-white"][class*="border"],.main-content button[class~="bg-white"][class*="border"]{background:#fff!important;color:var(--acto-text)!important;border-color:var(--acto-border-strong)!important}
.main-content a[class~="bg-white"][class*="border"]:hover,.main-content button[class~="bg-white"][class*="border"]:hover{border-color:var(--acto-blue)!important;color:var(--acto-blue)!important}
.action-card{border-radius:10px!important;box-shadow:var(--acto-shadow)!important;min-height:150px}
.btn-action-light{border-radius:6px!important}

/* Formulários */
.main-content input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.main-content select,.main-content textarea{border:1px solid var(--acto-border)!important;border-radius:6px!important;background:#fff;color:var(--acto-text);box-shadow:none!important;outline:none;transition:border-color .16s,box-shadow .16s}
.main-content input:not([type="checkbox"]):not([type="radio"]):focus,.main-content select:focus,.main-content textarea:focus{border-color:var(--acto-blue)!important;box-shadow:0 0 0 3px rgba(51,136,255,.12)!important}
.main-content label{color:var(--acto-muted)}
.main-content input[type="checkbox"],.main-content input[type="radio"]{accent-color:var(--acto-blue)}

/* Tabelas e listas */
.main-content .overflow-x-auto,.main-content .table-responsive{border-radius:8px}
.main-content table{width:100%;border-collapse:collapse;background:#fff}
.main-content thead{background:#f8fafc!important}
.main-content th{padding:12px 14px!important;border-bottom:1px solid var(--acto-border)!important;color:var(--acto-muted)!important;font-size:10px!important;font-weight:600!important;letter-spacing:.45px!important;text-transform:uppercase;text-align:left}
.main-content td{padding:12px 14px!important;border-bottom:1px solid #edf0f4!important;color:var(--acto-text);font-size:12px;vertical-align:middle}
.main-content tbody tr:hover{background:#f8fafc}
.main-content tbody tr:last-child td{border-bottom:0!important}

/* Indicadores, alertas e cartões */
.kpi-card{padding:20px!important;border:1px solid rgba(176,182,203,.36)!important;border-radius:8px!important;background:#fff!important;box-shadow:var(--acto-shadow)!important}
.kpi-content .label{font-size:10px!important;text-transform:uppercase;letter-spacing:.5px;color:var(--acto-muted)!important;font-weight:600!important}
.kpi-content .value{font-size:23px!important;color:var(--acto-text)!important}
.main-content [class*="bg-red-50"][class*="border-red"],.main-content [class*="bg-rose-50"][class*="border-rose"]{border-radius:7px!important}
.main-content [class*="bg-emerald-50"][class*="border-emerald"],.main-content [class*="bg-blue-50"][class*="border-blue"],.main-content [class*="bg-amber-50"][class*="border-amber"]{border-radius:7px!important}

/* Rodapé */
.main-footer{margin-top:auto;padding:16px 0;background:var(--acto-dark);color:#fff;border:0}
.footer-layout{display:flex;align-items:center;justify-content:space-between;gap:24px}
.footer-brand,.footer-system{display:flex;align-items:center;gap:10px}
.senda-footer-logo{width:72px;max-height:24px;opacity:.66}
.footer-brand span{color:rgba(255,255,255,.5);font-size:9px}
.footer-system{justify-content:flex-end;flex-wrap:wrap;text-align:right}
.footer-system strong{color:rgba(255,255,255,.76);font-size:10px}
.footer-system>span{color:rgba(255,255,255,.5);font-size:10px}
.footer-system small{flex-basis:100%;color:rgba(255,255,255,.42);font-size:9px}

/* Login alinhado ao RISK e ao Circular */
.login-page{min-height:100vh;background:var(--acto-dark);font-family:Inter,Arial,sans-serif}
.login-wrapper{position:relative;width:100%;min-height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:36px 30px}
.login-wrapper .gradientBg{background:linear-gradient(135deg,#0f1824 0%,#182434 62%,#10263a 100%)}
.login-wrapper .gradientsContainer{filter:blur(70px);opacity:.45}
.login-wrapper .g1{background:radial-gradient(circle at center,rgba(51,136,255,.55) 0,rgba(51,136,255,0) 72%)}
.login-wrapper .g2{background:radial-gradient(circle at center,rgba(151,211,203,.30) 0,rgba(151,211,203,0) 72%)}
.login-wrapper .g3{background:radial-gradient(circle at center,rgba(184,255,0,.12) 0,rgba(184,255,0,0) 72%)}
.login-content{position:relative;z-index:10;width:min(100%,1180px);display:grid;grid-template-columns:minmax(0,1.35fr) 410px;gap:72px;align-items:center}
.login-brand-panel{color:#fff;min-width:0}
.login-brand-panel>img{width:148px;height:auto;margin-bottom:38px!important}
.login-brand-panel h1{margin:0;font:700 clamp(38px,5vw,58px)/1.04 Montserrat,sans-serif!important;letter-spacing:-1.5px!important;text-transform:none!important}
.login-brand-panel h1 span{color:var(--acto-blue)!important}
.login-brand-panel>p:not(:first-of-type){max-width:650px;color:rgba(255,255,255,.70)!important;font-size:14px!important;font-weight:400!important;line-height:1.65}
.login-security-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}
.login-security-item{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.10);border-radius:8px;background:rgba(255,255,255,.045);color:rgba(255,255,255,.70);font-size:10px;font-weight:500;line-height:1.45}
.login-security-icon{width:34px;height:34px;border-radius:6px;background:rgba(51,136,255,.15);color:#7db5ff}
.login-card{width:100%;padding:30px!important;border:1px solid rgba(213,218,229,.7)!important;border-radius:12px!important;background:#fff!important;box-shadow:0 24px 70px rgba(0,0,0,.28)!important;color:var(--acto-text)}
.login-card h2{font:700 22px Montserrat,sans-serif!important;color:var(--acto-text)!important}
.login-card .login-input{min-height:48px;padding:11px 42px;border:1px solid var(--acto-border)!important;border-radius:6px!important;background:#fff;font-size:13px;font-weight:500;color:var(--acto-text)}
.login-card .login-input:focus{border-color:var(--acto-blue)!important;box-shadow:0 0 0 3px rgba(51,136,255,.12)!important}
.login-card .login-input-icon{color:#94a3b8}
.login-card .login-password-toggle{border-radius:6px;color:#64748b}
.login-card button[type="submit"]{min-height:48px!important;border:0!important;border-radius:6px!important;background:var(--acto-blue)!important;color:#fff!important;box-shadow:none!important;font-size:11px!important;font-weight:600!important;letter-spacing:.6px!important}
.login-card button[type="submit"]:hover{background:var(--acto-blue-dark)!important}
.login-card a{color:var(--acto-blue)!important}

@media(max-width:1100px){
  .system-status{display:none}
  .senda-nav-shell{padding:0 18px}
  .nav-link{padding:0 10px}
  .login-content{gap:38px;grid-template-columns:minmax(0,1fr) 390px}
  .login-security-list{grid-template-columns:1fr}
}
@media(max-width:1023px){
  .acto-container{padding:0 18px}
  .header-flex{min-height:64px}
  .mobile-menu-btn{display:inline-grid;place-items:center;flex:0 0 auto}
  .brand-area{gap:11px}.brand-area img{width:118px}.brand-divider{height:26px}.brand-text strong{font-size:17px}
  .senda-main-nav{position:fixed;top:0;bottom:0;left:0;width:min(88vw,360px);height:100dvh;z-index:1300;transform:translateX(-105%);transition:transform .22s ease;background:#fff;box-shadow:24px 0 60px rgba(15,24,36,.25);overflow-y:auto}
  .senda-main-nav.is-open{transform:translateX(0)}
  .senda-nav-mobile-title{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding:0 18px;border-bottom:1px solid var(--acto-border);background:var(--acto-dark);color:#fff}
  .senda-nav-mobile-title span{color:rgba(255,255,255,.65)!important}
  .senda-nav-mobile-title button{color:#fff!important;background:rgba(255,255,255,.06)!important;border-radius:6px!important}
  .senda-nav-shell{padding:8px;width:100%}
  .senda-nav-menu{height:auto;display:flex!important;max-height:none;overflow:visible;flex-direction:column;align-items:stretch;gap:3px;background:#fff;padding:0}
  .senda-nav-group{width:100%;height:auto}
  .nav-link{width:100%;min-height:44px;height:auto;padding:0 12px;border:0;border-radius:6px;justify-content:space-between}
  a.nav-link{justify-content:flex-start}
  .nav-link.active{background:#eaf3ff;color:var(--acto-blue)}
  .senda-nav-dropdown{position:static;width:100%;display:none;margin:3px 0 7px;border:1px solid var(--acto-border);border-radius:6px;box-shadow:none}
  .senda-nav-group:hover>.senda-nav-dropdown,.senda-nav-group:focus-within>.senda-nav-dropdown{display:none}
  .senda-nav-group.is-open>.senda-nav-dropdown{display:block}
  .main-content{padding:24px 18px 40px!important}
  .login-wrapper{padding:28px 20px;overflow-y:auto}
  .login-content{grid-template-columns:1fr;gap:28px;width:min(100%,620px)}
  .login-brand-panel{text-align:center}.login-brand-panel>img{margin-left:auto;margin-right:auto}
  .login-brand-panel>p:not(:first-of-type){margin-left:auto;margin-right:auto}
  .login-security-list{display:none}
}
@media(max-width:680px){
  .acto-container{padding:0 14px}
  .user-profile-copy,.user-profile-chevron{display:none}
  .brand-text small{display:none}
  .header-flex{gap:10px}.top-actions{gap:6px}
  .main-content{padding:20px 14px 32px!important}
  .main-content h1{font-size:22px!important}
  .main-content>div:first-child,.main-content>section:first-child{gap:14px}
  .footer-layout{flex-direction:column;align-items:flex-start;gap:9px}
  .footer-system{justify-content:flex-start;text-align:left}.footer-system small{line-height:1.4}
  .login-wrapper{align-items:flex-start;padding:20px 14px}
  .login-content{gap:18px}
  .login-brand-panel>img{width:125px;margin-bottom:20px!important}
  .login-brand-panel h1{font-size:32px!important}
  .login-brand-panel>p:not(:first-of-type){font-size:12px!important;margin-top:14px!important}
  .login-brand-panel>p:first-of-type{margin-bottom:14px!important}
  .login-card{padding:22px!important}
  .main-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media(prefers-reduced-motion:reduce){.login-wrapper .g1,.login-wrapper .g2,.login-wrapper .g3{animation:none!important}}
@media print{.main-header,.senda-main-nav,.main-footer{display:none!important}.main-content{max-width:none!important;padding:0!important}}

/* ACTO · Central de notificações */
.header-notification-link{position:relative;width:40px;height:40px;border:1px solid rgba(255,255,255,.12);border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#d8e1ec;text-decoration:none;transition:.2s ease}.header-notification-link:hover{background:rgba(255,255,255,.08);color:#fff}.header-notification-count{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#3388ff;color:#fff;border:2px solid #0f1824;font-size:9px;font-weight:900;display:flex;align-items:center;justify-content:center}.top-actions{gap:10px}@media(max-width:760px){.system-status{display:none}.header-notification-link{width:38px;height:38px}}
