:root{
  --caj-navy:#003B5C; --caj-blue:#006E9F; --caj-cyan:#00A6B2; --caj-light:#EEF7F9;
  --bg:#F5F7F9; --card:#FFFFFF; --text:#1F2937; --muted:#667085; --line:#D9E2E8;
  --green:#17835F; --green-bg:#E9F7F1; --amber:#B66A00; --amber-bg:#FFF5E2;
  --red:#B42318; --red-bg:#FDEDEC; --blue-bg:#EAF4F9; --shadow:0 10px 26px rgba(0,59,92,.08);
  --cco:#D58B10; --cco-soft:#FFF5DE; --cco-line:#F0C46B;
  --gsc:#00A6B2; --gsc-soft:#E8F8FA; --gsc-line:#8DD9DE;
  --intel:#6658C8; --intel-soft:#F0EEFF; --intel-line:#C9C3F3;
  --admin:#3D6D9C; --admin-soft:#EDF4FB; --admin-line:#B9D0E5;
  --success-soft:#EAF8F1; --danger-soft:#FFF0EE;
}
*{box-sizing:border-box} body{margin:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Arial,sans-serif}
button,input,select{font:inherit}.topbar{background:var(--caj-navy);color:#fff;min-height:78px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;box-shadow:0 2px 12px rgba(0,0,0,.12)}
.brand{display:flex;align-items:center;gap:14px}.drop{width:40px;height:48px;display:grid;place-items:center}.brand h1{font-size:20px;margin:0;font-weight:700;letter-spacing:.2px}.brand p{margin:3px 0 0;color:#CFE6F0;font-size:12px}
.top-actions{display:flex;align-items:center;gap:10px}.file-input{display:none}.btn{border:0;border-radius:9px;padding:10px 14px;font-weight:650;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:7px}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--caj-cyan);color:#fff}.btn-light{background:#fff;color:var(--caj-navy)}.btn-outline{background:transparent;color:var(--caj-navy);border:1px solid #B9CDD8}.btn-danger{background:var(--red-bg);color:var(--red);border:1px solid #F6C7C3}.btn-sm{padding:7px 10px;font-size:12px}
.shell{max-width:1540px;margin:0 auto;padding:22px 26px 40px}.notice{display:flex;gap:13px;align-items:flex-start;padding:14px 16px;background:#FFF8E7;border:1px solid #F1D18B;border-left:5px solid #E09A17;border-radius:10px;margin-bottom:18px}.notice strong{color:#7A4C00}.notice p{margin:3px 0 0;font-size:13px;color:#6C531F;line-height:1.4}
.tabs{display:flex;gap:7px;flex-wrap:wrap;background:#fff;padding:7px;border:1px solid var(--line);border-radius:12px;box-shadow:0 4px 15px rgba(0,59,92,.04);margin-bottom:18px}.tab{border:0;background:transparent;color:#52616B;padding:10px 14px;border-radius:8px;font-weight:650;cursor:pointer}.tab.active{background:var(--caj-navy);color:#fff}
.panel{display:none}.panel.active{display:block}.section-head{display:flex;justify-content:space-between;align-items:end;gap:18px;margin:4px 0 14px}.section-head h2{margin:0;font-size:20px;color:var(--caj-navy)}.section-head p{margin:4px 0 0;font-size:13px;color:var(--muted)}
.kpis{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:14px;margin-bottom:16px}.kpi{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.kpi .label{font-size:12px;color:var(--muted);font-weight:650}.kpi .value{font-size:29px;font-weight:760;color:var(--caj-navy);margin-top:8px}.kpi .sub{font-size:11px;color:#7B8790;margin-top:5px}
.grid-2{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.card{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:16px}.card h3{margin:0 0 12px;font-size:15px;color:var(--caj-navy)}
.alert-list{display:grid;gap:9px}.alert-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:9px;background:#F8FAFB;border:1px solid #E6EDF1}.alert-row .a-title{font-size:13px;font-weight:650}.alert-row .a-sub{font-size:11px;color:var(--muted);margin-top:2px}.badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:700}.b-green{background:var(--green-bg);color:var(--green)}.b-amber{background:var(--amber-bg);color:var(--amber)}.b-red{background:var(--red-bg);color:var(--red)}.b-blue{background:var(--blue-bg);color:var(--caj-blue)}.b-gray{background:#EEF1F3;color:#5F6C74}
.toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:12px;align-items:center}.input,.select{border:1px solid #C9D6DD;background:#fff;border-radius:8px;padding:9px 10px;color:var(--text);outline:none}.input:focus,.select:focus{border-color:var(--caj-cyan);box-shadow:0 0 0 3px rgba(0,166,178,.12)}.input.search{min-width:280px;flex:1}.summary-pill{margin-left:auto;background:#EEF7F9;color:var(--caj-navy);border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700}
.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);max-height:650px}table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px}th{position:sticky;top:0;z-index:2;background:#EAF3F7;color:#23475A;text-align:left;padding:10px 9px;border-bottom:1px solid #C9D9E2;font-size:11px;text-transform:uppercase;letter-spacing:.25px;white-space:nowrap}td{padding:9px;border-bottom:1px solid #EDF1F3;vertical-align:middle}tr:hover td{background:#FAFCFD}tr.row-green td{background:#F1FBF6}.td-local{min-width:290px;max-width:390px;line-height:1.3}.td-small{white-space:nowrap}.cell-note{font-size:10px;color:var(--muted);margin-top:4px;max-width:240px}.lig-input{width:112px;padding:6px 7px;border:1px solid #CDD8DE;border-radius:6px}.type-select{max-width:118px;padding:6px;border:1px solid #CDD8DE;border-radius:6px;background:#fff}
.group-list{display:grid;gap:12px}.group-card{background:#fff;border:1px solid var(--line);border-left:5px solid var(--caj-blue);border-radius:12px;padding:15px;box-shadow:var(--shadow)}.group-top{display:grid;grid-template-columns:90px 1fr 125px 120px 210px auto;gap:12px;align-items:center}.group-id{font-weight:800;color:var(--caj-navy);font-size:16px}.group-meta{font-size:12px;color:var(--muted)}.group-meta strong{display:block;color:var(--text);font-size:13px;margin-bottom:2px}.protocols{margin-top:11px;padding-top:10px;border-top:1px dashed #D7E1E6;font-size:11px;color:#5D6972;line-height:1.6}.os-input{width:100%;padding:8px;border:1px solid #C8D5DB;border-radius:7px}.group-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.coringa-grid{display:grid;grid-template-columns:repeat(2,minmax(360px,1fr));gap:12px}.coringa-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:var(--shadow)}.coringa-head{display:flex;justify-content:space-between;gap:12px}.coringa-number{font-weight:800;color:var(--caj-navy)}.meter{height:9px;border-radius:999px;background:#E8EEF2;overflow:hidden;margin:12px 0 8px}.meter > span{display:block;height:100%;background:var(--caj-cyan);border-radius:999px}.meter.over > span{background:#D84A3D}.coringa-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:11px}.coringa-values strong{display:block;font-size:15px;color:var(--caj-navy);margin-top:2px}.used-input{width:80px;padding:5px;border:1px solid #CAD7DE;border-radius:6px}
.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(360px,1fr));gap:16px}.chart-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.chart-card h3{margin:0;font-size:15px;color:var(--caj-navy)}.chart-card .desc{font-size:11px;color:var(--muted);margin:4px 0 15px}.bars{display:grid;gap:11px}.bar-row{display:grid;grid-template-columns:140px 1fr 65px;gap:9px;align-items:center;font-size:11px}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:12px;background:#EDF2F5;border-radius:999px;overflow:hidden}.bar-fill{height:100%;background:linear-gradient(90deg,var(--caj-blue),var(--caj-cyan));border-radius:999px;min-width:2px}.bar-value{text-align:right;font-weight:700;color:#3E5664}.big-span{grid-column:1/-1}
.empty{padding:34px 20px;text-align:center;color:var(--muted);background:#fff;border:1px dashed #C9D5DB;border-radius:12px}.empty strong{display:block;color:var(--caj-navy);margin-bottom:5px}.footer{font-size:11px;color:#7B8790;text-align:center;margin-top:20px}.muted{color:var(--muted)}
.modal-back{display:none;position:fixed;inset:0;background:rgba(4,24,35,.55);z-index:50;align-items:center;justify-content:center;padding:20px}.modal-back.show{display:flex}.modal{background:#fff;width:min(620px,100%);border-radius:14px;box-shadow:0 30px 80px rgba(0,0,0,.25);padding:20px}.modal h3{margin:0;color:var(--caj-navy)}.modal p{font-size:13px;color:var(--muted);line-height:1.45}.modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:15px 0}.modal-stat{background:#F3F7F9;border-radius:9px;padding:11px}.modal-stat span{display:block;color:var(--muted);font-size:10px}.modal-stat strong{display:block;color:var(--caj-navy);font-size:18px;margin-top:4px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.modal-error{display:none;background:var(--red-bg);color:var(--red);padding:10px;border-radius:8px;font-size:12px;margin-top:10px}.modal-error.show{display:block}.toast{position:fixed;right:22px;bottom:22px;background:#123B4D;color:#fff;padding:11px 14px;border-radius:9px;box-shadow:0 12px 30px rgba(0,0,0,.22);font-size:12px;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;z-index:80}.toast.show{opacity:1;transform:translateY(0)}
.brand-logo{display:flex;align-items:center;justify-content:center;background:transparent}.brand-logo img{height:52px;width:auto;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.10));background:transparent}.info-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:16px}.step-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.step-card h3{margin:0 0 10px;color:var(--caj-navy);font-size:16px}.step-card ol,.step-card ul{margin:0;padding-left:18px;font-size:13px;line-height:1.6;color:#334155}.step-card li+li{margin-top:6px}.inline-note{margin-top:10px;padding:11px 12px;border-radius:9px;background:#F7FAFC;border:1px solid #E2E8F0;font-size:12px;color:#475569}.report-box{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:var(--shadow)}.report-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;padding:16px 18px;border-radius:14px;background:linear-gradient(135deg,#EAF7FA 0%,#F4FBFD 55%,#FFFFFF 100%);border:1px solid #D9EEF2}.report-banner h3{margin:0;color:var(--caj-navy);font-size:18px}.report-banner p{margin:5px 0 0;font-size:13px;color:#4A6572;line-height:1.5}.report-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:#fff;color:var(--caj-navy);border:1px solid #D5E5EC;font-size:12px;font-weight:700;white-space:nowrap}.report-topcards{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:12px;margin-bottom:16px}.report-stat{position:relative;overflow:hidden;border-radius:15px;padding:16px 16px 14px;color:#fff;box-shadow:0 14px 28px rgba(0,59,92,.10)}.report-stat::after{content:"";position:absolute;right:-18px;top:-18px;width:78px;height:78px;border-radius:50%;background:rgba(255,255,255,.16)}.report-stat span{display:block;font-size:12px;opacity:.94}.report-stat strong{display:block;font-size:30px;line-height:1.1;margin-top:10px}.report-stat small{display:block;font-size:11px;opacity:.92;margin-top:8px}.report-stat.stat-blue{background:linear-gradient(135deg,#004B70 0%,#006E9F 100%)}.report-stat.stat-cyan{background:linear-gradient(135deg,#008E98 0%,#00A6B2 100%)}.report-stat.stat-green{background:linear-gradient(135deg,#17785D 0%,#23A36F 100%)}.report-stat.stat-amber{background:linear-gradient(135deg,#A55B00 0%,#D48A10 100%)}.report-layout{display:grid;grid-template-columns:360px 1fr;gap:16px}.report-left{display:grid;gap:16px}.report-actions{display:flex;gap:9px;flex-wrap:wrap;margin:14px 0 12px}.report-text{width:100%;min-height:220px;border:1px solid #C9D6DD;border-radius:12px;padding:12px;font:13px/1.5 Segoe UI,Arial,sans-serif;color:#243746;resize:vertical;background:#FCFEFF}.helper{font-size:12px;color:var(--muted);line-height:1.5}.checklist{display:grid;gap:10px}.check-item{padding:12px;border-radius:10px;border:1px solid #E2E8F0;background:#F8FBFC;font-size:13px;line-height:1.5}.report-mini{display:grid;gap:10px}.report-mini .modal-stat{background:#F8FBFC;border:1px solid #E6EDF1}.report-highlight-list{display:grid;gap:10px}.report-highlight{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px;border-radius:12px;border:1px solid #E4EDF2;background:#FBFDFF}.report-highlight .txt b{display:block;color:var(--caj-navy);font-size:13px;margin-bottom:3px}.report-highlight .txt span{font-size:12px;color:#5B6E79;line-height:1.45}.report-highlight .num{min-width:40px;text-align:center;padding:8px 10px;border-radius:10px;font-weight:800}.num.blue{background:#EAF4F9;color:var(--caj-blue)}.num.green{background:var(--green-bg);color:var(--green)}.num.amber{background:var(--amber-bg);color:var(--amber)}.num.red{background:var(--red-bg);color:var(--red)}.city-stack{display:grid;gap:11px}.city-line{display:grid;grid-template-columns:110px 1fr 70px;gap:10px;align-items:center}.city-line .name{font-size:12px;color:#445B68;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.city-line .value{text-align:right;font-size:11px;color:#516975;font-weight:700}.city-line .track{height:12px;border-radius:999px;background:#EDF3F6;overflow:hidden}.city-line .fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#00A6B2,#2CC3CE)}.os-mini-list{display:grid;gap:9px}.os-mini-item{padding:12px;border-radius:12px;border:1px solid #E4EDF2;background:linear-gradient(180deg,#FFFFFF 0%,#F8FBFC 100%)}.os-mini-item b{color:var(--caj-navy)}.os-mini-item .meta{font-size:12px;color:#5E707B;line-height:1.5;margin-top:4px}.report-right{display:grid;gap:14px}.report-preview-card{border:1px solid #D8E5EB;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 10px 24px rgba(0,59,92,.06)}.preview-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#003B5C 0%,#006E9F 100%);color:#fff}.preview-head h3{margin:0;font-size:16px}.preview-head span{font-size:11px;opacity:.9}.preview-body{padding:16px;display:grid;gap:14px;background:#FCFEFF}.preview-section{border:1px solid #E6EEF2;border-radius:13px;padding:13px 14px;background:#fff}.preview-section h4{margin:0 0 9px;color:var(--caj-navy);font-size:13px}.preview-bullets{display:grid;gap:7px}.preview-bullets div{font-size:12px;color:#465A66;line-height:1.45}.preview-bullets b{color:#153F53}.preview-note{padding:12px 13px;border-radius:12px;background:#FFF8E7;border:1px solid #F1D18B;font-size:12px;color:#6C531F;line-height:1.5}.report-copy-box{background:#F8FBFC;border:1px dashed #CBD9E1;border-radius:14px;padding:14px}
.login-screen{display:flex;position:fixed;inset:0;z-index:200;background:linear-gradient(145deg,#003B5C 0%,#005A80 55%,#007F93 100%);display:flex;align-items:center;justify-content:center;padding:22px}
.login-screen.hidden{display:none!important}.login-card{width:min(430px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 28px 80px rgba(0,25,40,.32);border:1px solid rgba(255,255,255,.35)}
.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:22px}.login-brand img{width:72px;height:auto;display:block}.login-brand h2{margin:0;color:var(--caj-navy);font-size:22px}.login-brand p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.4}
.login-field{margin-top:12px}.login-field label{display:block;font-size:11px;font-weight:750;color:#385467;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px}.login-field input{width:100%;border:1px solid #C8D5DD;border-radius:9px;padding:12px 13px;outline:none}.login-field input:focus{border-color:var(--caj-cyan);box-shadow:0 0 0 3px rgba(0,166,178,.12)}
.login-btn{width:100%;justify-content:center;margin-top:18px;padding:12px}.login-error{display:none;margin-top:12px;background:var(--red-bg);color:var(--red);border:1px solid #F6C7C3;border-radius:8px;padding:9px 10px;font-size:12px}.login-error.show{display:block}.login-note{margin-top:15px;padding-top:13px;border-top:1px solid #E6EDF1;color:#7B8790;font-size:10.5px;line-height:1.5}
.user-chip{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);padding:7px 10px;border-radius:999px;color:#fff;font-size:11px;white-space:nowrap}.user-chip b{font-size:11px}.user-role{opacity:.75}.btn-ghost-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.34)}
.users-layout{display:grid;grid-template-columns:360px 1fr;gap:16px}.user-form,.user-list-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px;box-shadow:var(--shadow)}.user-form h3,.user-list-card h3{margin:0 0 12px;color:var(--caj-navy);font-size:15px}.form-stack{display:grid;gap:10px}.form-stack label{font-size:10px;font-weight:750;color:#4A6371;text-transform:uppercase;letter-spacing:.25px}.form-stack input,.form-stack select{width:100%;margin-top:5px}.user-table{width:100%;font-size:12px}.user-table th{position:static}.user-actions{display:flex;gap:6px;flex-wrap:wrap}.admin-warning{margin-top:12px;padding:10px 11px;border-radius:9px;background:#FFF8E7;border:1px solid #F1D18B;color:#6C531F;font-size:11px;line-height:1.45}
.btn-disabled{opacity:.5;cursor:not-allowed!important;transform:none!important}.link-status{margin-top:5px}.bar-fill{background:var(--caj-blue)}.lig-select{width:100%;min-width:245px;max-width:330px;padding:8px 9px;border:1px solid #C8D5DB;border-radius:8px;background:#fff;color:#243746;font-size:11px}.lig-select:focus{border-color:var(--caj-cyan);box-shadow:0 0 0 3px rgba(0,166,178,.10);outline:none}.lig-choice-note{margin-top:5px;font-size:10px;color:var(--muted);line-height:1.35}.lig-num{font-size:11px;font-weight:700;color:var(--caj-navy)}

.cco-kpis{grid-template-columns:repeat(4,minmax(170px,1fr))}.cco-dashboard-grid{align-items:start}.cco-queue{display:grid;gap:9px}.cco-queue-item{display:grid;grid-template-columns:92px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid #EDF1F3}.cco-queue-item:last-child{border-bottom:0}.cco-queue-item .proto{font-weight:800;color:var(--caj-navy)}.cco-queue-item .main{min-width:0}.cco-queue-item .main b{display:block;font-size:13px;color:#233E4D;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cco-queue-item .main span{font-size:11px;color:var(--muted)}.cco-table-wrap td{vertical-align:middle}.cco-view-btn{width:36px;height:36px;border-radius:9px;border:0;background:var(--caj-blue);color:#fff;font-size:18px;font-weight:800;cursor:pointer}.cco-view-btn:hover{filter:brightness(.94)}.cco-detail-modal{width:min(860px,100%)}.cco-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.detail-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.8px;color:var(--caj-cyan);font-weight:800;margin-bottom:4px}.cco-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.cco-detail-cell{padding:11px 12px;border:1px solid #E2EAF0;border-radius:10px;background:#FAFCFD}.cco-detail-cell span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.35px;color:#70808A;font-weight:700}.cco-detail-cell b{display:block;margin-top:5px;font-size:13px;color:#223F4E;line-height:1.35;word-break:break-word}.cco-action-box{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px;padding:15px;border-radius:12px;background:#F3F8FA;border:1px solid #DCE9EF;margin-top:12px}.cco-action-box h4{margin:0 0 5px;color:var(--caj-navy)}.cco-action-box p{margin:0;font-size:12px;color:#5C6F7A;line-height:1.5}.cco-action-fields{display:grid;gap:10px}.cco-action-fields label{font-size:11px;font-weight:750;color:#425B68}.cco-action-fields .input{display:block;width:100%;margin-top:5px}.cco-observation{min-height:68px;margin-top:5px}.cco-tech{margin-top:12px;padding:10px 12px;border:1px dashed #CEDCE3;border-radius:10px;background:#FCFEFF;font-size:11px;color:#5A6B75}.cco-tech summary{cursor:pointer;font-weight:750;color:#49616E}.cco-tech div{margin-top:9px;line-height:1.6}.cco-alert-box{padding:11px 12px;border-radius:10px;background:#FFF7E5;border:1px solid #EBCB88;color:#76510B;font-size:12px;margin-top:12px}.cco-ok-box{padding:10px 12px;border-radius:10px;background:#EDF8F3;border:1px solid #C9E8D9;color:#27684F;font-size:12px;margin-top:12px}
@media(max-width:1000px){.cco-kpis{grid-template-columns:repeat(2,1fr)}.cco-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cco-action-box{grid-template-columns:1fr}}@media(max-width:640px){.cco-detail-grid{grid-template-columns:1fr}.cco-queue-item{grid-template-columns:76px 1fr auto}}
@media(max-width:1000px){.users-layout{grid-template-columns:1fr}}
@media(max-width:1000px){.info-grid,.report-layout{grid-template-columns:1fr}}@media(max-width:1000px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-2,.analytics-grid{grid-template-columns:1fr}.group-top{grid-template-columns:1fr 1fr}.coringa-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;padding:16px 18px;flex-direction:column}.top-actions{width:100%;flex-wrap:wrap}.shell{padding:16px}.bar-row{grid-template-columns:110px 1fr 58px}}

/* Navegação lateral e cadastros */
.shell{max-width:1700px;padding-top:16px}
.rule-strip{display:flex;align-items:center;gap:10px;padding:9px 12px;margin-bottom:14px;border-radius:10px;background:#F2F7FA;border:1px solid #DCE8EE;color:#4A6270;font-size:12px;line-height:1.4}
.rule-strip .rule-icon{display:grid;place-items:center;width:25px;height:25px;border-radius:7px;background:#E4F0F5;color:var(--caj-blue);font-weight:900;flex:0 0 auto}
.rule-strip b{color:var(--caj-navy)}
.rule-strip button{margin-left:auto;border:0;background:transparent;color:var(--caj-blue);font-weight:700;cursor:pointer;white-space:nowrap}
.workspace{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:start}
.sidebar{position:sticky;top:14px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:10px;max-height:calc(100vh - 28px);overflow:auto}
.sidebar-title{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#80909A;font-weight:800;padding:8px 9px 6px}
.tabs{display:flex;flex-direction:column;gap:3px;background:transparent;padding:0;border:0;border-radius:0;box-shadow:none;margin:0}
.tab{width:100%;text-align:left;display:flex;align-items:center;gap:9px;padding:9px 10px;border-radius:8px;font-size:13px}
.tab.active{background:#EAF4F9;color:var(--caj-navy);box-shadow:inset 3px 0 0 var(--caj-cyan)}
.tab:hover{background:#F3F7F9}
.tab.active:hover{background:#EAF4F9}
.nav-sep{height:1px;background:#E8EEF2;margin:8px 5px}
.content-area{min-width:0}
.panel{min-width:0}
.cadastro-layout{display:grid;gap:16px}
.cadastro-summary{display:grid;grid-template-columns:repeat(3,minmax(160px,1fr));gap:12px}
.cadastro-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px;box-shadow:var(--shadow)}
.cadastro-card .c-label{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.3px}.cadastro-card .c-value{font-size:25px;font-weight:800;color:var(--caj-navy);margin-top:6px}.cadastro-card .c-sub{font-size:11px;color:#74838C;margin-top:4px}
.section-card{background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px;box-shadow:var(--shadow)}
.section-card h3{margin:0;color:var(--caj-navy);font-size:15px}.section-card .desc{font-size:11px;color:var(--muted);margin:4px 0 12px}
.cadastro-table{max-height:520px;box-shadow:none}
.cadastro-table td{font-size:11px}.cadastro-table th{font-size:10px}
.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:1px}.dot-green{background:var(--green)}.dot-gray{background:#A6B0B7}.dot-amber{background:#E19A18}
.undo-btn{background:#fff;color:#8B3A32;border:1px solid #E4B8B3}
.undo-btn:hover{background:#FFF5F4}
.report-html-btn{background:#EAF4F9;color:var(--caj-navy);border:1px solid #BFD7E3}

.ref-grid{display:grid;grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px;margin-bottom:16px}.ref-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.ref-card h3{margin:0 0 5px;color:var(--caj-navy);font-size:15px}.ref-card p{margin:0 0 13px;color:var(--muted);font-size:12px;line-height:1.5}.ref-controls{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:end}.ref-summary{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:12px;margin:14px 0 18px}.ref-stat{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px;box-shadow:var(--shadow)}.ref-stat .r-label{font-size:11px;color:var(--muted);font-weight:700}.ref-stat .r-value{font-size:24px;color:var(--caj-navy);font-weight:800;margin-top:7px}.ref-stat .r-sub{font-size:10px;color:#80909A;margin-top:4px}.history-list{display:grid;gap:9px}.history-row{display:grid;grid-template-columns:120px 110px 130px 120px 1fr;gap:12px;align-items:center;padding:12px 13px;background:#fff;border:1px solid #E4EDF2;border-radius:11px}.history-row b{color:var(--caj-navy)}.history-row span{font-size:12px;color:#526672}.compare-toolbar{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr)) auto;gap:10px;align-items:end;margin-bottom:15px}.compare-cards{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin-bottom:16px}.compare-card{background:#fff;border:1px solid var(--line);border-radius:13px;padding:15px;box-shadow:var(--shadow)}.compare-card .c-label{font-size:11px;color:var(--muted);font-weight:700}.compare-card .c-value{font-size:26px;font-weight:800;color:var(--caj-navy);margin-top:7px}.compare-card .c-sub{font-size:11px;color:#73838D;margin-top:5px}.compare-card.positive .c-value{color:var(--green)}.compare-card.negative .c-value{color:var(--red)}.compare-card.neutral .c-value{color:var(--caj-blue)}.compare-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-box{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow)}.compare-box h3{margin:0 0 4px;color:var(--caj-navy);font-size:15px}.compare-box .desc{font-size:11px;color:var(--muted);margin-bottom:14px}.compare-bars{display:grid;gap:12px}.compare-line{display:grid;grid-template-columns:110px 1fr 90px;gap:10px;align-items:center;font-size:12px}.compare-line .track{height:14px;background:#EDF3F6;border-radius:999px;overflow:hidden}.compare-line .fill{height:100%;background:linear-gradient(90deg,var(--caj-blue),var(--caj-cyan));border-radius:999px}.compare-empty{padding:22px;text-align:center;border:1px dashed #CAD8DF;border-radius:12px;color:var(--muted);font-size:12px;background:#FBFDFE}.scope-note{padding:12px 14px;border-radius:11px;background:#F3F8FA;border:1px solid #D7E7ED;color:#48606C;font-size:12px;line-height:1.5;margin-bottom:14px}
@media(max-width:1100px){.ref-grid,.compare-panel{grid-template-columns:1fr}.ref-summary,.compare-cards{grid-template-columns:1fr 1fr}.compare-toolbar{grid-template-columns:1fr 1fr}.workspace{grid-template-columns:1fr}.sidebar{position:static;max-height:none}.tabs{display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:5px}.sidebar-title,.nav-sep{display:none}.tab{justify-content:center;text-align:center}.cadastro-summary{grid-template-columns:1fr 1fr}.report-topcards{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.tabs{grid-template-columns:1fr 1fr}.cadastro-summary{grid-template-columns:1fr}.rule-strip{align-items:flex-start}.rule-strip button{display:none}}


.module-grid{display:grid;grid-template-columns:repeat(2,minmax(320px,1fr));gap:16px;margin-bottom:18px}
.module-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.module-card::after{content:"";position:absolute;right:-34px;top:-34px;width:110px;height:110px;border-radius:50%;background:rgba(0,166,178,.08)}
.module-card.cco{border-top:5px solid #E8A51A}.module-card.gsc{border-top:5px solid var(--caj-cyan)}
.module-card .eyebrow{font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:var(--muted)}
.module-card h3{margin:7px 0 6px;color:var(--caj-navy);font-size:21px}.module-card p{margin:0;color:#5A6D78;font-size:13px;line-height:1.55;max-width:90%}
.module-metrics{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.module-metric{background:#F6FAFC;border:1px solid #E2EDF2;border-radius:12px;padding:10px 12px;min-width:120px}.module-metric span{display:block;font-size:10px;color:var(--muted);font-weight:700}.module-metric strong{display:block;margin-top:4px;color:var(--caj-navy);font-size:22px}
.flow-lane{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 18px}.flow-step{background:#fff;border:1px solid #DFE9EE;border-radius:13px;padding:13px;min-height:86px}.flow-step .n{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#EAF4F9;color:var(--caj-navy);font-weight:800;font-size:11px;margin-bottom:8px}.flow-step b{display:block;color:var(--caj-navy);font-size:12px}.flow-step span{display:block;color:#637681;font-size:11px;line-height:1.4;margin-top:4px}
.module-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.module-head .tag{padding:7px 10px;border-radius:999px;font-size:11px;font-weight:800}.tag-cco{background:#FFF5DF;color:#9A6200}.tag-gsc{background:#E8F8FA;color:#007B85}
.global-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.global-mini{background:#fff;border:1px solid var(--line);border-radius:13px;padding:14px}.global-mini span{display:block;color:var(--muted);font-size:11px;font-weight:700}.global-mini strong{display:block;color:var(--caj-navy);font-size:25px;margin-top:6px}
.cco-note{padding:12px 14px;border-radius:12px;background:#FFF9EE;border:1px solid #F1D7A4;color:#6B531D;font-size:12px;line-height:1.5;margin-bottom:14px}
.compact-status{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.compact-status .lig-num{font-weight:800;color:var(--caj-navy)}
@media(max-width:1000px){.module-grid,.flow-lane,.global-strip{grid-template-columns:1fr 1fr}}@media(max-width:650px){.module-grid,.flow-lane,.global-strip{grid-template-columns:1fr}}


/* v5 - conexões e inteligência dinâmica */
.connection-layout{display:grid;grid-template-columns:330px minmax(0,1fr);gap:16px}.connection-form-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow);align-self:start}.connection-form-card h3{margin:0 0 14px;color:var(--caj-navy)}.field-label{display:block;font-size:10px;font-weight:800;color:#667985;margin:11px 0 5px;letter-spacing:.3px}.connection-form-card>.input,.connection-form-card>.select{width:100%}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form-two .select,.form-two .input{width:100%}.form-actions{display:flex;gap:8px;margin-top:14px}.intel-filters{display:grid;grid-template-columns:repeat(6,minmax(130px,1fr)) auto;gap:10px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;box-shadow:var(--shadow)}.intel-filters label{display:block;font-size:10px;font-weight:800;color:#667985;margin-bottom:5px}.intel-filters .input,.intel-filters .select{width:100%}.intel-context{margin:12px 0;padding:10px 13px;border-radius:10px;background:#F0F8FA;border:1px solid #D7EAEE;color:#49616D;font-size:12px}.intel-cards{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:12px;margin:14px 0 16px}.intel-card{appearance:none;text-align:left;background:#fff;border:1px solid var(--line);border-radius:14px;padding:15px;box-shadow:var(--shadow);cursor:pointer;color:inherit}.intel-card:hover{border-color:#AFCBD6}.intel-card span{display:block;font-size:11px;color:var(--muted);font-weight:750}.intel-card strong{display:block;font-size:25px;color:var(--caj-navy);margin:7px 0 5px}.intel-card small{color:#71818A}.intel-card.accent{border-top:4px solid var(--caj-cyan)}.intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.intel-panel{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;box-shadow:var(--shadow);min-width:0}.intel-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}.intel-panel-head h3{margin:0;color:var(--caj-navy);font-size:15px}.intel-panel-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.radar-list,.driver-list,.ranking-list{display:grid;gap:9px}.radar-item,.driver-item,.ranking-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid #E4EDF1;background:#FBFDFE;border-radius:11px}.radar-item{width:100%;font:inherit;text-align:left;color:inherit;cursor:pointer;transition:.16s}.radar-item:hover{transform:translateY(-1px);border-color:#D5B25C;box-shadow:0 7px 16px rgba(61,73,86,.08)}.radar-item:focus-visible{outline:2px solid var(--intel);outline-offset:2px}.radar-item .txt,.driver-item .txt,.ranking-item .txt{min-width:0}.radar-item b,.driver-item b,.ranking-item b{display:block;font-size:12px;color:#23475A}.radar-item span,.driver-item span,.ranking-item span{display:block;font-size:11px;color:#6A7B84;margin-top:3px}.radar-item .pill,.driver-item .pill,.ranking-item .pill{white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:800;background:#EAF4F9;color:var(--caj-blue)}.pill.up{background:#E9F7F1;color:var(--green)}.pill.down{background:#FDEDEC;color:var(--red)}.school-profile{display:grid;gap:10px}.profile-empty{padding:28px 15px;text-align:center;color:var(--muted);background:#F8FBFC;border:1px dashed #CBD9E0;border-radius:12px}.profile-title{font-size:16px;font-weight:800;color:var(--caj-navy)}.profile-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.profile-metric{padding:10px;border-radius:10px;background:#F6FAFC;border:1px solid #E4EDF1}.profile-metric span{font-size:10px;color:var(--muted);display:block}.profile-metric b{font-size:16px;color:var(--caj-navy);display:block;margin-top:4px}.trace-grid{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:10px}.trace-card{padding:13px;border-radius:12px;border:1px solid #E1EBF0;background:#FAFCFD}.trace-card span{display:block;font-size:10px;color:var(--muted);font-weight:750}.trace-card strong{display:block;font-size:20px;color:var(--caj-navy);margin-top:6px}.trace-card small{display:block;font-size:10px;color:#71818A;margin-top:4px}.intel-detail-modal{width:min(760px,100%)}.intel-detail-list{display:grid;gap:8px;max-height:430px;overflow:auto;margin-top:14px;padding-right:2px}.intel-detail-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;text-align:left;border:1px solid #E3EBF0;background:#FAFCFD;border-radius:11px;padding:12px 13px;cursor:pointer;color:inherit}.intel-detail-item:hover{border-color:#BFD4DE;background:#F5FAFC}.intel-detail-item b{display:block;color:var(--caj-navy);font-size:12px}.intel-detail-item span{display:block;color:#6B7D87;font-size:11px;margin-top:3px;line-height:1.4}.intel-detail-value{white-space:nowrap;font-size:12px;font-weight:800;color:var(--caj-blue)}.intel-detail-empty{padding:26px;text-align:center;border:1px dashed #CAD8DF;border-radius:11px;color:var(--muted);background:#FBFDFE}.compare-panel{display:grid;grid-template-columns:1fr 1fr;gap:16px}.compare-panel h4{margin:0 0 10px;color:#405A68;font-size:12px}.conn-inactive{opacity:.56}.mini-action{display:flex;gap:6px;flex-wrap:wrap}@media(max-width:1200px){.intel-filters{grid-template-columns:repeat(3,1fr)}.intel-cards{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.connection-layout,.intel-grid,.compare-panel{grid-template-columns:1fr}.intel-cards{grid-template-columns:repeat(2,1fr)}.intel-filters{grid-template-columns:1fr 1fr}.trace-grid{grid-template-columns:1fr 1fr}}

/* Arquitetura por ambientes */
.workspace.home-mode{grid-template-columns:1fr}
.workspace.home-mode .sidebar{display:none}
.sidebar{width:210px}
.module-switcher{display:grid;gap:8px;padding:4px 2px 10px;border-bottom:1px solid #E8EEF2;margin-bottom:8px}
.back-modules{width:100%;border:0;background:#F4F8FA;color:var(--caj-navy);border-radius:9px;padding:9px 10px;text-align:left;font-weight:750;cursor:pointer}
.back-modules:hover{background:#EAF4F9}
.current-module{padding:9px 10px;border-radius:10px;background:#FBFDFE;border:1px solid #E6EEF2}
.current-module span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.6px;color:#87949C;font-weight:800}
.current-module strong{display:block;margin-top:3px;color:var(--caj-navy);font-size:14px}
.tab{display:none}
.tab.module-visible{display:flex}
.help-shortcut{margin-top:10px;padding-top:10px;border-top:1px solid #E8EEF2}
.help-shortcut button{width:100%;border:0;background:transparent;color:#5D7280;padding:9px 10px;border-radius:8px;text-align:left;font-weight:700;cursor:pointer}
.help-shortcut button:hover{background:#F3F7F9;color:var(--caj-navy)}
.module-grid.home-modules{grid-template-columns:repeat(2,minmax(320px,1fr));gap:14px}
.module-card.intel{border-top:5px solid #6C77C7}
.module-card.admin{border-top:5px solid #78909C}
.module-card .module-link{margin-top:16px}
.home-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.home-intro .home-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.7px;color:#7A8C96;font-weight:800}
.home-intro h2{margin:5px 0 4px;font-size:24px;color:var(--caj-navy)}
.home-intro p{margin:0;color:var(--muted);font-size:13px;line-height:1.5;max-width:760px}
.home-status{font-size:11px;color:#54707E;background:#F3F8FA;border:1px solid #DDE9EE;border-radius:999px;padding:7px 10px;white-space:nowrap}
.subnav-strip{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
.subnav-strip button{border:1px solid #D9E5EB;background:#fff;color:#506774;border-radius:999px;padding:7px 11px;font-size:11px;font-weight:750;cursor:pointer}
.subnav-strip button.active{background:#EAF4F9;color:var(--caj-navy);border-color:#BFD9E5}
@media(max-width:1100px){.workspace:not(.home-mode){grid-template-columns:190px minmax(0,1fr)}.sidebar{position:sticky;top:10px}.module-grid.home-modules{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.module-grid.home-modules{grid-template-columns:1fr}.workspace:not(.home-mode){grid-template-columns:1fr}.workspace:not(.home-mode) .sidebar{position:static;width:auto}.home-intro{align-items:flex-start;flex-direction:column}.home-status{white-space:normal}}


/* Tema noturno */
body.dark-mode{
  --bg:#0F1720; --card:#17232D; --text:#E8F0F4; --muted:#9FB0BC; --line:#2B3D49;
  --caj-light:#132A36; --green-bg:#12352C; --amber-bg:#3A2B12; --red-bg:#3D1C1A; --blue-bg:#173342;
  --shadow:0 10px 26px rgba(0,0,0,.22);
  background:var(--bg); color:var(--text);
}
body.dark-mode .shell,body.dark-mode .panel{background:transparent}
body.dark-mode .tabs,body.dark-mode .kpi,body.dark-mode .card,body.dark-mode .table-wrap,
body.dark-mode .group-card,body.dark-mode .coringa-card,body.dark-mode .chart-card,
body.dark-mode .step-card,body.dark-mode .report-box,body.dark-mode .report-preview-card,
body.dark-mode .report-copy-box,body.dark-mode .user-form,body.dark-mode .users-table-card,
body.dark-mode .module-card,body.dark-mode .cco-card,body.dark-mode .cco-detail-card,
body.dark-mode .module-shell,body.dark-mode .workspace-card{background:var(--card)!important;border-color:var(--line)!important;color:var(--text)}
body.dark-mode th{background:#183344!important;color:#DCEAF1;border-color:#315061}
body.dark-mode td{border-color:#263A46;color:var(--text)}
body.dark-mode tr:hover td{background:#1B2A35!important}
body.dark-mode tr.row-green td{background:#133128!important}
body.dark-mode .alert-row,body.dark-mode .modal-stat,body.dark-mode .inline-note,
body.dark-mode .check-item,body.dark-mode .report-highlight,body.dark-mode .os-mini-item,
body.dark-mode .preview-section,body.dark-mode .report-copy-box{background:#14232D!important;border-color:#2B3D49!important;color:var(--text)}
body.dark-mode .input,body.dark-mode .select,body.dark-mode input,body.dark-mode select,body.dark-mode textarea,
body.dark-mode .lig-input,body.dark-mode .type-select,body.dark-mode .os-input,body.dark-mode .used-input{
  background:#101B23!important;color:#E8F0F4!important;border-color:#3A5261!important;
}
body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:#7F929F}
body.dark-mode .btn-outline{color:#DCEAF1;border-color:#537181}
body.dark-mode .btn-light{background:#EAF4F9;color:#003B5C}
body.dark-mode .summary-pill,body.dark-mode .badge.b-gray{background:#243642;color:#D8E6ED}
body.dark-mode .section-head h2,body.dark-mode .card h3,body.dark-mode .chart-card h3,
body.dark-mode .step-card h3,body.dark-mode .kpi .value,body.dark-mode .group-id,
body.dark-mode .coringa-number,body.dark-mode .modal h3{color:#E7F5FA!important}
body.dark-mode .cell-note,body.dark-mode .group-meta,body.dark-mode .helper,body.dark-mode .muted,
body.dark-mode .section-head p,body.dark-mode .kpi .label,body.dark-mode .kpi .sub{color:#9FB0BC!important}
body.dark-mode .modal{background:#17232D;color:var(--text)}
body.dark-mode .notice{background:#2F2818;border-color:#6B5620}
body.dark-mode .notice strong{color:#F2CF74} body.dark-mode .notice p{color:#D8C690}
.theme-toggle{min-width:108px;justify-content:center}



/* v8 - identidade visual funcional: mais viva, sem excesso de cores */
body{background:linear-gradient(180deg,#F6F9FB 0%,#F3F6F8 100%)}
.topbar{background:linear-gradient(100deg,#003B5C 0%,#075A7C 72%,#087E91 100%)}
.btn-primary{background:linear-gradient(135deg,#0096A2,#00B4BF);box-shadow:0 7px 16px rgba(0,166,178,.16)}
.btn-primary:hover{box-shadow:0 9px 20px rgba(0,166,178,.22)}
.badge{border:1px solid transparent;padding:6px 9px}
.b-green{background:#E7F7EF;border-color:#BFE8D3;color:#137451}
.b-amber{background:#FFF2D8;border-color:#F4D08B;color:#A45F00}
.b-red{background:#FFEAE7;border-color:#F3C1BA;color:#B42318}
.b-blue{background:#E8F4FA;border-color:#BDDCEB;color:#006A9B}
.b-gray{background:#EEF2F4;border-color:#DDE5E9;color:#536670}
.summary-pill{border:1px solid #CBE4EA;background:#EDF8FA;color:#07546D}

/* Central de módulos */
.module-card{transition:.18s ease;border-width:1px;box-shadow:0 10px 25px rgba(12,54,75,.07)}
.module-card:hover{transform:translateY(-2px);box-shadow:0 15px 32px rgba(12,54,75,.11)}
.module-card.cco{background:linear-gradient(145deg,#FFF9EC 0%,#FFFFFF 68%);border-color:#F2D69D;border-top:5px solid var(--cco)}
.module-card.gsc{background:linear-gradient(145deg,#EAFBFC 0%,#FFFFFF 68%);border-color:#BDE7EA;border-top:5px solid var(--gsc)}
.module-card.intel{background:linear-gradient(145deg,#F2F0FF 0%,#FFFFFF 68%);border-color:#D3CEF6;border-top:5px solid var(--intel)}
.module-card.admin{background:linear-gradient(145deg,#EEF5FC 0%,#FFFFFF 68%);border-color:#C8DBEC;border-top:5px solid var(--admin)}
.module-card.cco::after{background:rgba(213,139,16,.12)}
.module-card.gsc::after{background:rgba(0,166,178,.11)}
.module-card.intel::after{background:rgba(102,88,200,.10)}
.module-card.admin::after{background:rgba(61,109,156,.10)}
.module-card .module-metric{background:rgba(255,255,255,.82);border-color:rgba(126,159,176,.22)}

/* Módulo ativo: a cor ajuda o usuário a se localizar */
body[data-active-module="cco"] .current-module{background:var(--cco-soft);border-color:var(--cco-line)}
body[data-active-module="cco"] .current-module strong{color:#9B6100}
body[data-active-module="gsc"] .current-module{background:var(--gsc-soft);border-color:var(--gsc-line)}
body[data-active-module="gsc"] .current-module strong{color:#007982}
body[data-active-module="inteligencia"] .current-module{background:var(--intel-soft);border-color:var(--intel-line)}
body[data-active-module="inteligencia"] .current-module strong{color:#5144AE}
body[data-active-module="admin"] .current-module{background:var(--admin-soft);border-color:var(--admin-line)}
body[data-active-module="admin"] .current-module strong{color:#315F8C}
body[data-active-module="cco"] .tab.active{background:var(--cco);color:#fff}
body[data-active-module="gsc"] .tab.active{background:var(--gsc);color:#fff}
body[data-active-module="inteligencia"] .tab.active{background:var(--intel);color:#fff}
body[data-active-module="admin"] .tab.active{background:var(--admin);color:#fff}

/* Cabeçalhos de cada ambiente */
body[data-active-module="cco"] .panel.active>.section-head h2::before,
body[data-active-module="gsc"] .panel.active>.section-head h2::before,
body[data-active-module="inteligencia"] .panel.active>.section-head h2::before,
body[data-active-module="admin"] .panel.active>.section-head h2::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:9px;vertical-align:2px}
body[data-active-module="cco"] .panel.active>.section-head h2::before{background:var(--cco)}
body[data-active-module="gsc"] .panel.active>.section-head h2::before{background:var(--gsc)}
body[data-active-module="inteligencia"] .panel.active>.section-head h2::before{background:var(--intel)}
body[data-active-module="admin"] .panel.active>.section-head h2::before{background:var(--admin)}

/* KPIs: cor por significado, não decoração */
.cco-kpis .kpi{position:relative;overflow:hidden}
.cco-kpis .kpi::before,.kpis .kpi::before,.cadastro-card::before,.intel-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;border-radius:12px 12px 0 0}
.cco-kpis .kpi:nth-child(1)::before{background:var(--cco)}
.cco-kpis .kpi:nth-child(2)::before{background:#2B7BA5}
.cco-kpis .kpi:nth-child(3)::before{background:#24A36D}
.cco-kpis .kpi:nth-child(4)::before{background:#D94B3D}
.cco-kpis .kpi:nth-child(1){background:linear-gradient(180deg,#FFF9EC,#fff 48%)}
.cco-kpis .kpi:nth-child(3){background:linear-gradient(180deg,#EFFAF4,#fff 48%)}
.cco-kpis .kpi:nth-child(4){background:linear-gradient(180deg,#FFF4F2,#fff 48%)}
#kpis .kpi{position:relative;overflow:hidden}
#kpis .kpi:nth-child(1)::before{background:#E5A01B}
#kpis .kpi:nth-child(2)::before{background:#1986B4}
#kpis .kpi:nth-child(3)::before{background:#6258C7}
#kpis .kpi:nth-child(4)::before{background:#20A16B}
#kpis .kpi:nth-child(5)::before{background:#D66A2D}

/* GSC */
#solicitacoes .toolbar{padding:12px;border-radius:13px;background:linear-gradient(90deg,#F1FBFC,#F8FCFD);border:1px solid #D8ECEF}
#grupos .group-card{border-left-color:var(--gsc);background:linear-gradient(90deg,#F4FCFD 0%,#FFFFFF 18%)}
#baixa tr.row-green td{background:#F0FAF5}
#baixa .undo-btn{background:#FFF8F6}

/* Inteligência: referências e comparações visualmente distintas */
.intel-filters{background:linear-gradient(135deg,#FAF9FF 0%,#FFFFFF 52%,#F4FBFC 100%);border-color:#D8D4F2}
.intel-context{background:linear-gradient(90deg,#F0EEFF,#F0F9FA);border-color:#D9D4F5}
.intel-card{position:relative;overflow:hidden;box-shadow:0 8px 22px rgba(45,61,90,.07)}
.intel-card::before{background:#6B5DD0}
.intel-card:nth-child(1)::before{background:#2B7BA5}.intel-card:nth-child(1){background:linear-gradient(180deg,#EEF7FC,#fff 48%)}
.intel-card:nth-child(2)::before{background:#00A6B2}.intel-card:nth-child(2){background:linear-gradient(180deg,#ECFBFC,#fff 48%)}
.intel-card:nth-child(3)::before{background:#6B5DD0}.intel-card:nth-child(3){background:linear-gradient(180deg,#F3F1FF,#fff 48%)}
.intel-card:nth-child(4)::before{background:#D58B10}.intel-card:nth-child(4){background:linear-gradient(180deg,#FFF9EA,#fff 48%)}
.intel-card:nth-child(5)::before{background:#24A36D}.intel-card:nth-child(5){background:linear-gradient(180deg,#EFFAF4,#fff 48%)}
.intel-panel{box-shadow:0 8px 22px rgba(45,61,90,.06)}
#intelRadar .radar-item{border-left:4px solid #D58B10;background:#FFFBF2}
#intelDrivers .driver-item{border-left:4px solid var(--intel);background:#FAF9FF}
#intelRanking .ranking-item{border-left:4px solid #2B7BA5;background:#F8FCFE}
.compare-line .fill{background:linear-gradient(90deg,#6658C8,#00A6B2)}

/* Administração: cadastros vivos e localizáveis */
.cadastro-card{position:relative;overflow:hidden}
.cadastro-card:nth-child(1)::before{background:var(--admin)}
.cadastro-card:nth-child(2)::before{background:#24A36D}
.cadastro-card:nth-child(3)::before{background:#D58B10}
.connection-form-card{background:linear-gradient(180deg,#F3F8FD 0%,#FFFFFF 34%);border-color:#C9DBEB}
#ligacoes .scope-note{background:#EFF6FD;border-color:#C9DCEF;color:#315C82}
#usuarios .user-form{background:linear-gradient(180deg,#F3F7FC,#FFFFFF 34%);border-color:#CADBEC}
#usuarios .user-list-card{border-top:4px solid var(--admin)}
.admin-warning{background:#F3F7FC;border-color:#CADBEC;color:#3F5E75}

/* Tabelas: sinalização sem pintar tudo */
th{background:linear-gradient(180deg,#E8F3F8,#E3F0F6);color:#183F54}
tbody tr{transition:background .12s ease}
tbody tr:hover td{background:#F7FBFD}
#ccoReqTable tbody tr:hover td{background:#FFF9EC}
#reqTable tbody tr:hover td{background:#F0FAFB}
#usersTable tbody tr:hover td,#schoolTable tbody tr:hover td{background:#F2F7FC}

/* Alertas e cards ficam um pouco mais marcados */
.alert-row{border-left:4px solid #DCE6EA;background:#FBFDFE}
.alert-row:has(.b-red){border-left-color:#D94B3D;background:#FFF8F7}
.alert-row:has(.b-amber){border-left-color:#D58B10;background:#FFFBF2}
.alert-row:has(.b-green){border-left-color:#24A36D;background:#F5FBF8}
.alert-row:has(.b-blue){border-left-color:#2B7BA5;background:#F5FAFD}

/* Tema escuro: preservar semântica sem neon */
body.dark-mode{background:#101A21}
body.dark-mode .module-card.cco{background:linear-gradient(145deg,#302719,#17242C 68%);border-color:#6B5227!important}
body.dark-mode .module-card.gsc{background:linear-gradient(145deg,#123138,#17242C 68%);border-color:#245A61!important}
body.dark-mode .module-card.intel{background:linear-gradient(145deg,#27233F,#17242C 68%);border-color:#49436A!important}
body.dark-mode .module-card.admin{background:linear-gradient(145deg,#1D2D3C,#17242C 68%);border-color:#35516A!important}
body.dark-mode .module-card .module-metric{background:#192832;border-color:#30444F}
body.dark-mode .cco-kpis .kpi,body.dark-mode #kpis .kpi,body.dark-mode .intel-card,body.dark-mode .cadastro-card{background:var(--card)!important}
body.dark-mode .intel-filters,body.dark-mode .intel-context,body.dark-mode .connection-form-card,body.dark-mode #usuarios .user-form{background:#17242C!important;border-color:#31434E!important}
body.dark-mode #intelRadar .radar-item,body.dark-mode #intelDrivers .driver-item,body.dark-mode #intelRanking .ranking-item{background:#192832!important}
body.dark-mode th{background:#20333E!important;color:#DDEAF0!important}


/* Operação GSC | coringas e cancelamentos */
.capacity-dots{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 10px}
.capacity-dot{width:14px;height:14px;border-radius:50%;background:#E4EDF1;border:1px solid #CEDCE2;box-shadow:inset 0 0 0 2px rgba(255,255,255,.7)}
.capacity-dot.used{background:#00A6B2;border-color:#008D98;box-shadow:none}
.capacity-dot.free{background:#E9F8F3;border-color:#A9DFCC}
.capacity-dot.warn{background:#F2B84B;border-color:#D89A26}
.capacity-dot.unlimited{background:#DFF4EC;border-color:#8ED3B7}
.capacity-legend{display:flex;gap:14px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-top:4px}
.capacity-legend span{display:inline-flex;align-items:center;gap:5px}
.capacity-legend i{width:9px;height:9px;border-radius:50%;display:inline-block;background:#00A6B2}
.capacity-legend .free-i{background:#E9F8F3;border:1px solid #A9DFCC}
.gsc-connection-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:0 0 16px}
.gsc-connection-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.gsc-connection-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--caj-cyan)}
.gsc-connection-kpi:nth-child(2):before{background:#33B67A}.gsc-connection-kpi:nth-child(3):before{background:#E3A52D}.gsc-connection-kpi:nth-child(4):before{background:#7557C7}
.gsc-connection-kpi span{display:block;font-size:10px;font-weight:800;color:var(--muted);letter-spacing:.05em;text-transform:uppercase}
.gsc-connection-kpi strong{display:block;font-size:25px;color:var(--caj-navy);margin-top:5px}
.gsc-coringa-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.gsc-coringa-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--caj-cyan)}
.gsc-coringa-card.locked:before{background:#E3A52D}.gsc-coringa-card.empty-balance:before{background:#D84A3D}
.gsc-coringa-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}
.gsc-coringa-values div{background:#F6FAFB;border-radius:10px;padding:9px}
.gsc-coringa-values span{display:block;font-size:10px;color:var(--muted);font-weight:700;text-transform:uppercase}
.gsc-coringa-values strong{display:block;font-size:16px;color:var(--caj-navy);margin-top:3px}
.cancel-kpis{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin-bottom:16px}
.cancel-kpi{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.cancel-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#D84A3D}
.cancel-kpi:nth-child(2):before{background:#E3A52D}.cancel-kpi:nth-child(3):before{background:#7557C7}.cancel-kpi:nth-child(4):before{background:#00A6B2}
.cancel-kpi span{display:block;font-size:10px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.cancel-kpi strong{display:block;font-size:24px;color:var(--caj-navy);margin-top:5px}
.deadline-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:800;background:#FFF3D8;color:#8A5A00;border:1px solid #F0D59B}
.deadline-pill.urgent{background:#FDE8E5;color:#A63329;border-color:#F1B9B3}
.cancel-reason{font-size:11px;color:var(--muted);margin-top:3px}
body.dark-mode .gsc-connection-kpi,body.dark-mode .gsc-coringa-card,body.dark-mode .cancel-kpi{background:#16242B;border-color:#2B3E47}
body.dark-mode .gsc-coringa-values div{background:#1B2D35}
body.dark-mode .capacity-dot{box-shadow:none}
@media(max-width:1000px){.gsc-connection-kpis,.cancel-kpis{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.gsc-connection-kpis,.cancel-kpis,.gsc-coringa-values{grid-template-columns:1fr}}


.group-top{grid-template-columns:90px 1fr 125px 120px 320px auto}.os-row{display:flex;gap:6px;align-items:center}.os-row .os-input{flex:1;min-width:0}.os-row .os-confirm{white-space:nowrap}@media(max-width:1100px){.group-top{grid-template-columns:1fr 1fr}}
