
:root{
  --bg:#f5f7fb; --panel:#fff; --text:#172033; --muted:#6f7a8e; --line:#e7eaf0;
  --dark:#101827; --dark2:#182235; --accent:#1f7ae0; --accent2:#0e5db7; --green:#18a66a;
  --yellow:#d89c1b; --red:#db4b4b; --purple:#7956d9; --shadow:0 12px 40px rgba(18,32,61,.08);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
button,input,select{font:inherit}
.hidden{display:none!important}
.app{display:flex;min-height:100vh}
.sidebar{width:260px;background:linear-gradient(180deg,var(--dark),#0b1220);color:#fff;padding:20px 16px;display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0}
.sidebar-brand{display:flex;gap:12px;align-items:center;padding:4px 8px 20px}
.sidebar-brand strong{display:block;font-size:14px;letter-spacing:.08em}
.sidebar-brand span,.sidebar-footer span{display:block;font-size:11px;color:#93a1b7;margin-top:3px}
.brand-mark{width:54px;height:54px;border-radius:18px;background:linear-gradient(135deg,#2485ef,#784fd2);display:grid;place-items:center;color:#fff;font-weight:800;font-size:25px;box-shadow:0 12px 30px rgba(52,113,229,.35)}
.brand-mark.small{width:38px;height:38px;border-radius:12px;font-size:18px}
.nav-section{font-size:10px;letter-spacing:.12em;color:#6f819b;margin:18px 12px 8px}
.nav-item{width:100%;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:#b9c4d4;padding:11px 12px;border-radius:10px;text-align:left;cursor:pointer}
.nav-item:hover,.nav-item.active{background:#1b2940;color:#fff}
.nav-item.active{box-shadow:inset 3px 0 0 #438ee8}
.nav-item span{width:18px;text-align:center}
.sidebar-footer{margin-top:auto;border-top:1px solid #243147;padding:16px 8px 0;display:flex;align-items:center;gap:10px;font-size:12px}
.status-dot{width:9px;height:9px;border-radius:50%;background:#2ec780;box-shadow:0 0 0 4px rgba(46,199,128,.12)}
.main{margin-left:260px;min-height:100vh;width:calc(100% - 260px)}
.topbar{height:88px;background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:5}
.topbar h2{margin:4px 0 0;font-size:23px}
.breadcrumbs{font-size:11px;color:var(--muted)}
.topbar-actions{display:flex;align-items:center;gap:12px}
.ghost-btn,.primary-btn,.secondary-btn,.danger-btn{border:0;border-radius:10px;padding:10px 14px;font-weight:600;cursor:pointer}
.ghost-btn{background:#eef3fa;color:#315275}
.primary-btn{background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff}
.secondary-btn{background:#eef3fa;color:#1a5da9}
.danger-btn{background:#fff0f0;color:#b83737}
.full{width:100%}
.circle-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:#fff;position:relative;cursor:pointer}
.notif{position:absolute;right:-2px;top:-4px;background:#e34848;color:#fff;border-radius:10px;font-size:9px;padding:2px 5px}
.user-chip{display:flex;align-items:center;gap:9px}
.user-chip strong,.user-chip span{display:block}
.user-chip strong{font-size:12px}.user-chip span{font-size:10px;color:var(--muted)}
.avatar{width:38px;height:38px;border-radius:12px;background:#1d2d47;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:700}
.content{padding:26px}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.kpi{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow)}
.kpi .label{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.kpi .value{font-size:27px;font-weight:800;margin:8px 0 5px}
.kpi .trend{font-size:11px;color:var(--green)}
.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;margin-top:18px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px}
.panel{background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);padding:18px}
.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.panel h3{margin:0;font-size:15px}
.panel-sub{font-size:11px;color:var(--muted);margin-top:4px}
.progress{height:8px;background:#edf0f4;border-radius:10px;overflow:hidden}
.progress > span{display:block;height:100%;background:linear-gradient(90deg,#2a7edf,#6953d8);border-radius:10px}
.table{width:100%;border-collapse:collapse}
.table th{font-size:10px;color:var(--muted);text-transform:uppercase;text-align:left;padding:10px;border-bottom:1px solid var(--line)}
.table td{font-size:12px;padding:12px 10px;border-bottom:1px solid #f0f2f5;vertical-align:middle}
.table tr:hover td{background:#fafcff}
.badge{display:inline-flex;align-items:center;gap:5px;border-radius:20px;padding:5px 8px;font-size:10px;font-weight:700}
.badge.green{background:#e8f8f1;color:#128052}.badge.yellow{background:#fff6df;color:#a97410}
.badge.red{background:#ffeded;color:#bd3e3e}.badge.blue{background:#eaf3ff;color:#1a65b8}
.badge.purple{background:#f1ecff;color:#6a4ac7}.badge.gray{background:#edf0f3;color:#657082}
.small-dot{width:6px;height:6px;border-radius:50%;background:currentColor}
.kanban{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;overflow-x:auto}
.kanban-col{background:#f1f4f8;border-radius:14px;padding:12px;min-width:210px}
.kanban-title{font-size:11px;font-weight:800;color:#536077;display:flex;justify-content:space-between;margin-bottom:10px}
.kanban-card{background:white;border:1px solid var(--line);border-radius:12px;padding:12px;margin-bottom:10px;box-shadow:0 6px 18px rgba(20,35,70,.05);cursor:pointer}
.kanban-card strong{font-size:12px;display:block}.kanban-card span{font-size:10px;color:var(--muted)}
.health{display:flex;align-items:center;gap:8px}
.health-ball{width:10px;height:10px;border-radius:50%}
.health-ball.green{background:var(--green)}.health-ball.yellow{background:var(--yellow)}.health-ball.red{background:var(--red)}
.client-header{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}
.client-header h3{font-size:20px;margin:4px 0}
.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0}
.tab{border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;font-size:11px;cursor:pointer}
.tab.active{background:#17243a;color:#fff;border-color:#17243a}
.timeline{display:flex;gap:0;margin:20px 0 8px}
.step{flex:1;position:relative;text-align:center;font-size:10px;color:var(--muted)}
.step:before{content:"";height:3px;background:#e3e7ed;position:absolute;top:8px;left:0;right:0}
.step:first-child:before{left:50%}.step:last-child:before{right:50%}
.step .dot{position:relative;z-index:1;width:18px;height:18px;border-radius:50%;background:#d8dde5;margin:auto;border:4px solid #fff;box-shadow:0 0 0 1px #d8dde5}
.step.done .dot,.step.active .dot{background:#287cdf;box-shadow:0 0 0 1px #287cdf}
.step.done:before,.step.active:before{background:#287cdf}
.step label{display:block;margin-top:6px}
.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.field label{display:block;font-size:10px;color:var(--muted);margin-bottom:6px;font-weight:700}
.field input,.field select{width:100%;padding:10px 11px;border:1px solid #dfe4eb;border-radius:9px;background:#fff}
.metric-line{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #eef1f5;font-size:12px}
.metric-line:last-child{border-bottom:0}
.provider-card{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff}
.provider-card .provider-top{display:flex;justify-content:space-between;align-items:flex-start}
.provider-logo{width:42px;height:42px;border-radius:12px;background:#eef3fa;display:grid;place-items:center;font-weight:800;color:#245b98}
.score{font-size:26px;font-weight:800}
.route-result{border:1px solid #dfe6ef;border-radius:13px;padding:15px}
.route-result.best{border:2px solid #2680df;box-shadow:0 8px 26px rgba(38,128,223,.12)}
.bar{height:7px;background:#edf1f5;border-radius:10px;overflow:hidden}.bar span{display:block;height:100%;background:#2b7fdd}
.audit-item{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}
.audit-time{width:120px;font-size:10px;color:var(--muted)}
.audit-body strong{font-size:12px}.audit-body p{margin:4px 0 0;font-size:11px;color:var(--muted)}
.login-screen{min-height:100vh;background:#0d1421;display:grid;place-items:center;position:relative;overflow:hidden}
.login-bg{position:absolute;inset:0}.glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:.38}
.g1{width:420px;height:420px;background:#147fe9;top:-120px;right:5%}.g2{width:380px;height:380px;background:#714bd4;bottom:-120px;left:5%}
.login-card{width:min(430px,92vw);background:rgba(255,255,255,.97);border-radius:24px;padding:34px;position:relative;z-index:1;box-shadow:0 30px 80px rgba(0,0,0,.34)}
.login-card h1{margin:12px 0 8px;font-size:30px}.login-card p{font-size:13px;color:var(--muted);line-height:1.55}
.eyebrow{font-size:10px;letter-spacing:.14em;color:#4872a4;font-weight:800;margin-top:12px}
.login-card label{display:block;font-size:10px;font-weight:800;color:#667085;margin:16px 0 6px}
.login-card input{width:100%;padding:12px 13px;border:1px solid #dfe4ea;border-radius:10px}
.password-wrap{display:flex;gap:8px}.password-wrap input{flex:1}
.icon-btn{border:0;background:#eef2f6;border-radius:9px;padding:8px 11px;cursor:pointer}
.login-error{display:none;color:#c93f3f;font-size:11px;margin-top:10px}.login-error.show{display:block}
.demo-note{text-align:center;color:#96a0af;font-size:10px;margin-top:16px}
.modal{position:fixed;inset:0;background:rgba(6,13,25,.58);display:grid;place-items:center;z-index:30;padding:20px}
.modal-card{width:min(720px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;padding:22px;box-shadow:0 30px 90px rgba(0,0,0,.25)}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}.modal-head h3{margin:4px 0 0}
.notice{background:#eef6ff;border:1px solid #cfe4fb;color:#245985;border-radius:12px;padding:12px;font-size:11px;line-height:1.5}
@media(max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.kanban{grid-template-columns:repeat(5,230px)}}
@media(max-width:800px){.sidebar{width:74px;padding:18px 9px}.sidebar-brand div:not(.brand-mark),.nav-section,.nav-item:not(.active) span+*,.sidebar-footer div:last-child{display:none}.sidebar-brand{padding-left:8px}.nav-item{justify-content:center}.main{margin-left:74px;width:calc(100% - 74px)}.topbar{padding:0 16px}.user-chip div:last-child,.ghost-btn{display:none}.content{padding:16px}.kpi-grid,.grid-3,.form-grid{grid-template-columns:1fr}}


/* ===== ZENDREX BRAND SYSTEM 2026 ===== */
:root{
  --z-navy:#062A66; --z-blue:#0B73FF; --z-cyan:#29D6F7;
  --z-light:#BFE8F8; --z-gray:#5F6F86; --z-white:#FFFFFF;
  --z-gradient:linear-gradient(135deg,#0B73FF 0%,#29D6F7 100%);
  --bg:#F6F9FC; --panel:#FFFFFF; --text:#062A66; --muted:#5F6F86;
  --line:#DDEAF4; --dark:#062A66; --dark2:#041D48;
  --accent:#0B73FF; --accent2:#29D6F7; --green:#169B68;
  --yellow:#CB8A13; --red:#CC4545; --purple:#5A58D6;
  --shadow:0 12px 32px rgba(6,42,102,.08);
}
body{font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
h1,h2,h3,.sidebar-brand strong,.kpi .value,.score{font-family:Montserrat,Inter,sans-serif}
h1,h2,h3{color:var(--z-navy)}
.brand-kicker,.brand-mantra,.topbar-tagline,.eyebrow,.nav-section{
  font-family:Montserrat,Inter,sans-serif;letter-spacing:.14em
}
.login-screen{
  background:
    radial-gradient(circle at 80% 10%,rgba(41,214,247,.18),transparent 30%),
    linear-gradient(145deg,#041D48 0%,#062A66 58%,#07469A 100%);
}
.login-card{
  border-radius:26px;border:1px solid rgba(191,232,248,.75);
  box-shadow:0 32px 90px rgba(0,20,60,.38);overflow:hidden
}
.login-card:before{
  content:"";position:absolute;right:-80px;bottom:-100px;width:250px;height:250px;
  background:linear-gradient(135deg,rgba(11,115,255,.11),rgba(41,214,247,.25));
  transform:rotate(-35deg);border-radius:80px;pointer-events:none
}
.login-logo{display:block;width:220px;max-width:72%;height:auto;margin:0 0 10px}
.brand-kicker{font-size:8px;color:var(--z-gray);font-weight:700;margin:5px 0 12px}
.brand-mantra{
  font-size:9px;color:var(--z-navy);font-weight:700;margin:12px 0 4px;
  padding-top:10px;position:relative
}
.brand-mantra:before{content:"";position:absolute;top:0;left:0;width:28px;height:2px;background:var(--z-cyan)}
.eyebrow{color:var(--z-blue);font-weight:800}
.login-card h1{font-size:32px;letter-spacing:-.035em}
.primary-btn{background:var(--z-gradient);box-shadow:0 7px 18px rgba(11,115,255,.22)}
.primary-btn:hover{filter:brightness(.97)}
.ghost-btn{background:#EDF7FC;color:var(--z-navy);border:1px solid #D4EAF6}
.sidebar{
  background:linear-gradient(180deg,#062A66 0%,#041D48 100%);
  width:268px;padding:21px 16px
}
.main{margin-left:268px;width:calc(100% - 268px);position:relative;overflow:hidden}
.sidebar-brand{gap:11px;border-bottom:1px solid rgba(191,232,248,.14);padding-bottom:20px}
.sidebar-logo-wrap{
  width:106px;background:#fff;border-radius:9px;padding:6px 8px;display:flex;align-items:center;min-height:38px
}
.sidebar-logo{display:block;width:90px;height:auto}
.sidebar-brand>div:last-child{min-width:0}
.sidebar-brand strong{font-size:12px;color:#fff;letter-spacing:.07em}
.sidebar-brand span{color:#BFE8F8}
.nav-section{color:#79BADD;font-size:9px;font-weight:700}
.nav-item{color:#C5D7EA;border:1px solid transparent}
.nav-item:hover,.nav-item.active{background:rgba(191,232,248,.10);border-color:rgba(191,232,248,.12);color:#fff}
.nav-item.active{box-shadow:inset 3px 0 0 var(--z-cyan)}
.sidebar-footer{border-top:1px solid rgba(191,232,248,.15);align-items:center}
.sidebar-footer strong{font-family:Montserrat,Inter,sans-serif;font-size:9px;line-height:1.25;color:#fff}
.sidebar-footer span{color:#8BB6D3}
.footer-symbol{width:34px;height:auto;object-fit:contain}
.topbar{background:rgba(255,255,255,.94);border-bottom:1px solid #DCEBF5;height:92px}
.topbar h2{font-family:Montserrat,Inter,sans-serif;color:var(--z-navy);font-weight:700}
.breadcrumbs{color:var(--z-gray)}
.topbar-tagline{font-size:7px;color:var(--z-navy);font-weight:700;margin-top:5px}
.avatar{background:var(--z-navy)}
.circle-btn{border-color:#D7E7F2;color:var(--z-navy)}
.kpi,.panel,.provider-card{border:1px solid #DCEAF4;box-shadow:var(--shadow)}
.kpi{position:relative;overflow:hidden}
.kpi:after{
  content:"";position:absolute;right:-26px;top:-28px;width:90px;height:48px;
  background:linear-gradient(135deg,rgba(11,115,255,.07),rgba(41,214,247,.16));
  transform:rotate(-38deg);border-radius:30px
}
.kpi .label{color:var(--z-gray);font-weight:700}
.kpi .value{color:var(--z-navy)}
.progress{background:#EAF4FA}.progress>span{background:var(--z-gradient)}
.table th{color:var(--z-gray);font-family:Montserrat,Inter,sans-serif;font-weight:700}
.table td{color:#213B60}.table tr:hover td{background:#F6FBFE}
.kanban-col{background:#EDF6FB;border:1px solid #DCECF5}
.kanban-card{border-color:#D8E8F2}
.kanban-title{color:var(--z-navy);font-family:Montserrat,Inter,sans-serif}
.tab{color:var(--z-navy);border-color:#D8E8F2}
.tab.active{background:var(--z-navy);border-color:var(--z-navy)}
.provider-logo{background:linear-gradient(135deg,#EAF6FC,#DDF3FB);color:var(--z-navy);border:1px solid #D4EAF5}
.bar{background:#E9F2F8}.bar span{background:var(--z-gradient)}
.route-result.best{border-color:var(--z-blue);box-shadow:0 10px 30px rgba(11,115,255,.12)}
.notice{background:#F0FAFE;border-color:#CBEAF6;color:#31597B}
.field input,.field select{border-color:#D8E7F1;color:#16365D}
.field input:focus,.field select:focus{outline:2px solid rgba(41,214,247,.25);border-color:#0B73FF}
.brand-ribbon{position:absolute;pointer-events:none;z-index:0}
.ribbon-login{
  width:420px;height:92px;left:-120px;top:38px;border-radius:70px;transform:rotate(-38deg);
  background:linear-gradient(90deg,#0B73FF,#29D6F7);opacity:.88
}
.ribbon-app{
  width:320px;height:54px;right:-120px;top:118px;border-radius:50px;transform:rotate(-36deg);
  background:linear-gradient(90deg,rgba(11,115,255,.06),rgba(41,214,247,.14))
}
.content{position:relative;z-index:1}
.panel-head h3:after{
  content:"";display:block;width:24px;height:2px;background:var(--z-cyan);margin-top:8px;border-radius:2px
}
.modal-card{border:1px solid #D8EAF4}
@media(max-width:800px){
  .sidebar{width:78px}.main{margin-left:78px;width:calc(100% - 78px)}
  .sidebar-logo-wrap{width:44px;padding:7px}.sidebar-logo{width:30px;object-fit:cover;object-position:left}
  .sidebar-brand>div:last-child{display:none}.footer-symbol{width:28px}
}

/* ===== TABELAS COMERCIAIS V0.3 ===== */
.rate-toolbar{
  display:grid;grid-template-columns:1.1fr 1.15fr 1.1fr 1fr;gap:12px;
  padding:14px;background:#F4FAFD;border:1px solid #D9ECF5;border-radius:14px;margin-bottom:16px
}
.rate-selector label{display:block;font-size:9px;font-weight:800;color:#5F6F86;letter-spacing:.08em;margin-bottom:6px}
.rate-selector select{
  width:100%;border:1px solid #D8E7F1;border-radius:9px;background:white;color:#16365D;padding:10px 11px
}
.table-status-line{height:40px;display:flex;align-items:center;gap:8px;font-size:10px;color:#5F6F86}
.rate-info-grid{margin-top:0}
.rate-table-wrap{overflow-x:auto;border:1px solid #DDEAF4;border-radius:12px}
.rate-table{min-width:850px}
.rate-table thead th{background:#F3F9FC}
.rate-value{font-weight:700;color:#0B5FC0!important}
.positive{color:#16885D}
.mini-label{
  display:block;font-size:7px;color:#0B73FF;letter-spacing:.05em;margin-top:3px;text-transform:uppercase
}
.table-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;flex-wrap:wrap}
.view-toggle{display:inline-flex;padding:3px;background:#EAF4FA;border-radius:10px}
.view-toggle button{border:0;background:transparent;border-radius:8px;padding:8px 11px;color:#5F6F86;font-size:10px;font-weight:700;cursor:pointer}
.view-toggle button.active{background:white;color:#062A66;box-shadow:0 3px 9px rgba(6,42,102,.09)}
.row-action{border:0;background:#EDF7FC;color:#0B5FC0;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:700;cursor:pointer}
.nested-panel{box-shadow:none;background:#FBFDFE}
.table-management-card{
  width:100%;border:1px solid #DDEAF4;background:#fff;border-radius:11px;padding:11px 12px;
  display:flex;flex-direction:column;text-align:left;gap:4px;margin-bottom:8px;cursor:pointer;color:#062A66
}
.table-management-card:hover{border-color:#9BDCF0;background:#F8FDFF}
.table-management-card strong{font-size:11px}.table-management-card span{font-size:9px;color:#5F6F86}
.client-assign-row{
  display:grid;grid-template-columns:28px 1.3fr 1fr;gap:10px;align-items:center;
  border-bottom:1px solid #EDF1F5;padding:10px 4px;font-size:11px;color:#27496C
}
.client-assign-row strong,.client-assign-row small{display:block}.client-assign-row small{color:#8391A2;margin-top:3px}
@media(max-width:1000px){.rate-toolbar{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.rate-toolbar{grid-template-columns:1fr}.client-assign-row{grid-template-columns:28px 1fr}.client-assign-row>span:last-child{grid-column:2}}

/* Zendrex Pay V0.4 — integração do motor comercial */
.zpx-control-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:12px;padding:16px;background:#f7f9fc;border:1px solid #e6ebf2;border-radius:12px;margin:14px 0}
.zpx-control-grid.compact{grid-template-columns:repeat(4,minmax(150px,1fr))}
.zpx-accessories{display:flex;gap:18px;flex-wrap:wrap;padding:12px 14px;border:1px solid #e6ebf2;border-radius:10px;background:#fff}
.zpx-accessories label{display:flex;gap:7px;align-items:center;font-size:11px;font-weight:600;color:#425066;cursor:pointer}
.zpx-accessories input{width:auto}
.zpx-rate-table th,.zpx-rate-table td{white-space:nowrap}
.zpx-profit-bar{height:10px;background:#e7edf4;border-radius:999px;overflow:hidden;margin-top:16px}
.zpx-profit-bar span{display:block;height:100%;background:linear-gradient(90deg,#1a365d,#2a73d9)}
@media(max-width:1100px){.zpx-control-grid,.zpx-control-grid.compact{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.zpx-control-grid,.zpx-control-grid.compact{grid-template-columns:1fr}}

/* Zendrex Pay V0.5 — Gerador de propostas / MDR */
.proposal-form-grid{grid-template-columns:repeat(4,minmax(170px,1fr))}
.proposal-mix-table{max-height:570px;overflow:auto;border:1px solid #e3e9f0;border-radius:10px;margin-top:12px}
.proposal-mix-table thead th{position:sticky;top:0;z-index:2;background:#f0f4f8}
.mix-input{width:82px!important;min-width:70px;text-align:right;padding:7px!important}
.proposal-summary{align-self:start;position:sticky;top:90px}
.proposal-warning{background:#fff7e8!important;border-color:#f2cc85!important;color:#815200!important}
.proposal-ok{background:#eefaf4!important;border-color:#b8e3cb!important;color:#17623b!important}
textarea{width:100%;border:1px solid #d7dfe8;border-radius:8px;padding:10px;font:inherit;resize:vertical;color:#24364b;background:#fff}
@media(max-width:1200px){.proposal-form-grid{grid-template-columns:repeat(2,1fr)}.proposal-summary{position:static}}
@media(max-width:700px){.proposal-form-grid{grid-template-columns:1fr}}

.zpx-toast{position:fixed;right:24px;bottom:24px;z-index:9999;background:#15375e;color:#fff;padding:12px 16px;border-radius:10px;box-shadow:0 12px 35px rgba(0,0,0,.2);opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s}.zpx-toast.show{opacity:1;transform:translateY(0)}.zpx-toast.error{background:#a72828}.logout-link{display:inline-flex;align-items:center;padding:8px 10px;border-radius:8px;color:#53657a;text-decoration:none;border:1px solid #dde4ec;font-size:12px;font-weight:700}


/* V1.1 */
.ghost-btn.danger{color:#a92f2f;border-color:#e8caca;background:#fff8f8}.ghost-btn.danger:hover{background:#fff0f0}


/* Zendrex Pay V1.2 — workflow de propostas */
.proposal-workflow-bar{
  display:flex;gap:22px;flex-wrap:wrap;align-items:center;
  padding:11px 14px;margin:14px 0;border:1px solid #e0e7ef;
  background:#f7f9fc;border-radius:10px;font-size:11px;color:#4b5b70
}
.proposal-workflow-bar b{color:#1c2f48}

/* Zendrex Pay V1.6 — Control Tower */
.control-head{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap}
.ct-provider-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:12px 0;border-bottom:1px solid #e7edf4}
.ct-provider-row:last-child{border-bottom:0}.ct-provider-row div:last-child{text-align:right}.ct-provider-row small{display:block;color:#738095;margin-top:3px}
.ct-alert{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-left:4px solid #94a3b8;padding:10px 12px;margin-bottom:9px;background:#f8fafc;border-radius:7px}
.ct-alert.warning{border-left-color:#d68b00;background:#fffaf0}.ct-alert.error,.ct-alert.critical{border-left-color:#c23934;background:#fff6f5}.ct-alert.info{border-left-color:#3a73b9}
.ct-alert small{display:block;color:#718096;margin-top:2px}.ct-alert p{margin:5px 0 0;color:#536174;font-size:11px;line-height:1.45}
.ct-shortcuts{display:grid;grid-template-columns:repeat(3,minmax(170px,1fr));gap:10px}.ct-shortcuts button{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:13px}.ct-shortcuts b{background:#e8eef6;padding:3px 7px;border-radius:999px}
@media(max-width:900px){.ct-shortcuts{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.ct-shortcuts{grid-template-columns:1fr}}

.input-action{display:flex;gap:6px;align-items:center}.input-action input{flex:1;min-width:0}.input-action .ghost-btn{white-space:nowrap}

/* Zendrex Pay V1.8 — Financeiro & Tesouraria */
.dre-total{border-top:1px solid #d8e0ea;margin-top:8px;padding-top:8px;font-weight:700}
.negative-value{font-weight:700}
#finMonth{height:36px;border:1px solid #d8e0ea;border-radius:7px;padding:0 9px;background:#fff}

/* Zendrex Pay V1.9 — Produção */
.user-chip{display:flex;flex-direction:column;line-height:1.1;font-size:12px;text-align:right;color:inherit}
.user-chip small{font-size:9px;text-transform:uppercase;opacity:.65;margin-top:3px}
.notif{min-width:16px;height:16px;padding:0 4px;align-items:center;justify-content:center}
.sidebar nav{overflow-y:auto}

/* Zendrex Pay V1.10 — Operação real */
.notice-inline{display:inline-flex;align-items:center;padding:6px 9px;border-radius:7px;font-size:10px;background:#fff6dd;border:1px solid #ead797}
.table small{opacity:.72}


/* Zendrex Pay V1.14 - Hospitality */
.ota-grid{display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:12px}.ota-card{border:1px solid #dce7f1;background:#fff;border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px}.ota-card b{font-size:14px;color:#123d72}.ota-card span{font-size:11px;color:#53657a}.ota-card small{font-size:9px;color:#8290a2;text-transform:uppercase}.ota-card.muted{background:#f8fafc;opacity:.78}.mini-pill{display:inline-block;font-size:9px;padding:3px 6px;border-radius:999px;background:#eef4fa;color:#315477;margin:1px}@media(max-width:850px){.ota-grid{grid-template-columns:1fr}}


/* V1.33 - Global Processing Center */
.zpx-processing{position:fixed;inset:0;z-index:12000;background:rgba(8,24,44,.38);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;padding:20px}.zpx-processing.hidden{display:none}.zpx-processing-card{width:min(620px,96vw);max-height:82vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 26px 80px rgba(0,0,0,.28);padding:22px}.zpx-processing-head{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.zpx-processing-head h3{margin:3px 0 0}.zpx-processing-current{margin:18px 0 9px;color:#40566f;font-size:12px}.zpx-progress{height:10px;background:#e8eef4;border-radius:999px;overflow:hidden}.zpx-progress span{display:block;height:100%;width:2%;background:linear-gradient(90deg,#15375e,#2587c8);transition:width .3s ease}.zpx-processing-meta{display:flex;justify-content:space-between;margin:7px 0 14px;font-size:11px;color:#64748b}.zpx-processing-steps{border-top:1px solid #edf1f5}.zpx-processing-step{display:flex;gap:10px;padding:10px 2px;border-bottom:1px solid #edf1f5;color:#40566f}.zpx-processing-step>span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#edf4fa;font-weight:800}.zpx-processing-step.success>span{background:#e8f7ef;color:#16734a}.zpx-processing-step.error>span{background:#fff0f0;color:#a72828}.zpx-processing-step b{display:block;font-size:11px}.zpx-processing-step small{display:block;margin-top:2px;color:#7b8999}.zpx-processing.minimized{inset:auto 22px 22px auto;background:none;backdrop-filter:none;padding:0}.zpx-processing.minimized .zpx-processing-card{width:360px;max-height:150px;padding:14px}.zpx-processing.minimized .zpx-processing-steps,.zpx-processing.minimized .notice{display:none}.zpx-processing.minimized .zpx-processing-current{margin:8px 0}.zpx-processing.minimized .zpx-processing-head .eyebrow{display:none}
/* V1.41.0 — Histórico paginado de processamentos */
.zpx-history-filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:18px 0}.zpx-history-filters label{display:flex;flex-direction:column;gap:5px;font-size:11px;color:#52677e;min-width:120px}.zpx-history-filters label:first-child{flex:2;min-width:210px}.zpx-history-filters input,.zpx-history-filters select{min-height:36px;border:1px solid #d6e1eb;border-radius:8px;padding:7px;background:#fff;max-width:100%}.zpx-history .kpi-grid{margin-top:16px}.zpx-history-link{padding:0;border:0;background:none;color:#153f70;text-align:left;cursor:pointer}.zpx-history-link:hover{text-decoration:underline}.zpx-history-progress{width:100px;height:7px;background:#e8eef4;border-radius:8px;overflow:hidden}.zpx-history-progress span{display:block;height:100%;background:#2587c8}.zpx-history-message{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.zpx-history-pager{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;color:#53657a}.zpx-history-pager div{display:flex;gap:8px}.zpx-history-detail small{overflow-wrap:anywhere}@media(max-width:700px){.zpx-history-pager{flex-wrap:wrap}.zpx-history-message{max-width:160px}}
