:root{--nav:#08266f;--nav2:#0c3ab2;--blue:#1c4bd7;--orange:#ff8918;--ink:#12203b;--muted:#66738e;--line:#dce4f0;--bg:#f4f7fb;--card:#fff;--green:#137a53;--yellow:#946100;--red:#bd2e25;--radius:16px;--shadow:0 12px 34px rgba(25,49,105,.08)}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);display:flex;min-height:100vh}button,input,select,textarea{font:inherit}button{touch-action:manipulation}.hidden{display:none!important}
.sidebar{position:fixed;inset:0 auto 0 0;width:242px;background:linear-gradient(180deg,#071d68,#0b2d8d);padding:24px 16px;display:flex;flex-direction:column;color:#fff;z-index:30;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#3a59b3 transparent}.brand{display:flex;align-items:center;padding:2px 6px 24px}.brand-logo{width:154px;height:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.28))}.brand strong,.brand small{display:none}.sidebar nav{display:grid;gap:7px}.nav{border:0;background:transparent;color:#c4d0f5;display:flex;align-items:center;gap:13px;border-radius:11px;padding:13px 14px;font-weight:650;font-size:13px;cursor:pointer;text-align:left;min-height:44px}.nav svg{width:18px;height:18px}.nav:hover,.nav.active{background:#2452d0;color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.12)}.sidebar-footer{margin-top:auto}.sidebar-status{border:1px solid #3a59b3;background:#102f86;border-radius:12px;padding:12px;display:flex;align-items:center;gap:10px}.sidebar-status strong,.sidebar-status small{display:block;font-size:10px}.sidebar-status small{color:#b9c6ef;margin-top:3px}.pulse{width:8px;height:8px;background:#51e5a6;border-radius:50%;box-shadow:0 0 0 5px rgba(82,233,169,.12)}.logout{width:100%;margin-top:8px}.menu-overlay,.mobile-nav{display:none}
/* Telas baixas (notebook, monitor pequeno): menu mais compacto e com rolagem. */
@media(min-width:761px) and (max-height:820px){.sidebar{padding:16px 14px}.brand{padding-bottom:14px}.brand-logo{width:128px}.sidebar nav{gap:3px}.nav{min-height:38px;padding:9px 14px}.sidebar-footer{padding-top:12px}}
main{margin-left:242px;width:calc(100% - 242px)}.topbar{height:86px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;position:sticky;top:0;z-index:20}.topbar h1{font-size:21px;margin:0}.topbar p{font-size:12px;color:var(--muted);margin:5px 0 0}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.freshness{font-size:11px;color:var(--muted)}.icon-button{display:none;border:0;background:none;width:44px;height:44px;border-radius:10px}.page{display:none;padding:24px 28px 42px}.page.active{display:block}
.hero{min-height:222px;background:linear-gradient(125deg,#071e70,#1850dd);border-radius:22px;padding:34px 42px;color:#fff;display:flex;justify-content:space-between;overflow:hidden;position:relative;box-shadow:0 18px 45px rgba(7,26,115,.18)}.hero h2{font-size:32px;line-height:1.13;margin:8px 0 12px;letter-spacing:-1px}.hero h2 em{font-style:normal;color:#ffb25f}.hero p{color:#d4dcfb;font-size:13px;max-width:540px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;color:#9db2fa}.hero-button{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.25);margin-top:10px}.hero-mark{width:250px;display:grid;place-items:center;position:relative}.hero-mark:before,.hero-mark:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.16);border-radius:50%;width:190px;height:190px}.hero-mark:after{width:260px;height:260px}.hero-mark img{position:relative;width:200px;height:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.28))}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.metric-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-20px;bottom:-35px;width:90px;height:90px;border-radius:50%;background:#edf2ff}.metric-card span{display:block;min-height:29px;line-height:1.35;font-size:11px;color:var(--muted);font-weight:600}.metric-card strong{display:block;font-size:28px;margin-top:8px}.metric-icon{position:absolute;right:18px;top:18px;color:var(--blue)}.content-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:19px 20px;border-bottom:1px solid var(--line)}.panel h3{font-size:14px;margin:0}.panel p{font-size:11px;color:var(--muted);margin:5px 0 0}.text-button{border:0;background:none;color:var(--blue);font-weight:700;font-size:11px;display:flex;gap:6px;cursor:pointer;min-height:44px;align-items:center}.text-button svg{width:14px}
.table-wrap{overflow:auto;max-height:calc(100vh - 245px)}table{border-collapse:collapse;width:100%;font-size:11px}th{position:sticky;top:0;background:#f8faff;color:#4a5872;font-size:11.5px;text-transform:uppercase;letter-spacing:.35px;text-align:left;padding:12px;border-bottom:1px solid var(--line);z-index:2}td{padding:11px 12px;border-bottom:1px solid #edf1f7;white-space:nowrap}tbody tr{cursor:pointer}tbody tr:hover{background:#f6f8ff}tbody tr.selected{outline:2px solid #7393ff;outline-offset:-2px}.status-pill{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:10.5px;padding:4px 10px;border-radius:999px}.status-pill:before{content:"";width:6px;height:6px;border-radius:50%;flex:none}.status-pill.pill-critico{background:#fbe4e1;color:var(--red)}.status-pill.pill-critico:before{background:var(--red)}.status-pill.pill-atencao{background:#fff3d8;color:var(--yellow)}.status-pill.pill-atencao:before{background:var(--orange)}.status-pill.pill-normal{background:#e7f8ef;color:var(--green)}.status-pill.pill-normal:before{background:var(--green)}.status-pill.pill-sem-dados{background:#eef2f8;color:var(--muted)}.status-pill.pill-sem-dados:before{background:var(--muted)}.empty-cell,.empty-mini{text-align:center;color:var(--muted);padding:24px}.content-grid>.panel{display:flex;flex-direction:column}.content-grid>.panel>.table-wrap,.content-grid>.panel>.alarm-summary{flex:1 1 auto;min-height:0}.alarm-summary{padding:12px 18px;max-height:calc(100vh - 245px);overflow:auto}.alarm-mini{display:block;width:100%;text-align:left;border:0;border-left:3px solid var(--red);padding:10px 12px;margin:5px 0;background:#fff4f2;border-radius:8px;cursor:pointer}.alarm-mini strong,.alarm-mini small{display:block}.alarm-mini strong{font-size:11px}.alarm-mini small{color:var(--muted);margin-top:4px;font-size:9px}
.button{border:0;border-radius:9px;padding:10px 14px;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;min-height:40px}.button.large{min-height:46px}.button svg{width:15px;height:15px}.button.primary{background:var(--blue);color:#fff}.button.secondary{background:#fff;color:var(--ink);border:1px solid #d7dfed}.button.danger{background:#fff0ef;color:var(--red);border:1px solid #f3c1bd}.button:hover{filter:brightness(.97);transform:translateY(-1px)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.section-toolbar{display:flex;gap:9px;align-items:center;margin-bottom:12px}.search{height:40px;border:1px solid #d7dfed;background:#fff;border-radius:9px;display:flex;align-items:center;padding:0 10px;min-width:240px}.search.grow{flex:1}.search svg{width:15px;color:#8995aa}.search input{border:0;outline:0;width:100%;padding:0 8px;font-size:11px}.clear-input{border:0;background:none;color:#8f9bb0;cursor:pointer;font-size:19px;width:34px;height:34px}.section-toolbar select,.date-control input{height:40px;border:1px solid #d7dfed;background:#fff;border-radius:9px;padding:0 10px;color:var(--ink);font-size:11px}.date-control{font-size:10px;font-weight:700;color:var(--muted);display:flex;align-items:center;gap:7px}.grow{flex:1}.monitor-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin:0 2px 10px}
.agent-health-card{grid-column:span 2}.agent-health-status{display:inline-flex;width:max-content;margin:8px 0 4px;padding:6px 10px;border-radius:999px;background:#eef2f8;color:var(--muted);font-size:11px}.agent-health-status[data-kind="ok"]{background:#e7f8ef;color:#14734a}.agent-health-status[data-kind="attention"]{background:#fff3d8;color:#9a6200}.agent-health-metrics{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:8px;margin-top:14px}.agent-health-metrics span{padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff}.agent-health-metrics small,.agent-health-metrics strong{display:block}.agent-health-metrics small{color:var(--muted);font-size:9px;margin-bottom:5px}.agent-health-metrics strong{font-size:12px}
.split-layout{display:grid;grid-template-columns:minmax(620px,1fr) 330px;gap:14px}.detail-panel,.monitor-detail{min-height:calc(100vh - 175px)}.mobile-close{display:none}.detail-title,.detail-actions,.service-card{margin:18px}.detail-title span,.service-card small{font-size:9px;font-weight:800;color:var(--muted);letter-spacing:.7px}.detail-title h2{margin:5px 0;font-size:20px}.detail-actions,.action-row{display:flex;gap:7px;flex-wrap:wrap}.service-card{border:1px solid var(--line);border-radius:12px;padding:14px;background:#f3f6ff}.service-card strong{display:block;font-size:13px;margin:8px 0 4px}.service-card p{margin-bottom:12px}.inline-note{margin-left:7px;color:var(--muted)}
.monitor-layout{display:grid;grid-template-columns:minmax(680px,1.35fr) minmax(400px,.85fr);gap:14px}.monitor-layout .table-panel{height:calc(100vh - 205px)}.status-critico{background:#fff1ef}.status-atencao{background:#fff8df}.status-normal{background:#ecf9f2}.status-sem-dados{color:#7f8a9d}.tabs{display:flex;border-bottom:1px solid var(--line);padding:0 14px;overflow:auto}.tab{border:0;background:none;padding:13px;color:var(--muted);font-weight:700;font-size:10px;border-bottom:2px solid transparent;cursor:pointer;white-space:nowrap;min-height:44px}.tab.active{color:var(--blue);border-color:var(--blue)}.tabpane{display:none;height:330px;padding:15px}.tabpane.active{display:block}.tabpane#tab-alerts,.tabpane#tab-history,.tabpane#tab-period{height:auto;min-height:330px}.period-chart-wrap{position:relative;height:300px}.range-line{display:flex;align-items:end;gap:6px;flex-wrap:nowrap;overflow-x:auto;margin-bottom:12px}.range-line label{font-size:9px;color:var(--muted);font-weight:700;flex:none}.range-line input{display:block;width:112px;height:38px;border:1px solid var(--line);border-radius:8px;padding:0 7px;margin-top:4px;font-size:10px}.range-line .button,.range-line a{flex:none;white-space:nowrap}.compact{max-height:255px}.alert-list{max-height:265px;overflow:auto}.alert-card{border-left:3px solid var(--orange);background:#fff9f1;border-radius:8px;padding:11px;margin-bottom:8px;white-space:pre-line}.alert-card strong,.alert-card p,.alert-card small{display:block;margin:0 0 5px;font-size:10px}.loading{padding:50px;text-align:center;color:var(--muted)}.empty-state{text-align:center;color:var(--muted);padding:80px 30px}.empty-state svg{width:36px;height:36px;color:#9aabe0}
.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.setting-card{padding:22px}.setting-card>svg{width:28px;color:var(--blue)}.setting-card code{display:block;margin-top:12px;font-size:9px;background:#f3f5f9;padding:10px;border-radius:8px;word-break:break-all}.team-list{margin-top:14px;border-top:1px solid var(--line);padding-top:10px}.team-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 0;font-size:11px}.team-row small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.modal{display:none;position:fixed;inset:0;background:rgba(8,18,55,.5);z-index:80;place-items:center;padding:20px}.modal.open{display:grid}.modal-card{background:#fff;border-radius:16px;width:min(620px,95vw);max-height:90vh;overflow:auto;padding:24px;position:relative;box-shadow:0 30px 90px rgba(0,0,0,.25)}.modal-close{position:absolute;right:12px;top:10px;border:0;background:none;font-size:24px;cursor:pointer;width:40px;height:40px}.modal-card h2{font-size:19px;margin:0 0 18px}.form-stack{display:grid;gap:11px}.form-stack label{font-size:10px;font-weight:700;color:var(--muted)}.form-stack input,.form-stack select,.form-stack textarea{display:block;width:100%;min-height:42px;border:1px solid var(--line);border-radius:8px;padding:9px 10px;font-size:11px;margin-top:5px}.form-stack textarea{height:160px}.muted{color:var(--muted)}
.toasts{position:fixed;right:20px;top:100px;z-index:100;display:grid;gap:8px}.toast{background:#15244a;color:#fff;border-radius:10px;padding:12px 16px;font-size:11px;box-shadow:var(--shadow);animation:slide .25s}.toast.error{background:#b82e26}.toast.ok{background:#147d50}.job-bar{display:none;position:fixed;right:20px;bottom:18px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:13px;width:350px;z-index:70;box-shadow:0 15px 50px rgba(10,30,90,.2)}.job-bar.open{display:block}.job-bar>div:first-child{display:flex;justify-content:space-between;font-size:10px}.progress{height:8px;background:#e7ecf5;border-radius:8px;margin:9px 0;overflow:hidden}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--blue),#57a4ff);transition:width .25s}.skeleton{background:linear-gradient(90deg,#edf1f7 25%,#f7f9fc 50%,#edf1f7 75%);background-size:200% 100%;animation:shimmer 1.2s infinite}.card-skeleton{height:95px;border-radius:15px}.row-skeleton{height:18px;border-radius:6px}.login-screen{position:fixed;inset:0;z-index:200;background:radial-gradient(1100px 760px at 84% -12%,rgba(255,137,24,.20),transparent 60%),radial-gradient(880px 680px at 6% 110%,rgba(37,86,220,.38),transparent 60%),radial-gradient(circle at 70% 22%,#243f9c 0,#0d2472 42%,#060f3c 100%);display:grid;place-items:center;padding:20px}.login-screen:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.055) 1px,transparent 1px);background-size:34px 34px;pointer-events:none}.login-screen.hidden{display:none}.login-card{position:relative;z-index:1;width:min(400px,94vw);background:#fff;border-radius:22px;padding:34px;box-shadow:0 35px 100px rgba(0,0,0,.4);display:grid;gap:12px}.login-brand{display:flex;justify-content:center;margin:2px 0 6px}.login-brand img{width:200px;height:auto}.login-card h1{font-size:26px;margin:0}.login-card p{margin:0 0 8px;color:var(--muted);font-size:12px}.login-card label{font-weight:700;font-size:10px;color:var(--muted)}.login-card input{display:block;width:100%;height:44px;margin-top:5px;border:1px solid var(--line);border-radius:9px;padding:0 11px;font-size:12px}.login-card small{min-height:15px;color:var(--red)}#mfaEnrollment{display:grid;justify-items:center;gap:7px;padding:10px;border:1px solid var(--line);border-radius:12px;background:#f7f9fc}#mfaQrCode{width:180px;height:180px;max-width:100%}#mfaSecret{max-width:100%;overflow-wrap:anywhere;font-size:11px;background:#fff;padding:7px;border-radius:6px}
@keyframes slide{from{transform:translateX(30px);opacity:0}}@keyframes shimmer{to{background-position:-200% 0}}
@media(max-width:1180px){.content-grid,.split-layout,.monitor-layout{grid-template-columns:1fr}.detail-panel,.monitor-detail{min-height:420px}.monitor-layout .table-panel{height:auto;min-height:420px}.section-toolbar{flex-wrap:wrap}.search.grow{flex-basis:100%}.settings-grid{grid-template-columns:1fr}.agent-health-card{grid-column:auto}.agent-health-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body{display:block;padding-bottom:76px}.sidebar{transform:translateX(-105%);transition:.22s;width:270px;box-shadow:20px 0 60px rgba(0,0,0,.2)}body.menu-open .sidebar{transform:translateX(0)}.menu-overlay{display:block;position:fixed;inset:0;background:rgba(5,16,48,.48);opacity:0;visibility:hidden;z-index:25;transition:.2s}body.menu-open .menu-overlay{opacity:1;visibility:visible}main{margin-left:0;width:100%}.icon-button{display:grid;place-items:center;margin-right:9px}.topbar{height:72px;padding:0 12px}.topbar h1{font-size:17px}.topbar p{font-size:10px}.top-actions{gap:6px}.top-actions .freshness,.top-actions .button span{display:none}.top-actions .button{width:42px;padding:0}.page{padding:14px}.hero{min-height:230px;padding:26px 22px;border-radius:18px}.hero h2{font-size:26px}.hero-mark{display:none}.metric-grid{grid-template-columns:1fr 1fr;gap:10px}.metric-card{padding:15px}.metric-card strong{font-size:24px}.content-grid{grid-template-columns:1fr}.section-toolbar{display:grid;grid-template-columns:1fr 1fr;gap:8px}.section-toolbar .search,.section-toolbar .search.grow{grid-column:1/-1;min-width:0;width:100%}.section-toolbar .button{min-height:44px}.monitoring-toolbar .date-control{grid-column:1/-1;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:9px;padding-left:10px}.monitoring-toolbar .date-control input{border:0;flex:1}.monitoring-toolbar select{width:100%;min-width:0}.monitor-meta{display:grid;gap:4px}.split-layout,.monitor-layout{display:block}.table-panel{border:0;box-shadow:none;background:transparent}.table-wrap{overflow:visible;max-height:none}.table-wrap table,.table-wrap tbody{display:block}.table-wrap thead{display:none}.table-wrap tr{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;margin-bottom:10px;padding:8px;box-shadow:var(--shadow)}.table-wrap td{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:8px;border:0;white-space:normal;text-align:right}.table-wrap td:before{content:attr(data-label);font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;text-align:left}.table-wrap td:first-child{font-size:13px;border-bottom:1px solid #edf1f7;padding-bottom:11px}.table-wrap td:first-child:before{display:none}.table-wrap .empty-cell{display:block!important;text-align:center}.detail-panel,.monitor-detail{position:fixed;inset:0;z-index:60;border-radius:0;overflow:auto;transform:translateY(105%);transition:.25s;min-height:100vh;padding-top:env(safe-area-inset-top)}.detail-panel.mobile-open,.monitor-detail.mobile-open{transform:translateY(0)}.mobile-close{display:flex;position:sticky;top:8px;margin:8px 14px 0 auto;z-index:5}.tabs{padding:0 6px}.tabpane{height:340px}.range-line{display:grid;grid-template-columns:1fr 1fr}.range-line label input{width:100%}.range-line .button,.range-line a{grid-column:1/-1}.settings-grid{grid-template-columns:1fr}.mobile-nav{position:fixed;display:flex;left:10px;right:10px;bottom:calc(8px + env(safe-area-inset-bottom));min-height:62px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 16px 45px rgba(13,35,92,.2);z-index:50;padding:5px}.mobile-nav .nav{flex:1 1 0;min-width:0;color:var(--muted);display:flex;flex-direction:column;justify-content:center;gap:3px;padding:4px 2px;font-size:9px;min-height:50px}.mobile-nav .nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.mobile-nav .nav.active{color:#fff}.toasts{top:80px;left:12px;right:12px}.job-bar{left:12px;right:12px;bottom:84px;width:auto}.login-card{padding:28px 22px}.empty-state{padding:55px 24px}}
@media(max-width:390px){.metric-grid{grid-template-columns:1fr}.hero h2{font-size:23px}.section-toolbar{grid-template-columns:1fr}.section-toolbar>*{grid-column:1!important}.monitoring-toolbar .button{width:100%}}
.modal.setup-modal{z-index:220}

.report-group{margin:18px}.report-group h4{margin:0 0 8px;font-size:12px;font-weight:800;color:var(--ink);letter-spacing:.02em}.report-group .table-wrap.compact table td{padding:8px 10px;border-bottom:1px solid var(--line);font-size:12px}.report-group .table-wrap.compact table td:last-child{font-weight:700;color:var(--ink)}.report-note{margin:10px 0 0;font-size:12px;color:var(--muted);line-height:1.5}.calc-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:6px;background:#fff3df;color:#946100;font-size:9px;font-weight:800;vertical-align:middle}

.rep-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px 16px;margin:6px 0 14px}.rep-field{display:flex;flex-direction:column;gap:4px;min-width:0}.rep-field.wide{grid-column:1/-1}.rep-field>span{font-size:10px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.02em}.rep-field input,.rep-field textarea,.rep-field select{border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-size:14px;background:#fff;color:var(--ink);width:100%}.rep-field textarea{resize:vertical;min-height:60px}.rep-field input:focus,.rep-field textarea:focus,.rep-field select:focus{outline:2px solid var(--blue);outline-offset:-1px;border-color:var(--blue)}.rep-field input:disabled{background:#f1f4fb;color:var(--muted);font-weight:700}.rep-calc-head{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin:8px 0 4px}.rep-daily{margin-top:10px}.rep-daily>summary{cursor:pointer;font-size:12px;font-weight:700;color:var(--blue);padding:6px 0}.rep-daily .table-wrap{max-height:280px}.rep-daily table td input{width:120px;border:1px solid var(--line);border-radius:7px;padding:6px 8px;font-size:13px}

/* Reports — página de edição por cliente */
#reports .toolbar-hint{font-size:11px;color:var(--muted);margin-left:auto;align-self:center}
.report-editor{background:var(--card,#fff);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.rep-editor-bar{position:sticky;top:0;z-index:8;display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 16px;background:#f7f9ff;border-bottom:1px solid var(--line)}
.rep-editor-bar .rep-back{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;font-weight:700;font-size:12px;cursor:pointer;min-height:40px}
.rep-editor-bar .rep-back:hover{border-color:var(--blue);color:var(--blue)}
.rep-editor-bar h2{margin:0;font-size:16px;line-height:1.2}
.rep-editor-bar .rep-sub{font-size:11px;color:var(--muted);font-weight:600}
.rep-editor-actions{display:flex;gap:8px;flex-wrap:wrap;margin-left:auto}
.rep-report-picker{display:flex;gap:6px;flex-wrap:wrap;padding:10px 16px;border-bottom:1px solid var(--line);align-items:center}
.rep-report-picker .rep-picker-label{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-right:4px}
.rep-report-picker button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:7px 12px;font-weight:700;font-size:12px;cursor:pointer;min-height:38px}
.rep-report-picker button.active{background:var(--blue);border-color:var(--blue);color:#fff}
.report-editor .report-group{margin:16px}
.report-editor .report-group>h4{padding-bottom:6px;border-bottom:1px solid var(--line)}
/* Aba "Relatório": Unidade Geradora (azul) e Beneficiárias (laranja) bem
   diferentes uma da outra, pra bater o olho e saber qual é qual. */
.rep-gen-card{margin:16px;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:12px;background:#f4f8ff;padding-bottom:14px;overflow:hidden}
.rep-gen-card>h4{margin:0;padding:12px 14px;border-bottom:1px solid #d5e2fb;font-size:13px;font-weight:800;color:var(--nav);background:#e7f0ff;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rep-gen-card>h4 small{color:#5f7bc0;font-weight:700}
.rep-gen-card .rep-grid{margin:12px 14px}
.rep-gen-card>.report-note{margin:10px 14px 0}
.rep-gen-card>.report-note:last-child{margin-bottom:2px}
.rep-ben-card{border:1px solid #f0d3a8;border-left:5px solid var(--orange);border-radius:12px;margin:12px 16px;background:#fff7ec;padding-bottom:14px;overflow:hidden}
.rep-ben-card>h4{margin:0;padding:11px 14px;border-bottom:1px solid #f0d3a8;font-size:13px;font-weight:800;color:#8a4b00;background:#ffe9cf;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rep-ben-card>h4::before{content:"BENEFICIÁRIA";flex:none;font-size:9px;font-weight:800;letter-spacing:.07em;color:#fff;background:var(--orange);padding:3px 8px;border-radius:999px}
.rep-ben-card>h4 small{color:#a9701f;font-weight:700}
.rep-ben-card .rep-grid{margin:12px 14px}
.rep-ben-card>.report-note{margin:10px 14px 0}
.rep-ben-card>.report-note:last-child{margin-bottom:2px}
.rep-hint{font-size:11px;color:var(--muted);margin:0 16px 14px}
.rep-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:10px 16px 0;border-bottom:1px solid var(--line)}
.rep-tab{border:1px solid var(--line);border-bottom:none;background:#f4f6fd;border-radius:9px 9px 0 0;padding:9px 14px;font-weight:700;font-size:12px;cursor:pointer;color:var(--muted);min-height:38px}
.rep-tab:hover{color:var(--blue)}
.rep-tab.active{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:0 2px 0 #fff;position:relative;z-index:1}
.rep-tabpane[hidden]{display:none}
.report-editor.rep-calc-busy .calc-tag{background:var(--blue);color:#fff}
.calc-tag.manual{background:#e3f0ff;color:#1c4fa1}
.report-note:empty{display:none}
.rep-cad-card{border:1px solid var(--line);border-radius:12px;margin:0 0 12px;background:#fbfcff}
.rep-cad-card>h5{margin:0;padding:10px 14px;border-bottom:1px solid var(--line);font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.02em}
.rep-cad-card .rep-grid{margin:12px 14px}
.report-editor .report-group>button.button{margin-top:6px}
.rep-secret{display:flex;gap:6px;align-items:stretch}
.rep-secret input{flex:1}
.rep-reveal{border:1px solid var(--line);background:#fff;border-radius:9px;padding:0 12px;font-size:11px;font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap}
.rep-reveal:hover{border-color:var(--blue);color:var(--blue)}
.rep-section-head{margin:28px 16px 10px;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--ink);display:flex;align-items:center;gap:9px}
.rep-section-head::before{content:"";flex:none;width:4px;height:15px;border-radius:2px;background:var(--orange)}
.rep-unit-table{width:100%;border-collapse:collapse;font-size:12px}
.rep-unit-table th,.rep-unit-table td{border:1px solid var(--line);padding:6px 8px;text-align:left;vertical-align:middle}
.rep-unit-table th{background:#f4f6fd;font-size:11px;text-transform:uppercase;letter-spacing:.02em;color:var(--muted)}
.rep-unit-table td .inline-note{display:block;color:var(--muted);font-weight:600;margin-top:2px}
.rep-unit-table input,.rep-unit-table select{width:100%;min-width:90px;border:1px solid var(--line);border-radius:7px;padding:6px 7px;font-size:12px;background:#fff}
.rep-unit-table input:focus,.rep-unit-table select:focus{outline:none;border-color:var(--blue)}
.button.secondary.danger{color:#b91c1c;border-color:#f0c9c9}
.button.secondary.danger:hover{background:#fdecec}
td.fatura-warn{color:#b45309;font-weight:700}
td.fatura-alert{color:#b91c1c;font-weight:700}
.rep-summary{margin:18px}
.rep-summary .rep-summary-line{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}
.rep-summary .rep-summary-line span:first-child{color:var(--muted);font-weight:600}
.rep-summary .rep-summary-line span:last-child{font-weight:700;text-align:right}
.rep-summary-actions{display:flex;flex-direction:column;gap:8px;margin:16px 18px}
.rep-summary-actions .button{width:100%;justify-content:center}
.rep-report-list{display:flex;flex-direction:column}
.rep-report-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}
.rep-report-row:last-child{border-bottom:0}
.rep-report-row strong{font-size:12px}
.rep-report-row small{display:block;color:var(--muted);font-size:9px;margin-top:2px}
.rep-report-row.is-current strong{color:var(--brand,#2452d0)}
.rep-report-row .button.secondary{padding:5px 11px;font-size:10px}
@media(max-width:560px){.rep-grid{grid-template-columns:1fr}.rep-editor-actions{margin-left:0;width:100%}.rep-editor-actions .button{flex:1}}
#reportsTable thead th[data-sort],#monitorTable thead th[data-sort]{cursor:pointer;user-select:none;white-space:nowrap}
#reportsTable thead th[data-sort]:hover,#monitorTable thead th[data-sort]:hover{color:var(--ink);background:#eef3ff}
#reportsTable thead th .sort-ind,#monitorTable thead th .sort-ind{margin-left:5px;font-size:9px;opacity:.35}
#reportsTable thead th[aria-sort]:not([aria-sort="none"]) .sort-ind,#monitorTable thead th[aria-sort]:not([aria-sort="none"]) .sort-ind{opacity:1;color:var(--brand,#2452d0)}
.status-filter{position:relative}
.status-filter .button.secondary{white-space:nowrap}
.status-filter.has-hidden .button.secondary{border-color:var(--brand,#2452d0);color:var(--brand,#2452d0)}
.status-filter-menu{position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 16px 45px rgba(13,35,92,.18);padding:8px;z-index:40;min-width:210px;display:grid;gap:2px}
.status-filter-menu[hidden]{display:none}
.status-filter-menu .sfm-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:4px 8px 8px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}
.status-filter-menu .sfm-head button{border:0;background:transparent;color:var(--brand,#2452d0);font-weight:700;cursor:pointer;font-size:11px;padding:0}
.status-filter-menu label{display:flex;align-items:center;gap:9px;padding:7px 8px;border-radius:8px;font-size:12px;cursor:pointer;text-transform:none;letter-spacing:0;color:var(--ink)}
.status-filter-menu label:hover{background:#f2f5fd}
.status-filter-menu input{width:15px;height:15px;flex:none}
@media(max-width:760px){.status-filter{grid-column:auto}.status-filter-menu{right:auto;left:0}}
/* Aba "Academia MVU": grade de cartoes com a miniatura do video */
.academia-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:6px 18px 18px}
.academia-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.academia-card.is-off{opacity:.55}
.academia-media{position:relative;aspect-ratio:16/9;background:#0b1c3a;overflow:hidden}
.academia-thumb{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;border:0;background:#0b1c3a;cursor:pointer;overflow:hidden}
.academia-frame{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.academia-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.academia-thumb.no-thumb img{display:none}
.academia-thumb.no-thumb::after{content:"YouTube";position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#9fb4d8;font-size:12px;font-weight:700;letter-spacing:.12em}
.academia-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:52px;height:52px;border-radius:50%;background:rgba(11,28,58,.78);display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none}
.academia-play svg{width:22px;height:22px}
.academia-body{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px}
.academia-body h5{margin:0;font-size:14px;font-weight:800;color:var(--ink);line-height:1.35}
.academia-desc{margin:0;font-size:12px;color:var(--muted);line-height:1.45}
.academia-tag{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:999px;background:#eef2fb;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;vertical-align:middle}
.academia-body .action-row{margin-top:2px}
.academia-body .action-row .button{padding:7px 11px;font-size:11px;min-height:36px}
@media(max-width:760px){.academia-grid{grid-template-columns:1fr;margin:6px 0 18px}}
/* Academia MVU: nivel 1 - categorias (pastas com capa) */
.academia-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:6px 18px 18px}
.academia-cat-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.academia-cat-card.is-off{opacity:.55}
.academia-cat-open{display:flex;flex-direction:column;border:0;background:transparent;padding:0;margin:0;width:100%;cursor:pointer;text-align:left;font:inherit;color:inherit}
.academia-cat-cover{position:relative;display:block;aspect-ratio:16/9;background:linear-gradient(135deg,#0b2a72,#1b4fc4);overflow:hidden}
.academia-cat-cover img{width:100%;height:100%;object-fit:cover;display:block}
.academia-cat-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#cddcff}
.academia-cat-fallback svg{width:34px;height:34px}
.academia-cat-body{display:flex;flex-direction:column;gap:6px;padding:13px 15px 14px}
.academia-cat-body h5{margin:0;font-size:14px;font-weight:800;color:var(--ink);line-height:1.35}
.academia-cat-p{font-size:12px;color:var(--muted);line-height:1.45}
.academia-cat-count{font-size:11px;font-weight:700;color:var(--brand,#2452d0)}
.academia-cat-actions{display:flex;flex-wrap:wrap;gap:6px;padding:0 15px 14px}
.academia-cat-actions .button{padding:6px 10px;font-size:11px;min-height:34px}
.academia-cat-open-title{margin:12px 0 0}
.academia-capa-preview{display:flex;align-items:center;gap:12px}
.academia-capa-preview img{width:120px;height:68px;object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#0b1c3a}
@media(max-width:760px){.academia-cat-grid{grid-template-columns:1fr;margin:6px 0 18px}}
/* Aba "Agendar reuniao": alternador de visao, lista de horarios/regras/reunioes */
.agenda-switch{display:flex;flex-wrap:wrap;gap:8px}
.agenda-switch .button{min-height:38px}
.agenda-switch .button.is-on{background:var(--blue);color:#fff;border-color:var(--blue)}
.agenda-list{display:flex;flex-direction:column;gap:10px;margin-top:4px}
.agenda-day-head{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);margin:12px 0 2px}
.agenda-day-head:first-child{margin-top:0}
.agenda-item{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--card);box-shadow:var(--shadow)}
.agenda-item.is-off{opacity:.55}
.agenda-item-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.agenda-when{font-size:13px;font-weight:800;color:var(--ink)}
.agenda-item-body{margin:8px 0 2px;font-size:12px;color:var(--ink);line-height:1.5}
.agenda-item-body .agenda-sub{color:var(--muted)}
.agenda-item .action-row{margin-top:10px;flex-wrap:wrap;gap:8px}
.agenda-item .action-row .button{padding:7px 11px;font-size:11px;min-height:36px}
.agenda-chip{display:inline-flex;align-items:center;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;padding:3px 9px;border-radius:999px}
.agenda-chip.is-ok{background:#e7f8ef;color:var(--green)}
.agenda-chip.is-info{background:#eaf0fe;color:var(--blue)}
.agenda-chip.is-warn{background:#fff3d8;color:var(--yellow)}
.agenda-chip.is-off{background:#eef2f8;color:var(--muted)}
.agenda-tag{display:inline-flex;align-items:center;font-size:10px;font-weight:700;color:var(--muted);background:#eef2fb;border-radius:999px;padding:3px 9px}

.rep-old-cycle{border:1px solid var(--line);border-radius:8px;padding:6px 10px;margin-bottom:8px}
.rep-old-cycle summary{cursor:pointer;font-size:12px;font-weight:600}
.rep-old-cycle .rep-report-list{margin-top:6px}
.partner-card{grid-column:1/-1}.partner-row{flex-wrap:wrap;align-items:flex-start;border-bottom:1px solid var(--line);padding:10px 0}.partner-row>div:first-of-type{flex:1 1 260px;min-width:0}.partner-logo{width:72px;height:40px;object-fit:contain;flex:0 0 72px;background:#0b2d8d;border-radius:6px;padding:4px}.partner-logo-preview{display:block;max-width:100%;max-height:120px;object-fit:contain;margin:10px 0;background:repeating-conic-gradient(#1b3a8f 0 25%,#0b2d8d 0 50%) 0 0/16px 16px;border:1px solid var(--line);border-radius:8px;padding:8px}.partner-row .action-row a.button{text-decoration:none}
/* Procuração: um cartão numerado por parte (Cliente, Procurador, RT, E-mails). */
#procuracaoForm{display:grid;gap:14px;margin:6px 0 18px}
#procuracaoForm [hidden]{display:none!important}
.proc-card{--proc-accent:var(--blue);background:#fff;border:1px solid var(--line);border-top:4px solid var(--proc-accent);border-radius:14px;box-shadow:var(--shadow);padding:14px 18px 4px}
.proc-card.proc-procurador{--proc-accent:var(--orange)}.proc-card.proc-rt{--proc-accent:var(--green)}.proc-card.proc-emails{--proc-accent:var(--muted)}
.proc-card-head{display:flex;align-items:center;gap:10px;padding-bottom:10px;margin-bottom:8px;border-bottom:1px solid var(--line)}
.proc-card-head>svg{width:20px;height:20px;color:var(--proc-accent);flex:none}
.proc-card-head h4{margin:0;font-size:15px;font-weight:800;color:var(--ink)}.proc-card-head small{display:block;font-size:11px;color:var(--muted);margin-top:1px}
.proc-step{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--proc-accent);color:#fff;font-size:13px;font-weight:800;flex:none}
.proc-body{padding:4px 0 14px}
.proc-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:22px 16px;border:2px dashed #ffd3a6;border-radius:12px;background:#fff9f2}
.proc-empty>svg{width:30px;height:30px;color:var(--orange)}.proc-empty strong{font-size:16px;color:var(--ink)}.proc-empty p{margin:0 0 6px;font-size:12px;color:var(--muted);max-width:340px}
.proc-ficha{display:grid;gap:5px;padding:12px 14px;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:10px;background:#fbfcff;margin-bottom:12px}
.proc-ficha strong{font-size:15px;color:var(--ink)}.proc-ficha span{font-size:13px;color:var(--ink)}.proc-ficha b{font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;margin-right:6px}
.proc-ficha small{font-size:11px;color:#946100;background:#fff3df;border-radius:6px;padding:4px 8px;justify-self:start}
.proc-empresa-select{margin-bottom:10px;max-width:420px}
.proc-editor-title{margin:0 0 4px;font-size:13px;font-weight:800;color:var(--orange)}
.proc-rt-info{display:block;margin:8px 0 12px;font-size:12px;color:var(--muted)}.proc-rt-info:empty{display:none}
.proc-card .action-row{display:flex;flex-wrap:wrap;gap:8px}
.proc-actions{display:flex;justify-content:flex-end;gap:10px;padding:4px 0}
@media(max-width:760px){.proc-card{padding:12px 14px 2px}.proc-card .action-row .button{flex:1 1 auto}.proc-actions{position:sticky;bottom:84px;background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:14px;padding:8px;box-shadow:var(--shadow);z-index:5}.proc-actions .button{flex:1}}
/* Configurações > Empresas parceiras: recursos liberados no portal (chave liga/desliga). */
.portal-switch{display:flex;align-items:center;gap:12px;cursor:pointer}
.portal-switch input{position:absolute;opacity:0;width:1px;height:1px}
.portal-switch-track{flex:none;position:relative;width:42px;height:24px;border-radius:99px;background:#c9d2e3;transition:background .2s}
.portal-switch-track::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.portal-switch input:checked+.portal-switch-track{background:var(--green)}
.portal-switch input:checked+.portal-switch-track::after{transform:translateX(18px)}
.portal-switch input:focus-visible+.portal-switch-track{outline:2px solid var(--blue);outline-offset:2px}
.portal-switch input:disabled+.portal-switch-track{opacity:.55}
.portal-switch b{display:block;font-size:14px;color:var(--ink)}.portal-switch small{display:block;font-size:12px;color:var(--muted)}

/* Lista de inversores no painel de monitoramento: botão "Remover" por plataforma */
.inverter-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.inverter-row .link-button { background: none; border: 0; padding: 2px 0; color: var(--red); font: inherit; font-size: 0.85em; text-decoration: underline; cursor: pointer; }
/* Abas do portal por empresa */
.abas-grid{display:grid;gap:8px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#f8faff}
.abas-grid>strong{font-size:11px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.abas-list{display:grid;gap:8px}
.abas-grid[hidden]{display:none}
.abas-grid .portal-switch{font-weight:400}
.abas-grid .portal-switch input{min-height:0;height:1px;margin:0}
.abas-grid .portal-switch b{font-size:13px}.abas-grid .portal-switch small{font-size:11px}
.aba-chips{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-top:6px}
.aba-chips em{font-style:normal;font-size:9px;font-weight:800;color:var(--muted);text-transform:uppercase;margin-right:2px}
.aba-chip{font-size:9.5px;font-weight:700;padding:2px 8px;border-radius:99px;background:#e8eeff;color:var(--blue)}
.aba-chips-vazio{font-size:9.5px;font-weight:700;color:var(--red)}
.partner-row{cursor:pointer}.partner-row:hover{background:#f8faff}
/* Projetos */
.prazo-tag{display:inline-block;font-size:10px;padding:3px 8px;border-radius:7px;background:#eef2f8;color:var(--muted);white-space:nowrap}
.prazo-tag b{font-weight:800}
.prazo-tag.prazo-ok{background:#e7f8ef;color:var(--green)}
.prazo-tag.prazo-mid{background:#fff3d8;color:var(--yellow)}
.prazo-tag.prazo-bad{background:#fbe4e1;color:var(--red)}
.prazo-tag.prazo-off{text-decoration:line-through;opacity:.75}
.proj-hint{font-size:11px;color:var(--muted);margin:10px 2px 0}
.proj-etapa{border:1px solid var(--line);border-radius:12px;padding:10px 14px 12px;margin:0;display:grid;gap:8px}
.proj-etapa legend{font-size:11px;font-weight:800;color:var(--ink);padding:0 6px}
.proj-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.proj-preview{display:flex;flex-wrap:wrap;gap:6px;font-size:10.5px}
.proj-aviso{margin:0;font-size:11px;color:var(--yellow);background:#fff8e6;border-radius:8px;padding:8px 10px}
.form-stack label.proj-check{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--ink);font-weight:600}
.form-stack label.proj-check input{width:18px;min-height:18px;height:18px;margin:0;flex:none}
.proj-anexos{margin-top:18px;border-top:1px solid var(--line);padding-top:14px}
.proj-anexos h3{font-size:14px;margin:0 0 8px}
.proj-anexo{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:9px 0;border-bottom:1px solid #edf1f7}
.proj-anexo strong{font-size:12px}.proj-anexo small{display:block;color:var(--muted);font-size:10px;margin-top:2px;word-break:break-all}
.proj-anexo label.button{cursor:pointer}
.proj-anexo-dica{font-size:10px;margin:8px 0 0}
@media(max-width:760px){.proj-grid{grid-template-columns:1fr}.prazo-tag{white-space:normal}}
/* Projetos: resumo + cartões */
.proj-resumo{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:14px}
.proj-kpi{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow)}
.proj-kpi>svg{width:34px;height:34px;padding:8px;border-radius:10px;flex:none;background:#e8eeff;color:var(--blue)}
.proj-kpi strong{display:block;font-size:22px;line-height:1}.proj-kpi span{display:block;font-size:11px;color:var(--muted);font-weight:600;margin-top:4px}
.proj-kpi.bad>svg{background:#fbe4e1;color:var(--red)}.proj-kpi.bad strong{color:var(--red)}
.proj-kpi.mid>svg{background:#fff3d8;color:var(--yellow)}.proj-kpi.mid strong{color:var(--yellow)}
.proj-kpi.done>svg{background:#e7f8ef;color:var(--green)}
.proj-kpi.zero.bad strong,.proj-kpi.zero.mid strong{color:var(--ink)}
.proj-lista{display:grid;gap:12px}
.proj-card{background:#fff;border:1px solid var(--line);border-left:5px solid #c9d3e4;border-radius:14px;box-shadow:var(--shadow);cursor:pointer;transition:box-shadow .15s,transform .15s}
.proj-card:hover{box-shadow:0 14px 34px rgba(25,49,105,.14);transform:translateY(-1px)}
.proj-card:focus-visible{outline:3px solid #7393ff;outline-offset:2px}
.proj-card.borda-good{border-left-color:#2fb37a}.proj-card.borda-mid{border-left-color:#f0a52c}.proj-card.borda-bad{border-left-color:var(--red)}.proj-card.borda-done{border-left-color:#9fb0cc}
.proj-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px 6px}
.proj-quem strong{display:block;font-size:16px}
.proj-quem span{display:inline-flex;align-items:center;gap:5px;margin-top:5px;font-size:11px;font-weight:700;color:var(--blue);background:#eef2ff;border-radius:99px;padding:3px 10px}
.proj-quem span svg{width:12px;height:12px}
.proj-destaque{text-align:right;min-width:170px;padding:8px 14px;border-radius:12px;background:#f3f6fb;color:var(--muted)}
.proj-destaque small{display:block;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.4px}
.proj-destaque b{display:block;font-size:26px;line-height:1.1;font-weight:800}
.proj-destaque b em{font-style:normal;font-size:13px;font-weight:700;margin-left:4px}
.proj-destaque span{display:block;font-size:11px;font-weight:600}
.proj-destaque .proj-destaque-extra{font-weight:500;opacity:.85;margin-top:2px}
.proj-destaque.good{background:#e7f8ef;color:var(--green)}
.proj-destaque.mid{background:#fff3d8;color:var(--yellow)}
.proj-destaque.bad{background:#fbe4e1;color:var(--red)}
.proj-destaque.done{display:flex;align-items:center;gap:8px;min-width:0;background:#e7f8ef;color:var(--green)}
.proj-destaque.done b{font-size:15px}.proj-destaque.done svg{width:20px;height:20px}
.proj-steps{list-style:none;margin:0;padding:10px 18px 14px;display:grid;grid-template-columns:1.25fr 1fr .45fr;gap:12px}
.proj-step{display:flex;gap:10px;position:relative;padding:10px 12px;border-radius:11px;background:#f8faff;border:1px solid #edf1f7}
.proj-step.now{background:#f1f5ff;border-color:#c9d6fb}
.proj-step.todo{opacity:.6}
.proj-dot{width:24px;height:24px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:11px;font-weight:800;background:#dfe6f3;color:var(--muted)}
.proj-dot svg{width:14px;height:14px}
.proj-step.now .proj-dot{background:var(--blue);color:#fff}
.proj-step.done .proj-dot{background:#2fb37a;color:#fff}
.proj-step h4{margin:3px 0 4px;font-size:12px}
.proj-proto{margin:0;font-size:12px}.proj-proto b{font-weight:800}
.proj-step small{display:block;color:var(--muted);font-size:10.5px;margin-top:2px}
.proj-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.proj-chip{font-size:10.5px;padding:3px 8px;border-radius:7px;background:#eef2f8;color:var(--muted);white-space:nowrap}
.proj-chip b{font-weight:800}
.proj-chip.ok{background:#e7f8ef;color:var(--green)}.proj-chip.mid{background:#fff3d8;color:var(--yellow)}.proj-chip.bad{background:#fbe4e1;color:var(--red)}
.proj-step.fim h4{margin-top:3px}
.proj-card-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 18px 14px;border-top:1px solid #edf1f7}
.proj-foot-label{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-right:2px}
.proj-file{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border-radius:9px;font-size:11.5px;font-weight:700;border:1px solid #cfdaf3;background:#fff;color:var(--blue);cursor:pointer}
.proj-file svg{width:15px;height:15px}
button.proj-file:hover{background:#eef2ff}
.proj-file.falta{border-style:dashed;border-color:#d7dfed;color:#8a96ab;background:transparent;cursor:default;font-weight:600}
.proj-editar{margin-left:auto;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--muted)}
.proj-editar svg{width:13px;height:13px}
.proj-card:hover .proj-editar{color:var(--blue)}
.proj-vazio{background:#fff;border:1px dashed var(--line);border-radius:14px;padding:34px 20px;text-align:center;color:var(--muted);font-size:13px}
.proj-vazio svg{width:32px;height:32px;color:#9fb0cc}
@media(max-width:1100px){.proj-steps{grid-template-columns:1fr 1fr}.proj-step.fim{display:none}}
@media(max-width:760px){
  .proj-resumo{grid-template-columns:1fr 1fr;gap:8px}
  .proj-kpi{padding:10px 12px}.proj-kpi strong{font-size:18px}
  .proj-card-head{flex-direction:column;align-items:stretch;gap:10px}
  .proj-destaque{text-align:left;min-width:0}
  .proj-steps{grid-template-columns:1fr}
  .proj-editar{display:none}
}
#recoveryNotice{color:#147d50}
