:root{--blue:#0964B7;--blue2:#0C78D4;--navy:#063B70;--navy2:#052F5A;--bg:#F5F7FA;--surface:#FFFFFF;--line:#d8e1e8;--text:#172033;--muted:#6b7d8b;--warn:#9d6300;--danger:#b42318;--ok:#087443;--shadow:0 8px 24px rgba(16,57,85,.06)}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.45}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:none}h1,h2,h3{color:#122f43}h1{font-size:28px;margin:0}h2{font-size:18px;margin:0 0 12px}h3{font-size:15px}.shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--navy),var(--navy2));color:#fff;padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto}.brand{font-size:21px;font-weight:750;margin:2px 8px 28px;letter-spacing:.1px}.brand span{display:block;font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:#a9c7da;font-weight:600;margin-top:3px}.sidebar a{display:block;color:#dce9f1;padding:10px 12px;border-radius:9px;margin:4px 0;font-size:14px}.sidebar a:hover{background:#ffffff14;color:#fff}.content{padding:26px 30px;min-width:0}.topbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}.identity{text-align:right;font-weight:650;font-size:14px}.identity small{display:block;color:var(--muted);font-weight:400;margin-top:2px}.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:16px;box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics .card{min-height:98px}.metric{font-size:30px;font-weight:760;line-height:1.1;margin-top:7px}.muted{color:var(--muted)}.danger-text{color:var(--danger)!important}.ok-text{color:var(--ok)!important}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.section-head h2{margin:0 0 4px}.section-head p{margin:0;color:var(--muted)}.table-wrap{overflow:auto;width:100%}table{width:100%;border-collapse:collapse;background:#fff;min-width:680px}th,td{padding:11px 10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px;vertical-align:top}th{background:#edf4f8;color:#29485d;font-weight:700;position:sticky;top:0;z-index:1}td small{display:block;color:var(--muted);margin-top:2px}.badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#e8eef3;font-size:11px;white-space:nowrap}.badge.warn{background:#fff1d9;color:var(--warn)}.badge.danger{background:#fee4e2;color:var(--danger)}.badge.ok{background:#dcfae6;color:var(--ok)}label{display:block;font-size:13px;font-weight:650;margin:11px 0 5px}input,select,textarea{width:100%;padding:10px 11px;border:1px solid #b9c8d2;border-radius:9px;background:#fff;color:var(--text);font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid #c8e7fa;border-color:var(--blue2)}textarea{min-height:94px;resize:vertical}.btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:9px;padding:10px 14px;background:var(--blue);color:#fff;cursor:pointer;font-weight:650;font-size:14px;margin-top:12px}.btn:hover{background:#055c9b;color:#fff}.btn.secondary{background:#e8f0f5;color:#19384d}.btn.secondary:hover{background:#dce8ef}.btn.danger{background:#b42318}.btn.full{width:100%}.center{text-align:center}.button-row{display:flex;gap:9px;flex-wrap:wrap}.notice{padding:12px 14px;border-left:4px solid var(--blue);background:#eaf4fb;margin:12px 0;border-radius:5px}.notice.error,.error{border-color:var(--danger);background:#fff0ef}.notice.success{border-color:var(--ok);background:#ecfdf3}.notice.warnbox,.warnbox{border-color:#d58a00;background:#fff8e7}.notice.neutral{border-color:#9eacb6;background:#f3f6f8}.login-wrap{max-width:520px;margin:6vh auto;padding:16px}.login-card{padding:26px}.login-brand{font-size:34px;font-weight:780;line-height:1.12;margin-bottom:24px;color:#12364d}.login-brand small{display:block;font-size:15px;color:var(--muted);font-weight:450;margin-top:9px;line-height:1.45}.login-section h2{font-size:17px;margin-bottom:2px}.separator{display:flex;align-items:center;gap:10px;color:#9aa8b3;margin:20px 0}.separator:before,.separator:after{content:"";height:1px;background:var(--line);flex:1}.separator span{font-size:12px}.kv{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:13px}.kv>div{padding:12px;border:1px solid var(--line);border-radius:10px;background:#fafcfd}.kv span{display:block;color:var(--muted);font-size:12px;margin-bottom:3px}.role-list{display:flex;flex-wrap:wrap;gap:9px}.role-chip{display:inline-flex;flex-direction:column;padding:9px 11px;border-radius:10px;background:#edf5fa;border:1px solid #d6e6f0}.role-chip small{color:var(--muted);margin-top:2px}.check-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.check-list>div:last-child{border-bottom:0}.check-list span{color:var(--muted)}.status-line{display:flex;align-items:center;gap:8px;margin-top:8px}.dot{width:9px;height:9px;border-radius:50%;display:inline-block}.okdot{background:#12a664}.muteddot{background:#9aa9b3}.narrow{max-width:640px}.inline-form{min-width:260px}.inline-form .btn{margin-top:8px}.toggle{display:flex;align-items:center;gap:8px;font-weight:650}.toggle input{width:auto}.upload-form{display:grid;grid-template-columns:1fr 1.6fr auto;gap:12px;align-items:end;margin-bottom:16px;padding:12px;border:1px dashed #c9d7e0;border-radius:10px;background:#fafcfd}.align-end{align-self:end}.hash{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meta{display:inline-block;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}code{font-family:"Cascadia Code",Consolas,monospace;font-size:12px}summary{cursor:pointer;color:var(--blue);font-weight:650}@media(max-width:980px){.grid.two{grid-template-columns:1fr}.upload-form{grid-template-columns:1fr}}@media(max-width:800px){.shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;display:block;padding:12px}.brand{margin:3px 8px 12px}.sidebar a{display:inline-block;margin:2px}.content{padding:16px}.topbar{align-items:flex-start}.identity{display:none}.grid{grid-template-columns:1fr 1fr}.login-wrap{margin:2vh auto}}@media(max-width:520px){.grid{grid-template-columns:1fr}.content{padding:12px}.topbar h1{font-size:23px}.login-brand{font-size:28px}.card{padding:14px}}
.risk-low{border-color:#b7e4c7}.risk-medium{border-color:#ffd166}.risk-high{border-color:#f4a261}.risk-critical{border-color:#ef476f;color:#9c1c35}.sla-on_track{color:var(--ok)}.sla-attention{color:var(--warn)}.sla-at_risk,.sla-overdue{color:var(--danger)}.sla-completed{color:var(--muted)}.filters{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.filters>div{min-width:180px}.inline-form{display:inline-block;margin:2px}.btn.tiny{padding:6px 9px;font-size:12px}.unread-row{background:#f7fbff}.inline-check{display:flex;align-items:center;gap:8px;margin:12px 0}.inline-check input{width:auto;margin:0}
.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px}.pwa-install{margin-top:0}input[type="checkbox"],input[type="radio"]{width:auto}.channel-state{font-size:11px;white-space:nowrap}.pwa-only{display:none}@media(display-mode:standalone){.pwa-only{display:block}.pwa-install{display:none!important}}@media(max-width:800px){.topbar-actions{margin-left:auto}.pwa-install{display:none!important}}
.nav-label{margin:18px 10px 6px;color:#8fb3c9;font-size:10px;font-weight:800;letter-spacing:.9px;text-transform:uppercase}.risk-score{display:inline-flex;font-weight:750}.appetite-within{background:#dcfae6;color:var(--ok)}.appetite-near{background:#fff1d9;color:var(--warn)}.appetite-outside{background:#fee4e2;color:var(--danger)}.severity-low{background:#eaf4fb;color:#225d80}.severity-medium{background:#fff1d9;color:var(--warn)}.severity-high,.severity-critical{background:#fee4e2;color:var(--danger)}.effectiveness-effective{background:#dcfae6;color:var(--ok)}.effectiveness-partially_effective{background:#fff1d9;color:var(--warn)}.effectiveness-ineffective{background:#fee4e2;color:var(--danger)}.confidentiality-restricted,.confidentiality-highly_restricted{background:#f3e8ff;color:#6941c6}.mini-row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}.mini-row:last-child{border-bottom:0}.timeline-item{padding:11px 0 11px 16px;border-left:2px solid #cfe2ee;position:relative}.timeline-item:before{content:"";position:absolute;left:-5px;top:17px;width:8px;height:8px;border-radius:50%;background:var(--blue)}.timeline-item>span{display:block;color:var(--muted);font-size:11px;margin-top:2px}.timeline-item p{margin:5px 0 0}.recommendation{padding:12px 0;border-bottom:1px solid var(--line)}.recommendation:last-child{border-bottom:0}.recommendation p{margin:7px 0}.action-item{padding:16px 0;border-bottom:1px solid var(--line)}.action-item:last-child{border-bottom:0}.action-item small{display:block;color:var(--muted);margin-top:3px}.inline-action-form,.verify-form{margin-top:12px;padding:12px;border:1px dashed #c9d7e0;border-radius:10px;background:#fafcfd}.progress{height:8px;background:#e7edf2;border-radius:999px;overflow:hidden;min-width:120px}.progress span{display:block;height:100%;background:var(--blue);border-radius:inherit}.progress.large{height:12px;margin-top:16px}.sensitive-card{border-left:4px solid #6941c6}hr{border:0;border-top:1px solid var(--line);margin:18px 0}
/* v1.5.4 — Identidade visual & PWA alinhada ao SUPER RH */
.brand-with-logo{display:flex;align-items:center;gap:11px;margin:2px 8px 26px}.brand-with-logo img{width:54px;height:34px;object-fit:contain;object-position:left center;flex:0 0 auto}.brand-with-logo>div{min-width:0}.brand-with-logo strong{display:block;font-size:17px;line-height:1.1;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-with-logo span{margin-top:4px}.login-logo{display:flex;justify-content:center;margin:0 0 16px}.login-logo img{display:block;max-width:180px;max-height:88px;width:auto;height:auto;object-fit:contain}.login-brand{text-align:center}.branding-layout{grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);align-items:start}.branding-layout>aside{min-width:0}.branding-colour-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.branding-colour-grid label{margin:0}.colour-control{display:grid;grid-template-columns:68px 1fr;gap:10px;align-items:center;margin-top:6px}.colour-control input[type=color]{height:44px;padding:4px}.colour-control code{padding:10px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}.branding-preview{height:390px;display:grid;grid-template-columns:31% 69%;padding:0;overflow:hidden;background:var(--preview-bg);color:var(--preview-text)}.branding-preview-sidebar{background:linear-gradient(180deg,var(--preview-sidebar),color-mix(in srgb,var(--preview-sidebar),#000 18%));padding:22px 15px;display:flex;flex-direction:column;gap:15px}.branding-preview-sidebar img{width:100%;height:65px;object-fit:contain}.branding-preview-sidebar span{font-size:.66rem;text-transform:uppercase;color:#fff;opacity:.85}.branding-preview-sidebar i{display:block;height:31px;background:rgba(255,255,255,.09);border-radius:8px}.branding-preview-main{min-width:0;background:var(--preview-bg)}.branding-preview-top{height:66px;background:var(--preview-surface);border-bottom:1px solid rgba(0,0,0,.08);padding:18px;display:flex;justify-content:space-between}.branding-preview-top strong{color:var(--preview-primary);font-size:.78rem}.branding-preview-top span{width:56px;height:25px;border-radius:8px;background:color-mix(in srgb,var(--preview-primary),#fff 88%)}.branding-preview-content{padding:22px}.branding-preview-content h3{font-size:1rem;margin:0 0 18px;color:var(--preview-text)}.branding-preview-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px}.branding-preview-cards div{height:85px;border-radius:12px;background:var(--preview-surface);border:1px solid rgba(0,0,0,.08)}.branding-preview-content button{margin-top:18px;border:0;border-radius:8px;padding:10px 13px;background:var(--preview-primary);color:#fff;font-weight:800}.branding-icon-preview{display:flex;align-items:center;gap:22px}.branding-icon-preview img{width:96px;height:96px;border-radius:20px;object-fit:cover;box-shadow:0 8px 24px rgba(0,0,0,.16)}.branding-icon-preview .maskable{border-radius:50%;background:#eef2f6;padding:8px}.danger-zone{border-color:#efc4c0}.section-head .btn{margin-top:0;white-space:nowrap}@media(max-width:1050px){.branding-layout{grid-template-columns:1fr}}@media(max-width:650px){.branding-colour-grid{grid-template-columns:1fr}.branding-preview{height:330px}.branding-preview-content{padding:14px}.brand-with-logo img{width:46px}}
/* v1.8.0 — Plano Anual, Programa de Monitorização e Testes de Compliance */
.report-check-pass{background:#dcfae6;color:var(--ok)}.report-check-warning{background:#fff1d9;color:var(--warn)}.report-check-fail{background:#fee4e2;color:var(--danger)}.report-check-info{background:#eaf4fb;color:#225d80}.report-progress{min-width:100px;max-width:180px}.report-state{font-size:22px;text-transform:capitalize}.report-form{margin:14px 0;padding:14px;border:1px dashed #c9d7e0;border-radius:10px;background:#fafcfd}.report-form .btn{margin-top:4px}.check-list small{display:block;color:var(--muted);font-weight:400;margin-top:2px;max-width:520px}.report-integrity{font-family:"Cascadia Code",Consolas,monospace;word-break:break-all}

/* v1.9.0 — Fit & Proper, Declarações e Integridade Institucional */
.integrity-criterion{padding:16px 0;border-bottom:1px solid var(--line)}.integrity-criterion:last-child{border-bottom:0}.integrity-criterion small{display:block;color:var(--muted);margin-top:3px}.fit-result-satisfactory{background:#dcfae6;color:var(--ok)}.fit-result-partial{background:#fff1d9;color:var(--warn)}.fit-result-unsatisfactory{background:#fee4e2;color:var(--danger)}.fit-result-not_applicable{background:#eef2f6;color:var(--muted)}.fit-result-pending{background:#eaf4fb;color:#225d80}

/* v1.10.0 — Experiência visual consolidada + BC/FT/P */
html,body{min-height:100%}body{overflow-x:hidden}.shell{grid-template-columns:286px minmax(0,1fr);transition:grid-template-columns .22s ease}.sidebar{padding:0;display:flex;flex-direction:column;overflow:hidden;box-shadow:12px 0 32px rgba(3,29,52,.12);z-index:40}.sidebar-header{position:relative;flex:0 0 auto;padding:18px 16px 14px;border-bottom:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.055)}.sidebar-logo-stage{height:76px;width:100%;display:grid;place-items:center;padding:3px 24px;overflow:hidden}.sidebar-logo-stage img{display:block;max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain;object-position:50% 50%;margin:auto}.sidebar-logo-mark{display:none!important}.sidebar-brand-copy{text-align:center;margin-top:5px;min-width:0}.sidebar-brand-copy strong{display:block;color:#fff;font-size:15px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-brand-copy span{display:block;margin-top:4px;font-size:10px;line-height:1.25;letter-spacing:.085em;text-transform:uppercase;color:#9fc4df;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-collapse-toggle,.sidebar-mobile-close,.mobile-menu-toggle{display:grid;place-items:center;border:0;cursor:pointer}.sidebar-collapse-toggle{position:absolute;right:12px;bottom:-17px;width:34px;height:34px;border:1px solid rgba(255,255,255,.17);border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 6px 18px rgba(0,0,0,.18);z-index:4;transition:transform .2s ease,background .2s ease}.sidebar-collapse-toggle:hover{background:#f1f7fb}.sidebar-collapse-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}.sidebar-mobile-close{display:none}.sidebar-nav{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px 12px 14px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.38) transparent;overscroll-behavior:contain}.sidebar-nav::-webkit-scrollbar{width:8px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.32);border:2px solid transparent;border-radius:999px;background-clip:padding-box}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.55);background-clip:padding-box}.sidebar .nav-label{margin:16px 11px 7px;padding:0;color:#8fb7d3;font-size:9.5px;font-weight:800;letter-spacing:.11em;line-height:1.2}.sidebar .nav-item{position:relative;display:flex;align-items:center;gap:11px;color:#dbe9f3;padding:10px 11px;border-radius:10px;margin:3px 0;font-size:13.5px;line-height:1.25;transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease}.sidebar .nav-item:hover{background:rgba(255,255,255,.09);color:#fff;transform:translateX(2px)}.sidebar .nav-item.active{background:#fff;color:var(--navy);box-shadow:0 8px 20px rgba(2,24,43,.18);font-weight:750}.sidebar .nav-item.active::before{content:"";position:absolute;left:-12px;top:9px;bottom:9px;width:3px;border-radius:999px;background:var(--blue2)}.nav-icon{display:block;width:19px;height:19px;flex:0 0 19px;opacity:.88}.sidebar .nav-item.active .nav-icon{opacity:1;color:var(--blue)}.nav-text{display:block;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-footer{flex:0 0 auto;padding:10px 12px 14px;border-top:1px solid rgba(255,255,255,.11);background:rgba(0,0,0,.075)}.sidebar-footer .nav-item{margin:0}.content{padding:0 30px 32px}.topbar{position:sticky;top:0;z-index:25;margin:0 -30px 22px;padding:18px 30px;background:rgba(245,247,250,.94);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(196,210,220,.78);min-height:78px}.topbar-title{display:flex;align-items:center;gap:12px;min-width:0}.topbar-title h1{font-size:25px;line-height:1.15}.topbar-context{display:block;margin-top:3px;font-size:11px;color:var(--muted);font-weight:650;letter-spacing:.02em}.mobile-menu-toggle{display:none;width:40px;height:40px;border-radius:10px;background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:var(--shadow)}.mobile-menu-toggle svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}.identity{display:flex;align-items:center;gap:9px;text-align:left;padding:7px 10px 7px 8px;border:1px solid rgba(201,214,223,.85);border-radius:12px;background:rgba(255,255,255,.72)}.identity-dot{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--blue2));box-shadow:inset 0 0 0 4px rgba(255,255,255,.78);flex:0 0 auto}.card{border-radius:16px;box-shadow:0 10px 30px rgba(16,57,85,.055)}.btn{transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(9,100,183,.14)}.table-wrap{border-radius:12px;border:1px solid var(--line);background:#fff}.table-wrap table{border:0}.table-wrap th:first-child,.table-wrap td:first-child{padding-left:14px}.table-wrap th:last-child,.table-wrap td:last-child{padding-right:14px}.login-logo{height:116px;display:grid;place-items:center;margin:0 auto 14px;padding:8px 22px;overflow:hidden}.login-logo img{display:block;max-width:min(360px,100%);max-height:100px;width:auto;height:auto;object-fit:contain;object-position:50% 50%;margin:auto}.branding-preview-sidebar{align-items:center}.branding-preview-sidebar img{display:block;width:100%;height:72px;padding:3px 8px;object-fit:contain;object-position:50% 50%;margin:0 auto}.branding-preview-sidebar span{text-align:center;width:100%}.branding-icon-preview img{object-fit:contain;object-position:50% 50%}.branding-logo-current{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 18px}.branding-logo-card{min-height:128px;border:1px solid var(--line);border-radius:12px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:8px}.branding-logo-card.dark{background:linear-gradient(180deg,var(--navy),var(--navy2));border-color:transparent}.branding-logo-frame{height:78px;display:grid;place-items:center;overflow:hidden;padding:4px 16px}.branding-logo-frame img{display:block;max-width:100%;max-height:70px;width:auto;height:auto;object-fit:contain;object-position:50% 50%;margin:auto}.branding-logo-card small{color:var(--muted);text-align:center}.branding-logo-card.dark small{color:#b6d1e4}.sidebar-overlay{display:none}
body.sidebar-collapsed .shell{grid-template-columns:88px minmax(0,1fr)}body.sidebar-collapsed .sidebar-header{padding:17px 10px 14px}body.sidebar-collapsed .sidebar-logo-stage{height:58px;padding:2px}body.sidebar-collapsed .sidebar-logo-full{display:none!important}body.sidebar-collapsed .sidebar-logo-mark{display:block!important;width:48px;height:48px;object-fit:contain}body.sidebar-collapsed .sidebar-brand-copy,body.sidebar-collapsed .sidebar .nav-label{display:none}body.sidebar-collapsed .sidebar-nav{padding:23px 10px 12px}body.sidebar-collapsed .sidebar .nav-item{justify-content:center;gap:0;padding:11px 9px}body.sidebar-collapsed .sidebar .nav-item:hover{transform:none}body.sidebar-collapsed .sidebar .nav-item.active::before{left:-10px}body.sidebar-collapsed .nav-text{display:none}body.sidebar-collapsed .nav-icon{width:21px;height:21px;flex-basis:21px}body.sidebar-collapsed .sidebar-footer{padding:10px}body.sidebar-collapsed .sidebar-collapse-toggle{right:50%;transform:translateX(50%)}body.sidebar-collapsed .sidebar-collapse-toggle svg{transform:rotate(180deg)}body.sidebar-collapsed .sidebar .nav-item:hover::after{content:attr(data-label);position:fixed;left:94px;z-index:90;padding:8px 10px;border-radius:8px;background:#071e32;color:#fff;font-size:12px;font-weight:650;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.24);pointer-events:none}
@media(max-width:900px){.shell{display:block}.sidebar{position:fixed;left:0;top:0;bottom:0;width:286px;height:100dvh;transform:translateX(-105%);transition:transform .22s ease;box-shadow:18px 0 42px rgba(2,21,38,.28)}body.sidebar-mobile-open{overflow:hidden}.sidebar.open{transform:translateX(0)}.sidebar-collapse-toggle{display:none}.sidebar-mobile-close{display:grid;position:absolute;right:9px;top:9px;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);color:#fff;font-size:25px;line-height:1}.sidebar-overlay{display:block;position:fixed;inset:0;z-index:35;background:rgba(4,22,38,.56);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease;border:0}.sidebar-overlay.open{opacity:1;visibility:visible;pointer-events:auto}.mobile-menu-toggle{display:grid}.content{padding:0 18px 26px}.topbar{margin:0 -18px 18px;padding:14px 18px;min-height:68px}.topbar-title h1{font-size:22px}.identity{display:none}body.sidebar-collapsed .shell{display:block}body.sidebar-collapsed .sidebar{width:286px}body.sidebar-collapsed .sidebar-logo-stage{height:76px;padding:3px 24px}body.sidebar-collapsed .sidebar-logo-full{display:block!important}body.sidebar-collapsed .sidebar-logo-mark{display:none!important}body.sidebar-collapsed .sidebar-brand-copy,body.sidebar-collapsed .sidebar .nav-label{display:block}body.sidebar-collapsed .sidebar-nav{padding:24px 12px 14px}body.sidebar-collapsed .sidebar .nav-item{justify-content:flex-start;gap:11px;padding:10px 11px}body.sidebar-collapsed .nav-text{display:block}body.sidebar-collapsed .nav-icon{width:19px;height:19px;flex-basis:19px}body.sidebar-collapsed .sidebar .nav-item:hover::after{display:none}}
@media(max-width:650px){.content{padding:0 12px 20px}.topbar{margin:0 -12px 16px;padding:12px}.topbar-title h1{font-size:20px}.topbar-context{display:none}.branding-logo-current{grid-template-columns:1fr}.login-logo{height:98px;padding-inline:14px}.login-logo img{max-height:84px}.sidebar{width:min(88vw,300px)}}
@media(prefers-reduced-motion:reduce){.shell,.sidebar,.sidebar-collapse-toggle,.sidebar-collapse-toggle svg,.sidebar .nav-item,.btn,.sidebar-overlay{transition:none!important}}

/* v1.10.0 — BC/FT/P */
.metric.compact{font-size:20px;line-height:1.2;margin-top:4px;overflow-wrap:anywhere}.card.inset{box-shadow:none;background:color-mix(in srgb,var(--surface) 92%,var(--blue) 8%);border-left:3px solid var(--blue2);padding:14px}.card.inset h3{margin-top:0}.aml-sensitive{border-left-color:#7a5af8;background:#f6f3ff}.aml-risk-low{color:var(--ok)}.aml-risk-medium{color:var(--warn)}.aml-risk-high,.aml-risk-critical{color:var(--danger)}

/* v1.10.1 — Sino de notificações + Web Push */
.notification-bell-wrap{position:relative;display:flex;align-items:center}.notification-bell{position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(201,214,223,.95);border-radius:12px;background:rgba(255,255,255,.82);color:var(--navy);cursor:pointer;box-shadow:0 6px 18px rgba(16,57,85,.05);transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.notification-bell:hover{background:#fff;transform:translateY(-1px);box-shadow:0 8px 20px rgba(16,57,85,.1)}.notification-bell .nav-icon{width:20px;height:20px}.notification-badge{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#d92d20;color:#fff;border:2px solid #fff;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;line-height:1}.notification-badge.is-empty{display:none}.notification-popover{position:absolute;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 48px rgba(10,42,64,.18);z-index:90;overflow:hidden}.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;border-bottom:1px solid var(--line)}.notification-popover-head span{font-size:11px;color:var(--muted);font-weight:700}.notification-popover-list{max-height:360px;overflow:auto}.notification-popover-item{display:grid;grid-template-columns:10px 1fr;gap:10px;align-items:start;padding:12px 15px;border-bottom:1px solid #edf1f4;color:var(--text)}.notification-popover-item:hover{background:#f7fafc}.notification-popover-item strong{display:block;font-size:12.5px;line-height:1.35;font-weight:650}.notification-popover-item small{display:block;color:var(--muted);font-size:10.5px;margin-top:4px}.notification-popover-dot{width:7px;height:7px;border-radius:50%;background:#c8d5de;margin-top:5px}.notification-popover-item.unread .notification-popover-dot{background:var(--blue)}.notification-popover-item.unread strong{font-weight:800}.notification-popover-all{display:block;padding:12px 15px;text-align:center;font-size:12px;font-weight:750;background:#f8fafc}.notification-popover-empty{padding:22px 15px;text-align:center;color:var(--muted);font-size:12px}.webpush-device-card{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:16px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#f8fbfd}.webpush-device-card>div:first-child{display:flex;flex-direction:column;gap:3px}.webpush-device-card small{color:var(--muted)}.webpush-device-card [data-webpush-state][data-state="ok"]{color:var(--ok);font-weight:700}.webpush-device-card [data-webpush-state][data-state="warn"]{color:var(--warn);font-weight:700}.webpush-device-card [data-webpush-state][data-state="off"]{color:var(--muted)}.webpush-device-card .btn{margin-top:0}
@media(max-width:900px){.notification-bell{width:40px;height:40px}.notification-popover{position:fixed;right:12px;top:72px;width:min(390px,calc(100vw - 24px))}.topbar-actions{gap:8px}}
@media(max-width:650px){.notification-popover{top:64px}.webpush-device-card{align-items:flex-start}.webpush-device-card .button-row{width:100%}.webpush-device-card .btn{flex:1 1 140px}.notification-bell{width:38px;height:38px}}

/* v1.11.0 — Base legal, âmbito e Repositório Legal sectorial */
.legal-context-strip{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:14px;margin:-4px 0 18px;padding:14px 16px;border:1px solid #cedde7;border-radius:15px;background:linear-gradient(135deg,#f8fcff,#fff);box-shadow:0 8px 24px rgba(16,57,85,.045)}.legal-context-scope,.legal-context-basis{min-width:0}.legal-context-basis{padding-left:16px;border-left:1px solid #dbe6ed}.legal-context-kicker,.eyebrow{display:block;color:var(--blue);font-size:10px;font-weight:850;letter-spacing:.8px;text-transform:uppercase;margin-bottom:4px}.legal-context-strip strong{display:block;color:#16384e;font-size:13px}.legal-context-strip p{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.45}.legal-basis-chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 4px}.legal-basis-chip,.legal-basis-more{display:inline-flex;align-items:center;min-height:26px;padding:4px 8px;border-radius:999px;border:1px solid #cfe0ea;background:#edf6fb;color:#235b7d;font-size:10.5px;font-weight:760}.legal-basis-chip:hover{background:#e2f0f8}.legal-basis-validated{border-color:#b7dfc8;background:#edf9f2;color:#087443}.legal-basis-needs_review{border-color:#f0d39b;background:#fff8e9;color:#8a5a00}.legal-basis-superseded,.legal-basis-revoked{border-color:#e5b8b4;background:#fff2f1;color:#a53b32}.legal-basis-more,.muted-chip{color:var(--muted);background:#f2f5f7;border-color:#dce4e9}.legal-context-link{display:inline-flex;margin-top:3px;font-size:11px;font-weight:750}.legal-hero{display:flex;justify-content:space-between;align-items:center;gap:24px;background:linear-gradient(135deg,#f5fbff 0%,#ffffff 68%,#edf7fd 100%);border-color:#cde1ee}.legal-hero h2{font-size:22px;margin:2px 0 6px}.legal-hero p{max-width:820px;color:var(--muted);margin:0}.legal-hero-tags{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.legal-hero-tags span{padding:7px 9px;border-radius:9px;background:#fff;border:1px solid #d7e5ed;color:#34566d;font-size:11px;font-weight:700}.legal-metrics{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.legal-filters>div:first-child{min-width:270px;flex:2}.legal-core{background:#eaf4ff;color:#0a5c9e}.legal-verification-validated{background:#dcfae6;color:var(--ok)}.legal-verification-catalogued{background:#eaf4fb;color:#225d80}.legal-verification-needs_review{background:#fff1d9;color:var(--warn)}.legal-verification-superseded,.legal-verification-revoked{background:#fee4e2;color:var(--danger)}.legal-scope-clamp{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;max-width:430px}.legal-context-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:11px}.legal-context-card{display:flex;flex-direction:column;min-height:148px;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fbfdfe;color:var(--text);transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.legal-context-card:hover{transform:translateY(-1px);border-color:#b8d5e6;box-shadow:0 8px 20px rgba(16,57,85,.06)}.legal-context-card strong{font-size:14px;color:#17394f}.legal-context-card p{color:var(--muted);font-size:12px;line-height:1.45;margin:7px 0;flex:1}.legal-context-card small{color:#778995}.legal-source-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.legal-source-head h2{font-size:23px;margin:2px 0 5px}.legal-source-head p{margin:0;color:var(--muted)}.legal-source-state{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.legal-basis-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line)}.legal-basis-row:last-child{border-bottom:0}.legal-basis-row>div{min-width:0}.legal-basis-row strong,.legal-basis-row span,.legal-basis-row small{display:block}.legal-basis-row span{font-size:12px;color:#334f61;margin-top:2px}.legal-basis-row small{font-size:10.5px;color:var(--muted);margin-top:3px}
@media(max-width:900px){.legal-context-strip{grid-template-columns:1fr}.legal-context-basis{padding-left:0;padding-top:11px;border-left:0;border-top:1px solid #dbe6ed}.legal-hero{align-items:flex-start;flex-direction:column}.legal-hero-tags{justify-content:flex-start}.legal-basis-row{grid-template-columns:1fr auto}.legal-basis-row .inline-form{grid-column:1/-1}}
@media(max-width:560px){.legal-context-strip{padding:12px}.legal-context-grid{grid-template-columns:1fr}.legal-source-head{flex-direction:column}.legal-source-state{justify-content:flex-start}.legal-basis-row{grid-template-columns:1fr}.legal-basis-row>.badge{justify-self:start}}

/* v1.15.0 — Centro de Operações + Supervisão + Pesquisa Global */
.global-search-trigger{height:42px;display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid rgba(201,214,223,.95);border-radius:12px;background:rgba(255,255,255,.82);color:var(--navy);cursor:pointer;box-shadow:0 6px 18px rgba(16,57,85,.04);font:inherit}.global-search-trigger:hover{background:#fff;box-shadow:0 8px 20px rgba(16,57,85,.09)}.global-search-trigger .nav-icon{width:18px;height:18px}.global-search-trigger span{font-size:12px;font-weight:720}.global-search-trigger kbd,.global-search-input-wrap kbd{border:1px solid #d7e1e7;border-bottom-width:2px;border-radius:7px;background:#f6f8fa;color:#667985;font-size:9.5px;font-family:inherit;font-weight:750;padding:3px 6px;white-space:nowrap}
.global-search-backdrop{position:fixed;inset:0;z-index:200;background:rgba(8,29,42,.46);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:9vh 18px 24px}.global-search-dialog{width:min(720px,100%);max-height:min(720px,82vh);display:flex;flex-direction:column;background:#fff;border:1px solid #d5e0e7;border-radius:19px;box-shadow:0 32px 90px rgba(4,28,44,.28);overflow:hidden}.global-search-input-wrap{display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid #e4ebef}.global-search-input-wrap .nav-icon{width:21px;height:21px;color:var(--blue)}.global-search-input-wrap input{border:0!important;outline:0!important;box-shadow:none!important;padding:5px 0!important;font-size:17px;background:transparent!important;min-width:0}.global-search-hint{padding:8px 16px;background:#f8fafb;border-bottom:1px solid #e6edf1;color:#7b8d98;font-size:10.5px}.global-search-results{overflow:auto;min-height:120px;padding:7px}.global-search-result{display:grid;grid-template-columns:112px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid transparent;border-radius:12px;color:var(--text)}.global-search-result:hover,.global-search-result.active{background:#f0f8fd;border-color:#cce1ee}.global-search-type{font-size:10px;font-weight:850;letter-spacing:.45px;text-transform:uppercase;color:var(--blue)}.global-search-copy{min-width:0}.global-search-copy strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-copy small{display:block;margin-top:3px;color:var(--muted);font-size:10.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.global-search-badge{padding:4px 7px;border-radius:999px;background:#eef4f8;color:#4a6575;font-size:9.5px;font-weight:780}.global-search-empty{min-height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:5px;padding:22px;color:var(--muted)}.global-search-empty strong{color:#315064}.global-search-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:130px;color:var(--muted)}.global-search-loading span{width:17px;height:17px;border:2px solid #d7e5ed;border-top-color:var(--blue);border-radius:50%;animation:search-spin .8s linear infinite}@keyframes search-spin{to{transform:rotate(360deg)}}body.global-search-open{overflow:hidden}
.operations-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#f4fbff 0%,#fff 62%,#edf8fd 100%);border-color:#c8deeb}.operations-hero h2{font-size:22px;margin:2px 0 6px}.operations-hero p{margin:0;max-width:850px;color:var(--muted)}.operations-live-state{min-width:160px;display:grid;grid-template-columns:10px 1fr;gap:2px 7px;align-items:center;padding:10px 12px;border:1px solid #cfe2ed;border-radius:12px;background:rgba(255,255,255,.8)}.operations-live-state .live-dot{width:8px;height:8px;border-radius:50%;background:#12b76a;box-shadow:0 0 0 4px rgba(18,183,106,.11)}.operations-live-state span:not(.live-dot){font-size:11px;font-weight:800;color:#31586f}.operations-live-state small{grid-column:2;color:var(--muted);font-size:9.5px}.operations-metrics{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.operation-metric{color:inherit;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.operation-metric:hover{transform:translateY(-1px);border-color:#b9d4e4;box-shadow:0 10px 26px rgba(16,57,85,.08)}.operation-metric small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.danger-card{border-color:#f0c5c0;background:linear-gradient(135deg,#fff7f6,#fff)}.danger-card .metric{color:var(--danger)}
.operation-list{display:flex;flex-direction:column}.operation-row{display:grid;grid-template-columns:8px minmax(0,1fr) 130px 115px;gap:12px;align-items:center;padding:11px 4px;border-bottom:1px solid #e8eef2;color:var(--text)}.operation-row:last-child{border-bottom:0}.operation-row:hover{background:#f8fbfd}.operation-priority{width:6px;height:38px;border-radius:999px;background:#cbd8df}.priority-overdue,.priority-critical{background:#d92d20}.priority-at_risk{background:#f79009}.priority-attention{background:#fdb022}.priority-on_track{background:#12b76a}.operation-main{min-width:0}.operation-main strong{display:block;font-size:12.5px}.operation-main small{display:block;margin-top:3px;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operation-action{font-size:10.5px;font-weight:800;color:#315d77}.operation-due{text-align:right}.operation-due strong{display:block;font-size:10.5px}.operation-due small{display:block;color:var(--muted);font-size:9.5px;margin-top:2px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:130px;text-align:center;color:var(--muted);gap:4px}.empty-state strong{color:#34546a}.operations-filter-grid{display:grid;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(140px,1fr)) auto auto;gap:10px;align-items:end;margin-bottom:12px}.operations-filter-grid label{margin:0}.operations-save-view{margin:8px 0 14px;border:1px dashed #cddce5;border-radius:11px;background:#fbfdfe;padding:8px 10px}.operations-save-view summary{cursor:pointer;font-size:11px;font-weight:780;color:#39617a}.operations-save-view .inline-form{margin-top:9px;align-items:end}.saved-views{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:0 0 12px}.saved-views>span{font-size:10px;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.5px}.saved-view-chip{padding:5px 9px;border:1px solid #d6e2e9;border-radius:999px;background:#f7fafc;color:#486778;font-size:10px;font-weight:720}.saved-view-chip:hover,.saved-view-chip.active{background:#eaf5fb;border-color:#b9d9e9;color:#0a649e}.saved-view-manage{display:flex;flex-direction:column}.saved-view-manage>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.saved-view-manage>div:last-child{border-bottom:0}.saved-view-manage span{min-width:0}.saved-view-manage strong,.saved-view-manage small{display:block}.saved-view-manage small{color:var(--muted);font-size:9.5px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:720px}.operations-table td:first-child{white-space:nowrap}.sla-pill{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:9.5px;font-weight:820;background:#eef3f6;color:#526b7a}.sla-overdue,.sla-critical{background:#fee4e2;color:#b42318}.sla-at_risk{background:#fff1da;color:#b54708}.sla-attention{background:#fff8d9;color:#856404}.sla-on_track{background:#dcfae6;color:#087443}.sla-no_due{background:#f2f4f7;color:#667085}
@media(max-width:1100px){.operations-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operations-filter-grid .btn{align-self:end}.operation-row{grid-template-columns:8px minmax(0,1fr) 100px}.operation-due{grid-column:2/4;text-align:left}.operation-due strong,.operation-due small{display:inline;margin-right:7px}.global-search-trigger span{display:none}}
@media(max-width:700px){.global-search-trigger kbd{display:none}.global-search-trigger{width:38px;height:38px;padding:0;justify-content:center}.global-search-backdrop{padding:0;align-items:stretch}.global-search-dialog{max-height:none;height:100%;border-radius:0;border:0}.global-search-result{grid-template-columns:82px minmax(0,1fr)}.global-search-badge{display:none}.operations-hero{align-items:flex-start;flex-direction:column}.operations-live-state{width:100%}.operations-filter-grid{grid-template-columns:1fr}.operation-row{grid-template-columns:7px minmax(0,1fr)}.operation-action,.operation-due{grid-column:2;text-align:left}.operation-action{margin-top:-6px}.saved-view-manage>div{align-items:flex-start;flex-direction:column}.saved-view-manage form{width:100%}.saved-view-manage .btn{width:100%}}
.global-search-backdrop[hidden]{display:none}
