/* PABX Prime Firewall V8 - 2026-10-07 */
.fw8{--fw8-bg:#f6f8fb;--fw8-p:#fff;--fw8-t:#182235;--fw8-m:#69768a;--fw8-l:#e1e7ee;--fw8-a:#235cff;--fw8-as:#eef3ff;--fw8-g:#17744a;--fw8-gb:#edf8f2;--fw8-w:#975800;--fw8-wb:#fff7e8;--fw8-r:#b3261e;--fw8-rb:#fff0ef;color:var(--fw8-t)}
.fw8 *{box-sizing:border-box}.fw8 button,.fw8 input,.fw8 select{font:inherit}.fw8 button{cursor:pointer}
.fw8-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:14px}
.fw8-head h1{margin:0 0 4px;font-size:25px}.fw8-head p{margin:0;color:var(--fw8-m);max-width:780px}
.fw8-statusline{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.fw8-pill{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:800;display:inline-block;white-space:nowrap}
.fw8-good{background:var(--fw8-gb);color:var(--fw8-g)}.fw8-warn{background:var(--fw8-wb);color:var(--fw8-w)}.fw8-bad{background:var(--fw8-rb);color:var(--fw8-r)}.fw8-info{background:var(--fw8-as);color:#2853a6}
.fw8-tabs{display:flex;gap:5px;background:#fff;border:1px solid var(--fw8-l);border-radius:11px;padding:5px;margin:0 0 16px}
.fw8-tab{flex:1;border:0;background:transparent;padding:11px;border-radius:8px;color:#5a6779;font-weight:800}
.fw8-tab.active{background:var(--fw8-as);color:#1749c8}.fw8-view{display:none}.fw8-view.active{display:block}
.fw8-panel{background:#fff;border:1px solid var(--fw8-l);border-radius:12px;box-shadow:0 8px 22px rgba(26,39,63,.055)}.fw8-pad{padding:17px}
.fw8-grid{display:grid;gap:12px}.fw8-g4{grid-template-columns:repeat(4,1fr)}.fw8-g3{grid-template-columns:repeat(3,1fr)}.fw8-g2{grid-template-columns:repeat(2,1fr)}
.fw8-section{margin-top:15px}.fw8-section-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin-bottom:9px}
.fw8-section-head h2{margin:0 0 3px;font-size:16px}.fw8-section-head p{margin:0;color:var(--fw8-m);font-size:12px}
.fw8-btn{border:1px solid var(--fw8-l);background:#fff;color:#2b384d;border-radius:8px;padding:8px 11px;font-weight:700}
.fw8-btn:hover{background:#f8fafc}.fw8-btn.primary{background:var(--fw8-a);border-color:var(--fw8-a);color:#fff}.fw8-btn.danger{color:var(--fw8-r);border-color:#efc8c5}.fw8-btn.small{padding:6px 9px;font-size:12px}.fw8-btn:disabled{opacity:.55;cursor:not-allowed}
.fw8-actions{display:flex;gap:7px;flex-wrap:wrap}.fw8-metric{padding:14px}.fw8-metric small{display:block;color:var(--fw8-m)}.fw8-metric strong{display:block;font-size:21px;margin:3px 0}.fw8-metric span{font-size:12px;color:var(--fw8-m)}
.fw8-inspect{border-color:#cfdcff;background:linear-gradient(180deg,#fff,#fbfdff)}.fw8-iprow{display:grid;grid-template-columns:1fr auto;gap:8px}.fw8-iprow input,.fw8-field input,.fw8-field select,.fw8-toolbar input,.fw8-toolbar select{border:1px solid #ccd5df;border-radius:9px;padding:10px 11px;background:#fff;outline:none}
.fw8-iprow input:focus,.fw8-field input:focus,.fw8-field select:focus,.fw8-toolbar input:focus{border-color:#7fa2ff;box-shadow:0 0 0 3px rgba(35,92,255,.1)}
.fw8-inspect-result{margin-top:12px}.fw8-result-main{padding:14px;border-left:4px solid var(--fw8-g);background:#fff;border-radius:9px;border:1px solid var(--fw8-l);border-left-width:4px}.fw8-result-main.bad{border-left-color:var(--fw8-r)}.fw8-result-main h3{margin:0 0 3px}.fw8-result-main p{margin:0;color:var(--fw8-m)}
.fw8-checkgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}.fw8-check{padding:11px;background:#fff;border:1px solid var(--fw8-l);border-radius:8px}.fw8-check small{display:block;color:var(--fw8-m)}.fw8-check strong{display:block;margin:2px 0}.fw8-check span{font-size:11px;color:var(--fw8-m)}
.fw8-result-lower{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}.fw8-mini{padding:12px;background:#fff;border:1px solid var(--fw8-l);border-radius:8px}.fw8-mini h4{margin:0 0 8px}.fw8-row{display:flex;justify-content:space-between;gap:10px;padding:8px 0;border-bottom:1px solid #edf1f5}.fw8-row:last-child{border-bottom:0}.fw8-row small{display:block;color:var(--fw8-m)}
.fw8-toolbar{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.fw8-toolbar input{flex:1;min-width:220px}
.fw8-timeline .fw8-event{display:grid;grid-template-columns:95px 1fr auto;gap:12px;padding:13px;border-bottom:1px solid #edf1f5;align-items:start}.fw8-event:last-child{border-bottom:0}.fw8-event time{font-size:12px;color:var(--fw8-m)}.fw8-event h3{margin:0 0 3px;font-size:14px}.fw8-event p{margin:0;color:var(--fw8-m);font-size:12px}
.fw8-rule{display:grid;grid-template-columns:1fr auto;gap:12px;padding:14px;border-bottom:1px solid #edf1f5;align-items:center}.fw8-rule:last-child{border-bottom:0}.fw8-rule h3{margin:0 0 3px}.fw8-rule strong{display:block}.fw8-rule p{margin:3px 0 0;color:var(--fw8-m);font-size:12px}
.fw8-details{background:#fff;border:1px solid var(--fw8-l);border-radius:10px;padding:12px 14px;margin-top:12px}.fw8-details summary{font-weight:800;cursor:pointer}
.fw8-list{margin-top:10px}.fw8-list-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:10px;border-top:1px solid #edf1f5;align-items:center}.fw8-list-row:first-child{border-top:0}.fw8-list-row small{display:block;color:var(--fw8-m)}
.fw8-diag-top{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.fw8-diagbox{padding:17px}.fw8-diagbox h2{margin:0 0 4px}.fw8-diagbox>p{margin:0 0 14px;color:var(--fw8-m)}
.fw8-field{margin-bottom:11px}.fw8-field label{display:block;font-size:12px;font-weight:800;margin-bottom:5px}.fw8-field select,.fw8-field input{width:100%}
.fw8-target-types{display:flex;gap:7px;flex-wrap:wrap}.fw8-target-types .active{background:var(--fw8-as);border-color:#b9caff;color:#1749c8}
.fw8-selected{display:none;padding:11px;background:var(--fw8-as);border:1px solid #d7e2ff;border-radius:9px;margin-top:10px}.fw8-selected.active{display:flex;justify-content:space-between;align-items:center;gap:10px}.fw8-selected strong{display:block;color:#1749c8}.fw8-selected span{font-size:12px;color:#5d6e93}
.fw8-categories{display:none;margin-top:13px}.fw8-categories.active{display:block}.fw8-catgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.fw8-cat{border:1px solid var(--fw8-l);background:#fff;border-radius:10px;padding:13px;text-align:left;min-height:100px}.fw8-cat:hover,.fw8-cat.active{border-color:var(--fw8-a);background:var(--fw8-as)}.fw8-cat strong{display:block;margin-bottom:4px}.fw8-cat span{font-size:12px;color:var(--fw8-m)}
.fw8-suboptions{display:none;margin-top:10px;padding:12px;background:#f8fafc;border:1px solid var(--fw8-l);border-radius:9px}.fw8-suboptions.active{display:block}.fw8-suboptions h4{margin:0 0 8px}.fw8-subgrid{display:flex;gap:7px;flex-wrap:wrap}
.fw8-plan{display:none;margin-top:12px}.fw8-plan.active{display:block}.fw8-planline{display:flex;justify-content:space-between;gap:14px;padding:9px 10px;background:#f8fafc;border-radius:8px;margin-top:6px}
.fw8-preflight,.fw8-capture,.fw8-summary{display:none;margin-top:14px}.fw8-preflight.active,.fw8-capture.active,.fw8-summary.active{display:block}
.fw8-pregrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.fw8-preitem{background:#fff;border:1px solid var(--fw8-l);border-radius:9px;padding:11px}.fw8-preitem small{display:block;color:var(--fw8-m)}.fw8-preitem strong{display:block;margin:2px 0}.fw8-preitem span{font-size:11px;color:var(--fw8-m)}
.fw8-progress{height:7px;background:#e9edf3;border-radius:999px;overflow:hidden;margin:9px 0}.fw8-progress div{height:100%;width:0;background:var(--fw8-a);transition:width .35s}
.fw8-reproduce{padding:13px;border-radius:10px;background:var(--fw8-as);border:1px solid #d6e1ff;margin:10px 0}.fw8-reproduce strong{display:block;color:#1749c8;margin-bottom:3px}
.fw8-live{border:1px solid var(--fw8-l);border-radius:10px;overflow:hidden;margin-top:10px}.fw8-live-row{display:grid;grid-template-columns:165px 110px 1fr auto;gap:9px;padding:9px 10px;border-bottom:1px solid #edf1f5;align-items:center}.fw8-live-row:last-child{border-bottom:0}.fw8-live-row time{font:11px ui-monospace,Consolas,monospace;color:var(--fw8-m)}.fw8-live-row b{font-family:ui-monospace,Consolas,monospace}.fw8-live-row small{display:block;color:var(--fw8-m)}
.fw8-hero{display:grid;grid-template-columns:1fr auto;gap:14px;padding:16px;border-radius:11px;border:1px solid #efdfbd;background:var(--fw8-wb)}.fw8-hero.bad{background:var(--fw8-rb);border-color:#efcfcc}.fw8-hero.good{background:var(--fw8-gb);border-color:#cee7d8}.fw8-hero h2{margin:4px 0 5px}.fw8-hero p{margin:0;color:#665a46}.fw8-confidence{text-align:right}.fw8-confidence small{display:block;color:var(--fw8-m)}.fw8-confidence strong{display:block;font-size:16px}
.fw8-solve{padding:12px;background:var(--fw8-gb);border:1px solid #cee7d8;border-radius:9px;margin-top:10px}.fw8-solve strong{display:block;color:var(--fw8-g)}
.fw8-result-tabs{display:flex;gap:5px;margin-top:13px;border-bottom:1px solid var(--fw8-l);overflow:auto}.fw8-result-tab{border:0;background:transparent;padding:9px 11px;color:#657187;font-weight:800;white-space:nowrap;border-bottom:2px solid transparent}.fw8-result-tab.active{color:#1749c8;border-bottom-color:var(--fw8-a)}
.fw8-pane{display:none;padding-top:12px}.fw8-pane.active{display:block}.fw8-simple-flow{display:grid;gap:7px}.fw8-flow{display:grid;grid-template-columns:145px 1fr auto;gap:10px;padding:10px;border-radius:9px;background:#f8fafc;align-items:center}.fw8-flow b{font-family:ui-monospace,Consolas,monospace}.fw8-flow small{display:block;color:var(--fw8-m)}
.fw8-ladder{overflow:auto;border:1px solid var(--fw8-l);border-radius:10px}.fw8-ladder table{width:100%;border-collapse:collapse;min-width:760px}.fw8-ladder th,.fw8-ladder td{padding:8px 9px;border-bottom:1px solid #edf1f5;text-align:left;font-size:12px}.fw8-ladder th{background:#f8fafc}.fw8-ladder code{font-size:11px}
.fw8-raw{white-space:pre-wrap;background:#111827;color:#d9e0ea;border-radius:8px;padding:12px;max-height:440px;overflow:auto;font:11px/1.55 ui-monospace,Consolas,monospace}
.fw8-media-note{padding:13px;border-radius:9px;background:#f8fafc;border:1px solid var(--fw8-l);color:var(--fw8-m)}
.fw8-modal-back{position:fixed;inset:0;z-index:70;background:rgba(17,24,39,.32);display:flex;align-items:center;justify-content:center;padding:20px}.fw8-modal{width:min(760px,100%);max-height:86vh;overflow:auto;background:#fff;border-radius:13px;box-shadow:0 24px 60px rgba(0,0,0,.22)}.fw8-modal-head{display:flex;justify-content:space-between;gap:12px;padding:15px;border-bottom:1px solid var(--fw8-l)}.fw8-modal-head h2{margin:0}.fw8-modal-body{padding:15px}.fw8-error{padding:12px;background:var(--fw8-rb);border:1px solid #efcfcc;border-radius:9px;color:var(--fw8-r)}.fw8-empty{padding:20px;text-align:center;color:var(--fw8-m)}
.fw8-mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
@media(max-width:1050px){.fw8-catgrid{grid-template-columns:repeat(3,1fr)}.fw8-checkgrid,.fw8-pregrid{grid-template-columns:repeat(2,1fr)}.fw8-g4{grid-template-columns:repeat(2,1fr)}.fw8-diag-top,.fw8-result-lower{grid-template-columns:1fr}}
@media(max-width:650px){.fw8-head{display:block}.fw8-statusline{justify-content:flex-start;margin-top:10px}.fw8-g4,.fw8-g3,.fw8-g2,.fw8-checkgrid,.fw8-pregrid,.fw8-catgrid{grid-template-columns:1fr}.fw8-timeline .fw8-event{grid-template-columns:65px 1fr}.fw8-timeline .fw8-event>div:last-child{grid-column:2}.fw8-live-row{grid-template-columns:78px 85px 1fr}.fw8-live-row>span:last-child{grid-column:3}.fw8-hero{grid-template-columns:1fr}.fw8-confidence{text-align:left}.fw8-flow{grid-template-columns:110px 1fr}.fw8-flow>span:last-child{grid-column:2}}



/* PABX PRIME FW8 HISTORY DETAIL V1 20261007 */
.fw8-timeline .fw8-event.fw8-event-rich{
  grid-template-columns:145px minmax(0,1fr) 250px;
  align-items:start;
}
.fw8-event-body h3{margin-bottom:5px}
.fw8-event-why{
  margin:0 0 7px!important;
  color:var(--fw8-t)!important;
  font-size:13px!important;
  font-weight:750;
}
.fw8-event-meta{display:flex;flex-wrap:wrap;gap:5px 7px}
.fw8-event-meta span{
  display:inline-block;
  padding:4px 7px;
  border:1px solid var(--fw8-l);
  background:#f8fafc;
  border-radius:7px;
  color:var(--fw8-m);
  font-size:11px;
  line-height:1.25;
}
.fw8-event-side{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:9px;
}
.fw8-event-side .fw8-actions{justify-content:flex-end}
.fw8-history-detail .fw8-row strong{text-align:right;max-width:65%}
@media(max-width:900px){
 .fw8-timeline .fw8-event.fw8-event-rich{grid-template-columns:105px minmax(0,1fr)}
 .fw8-event-side{grid-column:2;align-items:flex-start}
 .fw8-event-side .fw8-actions{justify-content:flex-start}
}
@media(max-width:620px){
 .fw8-timeline .fw8-event.fw8-event-rich{grid-template-columns:1fr}
 .fw8-timeline .fw8-event.fw8-event-rich time,
 .fw8-timeline .fw8-event.fw8-event-rich .fw8-event-side{grid-column:1}
}


/* PABX PRIME FW8 DIAGNOSTICO UX FIX V1 20261007 */
.fw8-diag-top{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.95fr);gap:18px}
.fw8-diagbox .fw8-section-head,.fw8-plan-card .fw8-section-head{margin-bottom:12px}
.fw8-target-types{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.fw8-target-types .fw8-btn.small{padding:10px 14px;border-radius:12px}
.fw8-selected{margin-top:14px;min-height:68px;padding:14px 16px;border:1px dashed var(--fw8-l);border-radius:16px;background:#f8fbff;display:none;align-items:center;justify-content:space-between;gap:12px}
.fw8-selected.active{display:flex}
.fw8-target-summary{display:flex;flex-direction:column;gap:4px}
.fw8-target-summary strong{font-size:16px;line-height:1.25}
.fw8-target-summary span{color:var(--fw8-m);font-size:13px}
.fw8-catgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.fw8-cat{padding:16px;border-radius:16px;min-height:108px;justify-content:flex-start;align-items:flex-start;text-align:left}
.fw8-cat strong{font-size:17px;line-height:1.25;margin-bottom:6px}
.fw8-cat span{font-size:13px;line-height:1.35;color:var(--fw8-m)}
.fw8-suboptions h4{margin-bottom:10px}
.fw8-plan-card{border:1px solid var(--fw8-l);background:#fbfdff;border-radius:18px;padding:16px}
.fw8-planlines{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}
.fw8-planline{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--fw8-l);border-radius:12px;background:#fff}
.fw8-planline span{font-size:13px;line-height:1.35;color:var(--fw8-t)}
.fw8-plan-actions{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:14px}
.fw8-plan-actions .fw8-media-note{margin:0;flex:1 1 320px}
.fw8-plan-actions .fw8-actions{margin:0;gap:10px}
.fw8-plan-actions .fw8-btn.primary{min-width:220px}
.fw8-picker-row{cursor:pointer}
.fw8-picker-row:hover,.fw8-picker-row:focus{background:#f8fbff;outline:none}
.fw8-list-row .fw8-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
@media (max-width:1100px){.fw8-diag-top{grid-template-columns:1fr}.fw8-plan-actions{align-items:flex-start}.fw8-plan-actions .fw8-actions{width:100%}}
@media (max-width:720px){.fw8-catgrid,.fw8-planlines{grid-template-columns:1fr}.fw8-selected.active{flex-direction:column;align-items:flex-start}.fw8-target-types .fw8-btn.small{flex:1 1 100%}.fw8-plan-actions .fw8-btn.primary{min-width:0;width:100%}}


/* PABX PRIME FW8 SEGURANCA ORGANIZADA V1 20261007 */
.fw8-fold{padding:0;overflow:hidden}
.fw8-fold>summary{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;list-style:none}
.fw8-fold>summary::-webkit-details-marker{display:none}
.fw8-fold>summary span{font-size:15px;font-weight:850}
.fw8-fold>summary small{font-size:12px;color:var(--fw8-m);font-weight:650;text-align:right}
.fw8-fold[open]>summary{border-bottom:1px solid var(--fw8-l);background:#fbfdff}
.fw8-rules-inner{border:0;border-radius:0;box-shadow:none}
.fw8-impact-list{overflow:hidden}
.fw8-impact-group+.fw8-impact-group{border-top:1px solid var(--fw8-l)}
.fw8-impact-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:#f8fafc;border-bottom:1px solid var(--fw8-l)}
.fw8-impact-head>div{display:flex;flex-direction:column;gap:2px}.fw8-impact-head small{color:var(--fw8-m)}
.fw8-impact-row{display:grid;grid-template-columns:minmax(170px,1fr) minmax(145px,.8fr) minmax(240px,1.35fr) auto;gap:14px;align-items:center;padding:13px 15px;border-bottom:1px solid #edf1f5}
.fw8-impact-row:last-child{border-bottom:0}.fw8-impact-row>div{min-width:0}.fw8-impact-row small{display:block;color:var(--fw8-m);font-size:11px;margin-bottom:3px}.fw8-impact-row strong{display:block;line-height:1.3}.fw8-impact-row span{display:block;color:var(--fw8-m);font-size:11px;margin-top:3px}
.fw8-impact-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap;max-width:270px}
.fw8-event-clean{grid-template-columns:145px minmax(0,1fr) 150px!important}
.fw8-event-clean .fw8-event-side{align-items:flex-end;justify-content:center}.fw8-event-clean .fw8-event-side .fw8-btn{min-width:86px}
.fw8-security-rules{margin-top:12px}
.fw8-ssh-detail .fw8-mini>small{display:block;color:var(--fw8-m);margin-bottom:4px}.fw8-ssh-detail .fw8-mini>strong{display:block;font-size:18px}.fw8-ssh-detail .fw8-mini>span{display:block;color:var(--fw8-m);font-size:12px;margin-top:3px}
.fw8-chipset{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0 12px}.fw8-chipset span{padding:6px 8px;border:1px solid var(--fw8-l);border-radius:8px;background:#f8fafc;font-size:12px}
@media(max-width:1050px){.fw8-impact-row{grid-template-columns:1fr 1fr}.fw8-impact-actions{max-width:none;justify-content:flex-start}.fw8-event-clean{grid-template-columns:110px minmax(0,1fr)!important}.fw8-event-clean .fw8-event-side{grid-column:2;align-items:flex-start;flex-direction:row}}
@media(max-width:680px){.fw8-fold>summary{align-items:flex-start;flex-direction:column}.fw8-fold>summary small{text-align:left}.fw8-impact-row{grid-template-columns:1fr}.fw8-impact-actions{width:100%}.fw8-impact-actions .fw8-btn{flex:1 1 auto}.fw8-event-clean{grid-template-columns:1fr!important}.fw8-event-clean .fw8-event-side{grid-column:auto}.fw8-event-clean time{margin-bottom:2px}}

/* PABX PRIME FW8 BLOQUEIO DOSSIER V1 20261007 */
.fw8-block-dossier{min-width:0}
.fw8-block-summary{margin-top:14px;padding:16px 18px;border:1px solid #f0c9c9;background:#fff7f7;border-radius:14px}
.fw8-block-summary strong{display:block;margin-bottom:5px;font-size:15px}
.fw8-block-summary p{margin:0;line-height:1.5;color:var(--fw8-t)}
.fw8-block-events{display:grid;gap:8px}
.fw8-block-event{display:grid;grid-template-columns:155px minmax(0,1fr);gap:14px;align-items:start;padding:11px 12px;border:1px solid var(--fw8-l);border-radius:12px;background:#fff}
.fw8-block-event time{font-size:12px;color:var(--fw8-m)}
.fw8-block-event div{display:flex;flex-direction:column;gap:3px;min-width:0}
.fw8-block-event strong{font-size:13px;line-height:1.35}
.fw8-block-event small{color:var(--fw8-m);line-height:1.35}
.fw8-block-dossier .fw8-mini h4{margin-bottom:9px}
.fw8-block-dossier .fw8-row strong{max-width:65%;text-align:right;overflow-wrap:anywhere}
.fw8-impact-actions .fw8-btn.primary{font-weight:700}
@media(max-width:720px){.fw8-block-event{grid-template-columns:1fr}.fw8-block-dossier .fw8-row{align-items:flex-start}.fw8-block-dossier .fw8-row strong{max-width:60%}}


/* PABX PRIME FW8 BLOCK CLEAR V1 20261007 */
.fw8-block-loading{padding:34px 18px;text-align:center;display:flex;flex-direction:column;gap:7px;color:var(--fw8-m)}
.fw8-block-loading strong{font-size:18px;color:var(--fw8-t)}
.fw8-block-dossier-simple{display:flex;flex-direction:column;gap:14px}
.fw8-block-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border-radius:16px;border:1px solid #fecaca;background:#fff7f7}
.fw8-block-hero small{display:block;color:#991b1b;font-weight:700;margin-bottom:4px}
.fw8-block-hero h3{margin:0 0 6px;font-size:22px;line-height:1.2}
.fw8-block-hero p{margin:0;line-height:1.45;color:var(--fw8-t)}
.fw8-block-kpis{display:grid;grid-template-columns:1.25fr 1fr 1fr .8fr;gap:10px}
.fw8-block-kpis>div{border:1px solid var(--fw8-l);border-radius:14px;padding:12px 14px;background:#fff;min-width:0}
.fw8-block-kpis small{display:block;color:var(--fw8-m);font-size:12px;margin-bottom:4px}
.fw8-block-kpis strong{display:block;font-size:16px;line-height:1.25;overflow-wrap:anywhere}
.fw8-block-kpis span{display:block;color:var(--fw8-m);font-size:12px;margin-top:3px;overflow-wrap:anywhere}
.fw8-block-impact-summary{border:1px solid var(--fw8-l);border-radius:16px;padding:14px;background:#fbfdff}
.fw8-block-impact-summary .fw8-section-head{margin-bottom:10px}
.fw8-block-company{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-top:1px solid var(--fw8-l)}
.fw8-block-company:first-of-type{border-top:0}
.fw8-block-company>div:first-child{display:flex;flex-direction:column;gap:2px}
.fw8-block-company strong{font-size:15px}.fw8-block-company span{font-size:12px;color:var(--fw8-m)}
.fw8-block-exts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}
.fw8-block-exts span{padding:5px 8px;border-radius:9px;background:#eef4ff;color:#173f9e;font-weight:700;font-size:12px}
.fw8-impact-none{display:flex;flex-direction:column;gap:5px;padding:12px;border-radius:12px;background:#f8fafc;color:var(--fw8-m)}
.fw8-impact-none strong{color:var(--fw8-t)}
@media(max-width:1000px){.fw8-block-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.fw8-block-kpis{grid-template-columns:1fr}.fw8-block-hero,.fw8-block-company{flex-direction:column}.fw8-block-exts{justify-content:flex-start}}


/* PABX PRIME FW8 UX COMPACT V1 20261007 */
.fw8-history-fold{margin-top:16px}
.fw8-history-fold summary,.fw8-fold summary{min-height:56px}
.fw8-history-head{align-items:center;margin-bottom:10px}
.fw8-diagnosis-guide{margin-top:14px;padding:14px 16px;border:1px solid var(--fw8-l);border-radius:14px;background:#f8fbff;display:flex;justify-content:space-between;gap:16px;align-items:flex-start}
.fw8-diagnosis-guide small{display:block;color:var(--fw8-m);margin-bottom:3px}.fw8-diagnosis-guide strong{display:block;font-size:16px}.fw8-diagnosis-guide p{margin:5px 0 0;color:var(--fw8-m);line-height:1.4}
.fw8-plan-compact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px}
.fw8-plan-compact>div:first-child{display:flex;flex-direction:column;gap:3px}.fw8-plan-compact>div:first-child span{color:var(--fw8-m);font-size:13px}
.fw8-plan-compact .fw8-mini-details{grid-column:1/-1;margin:0}
.fw8-pre-next{margin-top:12px;padding:12px 14px;border-radius:12px;background:#f5f8fc;color:var(--fw8-t);font-size:13px;line-height:1.4}
.fw8-result-brief{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:20px;border:1px solid var(--fw8-l);border-radius:16px;background:#fff}.fw8-result-brief.bad{border-color:#fecaca;background:#fffafa}.fw8-result-brief.good{border-color:#bbf7d0;background:#fbfffc}.fw8-result-brief h2{margin:4px 0 6px;font-size:22px}.fw8-result-brief p{margin:0;color:var(--fw8-m);line-height:1.5}
.fw8-solve{margin-top:12px;display:flex;gap:10px;align-items:flex-start;padding:14px 16px;border-radius:14px;background:#f5f8fc}.fw8-solve strong{white-space:nowrap}.fw8-solve span{line-height:1.45}
.fw8-result-detail{margin-top:12px}
@media(max-width:760px){.fw8-plan-compact{grid-template-columns:1fr}.fw8-diagnosis-guide,.fw8-result-brief,.fw8-solve{flex-direction:column}.fw8-plan-compact .fw8-actions{width:100%}.fw8-plan-compact .fw8-btn{flex:1}}

/* PABX PRIME FW8 V8.8 HUMAN DIAGNOSIS 20261007 */
.fw8-viewmode{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 14px;border:1px solid var(--fw8-l);border-radius:14px;background:#fff}
.fw8-viewmode>div:first-child{display:flex;flex-direction:column;gap:3px}.fw8-viewmode strong{font-size:14px}.fw8-viewmode span{font-size:12px;color:var(--fw8-m)}
.fw8-segmented{display:flex;gap:4px;padding:4px;border:1px solid var(--fw8-l);border-radius:12px;background:#f8fafc}.fw8-segmented button{border:0;background:transparent;padding:8px 12px;border-radius:9px;font:inherit;font-weight:700;color:var(--fw8-m);cursor:pointer}.fw8-segmented button.active{background:#fff;color:#173f9e;box-shadow:0 1px 3px rgba(15,23,42,.08)}
.fw8-compare-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.fw8-compare-chips>small{color:var(--fw8-m);margin-right:2px}.fw8-compare-chips>span{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:9px;background:#eef4ff;color:#173f9e;font-size:12px;font-weight:700}.fw8-compare-chips button{border:0;background:transparent;color:inherit;font-size:15px;line-height:1;cursor:pointer;padding:0}
.fw8-multi-list{max-height:440px;overflow:auto;border:1px solid var(--fw8-l);border-radius:14px;background:#fff}.fw8-multi-row{display:flex;gap:10px;align-items:center;padding:10px 12px;border-bottom:1px solid #edf1f5;cursor:pointer}.fw8-multi-row:last-child{border-bottom:0}.fw8-multi-row:hover{background:#f8fbff}.fw8-multi-row input{width:18px;height:18px}.fw8-multi-row span{display:flex;flex-direction:column;gap:2px}.fw8-multi-row small{color:var(--fw8-m)}
.fw8-capture-status{margin:12px 0;padding:16px 18px;border:1px solid #cbdcff;border-radius:14px;background:#f7faff;display:flex;flex-direction:column;gap:4px}.fw8-capture-status strong{font-size:18px;line-height:1.3}.fw8-capture-status span{color:var(--fw8-m);font-size:13px;line-height:1.4}
.fw8-human-timeline{display:grid;gap:8px}.fw8-human-timeline>div{display:grid;grid-template-columns:165px minmax(0,1fr);gap:12px;padding:10px 12px;border:1px solid var(--fw8-l);border-radius:12px;background:#fff}.fw8-human-timeline time{font-size:12px;color:var(--fw8-m)}.fw8-human-timeline span{font-weight:700}.fw8-human-timeline span small{display:block;margin-top:3px;color:var(--fw8-m);font-weight:500}.fw8-human-timeline.detailed>div{background:#fbfdff}
.fw8-result-answers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.fw8-result-answers>div{padding:13px 14px;border:1px solid var(--fw8-l);border-radius:13px;background:#fff;min-width:0}.fw8-result-answers small{display:block;color:var(--fw8-m);font-size:11px;margin-bottom:4px}.fw8-result-answers strong{display:block;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
.fw8-ladder td strong{display:block}.fw8-ladder td small{display:block;color:var(--fw8-m);margin-top:2px}
@media(max-width:980px){.fw8-result-answers{grid-template-columns:1fr 1fr}.fw8-viewmode{align-items:flex-start}}
@media(max-width:650px){.fw8-viewmode{flex-direction:column}.fw8-segmented{width:100%}.fw8-segmented button{flex:1}.fw8-result-answers{grid-template-columns:1fr}.fw8-human-timeline>div{grid-template-columns:1fr}.fw8-compare-button{width:100%}}

/* PABX PRIME FW8 V8.9 UX AUDIT 20261007 */
.fw8 button,.fw8 input,.fw8 select{font:inherit}
.fw8-btn{min-height:38px}
.fw8-btn.small{min-height:32px}

/* Modais: cabeçalho e ações sempre visíveis */
.fw8-modal-back{padding:16px}
.fw8-modal{
  width:min(780px,100%);
  max-height:min(88vh,820px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(31,45,68,.10);
  border-radius:16px;
}
.fw8-modal-head{
  flex:0 0 auto;
  align-items:center;
  padding:14px 16px;
  background:#fff;
}
.fw8-modal-head h2{font-size:20px;line-height:1.2}
.fw8-modal-body{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding:16px;
  overscroll-behavior:contain;
}
.fw8-modal-actions{
  position:sticky;
  bottom:-16px;
  z-index:6;
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:9px;
  margin:16px -16px -16px;
  padding:12px 16px;
  border-top:1px solid var(--fw8-l);
  background:rgba(255,255,255,.98);
  box-shadow:0 -8px 22px rgba(31,45,68,.07);
}

/* Liberar / bloquear IP */
.fw8-rule-form{max-width:680px;margin:0 auto}
.fw8-rule-hero{
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:13px 14px;
  margin-bottom:15px;
  border:1px solid var(--fw8-l);
  border-radius:11px;
  background:#f8fafc;
}
.fw8-rule-hero strong{font-size:15px;color:var(--fw8-t)}
.fw8-rule-hero span{font-size:13px;line-height:1.45;color:var(--fw8-m)}
.fw8-rule-hero.good{background:var(--fw8-gb);border-color:#cfe7d7}
.fw8-rule-hero.bad{background:var(--fw8-rb);border-color:#efcfcc}
.fw8-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.fw8-span-2{grid-column:1/-1}
.fw8-field label b{color:var(--fw8-r)}
.fw8-field small{display:block;margin-top:5px;color:var(--fw8-m);font-size:11.5px;line-height:1.35}
#fw8-rule-error{margin-top:10px}

/* Seletor pesquisável de cliente */
.fw8-client-picker{position:relative;margin-bottom:12px}
.fw8-client-picker>label{display:block;margin-bottom:6px;font-size:12px;font-weight:800;color:var(--fw8-t)}
.fw8-client-searchbox{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}
.fw8-client-searchbox input{width:100%}
.fw8-client-hint{display:block;margin-top:5px;color:var(--fw8-m);font-size:11.5px}
.fw8-client-results{
  position:absolute;
  left:0;
  right:0;
  top:67px;
  z-index:20;
  max-height:286px;
  overflow:auto;
  border:1px solid var(--fw8-l);
  border-radius:10px;
  background:#fff;
  box-shadow:0 16px 34px rgba(31,45,68,.16);
  padding:5px;
}
.fw8-client-option{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:0;
  border-radius:8px;
  background:#fff;
  padding:9px 10px;
  text-align:left;
  color:var(--fw8-t);
  cursor:pointer;
}
.fw8-client-option:hover,.fw8-client-option:focus{background:#f4f7fb;outline:none}
.fw8-client-option strong{font-size:13px}
.fw8-client-option small{color:var(--fw8-m);font-size:11px;white-space:nowrap}

/* Comparação de ramais */
.fw8-multi-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:end;
  margin:12px 0
}
.fw8-multi-count{
  min-width:105px;
  padding:9px 11px;
  border:1px solid var(--fw8-l);
  border-radius:9px;
  background:#f8fafc;
  color:var(--fw8-m);
  text-align:center;
  white-space:nowrap;
  font-size:12px
}
.fw8-multi-count strong{font-size:16px;color:var(--fw8-t)}
.fw8-multi-list{max-height:min(46vh,430px);overflow:auto;border:1px solid var(--fw8-l);border-radius:10px}
.fw8-multi-footer{justify-content:space-between}

/* Diagnóstico mais compacto */
.fw8-preflight.fw8-pad{padding:11px 12px}
.fw8-preflight{margin-top:9px}
.fw8-preflight .fw8-section-head{margin-bottom:7px}
.fw8-preflight .fw8-pregrid{gap:8px}
.fw8-preflight .fw8-preitem{padding:8px 10px}
.fw8-preflight .fw8-pre-next{margin-top:8px;padding:8px 10px;font-size:12px}
.fw8-diagbox{overflow:visible}
.fw8-target-types{display:flex;flex-wrap:wrap;gap:7px}
.fw8-top-actions{display:flex;flex-wrap:wrap;gap:8px}
.fw8-top-actions .fw8-btn{min-width:118px}
.fw8-plan-card .fw8-actions{flex-wrap:wrap}
.fw8-plan-card .fw8-actions .fw8-btn{min-width:138px}

/* Melhor leitura em telas médias */
@media(max-width:900px){
  .fw8-form-grid{grid-template-columns:1fr}
  .fw8-span-2{grid-column:auto}
  .fw8-top-actions .fw8-btn{flex:1 1 150px}
  .fw8-client-results{max-height:240px}
}
@media(max-width:650px){
  .fw8-modal-back{padding:0;align-items:flex-end}
  .fw8-modal{width:100%;max-height:93vh;border-radius:16px 16px 0 0}
  .fw8-modal-head{padding:12px 13px}
  .fw8-modal-head h2{font-size:18px}
  .fw8-modal-body{padding:13px}
  .fw8-modal-actions{bottom:-13px;margin:13px -13px -13px;padding:11px 13px;flex-wrap:wrap}
  .fw8-modal-actions>.fw8-btn{flex:1 1 130px}
  .fw8-multi-footer{align-items:stretch;flex-direction:column}
  .fw8-multi-footer>.fw8-actions{width:100%;display:flex}
  .fw8-multi-footer>.fw8-actions .fw8-btn{flex:1}
  .fw8-multi-toolbar{grid-template-columns:1fr}
  .fw8-multi-count{text-align:left}
  .fw8-client-searchbox{grid-template-columns:1fr}
  .fw8-client-searchbox .fw8-btn{width:100%}
  .fw8-client-results{top:105px}
  .fw8-top-actions{display:grid;grid-template-columns:1fr 1fr}
  .fw8-top-actions .fw8-btn{min-width:0;width:100%}
  .fw8-top-actions [data-fw8-refresh]{grid-column:1/-1}
  .fw8-iprow{grid-template-columns:1fr}
  .fw8-iprow .fw8-btn{width:100%}
  .fw8-plan-card .fw8-actions{display:grid;grid-template-columns:1fr}
  .fw8-plan-card .fw8-actions .fw8-btn{width:100%}
}


/* PABX PRIME FW8 V8.9.2 STRUCTURAL MODAL UX 20261007 */
.fw8-modal-footer{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 16px;
  border-top:1px solid var(--fw8-l);
  background:#fff;
  box-shadow:0 -8px 22px rgba(31,45,68,.06);
}
.fw8-modal-footer .fw8-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex-wrap:wrap;
  margin-left:auto;
}
.fw8-modal-footer .fw8-btn{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  align-items:center;
  justify-content:center;
  min-width:118px;
}
.fw8-modal-footer .fw8-btn.primary{
  background:var(--fw8-a)!important;
  border-color:var(--fw8-a)!important;
  color:#fff!important;
}
.fw8-modal-footer-note{
  color:var(--fw8-m);
  font-size:12px;
  line-height:1.35;
}
.fw8-rule-form{max-width:720px;margin:0 auto}
.fw8-rule-hero{padding:10px 12px;margin-bottom:13px;border-radius:10px}
.fw8-rule-hero strong{font-size:14px}
.fw8-rule-hero span{font-size:12px}
.fw8-compare-intro{
  display:flex;
  flex-direction:column;
  gap:3px;
  padding:10px 12px;
  border:1px solid var(--fw8-l);
  border-radius:10px;
  background:#f8fafc;
  margin-bottom:10px;
}
.fw8-compare-intro strong{font-size:14px;color:var(--fw8-t)}
.fw8-compare-intro span{font-size:12px;line-height:1.4;color:var(--fw8-m)}
.fw8-multi-row.selected{background:#f2f6ff}
.fw8-client-results{max-height:210px}
.fw8-modal-actions{display:none!important}

@media(max-width:650px){
  .fw8-modal-footer{align-items:stretch;flex-direction:column;padding:11px 13px}
  .fw8-modal-footer-note{width:100%}
  .fw8-modal-footer .fw8-actions{width:100%;margin-left:0}
  .fw8-modal-footer .fw8-actions .fw8-btn{flex:1 1 0;min-width:0}
}
