:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17233a;background:#f3f6fa;--nav:#0b182d;--nav2:#12233e;--blue:#1674e8;--blue2:#0d61ca;--line:#e2e8f0;--muted:#6f7f94;--card:#fff;--good:#18a565;--warn:#dc8b17;--bad:#d54554}*{box-sizing:border-box}html,body,#app{margin:0;min-width:320px;min-height:100%}body{min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--nav),#081324);color:#c9d4e4;padding:18px 13px;display:flex;flex-direction:column;overflow-y:auto}.brand{display:flex;align-items:center;gap:12px;padding:2px 10px 18px}.brand-mark{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#fff;background:linear-gradient(145deg,#1885ff,#50b6ff);font-weight:900;box-shadow:0 8px 28px #1684ff4a}.brand strong{display:block;color:#fff;font-size:17px}.brand small{display:block;color:#8495ad;margin-top:3px;font-size:11px}.nav-group{margin:10px 0}.nav-label{padding:7px 13px;color:#6f829d;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.nav-btn{border:0;background:transparent;color:#bdcada;width:100%;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:9px;text-align:left;font-size:13px}.nav-btn:hover{background:#162944;color:#fff}.nav-btn.active{background:#1b3151;color:#fff;box-shadow:inset 3px 0 #42a4ff}.nav-icon{width:22px;text-align:center;font-size:16px}.sidebar-footer{margin-top:auto;padding-top:14px;border-top:1px solid #1c2c44}.main{min-width:0}.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:16px;padding:0 24px;position:sticky;top:0;z-index:20}.menu-toggle{display:none;border:0;background:transparent;font-size:22px}.crumb{font-weight:720;color:#33425a}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.tenant-picker{min-width:245px}.user-box{display:flex;align-items:center;gap:10px;border-left:1px solid var(--line);padding-left:15px}.avatar{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#e7f2ff;color:#176fda;font-weight:800}.user-box strong,.user-box small{display:block}.user-box small{font-size:11px;color:var(--muted)}.content{padding:28px;max-width:1680px;margin:auto}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.page-head h1{font-size:26px;margin:0;color:#152239}.page-head p{margin:7px 0 0;color:var(--muted);max-width:850px}.head-actions{display:flex;gap:9px;flex-wrap:wrap}.btn{border:1px solid #ccd6e3;background:#fff;color:#33425a;border-radius:9px;padding:9px 14px;font-weight:680;display:inline-flex;gap:7px;align-items:center;justify-content:center}.btn:hover{background:#f7f9fc}.btn.primary{background:var(--blue);color:#fff;border-color:var(--blue)}.btn.primary:hover{background:var(--blue2)}.btn.danger{color:#b42c3c;border-color:#f0cbd0}.btn.small{padding:6px 9px;font-size:12px}.btn:disabled{opacity:.55;cursor:not-allowed}.cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;display:flex;align-items:center;gap:14px;box-shadow:0 4px 16px #16233b0a}.metric-icon{width:43px;height:43px;display:grid;place-items:center;border-radius:12px;background:#e9f4ff;color:#1170dd;font-size:19px}.metric small{color:var(--muted);display:block}.metric strong{font-size:26px;display:block;margin-top:3px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 18px #15233a0a;margin-bottom:18px;overflow:hidden}.panel-pad{padding:19px}.panel-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}.panel-title h2{margin:0;font-size:17px}.panel-title p{margin:4px 0 0;color:var(--muted);font-size:13px}.status{display:flex;align-items:center;gap:12px}.dot{width:11px;height:11px;border-radius:50%;box-shadow:0 0 0 5px #edf1f6}.dot.good{background:var(--good)}.dot.bad{background:var(--bad)}.dot.warn{background:var(--warn)}.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;min-width:720px}.data-table th,.data-table td{text-align:left;padding:13px 15px;border-bottom:1px solid #edf1f5;font-size:13px;vertical-align:middle}.data-table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#718198;background:#f8fafc;white-space:nowrap}.data-table tr:hover td{background:#fbfdff}.data-table tr:last-child td{border-bottom:0}.data-table small{display:block;color:var(--muted);margin-top:3px}.tag{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:11px;font-weight:750;background:#edf2f7;color:#526176}.tag.good{background:#e4f7ed;color:#147342}.tag.bad{background:#ffe9ec;color:#a62a39}.tag.warn{background:#fff2d9;color:#956213}.tag.blue{background:#e8f2ff;color:#1768c5}.actions{display:flex;gap:5px;white-space:nowrap}.empty{padding:50px 20px;text-align:center;color:#7d8ca1}.empty strong{display:block;color:#48566b;margin-bottom:5px}.filterbar{display:flex;gap:10px;flex-wrap:wrap;padding:14px;background:#f9fbfd;border-bottom:1px solid var(--line)}input,select,textarea{border:1px solid #cbd6e3;background:#fff;color:#17233a;border-radius:8px;padding:9px 10px;outline:none}input:focus,select:focus,textarea:focus{border-color:#4d9df0;box-shadow:0 0 0 3px #e4f1ff}.filterbar input,.filterbar select{min-width:150px}.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-size:12px;font-weight:720;color:#445269}.field small{font-size:11px;color:var(--muted)}.field textarea{min-height:90px;resize:vertical}.span-2{grid-column:span 2}.check{display:flex;align-items:center;gap:8px;font-size:13px;color:#445269;padding-top:7px}.check input{width:17px;height:17px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;border:1px solid var(--line);padding:10px;border-radius:9px;max-height:220px;overflow:auto}.check-grid label{display:flex;align-items:center;gap:7px;font-size:12px}.modal-bg{position:fixed;inset:0;background:#07101fc4;display:grid;place-items:center;padding:18px;z-index:100}.modal{width:min(860px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 30px 100px #0008}.modal.wide{width:min(1120px,100%)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 21px;border-bottom:1px solid var(--line);position:sticky;top:0;background:#fff;z-index:2}.modal-head h2{font-size:19px;margin:0}.modal-close{border:0;background:transparent;font-size:27px;color:#6f7f94}.modal-body{padding:21px}.form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:19px;padding-top:16px;border-top:1px solid var(--line)}.alert{border:1px solid;border-radius:9px;padding:11px 13px;margin-bottom:13px;font-size:13px}.alert.error{background:#fff0f2;border-color:#f7cbd1;color:#9c2938}.alert.info{background:#edf6ff;border-color:#c9e3ff;color:#195b9c}.alert.warn{background:#fff8e7;border-color:#f1dda7;color:#805c18}.toast{position:fixed;right:20px;bottom:20px;background:#17243a;color:#fff;border-radius:10px;padding:12px 15px;box-shadow:0 12px 40px #0005;z-index:200;max-width:380px}.toast.error{background:#a62d3b}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top right,#177ee7 0,#10243f 42%,#07111f 100%)}.login-card{width:min(440px,100%);background:#fff;border-radius:18px;padding:30px;box-shadow:0 30px 90px #0008}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:23px}.login-brand h1{font-size:23px;margin:0}.login-brand p{color:var(--muted);margin:4px 0 0}.login form{display:grid;gap:15px}.login .btn{width:100%;padding:11px}.login-note{font-size:11px;color:#8794a7;text-align:center;margin-top:17px}.codebox{background:#0e192b;color:#d9e6f6;border-radius:10px;padding:14px;white-space:pre-wrap;max-height:520px;overflow:auto;font-family:Consolas,monospace;font-size:12px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);padding:0 14px}.tab{border:0;background:transparent;padding:12px 10px;color:#64748b;border-bottom:2px solid transparent}.tab.active{color:#126fda;border-color:#126fda;font-weight:700}.progress{height:8px;background:#e9eef5;border-radius:99px;overflow:hidden}.progress>span{display:block;height:100%;background:#2b8bed}.kpi-line{display:flex;justify-content:space-between;margin-bottom:7px;font-size:13px}.mono{font-family:Consolas,monospace}.muted{color:var(--muted)}.section-note{background:#f7faff;border:1px solid #deebf8;border-radius:9px;padding:11px 13px;font-size:12px;color:#4d6078}.recording{min-width:190px;height:32px}.sidebar-overlay{display:none}@media(max-width:1200px){.cards{grid-template-columns:repeat(2,1fr)}.shell{grid-template-columns:78px 1fr}.sidebar .nav-label,.sidebar .nav-text,.brand>div:last-child{display:none}.nav-btn,.brand{justify-content:center}.sidebar{padding-inline:10px}.nav-btn{padding:11px}.grid-2{grid-template-columns:1fr}}@media(max-width:760px){.shell{display:block}.sidebar{position:fixed;left:-290px;width:280px;z-index:70;transition:left .2s}.sidebar.open{left:0}.sidebar.open .nav-label,.sidebar.open .nav-text,.sidebar.open .brand>div:last-child{display:block}.sidebar.open .nav-btn,.sidebar.open .brand{justify-content:flex-start}.sidebar-overlay.show{display:block;position:fixed;inset:0;background:#0007;z-index:60}.menu-toggle{display:block}.content{padding:18px}.topbar{padding:0 14px}.tenant-picker{min-width:130px;max-width:180px}.user-box{display:none}.cards{grid-template-columns:1fr}.page-head{flex-direction:column}.form{grid-template-columns:1fr}.span-2{grid-column:span 1}.check-grid{grid-template-columns:1fr}.crumb{display:none}}
.stack-list{display:grid;gap:8px;margin-bottom:9px}.inline-row{display:grid;grid-template-columns:90px minmax(240px,1fr) auto;gap:8px;align-items:center}.digit-input{text-align:center;font-weight:800}.inline-row select{min-width:0}@media(max-width:760px){.inline-row{grid-template-columns:70px 1fr}.inline-row .btn{grid-column:span 2}}

/* ===== Monitoramento TEM PABX ===== */

.monitor-tabs{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin:4px 0 20px;
}

.monitor-tab{
  border:1px solid #cbd6e3;
  background:#fff;
  color:#445269;
  border-radius:9px;
  padding:10px 16px;
  font-weight:750;
  display:flex;
  align-items:center;
  gap:8px;
  transition:.15s ease;
}

.monitor-tab:hover{
  border-color:#8bbdf1;
  background:#f7fbff;
}

.monitor-tab.active{
  background:var(--blue);
  border-color:var(--blue);
  color:#fff;
  box-shadow:0 5px 16px #1674e82e;
}

.monitor-tab span{
  min-width:21px;
  height:21px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  font-size:11px;
  background:#edf2f7;
  color:#526176;
}

.monitor-tab.active span{
  background:#ffffff2b;
  color:#fff;
}

.monitor-section{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  box-shadow:0 4px 18px #15233a0a;
  margin-bottom:18px;
  padding:18px;
}

.monitor-section-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:16px;
  padding-bottom:13px;
  border-bottom:1px solid #edf1f5;
}

.monitor-section-title h2{
  font-size:17px;
  margin:0;
  color:#17233a;
}

.monitor-section-title p{
  margin:5px 0 0;
  font-size:12px;
  color:var(--muted);
}

.text-good{
  color:var(--good);
}

.text-bad{
  color:var(--bad);
}

.monitor-extension-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(230px,1fr));
  gap:12px;
}

.monitor-extension-card{
  display:grid;
  grid-template-columns:68px minmax(0,1fr);
  min-height:122px;
  border:1px solid var(--line);
  border-radius:11px;
  overflow:hidden;
  background:#fff;
  transition:transform .15s ease,box-shadow .15s ease;
}

.monitor-extension-card:hover{
  transform:translateY(-1px);
  box-shadow:0 8px 24px #15233a12;
}

.monitor-extension-card.online{
  border-color:#bfe9d3;
}

.monitor-extension-card.offline{
  border-color:#f1c9ce;
}

.monitor-extension-number{
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:17px;
  font-weight:850;
  background:#f8fafc;
  border-right:1px solid var(--line);
  color:#24334b;
}

.monitor-extension-card.online .monitor-extension-number{
  background:#edf9f3;
}

.monitor-extension-card.offline .monitor-extension-number{
  background:#fff3f4;
}

.monitor-extension-info{
  padding:12px 13px;
  min-width:0;
}

.monitor-extension-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  margin-bottom:5px;
}

.monitor-extension-head strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:14px;
}

.monitor-status-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  flex:0 0 auto;
}

.monitor-status-dot.online{
  background:var(--good);
  box-shadow:0 0 0 4px #e3f7ed;
}

.monitor-status-dot.offline{
  background:var(--bad);
  box-shadow:0 0 0 4px #ffe9ec;
}

.monitor-extension-state{
  display:inline-flex;
  font-size:10px;
  font-weight:850;
  letter-spacing:.05em;
  margin-bottom:7px;
}

.monitor-extension-state.online{
  color:#147342;
}

.monitor-extension-state.offline{
  color:#a62a39;
}

.monitor-extension-address{
  font-family:Consolas,monospace;
  font-size:12px;
  color:#26374f;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  margin-bottom:6px;
}

.monitor-extension-detail{
  color:#748399;
  font-size:11px;
  line-height:1.45;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.monitor-section>.panel{
  box-shadow:none;
  border-radius:10px;
  margin:12px 0 0;
}

.monitor-section>.section-note{
  margin-bottom:12px;
}

@media(max-width:1400px){
  .monitor-extension-grid{
    grid-template-columns:repeat(3,minmax(230px,1fr));
  }
}

@media(max-width:1050px){
  .monitor-extension-grid{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
}

@media(max-width:650px){
  .monitor-tabs{
    justify-content:flex-start;
  }

  .monitor-tab{
    flex:1 1 calc(50% - 8px);
  }

  .monitor-extension-grid{
    grid-template-columns:1fr;
  }

  .monitor-extension-card{
    grid-template-columns:60px minmax(0,1fr);
  }
}

.monitor-extension-device{
  font-size:12px;
  font-weight:750;
  color:#26374f;
  background:#f3f7fb;
  border-radius:6px;
  padding:6px 8px;
  margin:3px 0 8px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.monitor-extension-card.online .monitor-extension-device{
  background:#edf9f3;
  color:#176b45;
}

.monitor-extension-detail strong{
  color:#53647b;
  font-weight:700;
}

/* ===== Rotas de entrada avançadas ===== */

.modal.inbound-modal{
  width:min(1480px,100%);
}

.inbound-form{
  gap:18px;
}

.inbound-card{
  border:1px solid var(--line);
  border-radius:13px;
  padding:17px;
  background:#fff;
}

.inbound-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:16px;
}

.inbound-card-head h3{
  margin:0;
  color:#1c2d47;
  font-size:16px;
}

.inbound-card-head p{
  margin:4px 0 0;
  color:var(--muted);
  font-size:12px;
}

.inbound-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}

.inbound-span-2{
  grid-column:span 2;
}

.inbound-span-4{
  grid-column:span 4;
}

.inbound-pair{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}

.inbound-code-input{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
}

.inbound-code-input>span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  border:1px solid #cbd6e3;
  border-right:0;
  border-radius:8px 0 0 8px;
  background:#f4f7fb;
  color:#43536b;
  font-family:Consolas,monospace;
  font-weight:800;
}

.inbound-code-input input{
  border-radius:0 8px 8px 0;
  min-width:0;
}

.inbound-advanced{
  border:1px solid var(--line);
  border-radius:13px;
  background:#f9fbfd;
  overflow:hidden;
}

.inbound-advanced summary{
  cursor:pointer;
  padding:15px 17px;
  color:#2e405c;
  font-size:14px;
  font-weight:780;
  list-style:none;
}

.inbound-advanced summary::-webkit-details-marker{
  display:none;
}

.inbound-advanced summary::after{
  content:"＋";
  float:right;
  color:var(--blue);
}

.inbound-advanced[open] summary{
  border-bottom:1px solid var(--line);
}

.inbound-advanced[open] summary::after{
  content:"−";
}

.inbound-advanced>.inbound-grid{
  padding:17px;
}

.inbound-rule-scroll{
  overflow-x:auto;
  border:1px solid var(--line);
  border-radius:10px;
}

.inbound-rule-table{
  width:100%;
  min-width:1700px;
  border-collapse:collapse;
}

.inbound-rule-table th,
.inbound-rule-table td{
  padding:8px;
  border-bottom:1px solid #edf1f5;
  vertical-align:middle;
  text-align:left;
}

.inbound-rule-table th{
  background:#f7f9fc;
  color:#6c7b90;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.05em;
  white-space:nowrap;
}

.inbound-rule-table tbody tr:last-child td{
  border-bottom:0;
}

.inbound-rule-table input,
.inbound-rule-table select{
  width:100%;
  min-width:94px;
  padding:8px;
  font-size:12px;
}

.inbound-rule-table td:first-child input{
  min-width:180px;
}

.inbound-rule-table td:nth-child(2) select{
  min-width:130px;
}

.inbound-rule-table td:nth-child(11){
  min-width:250px;
}

.inbound-holiday-table{
  min-width:900px;
}

.inbound-holiday-table td:nth-child(3){
  min-width:320px;
}

.inbound-destination-stack{
  display:grid;
  gap:6px;
}

.inbound-rule-empty{
  margin-top:10px;
  padding:13px;
  border:1px dashed #ccd7e5;
  border-radius:9px;
  color:var(--muted);
  background:#fafcff;
  font-size:12px;
  text-align:center;
}

.inbound-form>.form-actions{
  position:sticky;
  bottom:-21px;
  z-index:3;
  margin:0 -21px -21px;
  padding:15px 21px;
  background:#fff;
  box-shadow:0 -8px 24px #17233a12;
}

@media(max-width:1100px){
  .inbound-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .inbound-span-4{
    grid-column:span 2;
  }
}

@media(max-width:760px){
  .modal.inbound-modal{
    max-height:96vh;
  }

  .inbound-card{
    padding:13px;
  }

  .inbound-card-head{
    flex-direction:column;
  }

  .inbound-grid,
  .inbound-pair{
    grid-template-columns:1fr;
  }

  .inbound-span-2,
  .inbound-span-4{
    grid-column:span 1;
  }

  .inbound-form>.form-actions{
    bottom:-21px;
  }
}

/* ===== Fim rotas de entrada avançadas ===== */

/* ===== Editor de filas em página completa ===== */

.queue-editor-form{
  display:grid;
  gap:18px;
  padding-bottom:30px;
}

.queue-editor-card{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:22px;
  box-shadow:0 4px 18px #15233a0a;
}

.queue-editor-section-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-bottom:17px;
  margin-bottom:19px;
  border-bottom:1px solid #edf1f5;
}

.queue-editor-section-head>div{
  position:relative;
  padding-left:48px;
}

.queue-editor-section-head h2{
  margin:0;
  color:#17233a;
  font-size:18px;
}

.queue-editor-section-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:13px;
  line-height:1.5;
}

.queue-editor-step{
  position:absolute;
  left:0;
  top:0;
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:10px;
  background:#e8f2ff;
  color:#1768c5;
  font-size:11px;
  font-weight:850;
}

.queue-editor-grid{
  display:grid;
  grid-template-columns:
    repeat(4,minmax(0,1fr));
  gap:17px;
  align-items:start;
}

.queue-editor-grid-main{
  grid-template-columns:
    repeat(3,minmax(0,1fr));
}

.queue-editor-full{
  grid-column:1 / -1;
}

.queue-editor-grid .check{
  min-height:39px;
  margin-top:20px;
  padding:9px 12px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#f9fbfd;
}

.queue-agent-area .check-grid{
  grid-template-columns:
    repeat(3,minmax(0,1fr));
  max-height:360px;
  padding:15px;
  gap:10px;
  background:#fbfdff;
}

.queue-agent-area .check-grid label{
  min-height:38px;
  padding:8px 10px;
  border:1px solid #e5ebf2;
  border-radius:8px;
  background:#fff;
}

.queue-agent-area .check-grid label:hover{
  border-color:#a9cbed;
  background:#f4f9ff;
}

.queue-editor-actions{
  position:sticky;
  bottom:14px;
  z-index:10;
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:14px;
  background:#fffffff2;
  border:1px solid var(--line);
  border-radius:12px;
  box-shadow:0 12px 40px #17233a1f;
  backdrop-filter:blur(8px);
}

@media(max-width:1200px){
  .queue-editor-grid,
  .queue-editor-grid-main{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .queue-agent-area .check-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }
}

@media(max-width:760px){
  .queue-editor-card{
    padding:17px;
  }

  .queue-editor-grid,
  .queue-editor-grid-main{
    grid-template-columns:1fr;
  }

  .queue-editor-full{
    grid-column:span 1;
  }

  .queue-agent-area .check-grid{
    grid-template-columns:1fr;
  }

  .queue-editor-actions{
    bottom:8px;
  }

  .queue-editor-actions .btn{
    flex:1;
  }
}



/* ===== Complementos do editor completo de filas ===== */

.queue-codes-grid,
.queue-pause-grid{
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid #edf1f5;
}

.queue-pause-title{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid #edf1f5;
  color:#25334a;
  font-size:13px;
  font-weight:800;
}

.queue-editor-grid select,
.queue-editor-grid input,
.queue-editor-grid textarea{
  width:100%;
}

.queue-editor-card .check{
  min-height:42px;
}

.queue-editor-card .queue-editor-full{
  grid-column:1 / -1;
}

@media(max-width:760px){
  .queue-codes-grid,
  .queue-pause-grid{
    grid-template-columns:1fr;
  }
}



/* ===== Prioridade individual dos agentes ===== */

.queue-priority-list{
  display:grid;
  gap:9px;
}

.queue-priority-row{
  display:grid;
  grid-template-columns:
    minmax(220px,1fr)
    150px;
  align-items:center;
  gap:14px;
  padding:11px 13px;
  border:1px solid #e2e8f0;
  border-radius:10px;
  background:#f9fbfd;
  opacity:.72;
  transition:
    border-color .15s,
    background .15s,
    opacity .15s;
}

.queue-priority-row.selected{
  border-color:#a9cbed;
  background:#f3f8ff;
  opacity:1;
}

.queue-priority-agent{
  display:flex;
  align-items:center;
  gap:11px;
  cursor:pointer;
}

.queue-priority-agent input{
  width:18px;
  height:18px;
  flex:0 0 auto;
}

.queue-priority-agent strong,
.queue-priority-agent small{
  display:block;
}

.queue-priority-agent strong{
  color:#17233a;
  font-size:13px;
}

.queue-priority-agent small{
  margin-top:3px;
  color:var(--muted);
  font-size:11px;
}

.queue-priority-input{
  display:grid;
  grid-template-columns:auto 78px;
  align-items:center;
  justify-content:end;
  gap:8px;
}

.queue-priority-input span{
  color:#56667c;
  font-size:11px;
  font-weight:750;
}

.queue-priority-input input{
  width:78px;
  text-align:center;
}

.queue-priority-input input:disabled{
  background:#eef2f6;
  color:#9aa6b5;
}

.queue-priority-note{
  margin-top:12px;
}

@media(max-width:760px){
  .queue-priority-row{
    grid-template-columns:1fr;
  }

  .queue-priority-input{
    justify-content:start;
    padding-left:29px;
  }
}



/* ===== Seletor duplo de agentes fixos ===== */

.queue-dual-selector{
  display:grid;
  grid-template-columns:
    minmax(260px,1fr)
    76px
    minmax(260px,1fr)
    54px;
  align-items:center;
  gap:16px;
}

.queue-dual-column{
  min-width:0;
}

.queue-dual-title{
  margin-bottom:8px;
  color:#17233a;
  font-size:13px;
  font-weight:800;
}

.queue-dual-list{
  width:100%;
  min-height:250px;
  padding:7px;
  border:1px solid #cbd7e6;
  border-radius:9px;
  background:#fff;
  color:#17233a;
  outline:none;
}

.queue-dual-list:focus{
  border-color:#2784e8;
  box-shadow:0 0 0 3px #2784e820;
}

.queue-dual-list option{
  padding:8px 9px;
  border-radius:5px;
}

.queue-dual-list option:checked{
  background:#ddecff;
}

.queue-dual-move,
.queue-dual-order{
  display:grid;
  gap:9px;
}

.queue-dual-move .btn,
.queue-dual-order .btn{
  min-height:38px;
  font-weight:850;
}

.queue-dual-priority{
  margin-top:11px;
}

.queue-dual-priority .field{
  margin:0;
}

.queue-dual-note{
  margin-top:13px;
}

@media(max-width:1000px){
  .queue-dual-selector{
    grid-template-columns:1fr;
  }

  .queue-dual-move,
  .queue-dual-order{
    grid-template-columns:1fr 1fr;
  }

  .queue-dual-move{
    transform:rotate(90deg);
    max-width:140px;
    margin:auto;
  }

  .queue-dual-list{
    min-height:190px;
  }
}



/* FIREWALL SIP UI */
.fw-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:15px;
  margin-bottom:20px;
}
.fw-metric{
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
  padding:18px;
  display:flex;
  gap:14px;
  align-items:center;
  box-shadow:0 4px 16px #16233b0a;
}
.fw-metric-icon{
  width:46px;
  height:46px;
  border-radius:13px;
  display:grid;
  place-items:center;
  flex:none;
  background:#e8f2ff;
  color:#1768c5;
  font-size:20px;
  font-weight:800;
}
.fw-metric-icon.danger{background:#ffe9ec;color:#b42c3c}
.fw-metric-icon.allowed{background:#e4f7ed;color:#147342}
.fw-metric-icon.events{background:#f1ebff;color:#6842bf}
.fw-metric small,.fw-metric span{display:block;color:var(--muted)}
.fw-metric strong{display:block;font-size:23px;margin:3px 0}
.fw-metric span{font-size:11px}
.fw-status.pending{color:#956213}
.fw-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.fw-section{padding:0}
.fw-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:18px 19px;
  border-bottom:1px solid var(--line);
}
.fw-section-head h2{font-size:17px;margin:0}
.fw-section-head p{font-size:12px;color:var(--muted);margin:5px 0 0}
.fw-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.fw-empty,.fw-event-empty{
  min-height:190px;
  padding:34px 20px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--muted);
}
.fw-empty-icon{
  width:47px;
  height:47px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#e4f7ed;
  color:#147342;
  font-size:21px;
  font-weight:800;
  margin-bottom:12px;
}
.fw-empty-icon.danger{background:#ffe9ec;color:#b42c3c}
.fw-empty strong,.fw-event-empty strong{color:#36445a;margin-bottom:5px}
.fw-empty span,.fw-event-empty p{font-size:12px;margin:0}
.fw-filters{
  display:grid;
  grid-template-columns:repeat(4,minmax(130px,1fr));
  gap:10px;
  padding:14px 19px;
  background:#f8fafc;
  border-bottom:1px solid var(--line);
}
.fw-radar{
  width:70px;
  height:70px;
  border:1px solid #cfe0f3;
  border-radius:50%;
  position:relative;
  margin-bottom:16px;
  background:radial-gradient(circle,#eaf4ff 0 3px,transparent 4px);
}
.fw-radar:before,.fw-radar:after{
  content:"";
  position:absolute;
  inset:12px;
  border:1px solid #dce9f6;
  border-radius:50%;
}
.fw-radar:after{inset:25px}
.fw-radar span{
  position:absolute;
  width:30px;
  height:1px;
  background:#4d9df0;
  left:35px;
  top:35px;
  transform-origin:left center;
  transform:rotate(-35deg);
}
@media(max-width:1100px){
  .fw-metrics{grid-template-columns:repeat(2,1fr)}
  .fw-grid{grid-template-columns:1fr}
}
@media(max-width:760px){
  .fw-metrics{grid-template-columns:1fr}
  .fw-section-head{align-items:flex-start;flex-direction:column}
  .fw-filters{grid-template-columns:1fr}
}
