:root{--green:#42d629;--green-dark:#218d16;--black:#090b09;--bg:#f5f7f6;--text:#171c19;--muted:#758079;--line:#e4e8e5;--white:#fff;--danger:#e25555;--shadow:0 8px 30px rgba(20,33,24,.07)}*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(480px,1.18fr) minmax(430px,.82fr);background:#050605}.login-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;color:#fff;overflow:hidden;background:#020302}.login-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 38% 45%,rgba(132,255,40,.10),transparent 30%),linear-gradient(120deg,rgba(0,0,0,.06),rgba(0,0,0,.50));pointer-events:none}.login-visual:after{content:"";position:absolute;right:-180px;bottom:-190px;width:520px;height:520px;border:1px solid rgba(113,255,65,.16);transform:rotate(45deg);box-shadow:0 0 80px rgba(93,255,50,.04)}.login-brand-panel{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:52px 60px 24px}.login-brand-image{width:min(760px,92%);height:auto;object-fit:contain;filter:drop-shadow(0 18px 40px rgba(0,0,0,.5))}.login-product{width:min(680px,88%);margin-top:20px;padding-top:25px;border-top:1px solid rgba(255,255,255,.13);text-align:center}.login-product-kicker{font-size:11px;letter-spacing:.22em;color:#9dff59;font-weight:700}.login-product h1{font-size:34px;margin:11px 0 8px}.login-product p{margin:0;color:#b9c0ba;font-size:15px}.login-visual-footer{position:relative;z-index:1;padding:24px 38px;color:#747d76;font-size:11px;text-align:center}.login-card-wrap{display:grid;place-items:center;padding:40px;background:linear-gradient(145deg,#f9fbf9 0%,#edf2ee 100%);position:relative}.login-card-wrap:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 15%,rgba(73,215,41,.10),transparent 22%);pointer-events:none}.login-card{position:relative;z-index:1;width:min(440px,100%);background:#fff;padding:44px 42px;border-radius:22px;border:1px solid #e3e9e4;box-shadow:0 24px 70px rgba(18,35,22,.13)}.login-mobile-brand{display:none;text-align:center;margin-bottom:18px}.login-mobile-brand img{width:82px;border-radius:18px}.login-eyebrow{display:block;color:var(--green-dark);font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:10px}.login-card h2{margin:0;font-size:27px;letter-spacing:-.02em}.login-subtitle{margin:9px 0 26px;color:var(--muted);font-size:13px}.login-card label{display:grid;gap:8px;font-size:12px;font-weight:700;margin:17px 0;color:#39413b}.login-card input{width:100%;padding:13px 14px;border:1px solid #dfe5e0;border-radius:10px;outline:0;transition:.2s;background:#fbfcfb}.login-card input:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(66,214,41,.12);background:#fff}.password-field{position:relative}.password-field input{padding-right:42px}.password-field span{position:absolute;right:14px;top:50%;transform:translateY(-50%);color:#929c95;font-size:11px}.form-inline{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:12px;margin-top:5px}.form-inline .check{display:flex;grid-template-columns:auto 1fr;align-items:center;gap:7px;margin:0;font-weight:500}.form-inline .check input{width:auto}.form-inline a{color:var(--green-dark);font-weight:700;text-decoration:none}.login-submit{width:100%;margin-top:25px;padding:13px 16px;box-shadow:0 10px 22px rgba(47,185,31,.22)}.login-security{text-align:center;margin-top:18px;color:#7f8981;font-size:11px}.login-card small{display:block;text-align:center;margin-top:14px;color:#a0aaa2}.brand-icon{width:92px!important;height:92px;object-fit:cover;border-radius:22px;margin-bottom:16px!important;box-shadow:0 10px 28px rgba(0,0,0,.45)}.app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:#080a08;color:#fff;padding:22px 15px;display:flex;flex-direction:column;z-index:10}.brand{width:155px;margin:0 auto 22px}.sidebar nav{overflow:auto;display:grid;gap:4px}.sidebar nav span{font-size:10px;color:#7f8a82;margin:18px 12px 7px}.sidebar nav button{border:0;background:transparent;color:#c9d0cb;text-align:left;padding:11px 13px;border-radius:9px;cursor:pointer}.sidebar nav button:hover,.sidebar nav button.active{background:linear-gradient(90deg,#173a12,#11230f);color:#68f34f}.sidebar footer{margin-top:auto;color:#a1aaa4;font-size:12px;padding:14px}.main{grid-column:2;min-width:0}.topbar{height:72px;background:#fff;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}.global-search{width:min(520px,55%);border:1px solid var(--line);border-radius:10px;padding:10px 13px;color:#8a948d}.global-search input{border:0;outline:0;width:90%}.top-actions{display:flex;gap:18px;align-items:center}.icon-btn{border:0;background:#f1f4f2;border-radius:50%;width:38px;height:38px;position:relative}.icon-btn span{position:absolute;top:-5px;right:-4px;background:#ef4545;color:#fff;border-radius:12px;padding:2px 5px;font-size:9px}.user{display:grid;font-size:13px}.user small{color:var(--muted)}.page{padding:28px}.page-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:20px}.page-head h1{margin:0 0 5px;font-size:25px}.page-head p{margin:0;color:var(--muted)}.btn{border:1px solid var(--line);background:#fff;border-radius:9px;padding:10px 15px;cursor:pointer;font-weight:600}.btn.primary{border-color:var(--green);background:linear-gradient(180deg,#4ade31,#2cbd1f);color:#fff}.link-btn{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0;margin-bottom:8px}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpis article{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;display:flex;gap:14px;box-shadow:0 2px 12px #15251a08}.kpis i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8fbe5;font-style:normal}.kpis span,.kpis small{display:block;color:var(--muted);font-size:12px}.kpis strong{display:block;font-size:21px;margin:3px 0}.grid-3{display:grid;grid-template-columns:1.15fr .95fr 1.15fr;gap:14px;margin-top:14px}.panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:17px;box-shadow:0 2px 12px #15251a08}.panel-title{display:flex;align-items:center;justify-content:space-between}.panel-title h3{font-size:14px}.bar-chart{height:210px;display:flex;align-items:flex-end;gap:18px;padding:20px 14px 32px;border-left:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.bar-chart span{position:relative;flex:1;min-width:18px;max-width:58px;min-height:18px;background:linear-gradient(180deg,#49dc32,#29b81e);border-radius:7px 7px 0 0;color:transparent;box-shadow:0 8px 20px rgba(43,190,31,.12)}.bar-chart span::after{content:attr(data-label);position:absolute;left:50%;top:calc(100% + 10px);transform:translateX(-50%);white-space:nowrap;color:#69746c;font-size:10px;font-weight:600}.bar-chart span:not([data-label])::after{content:attr(title)}.donut-wrap{display:flex;align-items:center;justify-content:space-around;height:180px}.donut{width:125px;height:125px;border-radius:50%;background:conic-gradient(#44cb2f 0 35%,#2389e8 35% 60%,#ffbf18 60% 90%,#aaa 90%);position:relative}.donut:after{content:"";position:absolute;inset:28px;border-radius:50%;background:#fff}.donut-wrap ul{list-style:none;padding:0;width:120px}.donut-wrap li{display:flex;justify-content:space-between;font-size:12px;margin:10px 0}.spark{font-size:55px;color:#38bb29;letter-spacing:-13px;overflow:hidden;height:115px}.positive{color:var(--green-dark)}.fake-map{height:160px;background:radial-gradient(circle at 30% 40%,#b4ecaa 0 8%,transparent 9%),radial-gradient(circle at 68% 30%,#c6f2bf 0 7%,transparent 8%),linear-gradient(135deg,#eef2ef,#dfe7e1);border-radius:8px;position:relative;padding:35px}.fake-map span,.fake-map b{display:inline-block;background:#45c632;color:#fff;border-radius:20px;padding:7px 10px;font-size:10px;margin:7px}table{width:100%;border-collapse:collapse;font-size:12px}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-size:11px}.badge{font-style:normal;padding:5px 8px;border-radius:12px;font-size:10px}.badge.green{background:#dcf7d8;color:#26831c}.badge.yellow{background:#fff0c8;color:#9a6a00}.badge.blue{background:#dfeefe;color:#2472b4}.badge.red{background:#ffe0e0;color:#a63232}.toolbar{display:flex;gap:10px;margin-bottom:14px}.toolbar input{flex:1;border:1px solid var(--line);border-radius:9px;padding:10px}.table-wrap{overflow:auto}.tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:14px}.tabs button{border:0;background:transparent;padding:14px 24px;cursor:pointer}.tabs button.active{color:var(--green-dark);border-bottom:2px solid var(--green)}.form-panel{padding:25px}.tab-view{display:none}.tab-view.active{display:block}.form-panel h3{font-size:15px;margin:10px 0 16px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.form-grid label{display:grid;gap:7px;font-size:12px;font-weight:600}.form-grid input,.form-grid select,.form-grid textarea{width:100%;padding:11px;border:1px solid var(--line);border-radius:8px;background:#fff}.span2{grid-column:span 2}.span3{grid-column:span 3}.form-actions{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.switch-row{display:flex;align-items:center;gap:12px}.switch input{display:none}.switch span{display:block;width:42px;height:23px;border-radius:15px;background:#cbd3cd;position:relative}.switch span:after{content:"";position:absolute;width:19px;height:19px;left:2px;top:2px;border-radius:50%;background:#fff;transition:.2s}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{left:21px}.map-preview{height:230px;margin-top:20px;border-radius:12px;background:linear-gradient(145deg,#e2e8e3,#f3f6f4);display:grid;place-items:center;text-align:center;color:var(--muted)}.uploads{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.uploads label{border:1px dashed #b8c2bb;border-radius:10px;padding:22px;display:grid;gap:10px}.delivery-layout{display:grid;grid-template-columns:.9fr 1.4fr;gap:14px}.delivery-list{display:grid;gap:8px}.delivery-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);padding:12px;border-radius:9px}.delivery-item small{display:block;color:var(--muted);margin-top:3px}.fake-route{height:430px;border-radius:10px;background:linear-gradient(135deg,#e7ece8,#f7f9f7);position:relative}.fake-route:after{content:"";position:absolute;inset:18% 15%;border:5px solid #2389e8;border-radius:50% 20% 55% 30%;transform:rotate(-8deg)}.fake-route span{position:relative;z-index:2;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;margin:50px 60px}.route-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.route-summary div{padding:13px;border:1px solid var(--line);border-radius:9px}.route-summary small{display:block;color:var(--muted)}.route-summary b{font-size:18px}.empty{text-align:center;padding:80px 20px}.empty b{font-size:20px}.empty p{color:var(--muted)}@media(max-width:1100px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr}.delivery-layout{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app{grid-template-columns:1fr}.sidebar{display:none}.main{grid-column:1}.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-card-wrap{min-height:100vh;padding:22px}.login-mobile-brand{display:block}.login-card{padding:34px 26px}.kpis{grid-template-columns:1fr}.page{padding:18px}.form-grid{grid-template-columns:1fr}.span2,.span3{grid-column:auto}.topbar{padding:0 14px}.global-search{width:65%}}

/* Login premium aprovado — Sprint 01 */
.premium-login{grid-template-columns:minmax(0,61%) minmax(440px,39%);background:#020403;min-height:100vh;overflow:hidden}
.premium-login .login-visual{position:relative;min-height:100vh;background-image:linear-gradient(90deg,transparent 78%,#020403 100%),url('assets/login-premium.png');background-size:cover;background-position:center center;background-repeat:no-repeat;border-right:1px solid rgba(127,255,0,.34)}
.login-visual-accessibility{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.premium-login .login-card-wrap{min-height:100vh;background:#020403;padding:32px 46px;display:flex;align-items:center;justify-content:center;position:relative}
.premium-login .login-card-wrap:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 35%,rgba(113,255,0,.08),transparent 33%),repeating-linear-gradient(125deg,transparent 0 34px,rgba(116,255,0,.015) 35px,transparent 36px);pointer-events:none}
.premium-card{width:min(500px,100%);background:linear-gradient(145deg,rgba(17,20,18,.95),rgba(3,5,4,.96));border:1px solid rgba(148,255,49,.38);border-radius:25px;padding:44px 38px 34px;color:#fff;box-shadow:0 28px 95px rgba(0,0,0,.58),0 0 34px rgba(115,255,0,.05);backdrop-filter:blur(16px)}
.premium-card .login-eyebrow{text-align:center;color:#87e312;font-size:13px;letter-spacing:.25em;margin-bottom:13px}
.premium-card h2{text-align:center;color:#fff;font-size:34px;font-weight:700;letter-spacing:-.035em}
.premium-card h2 strong{color:#71d526;font-weight:700}
.premium-card .login-subtitle{text-align:center;color:#c5cbc6;font-size:14px;margin:8px 0 15px}
.login-divider{width:44px;height:2px;background:#70dc21;margin:0 auto 25px;border-radius:2px}
.premium-card label{color:#f4f6f4;font-size:13px;margin:16px 0 8px}
.premium-field{position:relative;margin-top:8px}
.premium-field input{height:58px;color:#f7f9f7;background:linear-gradient(180deg,rgba(28,32,29,.92),rgba(13,16,14,.94));border:1px solid rgba(255,255,255,.15);border-radius:11px;padding:0 48px;font-size:14px}
.premium-field input:focus{background:rgba(18,22,19,.98);border-color:#72df24;box-shadow:0 0 0 3px rgba(114,223,36,.11),0 0 25px rgba(92,227,18,.08)}
.field-icon{position:absolute;left:18px;top:50%;transform:translateY(-50%);color:#77e126;font-size:20px;z-index:2}
.password-eye{position:absolute;right:18px;top:50%;transform:translateY(-50%);color:#e4e8e4;font-size:13px}
.premium-card .form-inline{margin-top:18px;color:#fff}.premium-card .form-inline .check{color:#fff}.premium-card .form-inline a{color:#84df28}
.premium-card .form-inline input{accent-color:#70d520}
.premium-submit{height:61px;margin-top:27px;border:0;border-radius:10px;background:linear-gradient(90deg,#58b80d,#8ce31d,#50aa09)!important;color:#fff!important;display:flex;align-items:center;justify-content:center;position:relative;font-size:15px;letter-spacing:.03em;overflow:hidden;box-shadow:0 12px 38px rgba(104,220,18,.18)}
.premium-submit:before{content:"";position:absolute;top:-130%;left:-40%;width:35%;height:360%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.36),transparent);transform:rotate(21deg);transition:left .65s ease}
.premium-submit:hover:before{left:120%}.premium-submit b{position:absolute;right:22px;font-size:27px;font-weight:300}
.login-separator{display:flex;align-items:center;gap:15px;color:#aeb5af;font-size:12px;margin:25px 0 18px}.login-separator:before,.login-separator:after{content:"";height:1px;background:rgba(255,255,255,.14);flex:1}
.biometric-btn{display:flex;align-items:center;justify-content:center;gap:15px;margin:0 auto;width:76%;padding:12px 18px;color:#fff;background:rgba(6,9,7,.6);border:1px solid rgba(255,255,255,.16);border-radius:10px;cursor:pointer}.fingerprint{font-size:29px;color:#7be125}.biometric-btn span:last-child{display:grid;text-align:left;gap:2px}.biometric-btn small{color:#adb4ae;font-size:11px}
.premium-security{margin-top:25px;display:flex;align-items:center;gap:15px;padding:16px 19px;border:1px solid rgba(125,222,48,.18);border-radius:10px;background:linear-gradient(90deg,rgba(92,175,21,.08),rgba(255,255,255,.025));text-align:left;color:#d8ddd8}.premium-security>span{font-size:26px;color:#7be323}.premium-security p{margin:0;font-size:12px;line-height:1.55}.premium-security b{color:#80df27}
.prototype-tag{color:#657068!important;margin-top:18px!important}
@media(max-width:1050px){.premium-login{grid-template-columns:52% 48%}.premium-login .login-card-wrap{padding:25px}.premium-card{padding:35px 28px}}
@media(max-width:760px){.premium-login{grid-template-columns:1fr}.premium-login .login-visual{display:none}.premium-login .login-card-wrap{padding:20px;background:radial-gradient(circle at 50% 0,rgba(111,255,0,.13),transparent 35%),#020403}.premium-card{padding:32px 24px}.premium-card h2{font-size:29px}.biometric-btn{width:100%}}

/* Correção de proporção da tela de login — escala uniforme do conjunto inteiro */
body.login-active{margin:0;overflow:hidden;background:#020403}
body.login-active .premium-login{
  --login-scale:1;
  position:fixed;
  left:50%;
  top:50%;
  width:1536px;
  height:1024px;
  min-height:0;
  grid-template-columns:940px 596px;
  transform:translate(-50%,-50%) scale(var(--login-scale));
  transform-origin:center center;
  overflow:hidden;
  background:#020403;
}
body.login-active .premium-login .login-visual{
  width:940px;
  height:1024px;
  min-height:0;
  background-size:940px 1024px;
  background-position:center center;
  background-repeat:no-repeat;
  flex:none;
}
body.login-active .premium-login .login-card-wrap{
  width:596px;
  height:1024px;
  min-height:0;
  padding:42px 48px;
  box-sizing:border-box;
}
body.login-active .premium-card{
  width:500px;
  max-width:none;
  box-sizing:border-box;
}
@media(max-width:760px){
  body.login-active .premium-login{display:grid;grid-template-columns:940px 596px}
  body.login-active .premium-login .login-visual{display:block}
  body.login-active .premium-login .login-card-wrap{padding:42px 48px}
  body.login-active .premium-card{padding:44px 38px}
}

/* Dashboard Sprint 01.1 — gráficos estáveis e responsivos */
.dashboard-chart-grid{min-width:0}
@media(max-width:1280px){.bar-chart{gap:12px}.bar-chart span{max-width:48px}.grid-3{grid-template-columns:1fr 1fr}.grid-3>article:last-child{grid-column:1/-1}}
@media(max-width:900px){.grid-3{grid-template-columns:1fr}.grid-3>article:last-child{grid-column:auto}.bar-chart{height:190px}}

.compact-kpis{margin-bottom:16px}
.compact-kpis article{min-height:92px}
.cell-note{display:block;color:var(--muted);font-size:10px;margin-top:4px;max-width:280px;white-space:normal}
#modelsTable,#stockTable,#salesTable{min-width:1050px}


/* Sprint 02.1 — legibilidade, espaçamento e ações funcionais */
html{font-size:16px}.page{padding:32px 34px 42px}.page-head{margin-bottom:22px}.page-head h1{font-size:29px;line-height:1.15}.page-head p{font-size:15px}.btn{min-height:44px;padding:10px 18px;font-size:14px}.panel{padding:20px}.toolbar{gap:12px;margin-bottom:18px}.toolbar input,.toolbar select{min-height:44px;font-size:14px;padding:10px 13px;border:1px solid var(--line);border-radius:9px;background:#fff}.toolbar select{min-width:160px}table{font-size:13px}th{font-size:12px;letter-spacing:.01em}th,td{padding:14px 12px;vertical-align:middle}.cell-note{font-size:11px;line-height:1.35;margin-top:5px}.badge{font-size:11px;padding:6px 10px}.compact-kpis article{min-height:100px;padding:19px}.compact-kpis span,.compact-kpis small{font-size:12px}.compact-kpis strong{font-size:23px}.sidebar nav button{font-size:15px;padding:12px 13px}.sidebar nav span{font-size:10px}.topbar{height:76px}.global-search{font-size:14px;padding:11px 14px}
.action-group{display:flex;align-items:center;gap:7px;white-space:nowrap}.action-btn{width:36px;height:36px;border:1px solid #dfe6e0;border-radius:9px;background:#fff;color:#39443c;display:inline-grid;place-items:center;cursor:pointer;transition:.18s;box-shadow:0 2px 7px rgba(25,40,29,.04)}.action-btn span{font-size:18px;line-height:1}.action-btn:hover{transform:translateY(-1px);border-color:#62d64b;color:#1e8e16;background:#effced;box-shadow:0 6px 16px rgba(46,150,35,.12)}.action-btn.success{background:#edfaea;color:#268f1d;border-color:#ccefc5}
.modal-root{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px}.modal-backdrop{position:absolute;inset:0;background:rgba(4,8,5,.62);backdrop-filter:blur(4px)}.modal-card{position:relative;width:min(720px,96vw);max-height:90vh;overflow:auto;background:#fff;border-radius:18px;box-shadow:0 28px 90px rgba(0,0,0,.32);border:1px solid #dfe6e0}.modal-card>header{display:flex;justify-content:space-between;align-items:flex-start;padding:22px 24px;border-bottom:1px solid var(--line)}.modal-card h2{margin:0;font-size:23px}.modal-card header p{margin:5px 0 0;color:var(--muted)}.modal-close{border:0;background:#f1f4f2;width:38px;height:38px;border-radius:10px;font-size:26px;cursor:pointer}.modal-body{padding:24px}.modal-card>footer{display:flex;justify-content:flex-end;gap:10px;padding:17px 24px;border-top:1px solid var(--line);background:#fafbfa}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.detail-grid>div{padding:14px;border:1px solid var(--line);border-radius:11px;background:#fafcfa}.detail-grid span{display:block;color:var(--muted);font-size:12px;margin-bottom:6px}.detail-grid b{font-size:15px}.span-full{grid-column:1/-1}.modal-form{display:grid;gap:14px}.modal-form.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-form label{display:grid;gap:7px;font-size:13px;font-weight:700}.modal-form input,.modal-form select,.modal-form textarea{width:100%;min-height:44px;border:1px solid #dfe5e0;border-radius:9px;padding:10px 12px;background:#fff}.modal-form textarea{resize:vertical}.modal-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:6px}.empty-state{text-align:center;padding:24px}.empty-state span{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 14px;border-radius:50%;background:#eafaE6;color:#2c9a21;font-size:28px}.empty-state b{display:block;font-size:18px}.empty-state p{color:var(--muted)}.document-list{display:grid;gap:10px}.document-list button{padding:16px;border:1px solid var(--line);background:#fafcfa;border-radius:10px;text-align:left;font-size:14px;cursor:pointer}.toast{position:fixed;right:28px;bottom:28px;z-index:1200;background:#122410;color:#fff;padding:14px 18px;border-radius:10px;box-shadow:0 14px 40px rgba(0,0,0,.25);opacity:0;transform:translateY(20px);pointer-events:none;transition:.22s}.toast.show{opacity:1;transform:none}
@media(max-width:1200px){html{font-size:15px}.page{padding:26px}.action-btn{width:34px;height:34px}.modal-form.two-cols{grid-template-columns:1fr}}

/* Sprint 02.2 - cadastro completo de clientes */
.modal-card-wide{width:min(980px,96vw)}
.modal-tabs{display:flex;gap:4px;overflow:auto;border-bottom:1px solid var(--line);padding:0 2px;margin:-4px 0 20px}
.modal-tabs button{border:0;background:transparent;padding:13px 18px;font-weight:700;color:var(--muted);cursor:pointer;white-space:nowrap;border-bottom:3px solid transparent}
.modal-tabs button.active{color:var(--green-dark);border-bottom-color:var(--green)}
.edit-pane{display:none}.edit-pane.active{display:block}
.client-edit-form{display:block}.client-edit-form .modal-form{gap:16px}
.same-address-check{display:flex!important;align-items:center;gap:9px;margin-bottom:18px;font-size:14px;font-weight:700}.same-address-check input{width:18px!important;min-height:auto!important;height:18px}
.sticky-actions{position:sticky;bottom:-24px;background:#fff;border-top:1px solid var(--line);padding:16px 0 2px;margin-top:22px;z-index:2}
.client-view-sections{display:grid;gap:22px}.client-view-sections section{border-bottom:1px solid var(--line);padding-bottom:20px}.client-view-sections section:last-child{border-bottom:0;padding-bottom:0}.client-view-sections h3{font-size:16px;margin:0 0 13px;color:#172019}
@media(max-width:700px){.modal-card-wide{width:98vw}.modal-tabs button{padding:11px 12px}.detail-grid{grid-template-columns:1fr}.modal-form.two-cols{grid-template-columns:1fr}}

/* Sprint 02.3 — validação, filtros, CEP e fiador */
.loading-field{background-image:linear-gradient(90deg,#fff,#effbea,#fff);background-size:200% 100%;animation:cepLoading 1s linear infinite}
@keyframes cepLoading{to{background-position:-200% 0}}


/* Sprint 02.4 — busca e cadastro rápido de fiador dentro do cliente */
.guarantor-picker{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.35fr) auto;gap:12px;align-items:end;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fafcfa}
.guarantor-picker label{min-width:0}.guarantor-picker .guarantor-add-btn{height:44px;white-space:nowrap}.guarantor-picker small{grid-column:1/-1;color:var(--muted);font-weight:500;font-size:11px;margin-top:-3px}
@media(max-width:900px){.guarantor-picker{grid-template-columns:1fr}.guarantor-picker small{grid-column:auto}.guarantor-picker .guarantor-add-btn{width:100%}}


/* Sprint 03 — Assistente de venda */
.sale-wizard-page{max-width:1600px;margin:0 auto}.sale-wizard-head{align-items:flex-end}.wizard-draft{display:grid;text-align:right;color:var(--muted);font-size:12px}.wizard-draft b{color:#182019;font-size:15px;margin-top:4px}.wizard-shell{display:grid;grid-template-columns:270px minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:16px;min-height:690px;overflow:hidden;box-shadow:0 8px 25px rgba(20,36,23,.05)}.wizard-steps{background:#09100b;padding:24px 14px;display:flex;flex-direction:column;gap:7px}.wizard-steps button{border:0;background:transparent;color:#9ca79e;display:flex;align-items:center;gap:12px;text-align:left;padding:13px;border-radius:11px;cursor:pointer}.wizard-steps button i{width:32px;height:32px;border:1px solid #314137;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:800}.wizard-steps button span{display:grid;gap:3px}.wizard-steps button b{font-size:14px}.wizard-steps button small{font-size:11px}.wizard-steps button.active{color:#fff;background:rgba(69,216,43,.15)}.wizard-steps button.active i{border-color:#5de33f;background:#48cf2c;color:#071008}.wizard-steps button.done{color:#aee9a2}.wizard-steps button.done i{background:#1b5e1c;border-color:#3fb839}.wizard-content{min-width:0;display:flex;flex-direction:column}.wizard-progress{height:5px;background:#edf1ed}.wizard-progress span{display:block;height:100%;background:linear-gradient(90deg,#44c92a,#83e92e);transition:.25s}.wizard-content form{flex:1;padding:30px 34px}.wizard-pane{display:none}.wizard-pane.active{display:block}.wizard-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.wizard-title span{font-size:11px;font-weight:800;letter-spacing:.1em;color:#41a62d}.wizard-title h2{margin:6px 0;font-size:25px}.wizard-title p{margin:0;color:var(--muted)}.wizard-search{height:48px;border:1px solid var(--line);border-radius:10px;padding:0 14px;display:flex;align-items:center;gap:8px;margin-bottom:14px}.wizard-search input{border:0;outline:0;width:100%;font-size:14px}.selection-list{display:grid;gap:8px;max-height:350px;overflow:auto}.selection-row{width:100%;border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px;display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;text-align:left;cursor:pointer}.selection-row:hover,.selection-row.selected{border-color:#52ce38;background:#f3fdf1}.selection-avatar{width:38px;height:38px;border-radius:50%;background:#e8f9e4;color:#2d9c20;display:grid;place-items:center;font-weight:800}.selection-row span:nth-child(2){display:grid;gap:4px}.selection-row small{color:var(--muted)}.selected-summary{margin-top:16px;border-left:4px solid var(--green);background:#f6fcf5;border-radius:9px;padding:16px;display:flex;justify-content:space-between;gap:20px}.selected-summary h3{margin:4px 0}.selected-summary p{margin:0;color:var(--muted)}.summary-mini{display:flex;gap:12px}.summary-mini span{display:grid;gap:5px;background:#fff;border:1px solid var(--line);padding:9px 12px;border-radius:8px;color:var(--muted);font-size:11px;min-width:120px}.summary-mini b{color:#1c251e;font-size:12px}.choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:20px}.choice-grid button{background:#fff;border:1px solid var(--line);border-radius:12px;padding:18px;text-align:left;cursor:pointer;display:grid;gap:7px}.choice-grid button i{font-style:normal;width:34px;height:34px;border-radius:50%;background:#eef9eb;display:grid;place-items:center;color:#329b22;font-weight:800}.choice-grid button small{color:var(--muted)}.choice-grid button.selected{border-color:#46c932;box-shadow:0 0 0 2px rgba(70,201,50,.12);background:#f7fef6}.wizard-card{border:1px solid var(--line);border-radius:12px;padding:18px;margin:15px 0;background:#fbfcfb}.card-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:14px}.card-title h3,.card-title p{margin:0}.card-title p{color:var(--muted);font-size:12px;margin-top:4px}.wizard-note{display:grid;gap:7px;font-weight:700}.wizard-note textarea,.wizard-card input,.wizard-card select,.wizard-card textarea,.bike-filters input,.bike-filters select{border:1px solid var(--line);border-radius:9px;padding:11px 12px;background:#fff}.bike-filters{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:16px}.availability-pill{background:#eaf9e6;border-radius:999px;padding:9px 14px;color:#277d1e}.bike-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;max-height:450px;overflow:auto;padding:2px}.bike-card{position:relative;border:1px solid var(--line);border-radius:13px;background:#fff;text-align:left;padding:0;overflow:hidden;cursor:pointer}.bike-card.selected{border-color:#48cd31;box-shadow:0 0 0 3px rgba(72,205,49,.13)}.bike-visual{height:90px;background:linear-gradient(135deg,#0b120d,#233528);color:#70e34f;display:grid;place-items:center;font-size:36px}.bike-card>div:nth-child(2){padding:13px}.bike-card span{color:var(--muted);font-size:11px}.bike-card h3{margin:4px 0;font-size:15px}.bike-card p{color:var(--muted);font-size:11px;margin:0 0 9px}.bike-card em{position:absolute;right:8px;top:8px;background:#dff7da;color:#25851c;font-style:normal;font-size:10px;padding:5px 8px;border-radius:999px}.payment-types{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:15px}.payment-types button{border:1px solid var(--line);background:#fff;padding:13px 9px;border-radius:9px;font-weight:700;cursor:pointer}.payment-types button.selected{border-color:#45ca2e;background:#ebfae8;color:#247f1b}.three-cols{grid-template-columns:repeat(3,minmax(0,1fr))!important}.calculation-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.calculation-summary div{background:#0c1510;color:#fff;border-radius:11px;padding:16px}.calculation-summary span{display:block;color:#aab7ad;font-size:11px;margin-bottom:8px}.calculation-summary b{font-size:19px;color:#78e754}.delivery-checklist{display:flex;gap:18px;flex-wrap:wrap;margin-top:16px;padding:15px;border:1px dashed #bcd4bc;border-radius:10px}.delivery-checklist h3{width:100%;margin:0}.delivery-checklist label{font-size:13px}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.review-grid article{border:1px solid var(--line);border-radius:11px;padding:16px}.review-grid h3{margin:0 0 10px;color:var(--muted);font-size:12px}.review-grid b{font-size:15px}.review-grid p{font-size:12px;line-height:1.55;color:var(--muted)}.automation-box{margin-top:16px;border:1px solid #bfe7b8;background:#f4fdf2;border-radius:11px;padding:16px}.automation-box h3{margin:0 0 10px}.automation-box div{display:grid;grid-template-columns:1fr 1fr;gap:8px;color:#287c20;font-size:13px}.confirmation-check{display:flex;align-items:center;gap:9px;margin-top:17px;font-weight:700}.wizard-footer{border-top:1px solid var(--line);padding:16px 34px;display:flex;justify-content:space-between;background:#fbfcfb}.wizard-footer>div{display:flex;gap:10px}.success-sale{text-align:center}.success-sale>span{width:68px;height:68px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#e2f9dd;color:#2b9d20;font-size:36px}.success-sale h2{margin-bottom:5px}.success-sale>p{color:var(--muted);max-width:560px;margin:0 auto 20px}
@media(max-width:1200px){.wizard-shell{grid-template-columns:220px minmax(0,1fr)}.choice-grid,.payment-types{grid-template-columns:1fr 1fr}.bike-card-grid{grid-template-columns:1fr 1fr}.review-grid{grid-template-columns:1fr 1fr}.summary-mini{flex-direction:column}.three-cols{grid-template-columns:1fr 1fr!important}}
@media(max-width:800px){.wizard-shell{grid-template-columns:1fr}.wizard-steps{flex-direction:row;overflow:auto}.wizard-steps button{min-width:155px}.wizard-content form{padding:22px 18px}.choice-grid,.bike-card-grid,.payment-types,.calculation-summary,.review-grid{grid-template-columns:1fr}.bike-filters,.three-cols{grid-template-columns:1fr!important}.selected-summary,.wizard-title{flex-direction:column}.wizard-footer{padding:14px 18px}.wizard-footer>div{flex-wrap:wrap;justify-content:flex-end}.automation-box div{grid-template-columns:1fr}}

/* Sprint 03.1 - recebimentos corrigidos */
.receipts-panel{min-height:248px;display:flex;flex-direction:column}.receipts-title{align-items:flex-start}.receipts-title h3{margin-bottom:3px}.receipts-title small{color:var(--muted);font-size:10px}.receipt-main{text-align:right}.receipt-main span{display:block;color:var(--muted);font-size:10px;margin-bottom:4px}.receipt-main b{font-size:18px}.receipt-chart{height:140px;margin:5px 0 0}.receipt-chart svg{width:100%;height:100%;overflow:visible}.receipt-chart text{font:600 10px Inter,Arial,sans-serif;fill:#6f7a72}.chart-axis{stroke:#dfe5e0;stroke-width:1.2}.chart-grid{stroke:#edf1ee;stroke-width:1;stroke-dasharray:4 5}.receipt-line{fill:none;stroke:#2fbe23;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 4px 6px rgba(47,190,35,.16))}.receipt-point{fill:#fff;stroke:#2fbe23;stroke-width:3}.receipt-point.active{fill:#42d629;stroke:#fff;stroke-width:3}.receipt-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;border-top:1px solid var(--line);padding-top:11px;margin-top:auto}.receipt-summary div{min-width:0}.receipt-summary span{display:block;color:var(--muted);font-size:9px;margin-bottom:4px}.receipt-summary strong{display:block;font-size:11px;white-space:nowrap}.receipt-summary .positive{color:var(--green-dark)}
@media(max-width:520px){.receipt-summary{grid-template-columns:1fr}.receipt-main b{font-size:15px}}
.contract-model-layout{display:grid;grid-template-columns:260px 1fr;gap:24px}.contract-model-layout select,.contract-model-layout textarea{width:100%;margin-top:10px}.variable-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.variable-chips span{background:#eaffdf;color:#238a14;border:1px solid #bfe8b2;border-radius:999px;padding:7px 10px;font-weight:700;font-size:12px}.document-preview{background:#fff;border:1px solid #dde4df;border-radius:14px;padding:34px;max-height:65vh;overflow:auto}.document-preview img{max-width:220px;display:block;margin:0 auto 26px}.document-preview pre{white-space:pre-wrap;font-family:Georgia,serif;line-height:1.7;color:#202720;font-size:15px}.badge.yellow{background:#fff0c8;color:#9a6500}.badge.gray{background:#edf0ed;color:#5d675f}@media(max-width:900px){.contract-model-layout{grid-template-columns:1fr}}

/* Sprint 04.1 — Contratos corrigidos */
.module-page{width:100%;max-width:1600px;margin:0 auto}.page-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px}.page-heading h1{font-size:30px;line-height:1.15;margin:0 0 7px;letter-spacing:-.03em}.page-heading p{margin:0;color:var(--muted);font-size:15px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stats-grid article{background:#fff;border:1px solid var(--line);border-radius:13px;padding:17px;display:flex;align-items:center;gap:13px;box-shadow:var(--shadow)}.stats-grid i{font-style:normal;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e9fbe5;color:#269319;font-size:18px}.stats-grid span,.stats-grid small{display:block;color:var(--muted);font-size:11px}.stats-grid strong{display:block;font-size:22px;margin:2px 0}.table-card{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.table-toolbar{display:flex;align-items:center;gap:10px;padding:15px;border-bottom:1px solid var(--line)}.table-toolbar input{flex:1;min-width:0;height:44px;padding:0 14px;border:1px solid var(--line);border-radius:9px}.table-scroll{overflow:auto}.contracts-page table{min-width:1120px;font-size:13px}.contracts-page th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;background:#fafbfa}.contracts-page td{padding-top:14px;padding-bottom:14px}.contracts-page .action-group{flex-wrap:nowrap}.model-help{font-size:12px;line-height:1.5;color:var(--muted);margin-top:18px}.modal-card-contract{width:min(1120px,96vw);height:min(92vh,980px);display:flex;flex-direction:column}.modal-card-contract .modal-body{flex:1;min-height:0;overflow:hidden;padding:18px}.contract-preview-shell{height:100%;display:flex;flex-direction:column;background:#eef1ef;border:1px solid #dce2dd;border-radius:12px;overflow:hidden}.contract-preview-toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:10px 15px;background:#182019;color:#fff;font-size:12px}.contract-preview-toolbar small{color:#b5c0b8}.legal-contract{background:#fff;width:min(820px,calc(100% - 34px));margin:18px auto;padding:48px 55px;box-shadow:0 10px 34px rgba(20,30,22,.16);overflow:auto;flex:1;color:#171b18;font:14px/1.55 Arial,sans-serif}.legal-contract>header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #55c92f;padding-bottom:12px;margin-bottom:24px}.legal-contract>header>div:last-child{display:grid;text-align:right;color:#69736c;font-size:11px}.brand-mark{font-size:27px;font-weight:900;letter-spacing:-1px}.brand-mark strong{color:#42c92c}.contract-title{text-align:center;font-weight:800;font-size:19px;margin:2px 0}.contract-section-title{font-weight:800;font-size:16px;border-bottom:1px solid #adb6af;padding-bottom:5px;margin:25px 0 10px}.contract-clause-title{font-weight:800;font-size:15px;margin:20px 0 7px}.contract-subtitle{font-weight:800;margin:14px 0 4px}.contract-paragraph{text-align:justify;margin:8px 0}.contract-table{width:100%;border-collapse:collapse;margin:13px 0 17px}.contract-table th,.contract-table td{border:1px solid #677169;padding:7px 9px;text-align:left}.contract-table th{background:#eaf0eb;font-weight:800}.contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:55px}.contract-signatures div{border-top:1px solid #333;padding-top:7px;text-align:center}.contract-signatures span,.contract-signatures b{display:block}.contract-signatures span{font-size:11px}.contract-signatures b{font-size:11px;margin-top:4px}
@media(max-width:900px){.stats-grid{grid-template-columns:1fr 1fr}.page-heading{flex-direction:column}.legal-contract{padding:30px 24px}.contract-signatures{grid-template-columns:1fr}.contract-preview-toolbar{align-items:flex-start;flex-direction:column}}


/* Sprint 04.2 — acabamento de contratos, logo e impressão */
.contracts-page{padding:26px 28px 34px;width:100%;max-width:1600px;margin:0 auto}
.contracts-page .page-heading{padding-top:2px;margin-bottom:22px}
.contracts-page .page-heading h1{margin-top:0;line-height:1.2}
.contract-logo{display:block;width:210px;max-height:72px;object-fit:contain;object-position:left center}
.legal-contract>header{gap:24px;padding-bottom:16px;margin-bottom:30px}
.legal-contract>header>div:last-child{min-width:175px}
.contract-title{margin:8px 0 3px;line-height:1.35}
.contract-table{table-layout:fixed;margin:18px 0 22px;break-inside:avoid;page-break-inside:avoid}
.contract-table th:first-child,.contract-table td:first-child{width:34%}
.contract-table th,.contract-table td{vertical-align:top;overflow-wrap:anywhere;word-break:normal;line-height:1.42;padding:9px 10px}
.contract-table tr{break-inside:avoid;page-break-inside:avoid}
@media(max-width:900px){.contracts-page{padding:20px 16px 28px}.contract-logo{width:170px}.legal-contract>header{align-items:flex-start}.legal-contract>header>div:last-child{min-width:auto}}

/* Sprint 05 — Central de documentos */
body.document-viewer-open{overflow:hidden}
.document-viewer{position:fixed;inset:0;z-index:10000;background:#eef1ef;display:flex;flex-direction:column;color:#162019}
.document-viewer-top{height:76px;flex:0 0 76px;background:#fff;border-bottom:1px solid #d9dfda;display:flex;align-items:center;justify-content:space-between;padding:0 28px;box-shadow:0 3px 14px rgba(20,30,22,.06)}
.document-viewer-top>div:first-child{display:flex;align-items:center;gap:18px}.document-viewer-top h1{font-size:21px;margin:0 0 3px}.document-viewer-top p{margin:0;color:#6b766e;font-size:13px}.document-back{border:1px solid #d7ddd8;background:#fff;border-radius:9px;padding:10px 14px;font-weight:700;cursor:pointer}.document-viewer-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;flex:1;min-height:0}.document-stage{overflow:auto;padding:30px 36px 70px;background:linear-gradient(135deg,#e9edea,#f5f7f5);position:relative}.document-stage-label{position:sticky;top:-30px;z-index:2;background:#172018;color:#d9e4db;padding:9px 14px;border-radius:0 0 9px 9px;width:max-content;margin:0 auto 18px;font-size:12px;box-shadow:0 5px 16px rgba(0,0,0,.12)}
.contract-document-page{width:794px;min-height:1123px;margin:0 auto;background:#fff;padding:56px 64px 70px;box-shadow:0 18px 55px rgba(18,26,20,.18);color:#171b18;font:13.5px/1.55 Arial,sans-serif}
.contract-document-page .contract-doc-header{display:grid;grid-template-columns:310px 1fr;gap:26px;align-items:stretch;border-bottom:2px solid #55c92f;padding-bottom:18px;margin-bottom:34px}.contract-document-page .contract-brand{height:96px;background:#050706;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center}.contract-document-page .contract-logo{width:306px;height:94px;object-fit:cover}.contract-document-page .contract-doc-meta{display:flex;flex-direction:column;justify-content:center;text-align:right;color:#687269;font-size:11px}.contract-document-page .contract-doc-meta b{font-size:12px;color:#1b241d}.contract-document-page .contract-doc-meta span{margin-top:5px}.contract-document-page .contract-doc-meta small{margin-top:4px}.contract-document-page .contract-title{text-align:center;font-size:19px;font-weight:800;line-height:1.3;margin:5px 0}.contract-document-page .contract-section-title{font-size:16px;font-weight:800;border-bottom:1px solid #a8b0aa;padding-bottom:6px;margin:27px 0 11px}.contract-document-page .contract-clause-title{font-size:14px;font-weight:800;margin:21px 0 8px}.contract-document-page .contract-subtitle{font-weight:800;margin:14px 0 5px}.contract-document-page .contract-paragraph{text-align:justify;margin:8px 0}.contract-document-page .contract-table{width:100%;table-layout:fixed;border-collapse:collapse;margin:16px 0 21px}.contract-document-page .contract-table th:first-child,.contract-document-page .contract-table td:first-child{width:31%}.contract-document-page .contract-table th,.contract-document-page .contract-table td{border:1px solid #59635b;padding:8px 9px;vertical-align:top;overflow-wrap:anywhere}.contract-document-page .contract-table th{background:#eaf0eb}.contract-document-page .contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:42px;margin-top:58px}.contract-document-page .contract-signatures div{border-top:1px solid #333;padding-top:7px;text-align:center}
.document-actions-panel{background:#fff;border-left:1px solid #d9dfda;padding:25px 20px;overflow:auto}.document-actions-panel h2{font-size:18px;margin:0 0 7px}.document-actions-panel>p{font-size:12px;color:#6b766e;line-height:1.45;margin:0 0 20px}.document-action{width:100%;border:1px solid #d7ddd8;background:#fff;border-radius:11px;padding:13px 14px;margin-bottom:10px;text-align:left;cursor:pointer;transition:.18s}.document-action:hover{border-color:#4dcc32;box-shadow:0 4px 14px rgba(61,196,39,.11)}.document-action.primary{background:#35ca29;border-color:#35ca29;color:#fff}.document-action b,.document-action span{display:block}.document-action b{font-size:13px}.document-action span{font-size:11px;opacity:.75;margin-top:4px}.document-info{border-top:1px solid #e1e5e2;margin-top:18px;padding-top:18px;display:grid;gap:4px}.document-info span{font-size:10px;text-transform:uppercase;color:#7a857d;margin-top:8px}.document-info strong{font-size:12px;overflow-wrap:anywhere}
@media(max-width:1100px){.document-viewer-layout{grid-template-columns:1fr}.document-actions-panel{display:none}.contract-document-page{transform-origin:top center}.document-stage{padding-left:18px;padding-right:18px}}
@media(max-width:850px){.contract-document-page{width:100%;min-width:680px}.document-stage{overflow:auto}.document-top-actions{display:none}}

/* Sprint 06 — Financeiro */
.finance-page{padding-bottom:48px}.head-actions{display:flex;gap:10px;align-items:center}.finance-kpis,.cash-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0}.finance-kpis article,.cash-summary article{background:#fff;border:1px solid #e0e7e2;border-radius:15px;padding:19px;display:flex;gap:14px;align-items:center;box-shadow:0 5px 18px rgba(12,35,20,.04)}.finance-kpis i{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;font-style:normal;font-weight:800;background:#e8fbe7;color:#25ad21;font-size:19px}.finance-kpis span,.cash-summary span{display:block;color:#718077;font-size:13px}.finance-kpis strong,.cash-summary strong{display:block;font-size:22px;margin:3px 0}.finance-kpis small,.cash-summary small{color:#7b8880}.finance-panel{padding:0;overflow:hidden}.finance-toolbar{padding:16px;display:flex;gap:10px;border-bottom:1px solid #e5ebe7;background:#fff}.search-wide{display:flex;align-items:center;gap:8px;flex:1;border:1px solid #dbe3de;border-radius:10px;padding:0 13px;color:#8a958e}.search-wide input{border:0;outline:0;width:100%;height:42px;font:inherit}.finance-toolbar select,.finance-toolbar>input{min-width:160px;border:1px solid #dbe3de;border-radius:10px;padding:0 12px;background:#fff;font:inherit}.table-wrap{overflow:auto}.finance-panel table{min-width:1050px;width:100%;border-collapse:collapse}.finance-panel th{font-size:12px;color:#6c7b72;text-transform:uppercase;letter-spacing:.03em;background:#fafcfb}.finance-panel th,.finance-panel td{padding:14px 15px;border-bottom:1px solid #e6ece8;text-align:left}.finance-panel tbody tr:hover{background:#fbfefb}.badge.orange{background:#fff0d2;color:#9a6500}.badge.gray{background:#edf1ee;color:#607067}.badge.red{background:#ffe5e5;color:#b21f1f}.cash-summary article{display:block}.cash-summary .cash-balance{background:linear-gradient(135deg,#122819,#07120b);color:white;border-color:#234b2c}.cash-summary .cash-balance span,.cash-summary .cash-balance small{color:#b8c9bc}.cash-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:16px;margin-bottom:16px}.cash-chart-panel,.category-panel{padding:18px}.panel-head h3{margin:0;font-size:17px}.panel-head p{margin:4px 0 0;color:#7c8981;font-size:13px}.cash-chart{height:230px;position:relative;margin-top:12px;border-left:1px solid #dfe7e1;border-bottom:1px solid #dfe7e1;background:repeating-linear-gradient(to top,transparent 0,transparent 44px,#edf2ee 45px)}.cash-chart svg{width:100%;height:100%;overflow:visible}.category-bars{margin-top:18px;display:grid;gap:17px}.category-row{display:grid;grid-template-columns:145px 1fr 90px;align-items:center;gap:10px;font-size:13px}.category-track{height:10px;background:#edf2ee;border-radius:99px;overflow:hidden}.category-fill{height:100%;background:linear-gradient(90deg,#51dd2e,#1ea921);border-radius:99px}.money-positive{color:#199a23;font-weight:700}.money-negative{color:#c43535;font-weight:700}.finance-detail-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.finance-detail-list>div{padding:14px;border:1px solid #e0e7e2;border-radius:11px}.finance-detail-list span{display:block;color:#718077;font-size:12px}.finance-detail-list b{display:block;margin-top:4px}.payment-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.payment-form-grid label{display:grid;gap:7px;font-weight:600}.payment-form-grid input,.payment-form-grid select,.payment-form-grid textarea{border:1px solid #d8e1db;border-radius:9px;padding:12px;font:inherit}.payment-form-grid .span-full{grid-column:1/-1}@media(max-width:1100px){.finance-kpis,.cash-summary{grid-template-columns:repeat(2,1fr)}.cash-grid{grid-template-columns:1fr}}@media(max-width:700px){.finance-kpis,.cash-summary{grid-template-columns:1fr}.finance-toolbar{flex-wrap:wrap}.search-wide{flex-basis:100%}.payment-form-grid{grid-template-columns:1fr}}

/* Sprint 06.1 — formulários financeiros vinculados e gráfico interativo */
.linked-finance-form label small{display:block;margin-top:6px;color:#76817a;font-size:12px;font-weight:500}
.finance-toolbar #installmentSearchField{min-width:145px}
.cash-chart{position:relative;overflow:visible}
.cash-chart svg{overflow:visible}
.cash-point{cursor:pointer;opacity:0;transition:opacity .15s,r .15s}
.cash-chart:hover .cash-point{opacity:1}
.cash-point:hover{r:9}
.cash-tooltip{position:absolute;z-index:8;min-width:150px;max-width:230px;transform:translate(-50%,calc(-100% - 14px));padding:10px 12px;border-radius:10px;background:#101811;color:#fff;box-shadow:0 8px 24px #0004;pointer-events:none}
.cash-tooltip b,.cash-tooltip span,.cash-tooltip small{display:block}.cash-tooltip span{font-size:16px;font-weight:800;color:#77ed45;margin:3px 0}.cash-tooltip small{color:#cbd3cd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.finance-detail-list .span-full{grid-column:1/-1}
@media(max-width:1100px){.finance-toolbar #installmentSearchField{min-width:120px}}

/* Sprint 06.2 — buscas, gráfico e paginação */
.client-search-control{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;border:1px solid #d7ded9;border-radius:10px;background:#fff;min-height:46px;overflow:visible}
.client-search-control:focus-within{border-color:#39d62b;box-shadow:0 0 0 3px rgba(57,214,43,.12)}
.client-search-control .search-icon{padding-left:13px;color:#5c6a61;font-size:20px}
.client-search-control input{border:0!important;box-shadow:none!important;outline:0!important;width:100%;min-width:0;background:transparent!important}
.client-search-button{border:0;border-left:1px solid #e4e9e5;background:#f5f8f5;color:#18351d;font-weight:700;height:100%;padding:0 16px;cursor:pointer;border-radius:0 9px 9px 0}
.client-search-button:hover{background:#eaf8e9;color:#238f1c}
.client-search-results{position:absolute;z-index:1000;left:0;right:0;top:calc(100% + 6px);max-height:240px;overflow:auto;background:#fff;border:1px solid #d7ded9;border-radius:10px;box-shadow:0 14px 30px rgba(0,0,0,.18);padding:6px}
.client-search-results button{display:flex;flex-direction:column;width:100%;text-align:left;border:0;background:#fff;padding:10px 12px;border-radius:7px;cursor:pointer;color:#172019}
.client-search-results button:hover{background:#edf9ec}
.client-search-results small{display:block;color:#748078;margin-top:3px}
.search-result-empty{padding:14px;color:#748078;text-align:center}
.client-search-control.compact{min-height:44px}
.table-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-top:1px solid #e5e9e6;background:#fbfcfb;color:#66736a;font-size:13px}
.pagination-buttons{display:flex;align-items:center;gap:10px}
.pagination-buttons button{border:1px solid #d7ded9;background:#fff;border-radius:8px;padding:8px 12px;font-weight:700;cursor:pointer;color:#26352a}
.pagination-buttons button:hover:not(:disabled){border-color:#39d62b;color:#209619;background:#f2fbf1}
.pagination-buttons button:disabled{opacity:.45;cursor:not-allowed}
.pagination-buttons b{color:#26352a;font-weight:700}
.cash-hit{cursor:crosshair;pointer-events:all}
@media(max-width:760px){.table-pagination{flex-direction:column;align-items:flex-start}.client-search-control{grid-template-columns:auto 1fr}.client-search-button{grid-column:1/-1;border-left:0;border-top:1px solid #e4e9e5;border-radius:0 0 9px 9px;height:38px}}


/* Sprint 06.3 — Dashboard analítico */
.dashboard-chart-card{overflow:visible}
.dashboard-bars span{cursor:pointer;transition:filter .18s ease,transform .18s ease,box-shadow .18s ease}
.dashboard-bars span:hover{filter:brightness(1.08);transform:translateY(-3px);box-shadow:0 10px 24px rgba(48,205,35,.20)}
.dashboard-tooltip{position:fixed;z-index:99999;pointer-events:none;max-width:280px;padding:10px 12px;border-radius:10px;background:#101912;color:#fff;font-size:13px;font-weight:700;line-height:1.35;box-shadow:0 14px 32px rgba(0,0,0,.28);opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}
.dashboard-tooltip.visible{opacity:1;transform:translateY(0)}
.payment-legend{display:grid!important;gap:10px!important;min-width:180px}
.payment-legend li{display:grid!important;grid-template-columns:14px 1fr auto;align-items:center;gap:9px;padding:7px 8px;border-radius:8px;cursor:help;transition:background .15s ease}
.payment-legend li:hover{background:#f3f8f2}
.legend-dot{width:11px;height:11px;border-radius:50%;display:block}
.legend-dot.pix{background:#36c82c}.legend-dot.card{background:#2388e8}.legend-dot.financed{background:#ffb91e}.legend-dot.cash{background:#a7adb2}
.chart-hit{fill:transparent;stroke:transparent;cursor:crosshair;pointer-events:all}
.city-panel .panel-title{align-items:flex-start}
.city-panel .panel-title small{display:block;color:#7d8982;font-size:12px;margin-top:3px}
.city-total{border:1px solid #d9e4da;background:#f6fbf5;color:#228d22;border-radius:999px;padding:7px 11px;font-weight:800;cursor:help}
.city-ranking{display:grid;gap:15px;padding:10px 4px 2px}
.city-row{display:grid;grid-template-columns:minmax(145px,1.35fr) minmax(120px,2fr) 36px;align-items:center;gap:12px;cursor:help}
.city-row>span{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.city-row>span b{width:24px;height:24px;display:grid;place-items:center;border-radius:50%;background:#e9f8e7;color:#26a620;font-size:11px;flex:none}
.city-row>div{height:9px;border-radius:999px;background:#edf1ed;overflow:hidden}
.city-row>div i{height:100%;display:block;border-radius:999px;background:linear-gradient(90deg,#2ecb26,#7de85e)}
.city-row>strong{text-align:right;font-size:14px}
.city-row.other>span b{background:#f1f3f1;color:#68736c}
.city-row.other>div i{background:linear-gradient(90deg,#91a197,#bcc7bf)}
@media (max-width:900px){.city-row{grid-template-columns:130px 1fr 30px}}


/* Sprint 07 — CRM Comercial */
.head-actions{display:flex;gap:10px;align-items:center}
.crm-toolbar-panel{padding:14px}
.crm-toolbar{display:grid;grid-template-columns:minmax(280px,1fr) 190px 190px auto;gap:10px}
.crm-search{width:100%}
.kanban-scroll{overflow-x:auto;padding-bottom:12px}
.kanban-board{display:grid;grid-template-columns:repeat(8,minmax(272px,1fr));gap:14px;min-width:2280px;align-items:start}
.kanban-column{background:#eef2ef;border:1px solid #dde5df;border-radius:14px;min-height:560px;padding:10px;transition:.18s ease}
.kanban-column.drag-over{background:#e4f7e2;border-color:#42cd35;box-shadow:inset 0 0 0 2px rgba(66,205,53,.16)}
.kanban-column>header{display:flex;justify-content:space-between;gap:8px;align-items:flex-start;padding:5px 4px 7px}
.kanban-column>header h3{margin:0;font-size:14px}.kanban-column>header small{color:#7b8680;font-size:10px}
.kanban-column>header>span{background:#fff;border:1px solid #dbe4dc;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:800}
.kanban-column-value{padding:0 4px 10px;color:#2ba522;font-size:12px;font-weight:800}
.kanban-dropzone{display:grid;gap:10px;min-height:470px}
.kanban-empty{border:1px dashed #c9d4ca;border-radius:10px;padding:18px 12px;text-align:center;color:#89948d;font-size:11px}
.kanban-card{background:#fff;border:1px solid #dfe6e0;border-left:4px solid #8fa099;border-radius:12px;padding:12px;box-shadow:0 4px 12px rgba(19,38,24,.05);cursor:grab;transition:.16s ease}
.kanban-card:hover{transform:translateY(-2px);box-shadow:0 8px 22px rgba(19,38,24,.10)}
.kanban-card.dragging{opacity:.45}
.kanban-card.priority-alta{border-left-color:#e84f4f}.kanban-card.priority-media{border-left-color:#f4b52c}.kanban-card.priority-baixa{border-left-color:#45c83a}
.kanban-card-top,.kanban-card footer{display:flex;align-items:center;justify-content:space-between;gap:8px}
.kanban-card-top span{font-size:10px;color:#7a877e;font-weight:800}.kanban-card-top em{font-style:normal;font-size:10px;padding:3px 7px;border-radius:999px;background:#f2f4f2}
.kanban-card h4{margin:10px 0 4px;font-size:13px}.kanban-card>p{font-size:11px;color:#718078;margin:0 0 9px}.kanban-card>strong{font-size:15px}
.kanban-next{margin:11px 0;padding:9px;border-radius:9px;background:#f7faf7;display:grid;gap:3px}.kanban-next small{color:#819087;font-size:9px;text-transform:uppercase}.kanban-next b{font-size:11px}.kanban-next span{font-size:10px;color:#657269}
.kanban-card footer{border-top:1px solid #edf1ed;padding-top:9px;font-size:10px;color:#6c7970}.kanban-card-menu{border:0;background:transparent;font-weight:900;cursor:pointer}
.crm-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.crm-detail-grid>div{padding:12px;border:1px solid #dfe6e0;border-radius:10px}.crm-detail-grid span{display:block;color:#7b887f;font-size:11px;margin-bottom:5px}.crm-detail-grid b{font-size:13px}.crm-detail-grid .span-full{grid-column:1/-1}
.crm-timeline{margin-top:20px}.crm-timeline h3{font-size:14px}.crm-timeline>div{display:grid;grid-template-columns:18px 1fr;gap:8px;position:relative;padding-bottom:15px}.crm-timeline>div:not(:last-child):after{content:"";position:absolute;left:6px;top:12px;bottom:0;width:2px;background:#dce7dd}.crm-timeline i{width:14px;height:14px;border-radius:50%;background:#36ce2b;z-index:1}.crm-timeline section{display:grid;gap:3px}.crm-timeline small{color:#7d8b82}.crm-timeline p{margin:0;color:#5e6a62;font-size:12px}
.agenda-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:16px}
.agenda-calendar-card{padding:0;overflow:hidden}
.agenda-calendar-head{display:flex;justify-content:center;align-items:center;gap:22px;padding:20px;border-bottom:1px solid #e1e7e2}.agenda-calendar-head div{text-align:center}.agenda-calendar-head small{color:#7b877f}.agenda-calendar-head h2{margin:4px 0 0;font-size:20px;text-transform:capitalize}
.agenda-day-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #e1e7e2}.agenda-day-summary div{padding:13px 18px;border-right:1px solid #e1e7e2}.agenda-day-summary div:last-child{border:0}.agenda-day-summary span{display:block;color:#7b877f;font-size:11px}.agenda-day-summary strong{font-size:18px}
.agenda-timeline{padding:14px 18px}
.agenda-event{display:grid;grid-template-columns:62px 10px 1fr 36px;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid #edf0ed;cursor:pointer}.agenda-event:last-child{border:0}.agenda-event.done{opacity:.58}
.agenda-event time{font-weight:800;font-size:13px}.agenda-event time small{display:block;color:#87928b;font-size:9px;margin-top:3px}
.agenda-event>i{width:10px;height:44px;border-radius:999px}.agenda-event>i.visit{background:#2f80ed}.agenda-event>i.test{background:#8b5cf6}.agenda-event>i.return{background:#f4b52c}.agenda-event>i.sign{background:#16a085}.agenda-event>i.delivery{background:#39c82e}
.agenda-event-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.agenda-event-title h3{margin:0;font-size:13px}.agenda-event-title em{font-style:normal;font-size:9px;padding:4px 7px;border-radius:999px;background:#eef7ed;color:#299c23}
.agenda-event p{margin:4px 0;font-size:11px;color:#647168}.agenda-event div>small{color:#818c85;font-size:10px}
.agenda-side{display:grid;gap:16px;align-content:start}
.agenda-upcoming{display:grid}.agenda-upcoming button{border:0;background:#fff;display:grid;grid-template-columns:54px 1fr;gap:10px;text-align:left;padding:11px 0;border-bottom:1px solid #edf0ed;cursor:pointer}.agenda-upcoming button:last-child{border:0}.agenda-upcoming button>span{display:grid;place-items:center;border-radius:9px;color:#fff;font-weight:800;font-size:11px}.agenda-upcoming .visit{background:#2f80ed}.agenda-upcoming .test{background:#8b5cf6}.agenda-upcoming .return{background:#f4b52c}.agenda-upcoming .sign{background:#16a085}.agenda-upcoming .delivery{background:#39c82e}.agenda-upcoming b{font-size:12px}.agenda-upcoming small{display:block;color:#7c8880;font-size:10px;margin-top:4px}
.agenda-legend{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.agenda-legend span{display:flex;align-items:center;gap:7px;font-size:11px}.agenda-legend i{width:10px;height:10px;border-radius:50%}.agenda-legend .visit{background:#2f80ed}.agenda-legend .test{background:#8b5cf6}.agenda-legend .return{background:#f4b52c}.agenda-legend .sign{background:#16a085}.agenda-legend .delivery{background:#39c82e}
@media(max-width:1050px){.crm-toolbar{grid-template-columns:1fr 1fr}.agenda-layout{grid-template-columns:1fr}.agenda-side{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.crm-toolbar{grid-template-columns:1fr}.agenda-side{grid-template-columns:1fr}.crm-detail-grid{grid-template-columns:1fr}.crm-detail-grid .span-full{grid-column:auto}}


/* Sprint 07.1 — Funil de vendas compacto */
.kanban-board{
  grid-template-columns:repeat(8,minmax(218px,1fr));
  gap:9px;
  min-width:1800px;
}
.kanban-column{
  min-height:505px;
  max-height:calc(100vh - 330px);
  padding:7px;
  border-radius:11px;
  display:flex;
  flex-direction:column;
}
.kanban-column>header{
  padding:2px 2px 4px;
  min-height:40px;
}
.kanban-column>header h3{font-size:12px;line-height:1.15}
.kanban-column>header small{font-size:9px;line-height:1.15}
.kanban-column>header>span{padding:2px 6px;font-size:9px}
.kanban-column-value{padding:0 2px 6px;font-size:10px}
.kanban-dropzone{
  gap:7px;
  min-height:0;
  overflow-y:auto;
  padding-right:2px;
  scrollbar-width:thin;
  scrollbar-color:#aebbb0 transparent;
}
.kanban-dropzone::-webkit-scrollbar{width:5px}
.kanban-dropzone::-webkit-scrollbar-thumb{background:#aebbb0;border-radius:999px}
.kanban-card{
  border-radius:9px;
  padding:8px;
  box-shadow:0 2px 7px rgba(19,38,24,.05);
}
.kanban-card:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(19,38,24,.09)}
.kanban-card-top span{font-size:8px}
.kanban-card-top em{font-size:8px;padding:2px 5px}
.kanban-card h4{margin:6px 0 2px;font-size:11px;line-height:1.2}
.kanban-card>p{font-size:9px;margin:0 0 5px;line-height:1.25}
.kanban-card>strong{font-size:12px}
.kanban-next{
  margin:7px 0;
  padding:6px;
  border-radius:7px;
  gap:1px;
}
.kanban-next small{font-size:7px}
.kanban-next b{font-size:9px;line-height:1.2}
.kanban-next span{font-size:8px}
.kanban-card footer{padding-top:6px;font-size:8px}
.kanban-card-menu{font-size:12px;padding:0 2px}
.kanban-empty{padding:12px 7px;font-size:9px}
.kanban-scroll{padding-bottom:7px}
.crm-toolbar-panel{padding:10px}
.crm-kpis{margin-bottom:12px}
@media(max-height:800px){
 .kanban-column{max-height:430px;min-height:430px}
}


/* Sprint 08 — Logística de Entregas */
.logistics-filter-panel{padding:14px}.logistics-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 170px 210px auto;gap:10px}
.logistics-layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(320px,.65fr);gap:16px;align-items:start}
.delivery-table-panel{padding:0;overflow:hidden}.delivery-panel-title{padding:17px 18px;border-bottom:1px solid #e4e9e5}.delivery-panel-title small{color:#7c8880}.delivery-bulk-actions{display:flex;gap:8px}
#deliveryTable td{vertical-align:middle}.check-progress{display:flex;align-items:center;gap:8px;min-width:105px}.check-progress>span{width:70px;height:7px;border-radius:999px;background:#edf1ed;overflow:hidden}.check-progress i{display:block;height:100%;background:#37c92d;border-radius:999px}.check-progress b{font-size:11px}
.route-builder{position:sticky;top:84px}.route-stops{display:grid;gap:8px;max-height:365px;overflow:auto;margin-bottom:14px}.route-stop{display:grid;grid-template-columns:28px 1fr 28px;gap:9px;align-items:center;padding:10px;border:1px solid #dfe6e0;border-radius:10px;background:#fafcfa}.route-stop>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#36cb2c;color:#fff;font-size:11px;font-weight:900}.route-stop small{display:block;color:#77847c;margin-top:3px}.route-stop button{border:0;background:transparent;font-size:18px;cursor:pointer}.empty-route{text-align:center;padding:28px 12px;color:#78857d}.empty-route p{font-size:12px}.route-origin label{display:grid;gap:6px;font-weight:700;font-size:11px}.route-origin input{width:100%}.route-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:14px 0}.route-metrics div{border:1px solid #dfe6e0;border-radius:10px;padding:10px}.route-metrics span{display:block;color:#7c8880;font-size:9px}.route-metrics strong{font-size:13px}.wide{width:100%;margin-top:8px}
.delivery-checklist{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.delivery-checklist label{display:grid;grid-template-columns:18px 28px 1fr;align-items:center;gap:8px;border:1px solid #dfe6e0;border-radius:10px;padding:11px;cursor:pointer}.delivery-checklist input{width:16px;height:16px}.delivery-checklist label>span{width:25px;height:25px;border-radius:50%;background:#edf7ec;color:#2dac25;display:grid;place-items:center}.delivery-proof-fields{margin-top:16px}
.route-detail-stops{display:grid;gap:8px;margin-top:18px}.route-detail-stops>div{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;border:1px solid #dfe6e0;border-radius:10px;padding:10px}.route-detail-stops>div>span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#36cb2c;color:#fff}.route-detail-stops small{display:block;color:#77847c;margin-top:3px}.route-detail-stops em{font-style:normal;font-size:10px;color:#637068}
.pagination{display:flex;justify-content:center;align-items:center;gap:12px;padding:13px;border-top:1px solid #edf0ed}.pagination button{border:1px solid #dce4dd;background:#fff;border-radius:8px;padding:7px 11px;cursor:pointer}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination span{font-size:11px;color:#6e7b72}
.routes-page .toolbar{display:grid;grid-template-columns:1fr 220px auto;gap:10px}
@media(max-width:1100px){.logistics-layout{grid-template-columns:1fr}.route-builder{position:static}.logistics-toolbar{grid-template-columns:1fr 1fr}.route-stops{max-height:280px}}
@media(max-width:720px){.logistics-toolbar{grid-template-columns:1fr}.delivery-bulk-actions{flex-wrap:wrap}.delivery-checklist{grid-template-columns:1fr}.routes-page .toolbar{grid-template-columns:1fr}}


/* Sprint 08.1 — Busca única e retorno à fila */
.delivery-search-box{
  min-width:0;width:100%;height:46px;display:flex;align-items:center;gap:10px;
  border:1px solid var(--line);border-radius:10px;padding:0 14px;background:#fff;
  color:#89948d;box-shadow:none;
}
.delivery-search-box:focus-within{
  border-color:var(--green);box-shadow:0 0 0 3px rgba(66,214,41,.10);
}
.delivery-search-box input{
  width:100%;height:100%;padding:0!important;border:0!important;outline:0;background:transparent;
  box-shadow:none!important;
}
.logistics-filter-panel .logistics-toolbar{align-items:center}
.requeue-action{color:#a56b00!important;background:#fff7dc!important;border-color:#f1d787!important}
.requeue-btn{border-color:#e5bd4a!important;background:#fff9e8!important;color:#855e00!important}
.requeue-notice{padding:13px 15px;border-radius:10px;background:#fff8df;border:1px solid #eed37c}
.requeue-notice p{margin:5px 0 0;color:#756331;font-size:12px}


/* Sprint 09 — Pós-venda */
.aftersales-filter-panel{padding:14px}.aftersales-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 220px auto;gap:10px;align-items:center}.service-toolbar{grid-template-columns:minmax(300px,1fr) 220px 190px auto}
.single-search{height:46px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:0 14px;background:#fff;color:#89948d}.single-search:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(66,214,41,.1)}.single-search input{width:100%;height:100%;border:0!important;outline:0;padding:0!important;background:transparent;box-shadow:none!important}
.limited-cell{max-width:260px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.related-cases{margin-top:18px}.related-cases h3{font-size:14px}.related-cases button{width:100%;display:grid;grid-template-columns:120px 150px 1fr;text-align:left;gap:10px;padding:11px;border:0;border-bottom:1px solid #e9eeea;background:#fff;cursor:pointer}.related-cases button:hover{background:#f5faf5}.related-cases small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.service-detail-header{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.service-detail-header>div,.service-cost{border:1px solid #dfe6e0;border-radius:10px;padding:12px}.service-detail-header span,.service-cost span{display:block;color:#7c8880;font-size:11px;margin-bottom:4px}.service-report{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:14px}.service-report section{border:1px solid #dfe6e0;border-radius:10px;padding:13px}.service-report h3{font-size:12px;margin:0 0 7px}.service-report p{font-size:12px;color:#59665d;margin:0;line-height:1.5}.service-cost{margin-top:14px}.service-cost strong{display:block;font-size:20px}.service-cost small{color:#6e7b72}
.review-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.65fr);gap:16px;align-items:start}.review-layout>.panel:first-child{padding:0;overflow:hidden}.review-layout .aftersales-toolbar{padding:14px;border-bottom:1px solid #e6ebe7}.review-sidebar{position:sticky;top:84px}.maintenance-plan{display:grid;gap:10px}.maintenance-plan>div{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;border:1px solid #dfe6e0;border-radius:10px;padding:11px}.maintenance-plan>div>span{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9f8e7;color:#2baa24;font-weight:900}.maintenance-plan small{display:block;color:#76837a;margin-top:3px}.review-alert{margin-top:16px;padding:14px;border:1px solid #cfe8cc;background:#f3fbf2;border-radius:10px}.review-alert p{font-size:12px;color:#647168;margin-bottom:0}
@media(max-width:1050px){.review-layout{grid-template-columns:1fr}.review-sidebar{position:static}.service-detail-header{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.aftersales-toolbar,.service-toolbar{grid-template-columns:1fr}.service-report{grid-template-columns:1fr}.service-detail-header{grid-template-columns:1fr}.related-cases button{grid-template-columns:1fr}}


/* Sprint 10 — Central de melhorias, auditoria e refinamentos */
.top-global-search{position:relative}
.global-search-results{position:absolute;left:0;right:0;top:calc(100% + 7px);z-index:1000;background:#fff;border:1px solid #dce5dd;border-radius:11px;box-shadow:0 15px 35px rgba(15,31,19,.16);max-height:420px;overflow:auto;padding:6px}
.global-search-results button{width:100%;display:grid;grid-template-columns:85px 1fr;text-align:left;gap:2px 10px;border:0;background:#fff;border-radius:8px;padding:10px;cursor:pointer}.global-search-results button:hover{background:#f3f9f2}.global-search-results button span{grid-row:1/3;color:#2fa927;font-size:10px;font-weight:800;text-transform:uppercase}.global-search-results button b{font-size:12px}.global-search-results button small{color:#78857d}.global-empty{padding:18px;text-align:center;color:#758178}
.single-search{height:46px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:0 14px;background:#fff;color:#89948d}.single-search input{width:100%;height:100%;border:0!important;outline:0;padding:0!important;box-shadow:none!important;background:transparent}
.improvement-filter-panel{padding:14px}.improvement-toolbar{display:grid;grid-template-columns:minmax(330px,1fr) 190px 210px 180px auto;gap:10px}.improvements-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(280px,.55fr);gap:16px;align-items:start}.improvement-list-panel{padding:0;overflow:hidden}.improvement-summary{position:sticky;top:84px}
.module-summary{display:grid;gap:12px}.module-summary>div{display:grid;grid-template-columns:120px 1fr 28px;gap:9px;align-items:center;font-size:11px}.module-summary i{height:8px;background:#edf1ed;border-radius:999px;overflow:hidden}.module-summary i b{display:block;height:100%;background:linear-gradient(90deg,#2fc525,#77e25a);border-radius:999px}.module-summary strong{text-align:right}.release-note-card{margin-top:18px;padding:14px;border-radius:11px;background:#102016;color:#fff}.release-note-card span{color:#9caaa1;font-size:10px}.release-note-card strong{display:block;color:#6ce84d;font-size:24px;margin:4px 0}.release-note-card p{font-size:11px;color:#d3ddd5;margin-bottom:0}
.critical-row{background:#fff7f7}.operation-blocked{display:inline-block;margin-top:5px;font-style:normal;font-size:9px;padding:3px 6px;border-radius:999px;background:#ffe1e1;color:#b72f2f}.checkbox-line{display:flex!important;align-items:center;gap:9px}.checkbox-line input{width:17px;height:17px}
.improvement-detail-head{display:flex;align-items:center;gap:9px;margin-bottom:13px}.improvement-detail-head>b{font-size:10px;background:#ffe4e4;color:#aa2525;padding:5px 8px;border-radius:999px}.improvement-comments{margin-top:18px}.improvement-comments h3,.improvement-timeline h3{font-size:14px}.improvement-comments article{padding:10px;border-bottom:1px solid #e8ede9}.improvement-comments article small{float:right;color:#7b877f}.improvement-comments article p{margin:5px 0 0;font-size:12px}.comment-entry{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.comment-entry textarea{resize:vertical}
.import-drop-zone{border:2px dashed #cdd9ce;border-radius:12px;padding:28px;text-align:center;background:#f8fbf8}.import-drop-zone p{color:#758178;font-size:12px}.import-success{margin-top:14px;padding:12px;border:1px solid #bee5ba;background:#f0faef;border-radius:9px}.linked-clients{margin-top:18px}.linked-clients h3{font-size:14px}.linked-clients button{width:100%;border:0;border-bottom:1px solid #e8ede9;background:#fff;text-align:left;padding:10px;cursor:pointer}.linked-clients small{display:block;color:#7b877f;margin-top:3px}
.warranty-service-history{margin-top:20px}.warranty-service-history>h3{margin-bottom:11px}.related-service-card{border:1px solid #dce5dd;border-radius:11px;padding:12px;margin-bottom:10px;background:#fafcfa;cursor:pointer;transition:.15s}.related-service-card:hover{border-color:#9ed69a;box-shadow:0 6px 18px rgba(31,68,35,.08)}.related-service-head{display:flex;align-items:center;justify-content:space-between}.related-service-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0}.related-service-meta span{font-size:11px}.related-service-meta small,.related-service-card p small{display:block;color:#7b877f;font-size:9px;text-transform:uppercase;margin-bottom:3px}.related-service-card p{font-size:12px;margin:8px 0}.related-service-card footer{display:flex;gap:8px;border-top:1px solid #e8ede9;padding-top:9px}.related-service-card footer button{border:0;background:transparent;color:#258f20;font-weight:700;cursor:pointer;padding:3px}.empty-related{padding:17px;border:1px dashed #cfd9d0;border-radius:10px;text-align:center;color:#6e7a72}.empty-related p{font-size:11px;margin-bottom:0}
.review-sidebar{padding-top:22px}.review-sidebar .panel-title{padding:0 4px 15px;margin-bottom:13px;border-bottom:1px solid #e7ece8}.maintenance-plan{gap:13px}.maintenance-plan>div{padding:15px 13px;gap:12px}.maintenance-plan>div>span{width:33px;height:33px}.maintenance-plan b{display:block;margin-bottom:5px}.review-alert{margin-top:19px;padding:16px}.review-sheet-head{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.review-sheet-head>div{border:1px solid #dfe6e0;border-radius:10px;padding:11px}.review-sheet-head span,.review-sheet-grid span{display:block;color:#7b877f;font-size:10px;margin-bottom:4px}.review-sheet-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-top:12px}.review-sheet-grid section{border:1px solid #dfe6e0;border-radius:10px;padding:13px}.review-sheet-grid h3{font-size:12px;margin:0 0 10px}.review-sheet-grid section>div{margin-bottom:8px}.review-sheet-grid p{font-size:12px;color:#56635a;line-height:1.5}.future-attachments{margin-top:12px;padding:12px;border-radius:10px;background:#f3f9f2;border:1px solid #d6ead3}.future-attachments span{display:block;color:#758178;font-size:10px}.future-attachments b{font-size:12px}
@media(max-width:1150px){.improvement-toolbar{grid-template-columns:1fr 1fr}.improvements-layout{grid-template-columns:1fr}.improvement-summary{position:static}}@media(max-width:760px){.improvement-toolbar{grid-template-columns:1fr}.review-sheet-head,.review-sheet-grid{grid-template-columns:1fr}.related-service-meta{grid-template-columns:1fr}}


/* Sprint 10.1 — Acesso rápido às melhorias */
.top-actions{gap:14px}
.quick-improvement-btn{
  height:40px;display:flex;align-items:center;gap:8px;border:1px solid #bfe7b9;
  background:#f3fbf2;color:#238f1e;border-radius:10px;padding:0 12px;
  cursor:pointer;font:inherit;position:relative;transition:.15s ease;
}
.quick-improvement-btn:hover{background:#e8f8e5;border-color:#71d866;transform:translateY(-1px)}
.quick-improvement-btn>span{font-size:16px}
.quick-improvement-btn>b{font-size:12px}
.quick-improvement-btn>em{
  min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;
  background:#ef4444;color:#fff;font-size:9px;font-style:normal;font-weight:900;
}
.quick-improvement-form{display:grid;gap:14px}
.quick-improvement-form>label,.quick-grid label,.quick-file-label{display:grid;gap:6px;font-size:12px;font-weight:700}
.quick-context{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:12px;border:1px solid #dce8dc;background:#f5faf4;border-radius:10px}
.quick-context span{display:block;color:#758178;font-size:10px;margin-bottom:4px}
.quick-context b{font-size:13px}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.quick-file-label small{font-weight:400;color:#77847b}
.quick-blocked{padding:11px;border:1px solid #f0d0d0;background:#fff8f8;border-radius:9px}
.quick-back-operation{margin-left:10px}
@media(max-width:760px){
 .quick-improvement-btn>b{display:none}
 .quick-improvement-btn{padding:0 9px}
 .quick-grid,.quick-context{grid-template-columns:1fr}
}


/* Sprint 10.1.1 — Correção de exibição do botão Melhorias */
.topbar .top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  min-width:max-content;
}
.quick-improvement-btn{
  display:inline-flex!important;
  visibility:visible!important;
  opacity:1!important;
  flex:0 0 auto;
  height:40px;
  align-items:center;
  justify-content:center;
  gap:8px;
  border:1px solid #a9dda3;
  background:#f1faef;
  color:#238e1f;
  border-radius:10px;
  padding:0 12px;
  cursor:pointer;
  white-space:nowrap;
  position:relative;
  z-index:5;
}
.quick-improvement-btn:hover{
  background:#e5f7e1;
  border-color:#5dcc52;
}
.quick-improvement-btn .quick-improvement-icon{
  font-size:16px;
  line-height:1;
}
.quick-improvement-btn>b{
  display:inline!important;
  font-size:12px;
}
.quick-improvement-btn>em{
  display:grid;
  place-items:center;
  min-width:18px;
  height:18px;
  padding:0 4px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:9px;
  line-height:1;
  font-style:normal;
  font-weight:900;
}
@media(max-width:1050px){
  .quick-improvement-btn>b{display:none!important}
  .quick-improvement-btn{padding:0 10px}
}


/* Sprint 10.2 — Cabeçalho e melhorias redesenhadas */
.topbar{gap:24px}
.topbar .top-actions{gap:10px}

.quick-improvement-main{
  height:46px!important;
  min-width:210px;
  padding:0 14px!important;
  border-radius:12px!important;
  border:1px solid #85d77d!important;
  background:linear-gradient(180deg,#f5fff3,#e9fae5)!important;
  box-shadow:0 5px 15px rgba(51,164,39,.10);
}
.quick-improvement-main:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 9px 22px rgba(51,164,39,.16);
}
.quick-improvement-main .quick-improvement-icon{
  width:30px;height:30px;border-radius:9px;display:grid;place-items:center;
  background:#37c72b;color:#fff;font-size:15px;
}
.quick-improvement-copy{display:grid;text-align:left;line-height:1.15}
.quick-improvement-copy b{font-size:12px!important;color:#1f7c1b}
.quick-improvement-copy small{font-size:9px;color:#6a7e6b;margin-top:2px}
.quick-improvement-main>em{margin-left:auto}

.notification-btn{flex:0 0 auto}
.user-menu-wrap{position:relative}
.user-menu-trigger{
  display:flex;align-items:center;gap:9px;height:46px;border:1px solid transparent;
  background:#fff;border-radius:12px;padding:4px 7px;cursor:pointer;transition:.15s;
}
.user-menu-trigger:hover,.user-menu-trigger[aria-expanded="true"]{background:#f5f8f5;border-color:#dde6de}
.user-avatar{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  background:linear-gradient(145deg,#183719,#2fb925);color:#fff;font-size:11px;font-weight:800;
}
.user-avatar.large{width:42px;height:42px;border-radius:12px}
.user-copy{display:grid;text-align:left}.user-copy b{font-size:12px}.user-copy small{font-size:10px;color:#758079}
.user-chevron{color:#7f8a82;font-size:12px}
.user-dropdown{
  position:absolute;right:0;top:calc(100% + 9px);z-index:1200;width:290px;background:#fff;
  border:1px solid #dce4dd;border-radius:14px;box-shadow:0 20px 45px rgba(17,34,20,.18);padding:7px;
}
.user-dropdown-head{display:flex;align-items:center;gap:11px;padding:11px;border-bottom:1px solid #edf1ed}
.user-dropdown-head div{display:grid}.user-dropdown-head small{color:#758079;margin-top:2px}
.user-dropdown-section{padding:6px 0;border-bottom:1px solid #edf1ed}.user-dropdown-section:last-child{border:0}
.user-dropdown-section button{
  width:100%;display:grid;grid-template-columns:24px 1fr;align-items:center;text-align:left;
  border:0;background:#fff;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:12px;
}
.user-dropdown-section button:hover{background:#f3f8f2;color:#218d16}
.user-dropdown-section.danger button{color:#b63a3a}.user-dropdown-section.danger button:hover{background:#fff1f1}

.modal-card:has(.premium-improvement-form){width:min(820px,94vw)!important;max-height:92vh}
.modal-card:has(.premium-improvement-form) .modal-head{padding:22px 26px 18px}
.modal-card:has(.premium-improvement-form) .modal-body{padding:20px 26px;background:#f7f9f7}
.modal-card:has(.premium-improvement-form) .modal-footer{padding:16px 26px}

.premium-improvement-form{gap:16px}
.premium-context{
  display:grid!important;grid-template-columns:44px 1fr!important;gap:13px!important;
  padding:14px 16px!important;background:linear-gradient(135deg,#effaec,#f8fcf7)!important;
  border:1px solid #cfe8cc!important;border-radius:12px!important;
}
.context-icon{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:#34c329;color:#fff;font-size:18px}
.context-copy{display:grid}.context-copy span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#66806a}.context-copy b{font-size:14px;margin:3px 0}.context-copy small{font-size:11px;color:#718078}

.improvement-form-section{
  background:#fff;border:1px solid #e0e7e1;border-radius:13px;padding:16px;
  box-shadow:0 3px 12px rgba(18,38,22,.04);
}
.section-heading{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.section-heading>span{
  width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#e9f9e6;color:#299822;font-weight:800;font-size:11px
}
.section-heading div{display:grid}.section-heading b{font-size:13px}.section-heading small{font-size:10px;color:#7b877f;margin-top:2px}
.premium-improvement-form label{font-size:11px!important;color:#344038}
.premium-improvement-form input,.premium-improvement-form select,.premium-improvement-form textarea{
  border:1px solid #dce4dd!important;border-radius:9px!important;padding:11px 12px!important;background:#fff!important;outline:0
}
.premium-improvement-form input:focus,.premium-improvement-form select:focus,.premium-improvement-form textarea:focus{
  border-color:#45c936!important;box-shadow:0 0 0 3px rgba(69,201,54,.10)
}
.premium-improvement-form textarea{resize:vertical;line-height:1.45}

.quick-upload-card{
  display:grid!important;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;
  min-height:72px;border:1px dashed #b9d5b8!important;background:#f8fcf7!important;
  border-radius:11px!important;padding:12px 14px!important;cursor:pointer
}
.quick-upload-card input{display:none}
.upload-icon{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e6f7e3;color:#289821;font-size:20px}
.quick-upload-card div{display:grid}.quick-upload-card div b{font-size:12px}.quick-upload-card div small{font-size:10px;color:#748078;margin-top:3px;font-weight:400}
.quick-upload-card em{font-size:10px;font-style:normal;color:#657168;background:#fff;border:1px solid #dce5dd;padding:7px 9px;border-radius:8px}

.premium-blocked{
  display:grid!important;grid-template-columns:42px 1fr;align-items:center;gap:11px;
  padding:13px 14px!important;border:1px solid #edcccc!important;background:#fff8f8!important;border-radius:11px!important;cursor:pointer
}
.premium-blocked input{display:none}
.blocked-toggle{width:38px;height:22px;border-radius:999px;background:#d6dbd7;position:relative}
.blocked-toggle:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;left:2px;top:2px;box-shadow:0 2px 5px rgba(0,0,0,.15);transition:.2s}
.premium-blocked input:checked+.blocked-toggle{background:#e34d4d}
.premium-blocked input:checked+.blocked-toggle:after{left:18px}
.premium-blocked div{display:grid}.premium-blocked b{font-size:12px;color:#9c3434}.premium-blocked small{font-size:10px;color:#846b6b;margin-top:2px;font-weight:400}
.quick-save-btn{min-width:180px}

.settings-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.settings-preview-grid>div{border:1px solid #dfe6e0;border-radius:10px;padding:12px}.settings-preview-grid span{display:block;color:#7b877f;font-size:10px;margin-bottom:4px}.settings-preview-grid .span-full{grid-column:1/-1}
.settings-preview-list{display:grid}.settings-preview-list button{display:flex;align-items:center;justify-content:space-between;border:0;border-bottom:1px solid #e9eeea;background:#fff;padding:12px;text-align:left;cursor:pointer}.settings-preview-list button:hover{background:#f5faf4}.settings-preview-list button span{color:#718078;font-size:11px}

@media(max-width:980px){
  .quick-improvement-main{min-width:auto}
  .quick-improvement-copy{display:none}
  .quick-improvement-main{padding:0 8px!important}
  .user-copy{display:none}
}
@media(max-width:760px){
  .quick-grid{grid-template-columns:1fr!important}
  .quick-upload-card{grid-template-columns:40px 1fr}.quick-upload-card em{grid-column:1/-1}
  .settings-preview-grid{grid-template-columns:1fr}.settings-preview-grid .span-full{grid-column:auto}
}


/* Sprint 10.3 — validação de zoom 80% a 125% */
html{min-width:320px}
.app,.main,.content,.page{min-width:0}
.page{width:100%;max-width:1920px;margin:0 auto}
.topbar{min-width:0}.topbar>*{min-width:0}.top-global-search{flex:1;max-width:520px;min-width:220px}.top-actions{flex:0 0 auto}
.modal-root{padding:clamp(10px,2vw,24px)}
.modal-card-improvement{width:min(940px,calc(100vw - 32px))!important;max-height:calc(100vh - 24px)!important;display:flex;flex-direction:column;overflow:hidden!important}
.modal-card-improvement>header{flex:0 0 auto}.modal-card-improvement>.modal-body{flex:1;min-height:0;overflow:auto;padding:20px 24px!important}.modal-card-improvement>footer{flex:0 0 auto}
.premium-improvement-form,.premium-improvement-form section{width:100%;min-width:0}
.premium-improvement-form label{display:grid!important;gap:7px!important;width:100%;min-width:0;margin:0!important}
.premium-improvement-form input,.premium-improvement-form select,.premium-improvement-form textarea{display:block;width:100%!important;min-width:0!important;max-width:none!important;margin:0!important}
.premium-improvement-form textarea{min-height:96px}
.improvement-form-section>.quick-grid{margin-top:12px}

.settings-page{max-width:1750px}.settings-page-head{align-items:center}
.settings-shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}
.settings-nav{background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px;display:grid;gap:4px;position:sticky;top:92px}
.settings-nav button{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:center;border:0;background:#fff;text-align:left;padding:11px;border-radius:9px;cursor:pointer;color:#4e5b52}.settings-nav button:hover,.settings-nav button.active{background:#eef9ec;color:#228c1b}.settings-nav button>span{font-size:15px}.settings-nav button div{display:grid}.settings-nav b{font-size:12px}.settings-nav small{font-size:9px;color:#7a867e;margin-top:2px}
.settings-content{background:#fff;border:1px solid var(--line);border-radius:14px;min-width:0;overflow:hidden}.settings-content-head{padding:20px 22px;border-bottom:1px solid var(--line)}.settings-content-head span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#2c9b25}.settings-content-head h2{margin:5px 0 4px;font-size:22px}.settings-content-head p{margin:0;color:var(--muted);font-size:12px}#settingsBody{padding:20px}
.settings-form-card,.settings-table-card{border:1px solid #e0e7e1;border-radius:12px;background:#fff;overflow:hidden}.settings-form-card{padding:20px}.settings-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.settings-form-grid label{display:grid;gap:7px;font-size:11px;font-weight:700;min-width:0}.settings-form-grid input,.settings-form-grid select{width:100%;min-width:0;height:43px;border:1px solid #dce4dd;border-radius:9px;padding:0 11px}.settings-form-grid .span-full{grid-column:1/-1}.settings-section-title{display:grid;margin-bottom:17px}.settings-section-title small{color:#77837b;margin-top:4px}.settings-avatar-edit{display:flex;align-items:center;gap:14px;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #e7ece8}.settings-avatar-edit>span{width:64px;height:64px;border-radius:16px;display:grid;place-items:center;background:#1b7820;color:#fff;font-size:18px;font-weight:800}.settings-avatar-edit>div{display:grid;justify-items:start}.settings-avatar-edit small{color:#77837b;margin:3px 0 8px}
.settings-list-toolbar{display:grid;grid-template-columns:minmax(250px,1fr) 190px;gap:10px;padding:14px;border-bottom:1px solid #e7ece8}.settings-user-cell{display:flex;align-items:center;gap:9px}.settings-user-cell>span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#e8f8e5;color:#298d22;font-size:10px;font-weight:800}
.security-cards{display:grid;gap:10px}.security-cards article{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px;border:1px solid #dfe6e0;border-radius:11px}.security-cards article div{display:grid}.security-cards small{color:#77837b;margin-top:4px}
.roles-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.roles-grid article{border:1px solid #dfe6e0;border-radius:12px;padding:15px}.role-card-head{display:flex;gap:10px;align-items:center}.role-card-head>span{width:38px;height:38px;border-radius:10px;background:#e9f8e7;display:grid;place-items:center}.role-card-head div{display:grid}.role-card-head small{color:#77837b}.roles-grid p{font-size:11px;color:#657169}.role-modules{display:flex;flex-wrap:wrap;gap:5px;margin:12px 0}.role-modules em{font-style:normal;font-size:9px;padding:4px 7px;border-radius:999px;background:#f0f4f0}.roles-grid footer{border-top:1px solid #e8ede9;padding-top:11px}
.audit-list{display:grid}.audit-list article{display:grid;grid-template-columns:145px 100px 1fr 150px;gap:10px;align-items:center;padding:12px;border-bottom:1px solid #e8ede9}.audit-list span,.audit-list em{font-size:10px;color:#77837b}.audit-list p{margin:0;font-size:11px}.audit-list em{text-align:right;font-style:normal}
.permission-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.permission-checks label{display:flex!important;align-items:center;gap:8px;border:1px solid #e0e7e1;border-radius:8px;padding:9px}.permission-checks input{width:16px!important;min-height:auto!important}.permission-checks span{color:#2ba424}
.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.help-grid button{border:1px solid #dfe6e0;border-radius:11px;background:#fff;padding:18px;display:grid;text-align:left;gap:5px;cursor:pointer}.help-grid button:hover{background:#f3faf2}.help-grid button>b{font-size:12px}.help-grid button>small{font-size:10px;color:#77837b}
@media(max-width:1280px){.quick-improvement-main{min-width:180px}.quick-improvement-copy small{display:none}.settings-shell{grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:1050px){.settings-shell{grid-template-columns:1fr}.settings-nav{position:static;grid-template-columns:repeat(4,minmax(0,1fr));overflow:auto}.settings-nav button{min-width:150px}.roles-grid{grid-template-columns:1fr}.audit-list article{grid-template-columns:120px 90px 1fr}.audit-list em{display:none}}
@media(max-width:760px){.modal-card-improvement{width:calc(100vw - 12px)!important;max-height:calc(100vh - 12px)!important}.modal-card-improvement>.modal-body{padding:12px!important}.improvement-form-section{padding:12px}.settings-form-grid{grid-template-columns:1fr}.settings-form-grid .span-full{grid-column:auto}.settings-list-toolbar{grid-template-columns:1fr}.settings-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.audit-list article{grid-template-columns:1fr}.help-grid{grid-template-columns:1fr}}


/* Sprint 10.4 — ações restauradas, paginação e modal robusto */
.table-pagination{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:13px 16px;border-top:1px solid #e5ebe6;background:#fbfcfb;
  color:#657269;font-size:11px;
}
.table-pagination>div{display:flex;align-items:center;gap:10px}
.table-pagination button{
  min-height:34px;border:1px solid #d9e2da;background:#fff;border-radius:8px;
  padding:0 11px;cursor:pointer;font-weight:700;color:#364139;
}
.table-pagination button:hover:not(:disabled){border-color:#66cc59;background:#f1faef;color:#248d1e}
.table-pagination button:disabled{opacity:.4;cursor:not-allowed}
.attention-field{box-shadow:0 0 0 4px rgba(54,201,43,.16)!important;border-color:#36c92b!important}
.crm-toolbar-panel.filters-collapsed{display:none}

.modal-card-improvement{
  width:min(900px,calc(100vw - 28px))!important;
  height:auto!important;
  max-height:calc(100dvh - 22px)!important;
  margin:auto!important;
}
.modal-card-improvement>.modal-body{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain;
  padding:18px 22px!important;
}
.modal-card-improvement>header,
.modal-card-improvement>footer{position:relative;z-index:2;background:#fff}
.modal-card-improvement .premium-improvement-form{display:grid!important;gap:14px!important}
.modal-card-improvement .improvement-form-section{
  display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important;
  width:100%!important;min-width:0!important;padding:15px!important;
}
.modal-card-improvement .section-heading{width:100%;margin:0 0 2px!important}
.modal-card-improvement .quick-grid{
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;width:100%!important;min-width:0!important;margin:0!important;
}
.modal-card-improvement label{
  width:100%!important;min-width:0!important;max-width:none!important;
}
.modal-card-improvement input:not([type="file"]):not([type="checkbox"]),
.modal-card-improvement select,
.modal-card-improvement textarea{
  box-sizing:border-box!important;width:100%!important;min-width:0!important;
}
.modal-card-improvement textarea{min-height:88px!important}

.modal-card-improvement .quick-upload-card{
  position:relative!important;display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  align-items:center!important;gap:12px!important;width:100%!important;
  min-height:76px!important;padding:13px 15px!important;overflow:hidden!important;
}
.modal-card-improvement .quick-upload-card input[type="file"]{
  position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
  opacity:0!important;cursor:pointer!important;z-index:3!important;
}
.modal-card-improvement .quick-upload-card em{
  max-width:220px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.modal-card-improvement .premium-blocked{
  position:relative!important;display:flex!important;align-items:center!important;
  gap:13px!important;width:100%!important;min-height:72px!important;
  padding:13px 15px!important;overflow:hidden!important;
}
.modal-card-improvement .premium-blocked input[type="checkbox"]{
  position:absolute!important;opacity:0!important;pointer-events:none!important;
}
.modal-card-improvement .premium-blocked .blocked-toggle{flex:0 0 38px!important}
.modal-card-improvement .premium-blocked>div{
  display:grid!important;grid-template-columns:1fr!important;min-width:0!important;
}
.modal-card-improvement .premium-blocked b,
.modal-card-improvement .premium-blocked small{
  width:auto!important;max-width:none!important;white-space:normal!important;
}

@media(max-width:760px){
  .modal-card-improvement .quick-grid{grid-template-columns:1fr!important}
  .modal-card-improvement .quick-upload-card{grid-template-columns:38px minmax(0,1fr)!important}
  .modal-card-improvement .quick-upload-card em{grid-column:1/-1;max-width:none!important}
}


/* Sprint 10.5 — status, formulário unificado e notificações */
#deliveryTable th:nth-child(6),
#deliveryTable td:nth-child(6){min-width:145px}
#deliveryTable td:nth-child(6) .badge{
  display:inline-flex;align-items:center;justify-content:center;
  white-space:nowrap!important;word-break:normal!important;
  min-width:max-content;max-width:none;line-height:1.2;
}
.badge{white-space:nowrap;word-break:normal}

.central-improvement-form{width:100%}
.central-improvement-form .improvement-form-section{margin:0}
.central-improvement-form input[type="file"]{
  min-height:46px;padding:9px!important;background:#fafcfa!important
}

.notification-wrap{position:relative}
.notification-btn[aria-expanded="true"]{background:#eef9ec;border-color:#8fd786}
.notification-dropdown{
  position:absolute;right:0;top:calc(100% + 10px);z-index:1300;
  width:390px;max-width:calc(100vw - 24px);background:#fff;
  border:1px solid #dbe5dc;border-radius:14px;box-shadow:0 22px 50px rgba(15,35,19,.20);
  overflow:hidden;
}
.notification-dropdown>header{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:14px 15px;border-bottom:1px solid #e9eeea;background:#fbfcfb
}
.notification-dropdown>header div{display:grid}
.notification-dropdown>header b{font-size:13px}
.notification-dropdown>header small{font-size:10px;color:#748078;margin-top:3px}
.notification-dropdown>header button,
.notification-dropdown>footer button{
  border:0;background:transparent;color:#278f20;font-size:10px;font-weight:800;cursor:pointer
}
.notification-list{max-height:420px;overflow:auto;padding:6px}
.notification-item{
  width:100%;display:grid;grid-template-columns:38px minmax(0,1fr) 8px;
  gap:10px;align-items:start;text-align:left;border:0;background:#fff;
  padding:11px;border-radius:10px;cursor:pointer;position:relative
}
.notification-item:hover{background:#f4f9f3}
.notification-item.read{opacity:.64}
.notification-icon{
  width:34px;height:34px;border-radius:10px;display:grid;place-items:center;
  font-weight:900;background:#edf5ed;color:#45614a
}
.notification-item.critical .notification-icon{background:#ffe6e6;color:#b63232}
.notification-item.attention .notification-icon{background:#e5f1ff;color:#2f77bd}
.notification-item.warning .notification-icon{background:#fff1cd;color:#a56a00}
.notification-copy{display:grid;min-width:0}
.notification-copy b{font-size:11px;line-height:1.35}
.notification-copy small{font-size:10px;color:#6f7c73;line-height:1.4;margin-top:3px}
.notification-copy em{font-size:9px;color:#299321;font-style:normal;margin-top:5px}
.notification-item>i{width:7px;height:7px;border-radius:50%;background:#ef4444;margin-top:5px}
.notification-dropdown>footer{padding:10px 14px;border-top:1px solid #e9eeea;text-align:center}
.notification-empty{display:grid;place-items:center;text-align:center;padding:34px 16px}
.notification-empty>span{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#e7f8e4;color:#24951e;font-size:20px}
.notification-empty b{font-size:12px;margin-top:9px}
.notification-empty small{font-size:10px;color:#758179;margin-top:4px}

@media(max-width:760px){
  #deliveryTable th:nth-child(6),
  #deliveryTable td:nth-child(6){min-width:130px}
  .notification-dropdown{position:fixed;right:10px;top:70px;width:calc(100vw - 20px)}
}


/* Sprint 10.6 — Central de Atenção */
.attention-filter-panel{padding:14px}
.attention-toolbar{display:grid;grid-template-columns:minmax(320px,1fr) 180px 220px auto;gap:10px}
.attention-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.55fr);gap:16px;align-items:start}
.attention-list-panel{padding:0;overflow:hidden}
.attention-list-panel>.panel-title{padding:17px 18px;border-bottom:1px solid #e7ece8}
.attention-center-list{display:grid;gap:0}
.attention-center-item{
  display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:13px;align-items:center;
  padding:15px 18px;border-bottom:1px solid #e8ede9;background:#fff;cursor:pointer;transition:.15s
}
.attention-center-item:hover{background:#f7faf7}
.attention-center-item.read{opacity:.68}
.attention-center-icon{
  width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:18px;font-weight:900
}
.attention-center-item.critical .attention-center-icon{background:#ffe6e6;color:#b83232}
.attention-center-item.attention .attention-center-icon{background:#e7f1ff;color:#3279bd}
.attention-center-item.warning .attention-center-icon{background:#fff1cc;color:#9b6800}
.attention-center-copy{min-width:0}
.attention-center-copy>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.attention-center-copy b{font-size:13px}
.attention-center-copy em{font-size:9px;font-style:normal;color:#258e20;background:#ecf8ea;padding:4px 7px;border-radius:999px}
.attention-center-copy p{font-size:11px;color:#637068;margin:5px 0}
.attention-center-copy small{font-size:9px;color:#839087}
.attention-center-item>button{
  border:1px solid #cfe2cf;background:#fff;color:#258d20;border-radius:9px;padding:9px 11px;font-weight:800;cursor:pointer;white-space:nowrap
}
.attention-center-item:hover>button{background:#eff9ed}
.attention-side{position:sticky;top:84px}
.attention-module-summary{display:grid;gap:12px}
.attention-module-summary>div{display:grid;grid-template-columns:120px 1fr 26px;gap:8px;align-items:center;font-size:11px}
.attention-module-summary i{height:8px;background:#edf1ed;border-radius:999px;overflow:hidden}
.attention-module-summary i b{display:block;height:100%;background:linear-gradient(90deg,#2fc625,#78e45c);border-radius:999px}
.attention-module-summary strong{text-align:right}
.attention-tip{margin-top:18px;padding:14px;border:1px solid #d7ead4;background:#f4fbf2;border-radius:11px}
.attention-tip p{font-size:11px;color:#66736a;line-height:1.5;margin-bottom:0}
@media(max-width:1050px){
  .attention-layout{grid-template-columns:1fr}
  .attention-side{position:static}
  .attention-toolbar{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .attention-toolbar{grid-template-columns:1fr}
  .attention-center-item{grid-template-columns:42px 1fr}
  .attention-center-item>button{grid-column:1/-1}
}


/* Sprint 10.7 — Central de Atenção no menu e Dashboard */
.sidebar .attention-menu-button{
  display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important
}
.sidebar .attention-menu-button .menu-label{
  min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap
}
.sidebar .attention-menu-button>em{
  min-width:20px;height:20px;padding:0 5px;border-radius:999px;display:grid;place-items:center;
  background:#ef4444;color:#fff;font-size:9px;font-style:normal;font-weight:900;flex:0 0 auto;
  box-shadow:0 0 0 3px rgba(239,68,68,.13)
}
.sidebar .attention-menu-button.has-alerts{
  color:#fff!important;background:linear-gradient(90deg,#153a16,#245b22)!important;
  border-left:3px solid #ffcf4a!important
}
.sidebar .attention-menu-button.has-alerts:hover{background:linear-gradient(90deg,#19451a,#2d6a29)!important}
.sidebar .attention-menu-button.active{background:linear-gradient(90deg,#1a491b,#2c742a)!important}
.dashboard-attention-strip{
  width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;
  text-align:left;border:1px solid #d7e8d4;background:linear-gradient(90deg,#f4fbf2,#fbfefb);
  border-radius:12px;padding:12px 14px;margin:0 0 14px;cursor:pointer;transition:.15s
}
.dashboard-attention-strip:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(24,68,27,.09)}
.dashboard-attention-strip.critical{border-color:#efc5c5;background:linear-gradient(90deg,#fff4f4,#fffafa)}
.dashboard-attention-icon{
  width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#e8f8e5;
  color:#279320;font-size:17px;font-weight:900
}
.dashboard-attention-strip.critical .dashboard-attention-icon{background:#ffe1e1;color:#b93333}
.dashboard-attention-copy{display:grid}
.dashboard-attention-copy b{font-size:12px}
.dashboard-attention-copy small{font-size:10px;color:#6d796f;margin-top:3px}
.dashboard-attention-strip>em{font-size:10px;color:#268f20;font-style:normal;font-weight:900;white-space:nowrap}
@media(max-width:760px){
  .dashboard-attention-strip{grid-template-columns:38px 1fr}
  .dashboard-attention-strip>em{grid-column:1/-1}
}


/* Sprint 10.8 — Central de Atenção com melhor leitura */
.sidebar .attention-menu-button{
  position:relative!important;
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-height:62px!important;
  margin:2px 0 8px!important;
  padding:9px 10px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-left:3px solid transparent!important;
  background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.015))!important;
  overflow:hidden!important;
}
.sidebar .attention-menu-button .attention-menu-icon{
  width:32px;height:32px;border-radius:10px;display:grid;place-items:center;
  background:#243127;color:#91a096;font-size:14px;font-weight:900;
}
.sidebar .attention-menu-copy{
  display:grid;min-width:0;text-align:left;line-height:1.15;
}
.sidebar .attention-menu-copy b{
  color:#edf3ee;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sidebar .attention-menu-copy small{
  color:#849188;font-size:9px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.sidebar .attention-menu-button>em{
  min-width:21px;height:21px;padding:0 5px;border-radius:999px;
  display:grid;place-items:center;font-size:9px;font-style:normal;font-weight:900;
  background:#6d786f;color:#fff;box-shadow:none;
}
.sidebar .attention-menu-button.has-alerts{
  background:linear-gradient(135deg,#182b1a,#102013)!important;
  border-color:rgba(255,207,74,.18)!important;
  border-left-color:#ffbf2f!important;
}
.sidebar .attention-menu-button.has-alerts .attention-menu-icon{
  background:#624a0e;color:#ffd667;
}
.sidebar .attention-menu-button.has-alerts .attention-menu-copy b{color:#fff}
.sidebar .attention-menu-button.has-alerts .attention-menu-copy small{color:#d0c18f}
.sidebar .attention-menu-button.has-alerts>em{background:#e7a91d;color:#171109}
.sidebar .attention-menu-button.has-critical{
  background:linear-gradient(135deg,#351818,#211010)!important;
  border-color:rgba(239,68,68,.22)!important;
  border-left-color:#ef4444!important;
}
.sidebar .attention-menu-button.has-critical .attention-menu-icon{
  background:#672020;color:#ffaaaa;
}
.sidebar .attention-menu-button.has-critical .attention-menu-copy small{color:#e0a0a0}
.sidebar .attention-menu-button.has-critical>em{background:#ef4444;color:#fff}
.sidebar .attention-menu-button.is-clear{
  border-left-color:#42d629!important;
}
.sidebar .attention-menu-button.is-clear .attention-menu-icon{
  background:#173f1a;color:#68ed54;
}
.sidebar .attention-menu-button.active{
  box-shadow:inset 0 0 0 1px rgba(104,243,79,.16)!important;
}

.dashboard-attention-card{
  grid-template-columns:46px minmax(260px,1fr) auto auto!important;
  gap:16px!important;
  min-height:88px;
  padding:14px 17px!important;
}
.dashboard-attention-card .dashboard-attention-copy>small{
  color:#6d7b70;font-size:9px;font-weight:900;letter-spacing:.1em;margin-bottom:3px
}
.dashboard-attention-card .dashboard-attention-copy>b{font-size:14px}
.dashboard-attention-card .dashboard-attention-copy>em{
  color:#728078;font-size:10px;font-style:normal;margin-top:4px
}
.dashboard-attention-metrics{
  display:flex;align-items:stretch;gap:7px
}
.dashboard-attention-metrics>span{
  min-width:76px;display:grid;place-items:center;
  border:1px solid #dce6dc;background:rgba(255,255,255,.72);
  border-radius:10px;padding:7px 9px
}
.dashboard-attention-metrics strong{font-size:16px}
.dashboard-attention-metrics small{font-size:9px;color:#748078;margin-top:2px}
.dashboard-attention-action{
  color:#268f20;font-size:10px;font-weight:900;white-space:nowrap
}
.dashboard-attention-card.critical .dashboard-attention-metrics>span{
  border-color:#efd8d8;background:#fffafa
}
.dashboard-attention-card.clear{
  border-color:#cfe5cd;background:linear-gradient(90deg,#f3fbf1,#fbfefb)
}
@media(max-width:1100px){
  .dashboard-attention-card{grid-template-columns:42px 1fr auto!important}
  .dashboard-attention-metrics{grid-column:2/-1}
  .dashboard-attention-action{grid-column:3}
}
@media(max-width:760px){
  .dashboard-attention-card{grid-template-columns:40px 1fr!important}
  .dashboard-attention-metrics{grid-column:1/-1;width:100%}
  .dashboard-attention-metrics>span{flex:1}
  .dashboard-attention-action{grid-column:1/-1}
}


/* Sprint 10.9 — Registrar melhoria é apenas uma ação */
.quick-improvement-main{
  min-width:190px!important;
  grid-template-columns:auto minmax(0,1fr)!important;
}
.quick-improvement-main>em,
#quickImprovementBadge{display:none!important}
.quick-improvement-main .quick-improvement-copy{padding-right:4px}


/* Sprint 10.10 — Central de atenção igual aos demais itens do menu */
.sidebar .attention-menu-button{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  min-height:0!important;
  height:auto!important;
  margin:0!important;
  padding:11px 13px!important;
  border:0!important;
  border-left:3px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  color:#c9d0cb!important;
}
.sidebar .attention-menu-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:inherit;
  font-weight:inherit;
  line-height:normal;
}
.sidebar .attention-menu-button>em{
  min-width:18px!important;
  width:auto!important;
  height:18px!important;
  padding:0 5px!important;
  margin-left:auto!important;
  border-radius:999px!important;
  display:grid!important;
  place-items:center!important;
  background:#ef4444!important;
  color:#fff!important;
  font-size:9px!important;
  font-style:normal!important;
  font-weight:900!important;
  box-shadow:none!important;
  flex:0 0 auto!important;
}
.sidebar .attention-menu-button:hover{
  background:linear-gradient(90deg,#173a12,#11230f)!important;
  color:#68f34f!important;
}
.sidebar .attention-menu-button.active{
  background:linear-gradient(90deg,#173a12,#11230f)!important;
  color:#68f34f!important;
  border-left-color:transparent!important;
  box-shadow:none!important;
}
.sidebar .attention-menu-button.has-alerts,
.sidebar .attention-menu-button.has-critical,
.sidebar .attention-menu-button.is-clear{
  background:transparent!important;
  border-color:transparent!important;
  color:#c9d0cb!important;
}
.sidebar .attention-menu-button.has-alerts:hover,
.sidebar .attention-menu-button.has-critical:hover,
.sidebar .attention-menu-button.is-clear:hover,
.sidebar .attention-menu-button.has-alerts.active,
.sidebar .attention-menu-button.has-critical.active,
.sidebar .attention-menu-button.is-clear.active{
  background:linear-gradient(90deg,#173a12,#11230f)!important;
  color:#68f34f!important;
}
.sidebar .attention-menu-button.is-clear>em{display:none!important}

/* Sprint 10.11 — remove rolagem horizontal do menu lateral */
.sidebar{
  overflow-x:hidden!important;
}
.sidebar nav{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scrollbar-gutter:stable;
}
.sidebar nav button{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.sidebar .attention-menu-button{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.sidebar .attention-menu-label{
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:calc(100% - 32px)!important;
}
.sidebar .attention-menu-button>em{
  position:static!important;
  right:auto!important;
  flex:0 0 auto!important;
}


/* Sprint 10.12 — espaçamento definitivo do menu lateral */
.sidebar nav{
  gap:4px!important;
  overflow-x:hidden!important;
}
.sidebar nav button,
.sidebar .attention-menu-button{
  min-height:42px!important;
  height:42px!important;
  max-height:42px!important;
  padding:0 13px!important;
  margin:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}
.sidebar nav button:hover,
.sidebar nav button.active,
.sidebar .attention-menu-button:hover,
.sidebar .attention-menu-button.active{
  min-height:42px!important;
  height:42px!important;
  max-height:42px!important;
  padding:0 13px!important;
  margin:0!important;
  transform:none!important;
}
.sidebar .attention-menu-button{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  overflow:hidden!important;
}
.sidebar .attention-menu-label{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  max-width:none!important;
  line-height:42px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.sidebar .attention-menu-button>em{
  position:static!important;
  margin-left:8px!important;
  flex:0 0 auto!important;
}
.sidebar nav>span{
  display:block!important;
  clear:both!important;
  height:auto!important;
  line-height:1.2!important;
  margin:18px 12px 7px!important;
  padding:0!important;
  position:relative!important;
  z-index:1!important;
}
.sidebar .attention-menu-button + span{
  margin-top:22px!important;
}


/* Sprint 11 — controle de acesso */
.access-simulator{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--line);border-radius:10px;background:var(--panel);white-space:nowrap}.access-simulator span{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800}.access-simulator select{border:0;background:transparent;color:var(--text);font-weight:700;max-width:190px;outline:none}.access-context-banner,.improvement-access-note{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-6px 0 18px;padding:13px 16px;border:1px solid rgba(67,214,41,.22);background:rgba(67,214,41,.06);border-radius:12px}.access-context-banner div{display:grid;gap:2px}.access-context-banner span{font-size:11px;text-transform:uppercase;color:var(--green);font-weight:900}.access-context-banner small{color:var(--muted)}.access-context-banner em{font-style:normal;padding:7px 10px;border-radius:999px;background:var(--panel);border:1px solid var(--line);font-size:11px;font-weight:800}.employee-dashboard-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:18px}.personal-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.personal-metrics div{padding:12px;border:1px solid var(--line);border-radius:10px;display:grid;gap:4px}.personal-metrics span{font-size:11px;color:var(--muted)}.personal-metrics strong{font-size:23px}.goal-track{height:10px;background:var(--soft);border-radius:99px;overflow:hidden;margin-top:14px}.goal-track i{display:block;height:100%;background:var(--green);border-radius:inherit}.employee-task-list{display:grid;gap:9px}.employee-task-list button{display:flex;align-items:center;gap:12px;width:100%;padding:10px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--text);text-align:left}.employee-task-list button>span{display:grid;place-items:center;width:34px;height:34px;border-radius:9px;background:rgba(67,214,41,.1);color:var(--green);font-weight:900}.employee-task-list div{display:grid}.employee-task-list small{color:var(--muted)}.permission-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.permission-legend>div{display:grid;gap:4px;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--panel)}.permission-legend span{font-size:12px;color:var(--muted)}.role-access-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:12px 0}.role-access-summary span{padding:7px;border-radius:8px;background:var(--soft);font-size:10px;display:grid;gap:2px}.protected-role{border-color:rgba(67,214,41,.35)!important}.admin-protection-note{padding:12px;border-radius:10px;background:rgba(67,214,41,.08);border:1px solid rgba(67,214,41,.22);font-size:12px}.improvements-layout.single-column{grid-template-columns:1fr}.improvement-access-note{justify-content:flex-start}.hidden{display:none!important}@media(max-width:1100px){.employee-dashboard-grid{grid-template-columns:1fr}.permission-legend{grid-template-columns:1fr}.access-simulator span{display:none}}@media(max-width:760px){.access-simulator{display:none}.access-context-banner{align-items:flex-start;flex-direction:column}.personal-metrics{grid-template-columns:1fr}.role-access-summary{grid-template-columns:1fr}}


/* Sprint 12 — Administração, auditoria e versões */
.audit-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 220px auto;gap:12px}
.audit-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:18px 0}
.audit-summary article{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--panel)}
.audit-summary span{display:block;color:var(--muted);font-size:12px}.audit-summary b{display:block;margin-top:6px;font-size:18px}
.audit-list article{grid-template-columns:150px 120px 1fr 150px 38px;align-items:center}
.version-page{display:grid;gap:18px}.version-current{display:flex;align-items:center;justify-content:space-between;padding:22px;border-radius:18px;background:linear-gradient(135deg,rgba(31,176,104,.14),rgba(31,176,104,.03));border:1px solid rgba(31,176,104,.28)}
.version-current span,.version-current small{display:block;color:var(--muted)}.version-current strong{display:block;font-size:34px;margin:5px 0}.version-current em{font-style:normal;font-weight:700;padding:8px 12px;border-radius:999px;background:rgba(245,183,0,.15);color:#9a6b00}
.version-list{display:grid;gap:14px;padding-top:16px}.version-list>article{border:1px solid var(--line);border-radius:16px;padding:18px;background:var(--panel)}
.version-list header,.version-list footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.version-list header small{display:block;color:var(--muted);margin-top:4px}.version-list ul,.release-detail ul{margin:14px 0;padding-left:18px;display:grid;gap:7px}.version-list li,.release-detail li{color:var(--text)}.version-list footer{border-top:1px solid var(--line);padding-top:13px;color:var(--muted);font-size:13px}
@media(max-width:760px){.audit-toolbar,.audit-summary{grid-template-columns:1fr}.audit-list article{grid-template-columns:1fr}.version-current{align-items:flex-start;gap:14px}.version-list header,.version-list footer{align-items:flex-start;flex-direction:column}}

/* Sprint 13 */
.sprint13-form{display:flex;flex-direction:column;gap:24px}.sprint13-form .settings-section-title{margin-top:2px;padding-bottom:12px;border-bottom:1px solid var(--border)}.sprint13-form .settings-section-title:not(:first-child){margin-top:10px}.settings-save-status{padding:12px 14px;border:1px dashed var(--border);border-radius:10px;color:var(--muted);background:var(--panel-soft)}.settings-save-status.saved{border-style:solid;color:#18794e;background:#edf9f2;border-color:#b7e2c8}.parameter-tabs{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:14px;border-bottom:1px solid var(--border)}.parameter-tabs button{border:1px solid var(--border);background:var(--panel);color:var(--text);border-radius:9px;padding:9px 13px;font-weight:700;cursor:pointer}.parameter-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}.sprint13-form [data-param-panel]{padding-top:2px}.sprint13-form textarea{width:100%;resize:vertical}@media(max-width:760px){.parameter-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.parameter-tabs button{width:100%}}

/* Sprint 13.1 — refinamento visual das abas de Parâmetros Gerais */
.parameter-tabs{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(120px,1fr));
  gap:0 !important;
  padding:0 !important;
  margin:0 0 22px;
  overflow:hidden;
  border:1px solid var(--border) !important;
  border-radius:12px 12px 0 0;
  background:var(--panel-soft);
}
.parameter-tabs button{
  position:relative;
  min-height:58px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  gap:9px;
  margin:0;
  padding:12px 16px !important;
  border:0 !important;
  border-right:1px solid var(--border) !important;
  border-radius:0 !important;
  background:transparent !important;
  color:var(--text) !important;
  font:inherit;
  font-weight:700 !important;
  line-height:1.2;
  white-space:nowrap;
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease;
  box-shadow:none !important;
  transform:none !important;
}
.parameter-tabs button:last-child{border-right:0 !important}
.parameter-tabs button::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:3px;
  background:transparent;
}
.parameter-tabs button:hover{
  background:#f3faf1 !important;
  color:#187b18 !important;
  transform:none !important;
}
.parameter-tabs button.active,
.parameter-tabs button[aria-selected="true"]{
  background:#eef9ec !important;
  color:#187b18 !important;
  border-color:var(--border) !important;
}
.parameter-tabs button.active::after,
.parameter-tabs button[aria-selected="true"]::after{background:var(--primary)}
.parameter-tab-icon{
  display:inline-grid;
  place-items:center;
  width:24px;
  height:24px;
  flex:0 0 24px;
  color:currentColor !important;
  font-size:18px;
  line-height:1;
}
.sprint13-form [data-param-panel]{padding:0 18px 4px}
.sprint13-form .settings-section-title{margin-top:0;padding-bottom:16px}
@media(max-width:900px){
  .parameter-tabs{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:12px}
  .parameter-tabs button:nth-child(3){border-right:0 !important}
  .parameter-tabs button:nth-child(n+4){border-top:1px solid var(--border) !important}
}
@media(max-width:600px){
  .parameter-tabs{grid-template-columns:1fr 1fr !important}
  .parameter-tabs button{min-height:52px;padding:10px 8px !important;font-size:13px}
  .parameter-tabs button:nth-child(3){border-right:1px solid var(--border) !important}
  .parameter-tabs button:nth-child(even){border-right:0 !important}
  .parameter-tabs button:nth-child(n+3){border-top:1px solid var(--border) !important}
  .parameter-tabs button:last-child{grid-column:1/-1;border-right:0 !important}
  .sprint13-form [data-param-panel]{padding:0 4px 4px}
}


/* Sprint 14 — Modelos de documentos */
.document-models-page{display:grid;gap:18px}.document-model-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.document-model-kpis article{border:1px solid var(--border);border-radius:14px;padding:18px;background:#fff;display:grid;gap:4px}.document-model-kpis span{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.document-model-kpis strong{font-size:28px}.document-model-kpis small,.table-subtext{display:block;color:var(--muted);font-size:12px;margin-top:3px}.document-model-name{display:flex;align-items:center;gap:10px;min-width:220px}.document-model-name>span{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;background:#edf8ee;color:#159321;font-weight:800}.document-model-name div{display:grid;gap:3px}.document-model-name small{color:var(--muted)}.document-model-form{display:grid;gap:18px}.document-model-fields{display:grid;grid-template-columns:2fr 1fr 1fr 1fr .6fr;gap:12px}.document-model-fields label,.document-editor-layout label{display:grid;gap:6px;font-size:12px;font-weight:700}.document-model-fields input,.document-model-fields select,.document-model-form textarea{width:100%;border:1px solid var(--border);border-radius:10px;padding:11px 12px;background:#fff;color:var(--text);font:inherit}.document-editor-layout{display:grid;grid-template-columns:1fr 1fr;gap:16px}.document-editor-layout>section{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:#fff}.document-editor-head{padding:14px 16px;border-bottom:1px solid var(--border);display:grid;gap:3px}.document-editor-head small{color:var(--muted)}.document-model-form textarea{border:0;border-radius:0;resize:vertical;min-height:390px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1.55}.placeholder-bank{padding:12px 14px;border-top:1px solid var(--border);display:flex;gap:7px;flex-wrap:wrap}.placeholder-bank b{width:100%;font-size:12px}.placeholder-bank button{border:1px solid #cce9cf;background:#f1fbf2;color:#167a20;border-radius:999px;padding:5px 9px;font-size:11px;cursor:pointer}.document-live-preview{padding:28px;min-height:390px;font-family:Georgia,serif;line-height:1.7;color:#26302a;background:linear-gradient(#fff,#fcfdfc)}.document-live-preview mark,.document-full-preview mark{background:#e8f7ea;color:#126d1b;border-radius:3px;padding:1px 3px}.document-full-preview{max-width:780px;margin:auto;background:#fff;border:1px solid var(--border);padding:42px 52px;min-height:680px;font-family:Georgia,serif;line-height:1.7}.document-full-preview header{display:flex;align-items:center;gap:18px;border-bottom:2px solid #1ca62b;padding-bottom:16px;margin-bottom:28px}.document-full-preview header img{width:120px;height:50px;object-fit:contain}.document-full-preview header div{display:grid}.document-full-preview header small{color:var(--muted)}.document-full-preview>div{white-space:normal}.document-full-preview footer{margin-top:45px;padding-top:15px;border-top:1px solid var(--border);font-size:11px;color:var(--muted);text-align:center}
@media(max-width:1100px){.document-model-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.document-editor-layout{grid-template-columns:1fr}}@media(max-width:700px){.document-model-kpis{grid-template-columns:1fr}.document-model-fields{grid-template-columns:1fr}.document-full-preview{padding:25px 20px}.settings-list-toolbar{align-items:stretch}}

/* Sprint 14.1 / 15 */
.document-brand-settings{display:grid;grid-template-columns:180px 1fr 260px;gap:20px;align-items:center;padding:18px;border:1px solid var(--line,#e3e7ec);border-radius:14px;background:#fff;margin-bottom:20px}.company-logo-preview{height:100px;display:grid;place-items:center;border:1px dashed #b9c2cc;border-radius:12px;background:#fafbfc}.company-logo-preview img{max-width:150px;max-height:78px;object-fit:contain}.document-brand-settings label{display:flex;flex-direction:column;gap:8px}.document-brand-settings small{color:#718096}.modal-card-document-preview{width:min(1180px,96vw)!important}.real-preview-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:22px}.document-source-panel{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;height:max-content;position:sticky;top:0}.document-source-panel h3,.document-source-panel p{margin:0}.document-source-panel label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700}.document-source-panel select{width:100%}.document-full-preview{max-width:760px;min-height:760px;margin:auto;background:#fff;border:1px solid #dce2e8;border-radius:6px;padding:46px;box-shadow:0 12px 35px rgba(15,23,42,.08);font-size:14px;line-height:1.7}.document-full-preview header{display:flex;align-items:center;gap:20px;border-bottom:2px solid #1f2937;padding-bottom:16px;margin-bottom:28px}.document-full-preview header img{width:160px;max-height:78px;object-fit:contain}.document-full-preview header div{display:flex;flex-direction:column}.document-full-preview footer{margin-top:36px;padding-top:12px;border-top:1px solid #d8dee6;color:#64748b;font-size:11px}.document-validation{display:flex;flex-direction:column;gap:5px;padding:12px;border-radius:10px;font-size:12px}.document-validation.error{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239}.document-validation.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}button:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.document-brand-settings,.real-preview-layout{grid-template-columns:1fr}.document-source-panel{position:static}.document-full-preview{padding:26px;min-height:500px}}

/* Sprint 15.1 — vínculos automáticos na pré-visualização de documentos */
.document-linked-data{display:grid;gap:4px;padding:12px;margin:4px 0 14px;border:1px solid #dbe3ea;border-radius:10px;background:#fff}
.document-linked-data span{font-size:11px;font-weight:700;color:#6b7785;text-transform:uppercase;letter-spacing:.04em}
.document-linked-data b{font-size:13px;color:#17202a;margin-bottom:7px;overflow-wrap:anywhere}
.document-linked-data b:last-child{margin-bottom:0}

/* Sprint 18 — permissões por módulos */
#nav button[hidden],#nav span[hidden]{display:none!important}.s18-user-role{display:grid;gap:2px}.s18-user-role small{color:var(--muted);font-size:11px}.s18-user-modules{display:flex;flex-wrap:wrap;gap:4px;max-width:270px}.s18-user-modules em{font-style:normal;font-size:10px;padding:4px 7px;border-radius:999px;background:#eef4ff;color:#28518b;border:1px solid #d7e5fa}.s18-permission-note{display:flex;gap:16px;align-items:center;padding:14px 18px;margin:0 0 14px;border:1px solid #dce7f4;background:#f7fbff;border-radius:12px}.s18-permission-note b{white-space:nowrap}.s18-permission-note span{font-size:12px;color:var(--muted)}.s18-module-editor{border-top:1px solid #e5eaf0;padding-top:18px}.s18-module-editor>div:first-child{display:grid;gap:4px;margin-bottom:12px}.s18-module-editor small{color:var(--muted)}.s18-access-banner small{max-width:780px}.s18-module-dashboard{display:grid;gap:18px}.s18-module-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.s18-module-kpis article{display:grid;gap:6px;padding:18px;background:#fff;border:1px solid #e4e9ef;border-radius:15px;box-shadow:0 7px 20px rgba(32,53,80,.06)}.s18-module-kpis small{text-transform:uppercase;letter-spacing:.08em;color:#708096;font-size:10px}.s18-module-kpis strong{font-size:30px;color:#17283d}.s18-module-kpis b{font-size:13px}.s18-module-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.s18-module-links button{display:grid;grid-template-columns:28px 1fr;column-gap:8px;text-align:left;padding:13px;border:1px solid #dfe6ee;border-radius:12px;background:#fff;cursor:pointer}.s18-module-links button:hover{border-color:#83a9d5;transform:translateY(-1px)}.s18-module-links span{grid-row:1/3;display:grid;place-items:center;width:26px;height:26px;background:#e9f8f1;color:#138258;border-radius:8px}.s18-module-links b{font-size:13px}.s18-module-links small{font-size:10px;color:var(--muted)}@media(max-width:1100px){.s18-module-kpis{grid-template-columns:repeat(2,1fr)}.s18-permission-note{align-items:flex-start;flex-direction:column;gap:5px}}

/* Sprint 19 — Dashboard dinâmico por módulos */
.s19-dashboard-head{align-items:center}
.s19-access-banner{margin:16px 0 14px}
.s19-permission-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid #dde5df;border-radius:14px;padding:15px 18px;margin-bottom:14px}
.s19-permission-summary>div:first-child{display:flex;flex-direction:column;gap:4px}.s19-permission-summary small{color:#6f7972}.s19-permission-summary>div:last-child{display:flex;flex-wrap:wrap;gap:7px;justify-content:flex-end}.s19-permission-summary span{background:#eef8ed;color:#17751b;border:1px solid #cfeacc;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}
.s19-dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.s19-dashboard-kpis button{appearance:none;text-align:left;background:#fff;border:1px solid #dfe6e1;border-radius:14px;padding:16px;min-height:132px;cursor:pointer;display:flex;flex-direction:column;transition:.18s ease}.s19-dashboard-kpis button:hover{transform:translateY(-2px);border-color:#8adf82;box-shadow:0 10px 24px rgba(28,80,34,.08)}.s19-dashboard-kpis small{color:#718078;font-size:12px}.s19-dashboard-kpis strong{font-size:24px;line-height:1.15;margin:8px 0 3px;color:#111b14}.s19-dashboard-kpis b{font-size:14px}.s19-dashboard-kpis em{font-style:normal;font-size:12px;color:#7b867f;margin-top:5px}.s19-dashboard-kpis .financial-card{border-left:4px solid #2dca2d}
.s19-dashboard-grid{display:grid;grid-template-columns:1.25fr .8fr .9fr;gap:14px}.s19-dashboard-grid .panel{min-width:0}.s19-task-list{display:grid;gap:8px}.s19-task-list button{width:100%;display:flex;align-items:center;gap:11px;border:1px solid #e2e8e3;background:#fafcfb;border-radius:11px;padding:11px;text-align:left;cursor:pointer}.s19-task-list button:hover{border-color:#91dc8b;background:#f3fbf2}.s19-task-list span{width:28px;height:28px;border-radius:9px;background:#e5f7e3;color:#1c861f;display:grid;place-items:center;font-weight:800}.s19-task-list div{display:flex;flex-direction:column;gap:2px;flex:1}.s19-task-list small{color:#748078}.s19-task-list em{font-style:normal;color:#228b28;font-size:18px}.s19-access-test{display:grid;gap:10px}.s19-access-test p{margin:0;padding:10px 11px;border-radius:10px;background:#f5faf5;color:#3f4c43}.s19-access-test span{color:#1eaa25;font-weight:900;margin-right:7px}.s19-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.s19-quick-links button{border:1px solid #e0e7e1;background:#fff;border-radius:10px;padding:11px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px}.s19-quick-links button:hover{border-color:#79d874;background:#f7fcf7}.s19-quick-links small{color:#7a857e}.empty-state{padding:18px;text-align:center;color:#768078;background:#f8faf8;border-radius:10px}
@media(max-width:1200px){.s19-dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.s19-dashboard-grid{grid-template-columns:1fr 1fr}.s19-dashboard-grid .panel:first-child{grid-column:1/-1}}
@media(max-width:800px){.s19-permission-summary{align-items:flex-start;flex-direction:column}.s19-permission-summary>div:last-child{justify-content:flex-start}.s19-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.s19-dashboard-grid{grid-template-columns:1fr}.s19-dashboard-grid .panel:first-child{grid-column:auto}}

/* Sprint 19.1 — módulos automáticos, centrais obrigatórias e cópia entre funcionários */
.s20-copy-modules{display:grid;gap:10px;padding:14px 16px;border:1px solid #dfe8df;border-radius:12px;background:#f8fcf8}.s20-copy-modules>div:first-child{display:grid;gap:3px}.s20-copy-modules small{color:var(--muted)}.s20-copy-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px}.s20-copy-row select{width:100%}.permission-checks label.s20-required-module{background:#f2fbf1;border-color:#bfe8bd}.permission-checks label.s20-required-module em{margin-left:auto;font-size:9px;font-style:normal;color:#218326;background:#e2f6df;border-radius:999px;padding:3px 6px}.s20-auto-note{margin-top:12px;padding:10px 12px;border-radius:9px;background:#eef8ed;color:#26762a;font-size:12px}.permission-checks input:disabled{opacity:1}.permission-checks label:has(input:disabled){cursor:default}@media(max-width:700px){.s20-copy-row{grid-template-columns:1fr}.s20-copy-row .btn{width:100%}}


/* Sprint 20 — Homologação */
.s20-homologation-page{display:grid;gap:18px}.s20-homologation-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.s20-homologation-kpis article{background:var(--panel,#fff);border:1px solid var(--border,#dce3ea);border-radius:16px;padding:18px;display:grid;gap:5px}.s20-homologation-kpis small{color:var(--muted,#64748b)}.s20-homologation-kpis strong{font-size:30px}.s20-homologation-kpis span{font-size:12px;color:var(--muted,#64748b)}.s20-validation-result{display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:5px solid #16a34a}.s20-validation-result.has-issues{border-left-color:#d97706}.s20-validation-result p{margin:5px 0 0;color:var(--muted,#64748b)}.s20-matrix{min-width:1550px}.s20-matrix td{vertical-align:top}.s20-matrix td:first-child{min-width:190px}.s20-matrix td:first-child small,.s20-homologation-page table td>small{display:block;margin-top:5px;color:var(--muted,#64748b);max-width:270px}.s20-matrix td:nth-child(2){min-width:230px}.s20-matrix td:nth-child(2) em,.s20-module-tag{display:inline-block;font-style:normal;font-size:11px;padding:4px 7px;margin:2px;border-radius:999px;background:rgba(14,165,233,.1);color:#0369a1}.s20-matrix code{font-size:11px}.s20-issue{color:#b45309!important}.s20-sector-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.s20-sector-grid section{border:1px solid var(--border,#dce3ea);border-radius:14px;padding:14px}.s20-sector-grid header{display:flex;justify-content:space-between;margin-bottom:10px}.s20-sector-grid header span{font-size:12px;color:var(--muted,#64748b)}.s20-sector-grid em{display:inline-block;font-style:normal;font-size:11px;padding:5px 8px;margin:3px;border-radius:999px;background:rgba(15,23,42,.06)}.s20-warning{color:#b45309;font-size:12px}.s20-flow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.s20-flow-grid div{padding:14px;border:1px solid var(--border,#dce3ea);border-radius:12px;display:grid;gap:5px}.s20-flow-grid span{color:var(--muted,#64748b);font-size:13px}@media(max-width:1100px){.s20-homologation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.s20-sector-grid,.s20-flow-grid{grid-template-columns:1fr}}@media(max-width:640px){.s20-homologation-kpis{grid-template-columns:1fr}.s20-validation-result{align-items:flex-start;flex-direction:column}}

/* Sprint 20.1 */
.s201-critical-audit{border:1px solid rgba(245,158,11,.35)}
.s201-decision-box{margin:14px 18px;padding:14px 16px;border-radius:12px;background:rgba(245,158,11,.09);border:1px solid rgba(245,158,11,.28)}
.s201-decision-box b{display:block;color:#b45309;margin-bottom:4px}.s201-decision-box p{margin:0;color:var(--muted)}
.s201-user-chip{display:inline-flex;flex-direction:column;margin:2px 5px 2px 0;padding:5px 8px;border-radius:9px;background:rgba(34,197,94,.09);border:1px solid rgba(34,197,94,.18)}
.s201-user-chip b{font-size:12px}.s201-user-chip small{font-size:10px;color:var(--muted)}.s201-user-chip.muted{background:rgba(100,116,139,.08);border-color:rgba(100,116,139,.18)}

/* Sprint 20.2 — Homologação funcional: organização e legibilidade */
.s20-homologation-page{gap:24px;padding-bottom:24px}
.s20-homologation-page>.settings-table-card{padding:22px;border-radius:18px;overflow:hidden}
.s20-homologation-page .panel-title{align-items:flex-start;gap:18px;margin-bottom:18px}
.s20-homologation-page .panel-title h3{margin:0 0 6px;font-size:18px;line-height:1.3}
.s20-homologation-page .panel-title small{display:block;max-width:820px;font-size:13px;line-height:1.55;color:var(--muted,#64748b)}
.s20-homologation-kpis{gap:16px}
.s20-homologation-kpis article{min-height:124px;padding:20px;border-radius:18px;align-content:start}
.s20-homologation-kpis small{font-size:12px;line-height:1.4}
.s20-homologation-kpis strong{font-size:34px;line-height:1.1;margin:5px 0}
.s20-homologation-kpis span{font-size:12px;line-height:1.45}
.s20-validation-result{padding:20px 22px!important;min-height:92px}
.s20-validation-result>div{min-width:0}
.s20-validation-result b{font-size:15px}
.s20-validation-result p{line-height:1.55;max-width:900px}
.s202-table-wrap{border:1px solid var(--border,#dce3ea);border-radius:14px;max-height:620px;overflow:auto;background:var(--panel,#fff)}
.s20-homologation-page table{border-collapse:separate;border-spacing:0;width:100%}
.s20-homologation-page table thead th{position:sticky;top:0;z-index:3;background:var(--panel,#fff);box-shadow:0 1px 0 var(--border,#dce3ea);padding:14px 16px;white-space:normal;font-size:12px;line-height:1.35;text-align:left}
.s20-homologation-page table tbody td{padding:15px 16px;line-height:1.5;border-bottom:1px solid var(--border,#e5e7eb);font-size:13px}
.s20-homologation-page table tbody tr:last-child td{border-bottom:0}
.s20-homologation-page table tbody tr:hover td{background:rgba(148,163,184,.06)}
.s20-matrix{min-width:1380px}
.s202-critical-table{min-width:1180px}
.s20-matrix td:first-child{min-width:185px}
.s20-matrix td:first-child b{display:block;font-size:13px;line-height:1.4}
.s20-matrix td:first-child small,.s20-homologation-page table td>small{max-width:none;line-height:1.45}
.s20-matrix td:nth-child(2){min-width:220px}
.s20-module-tag,.s20-matrix td:nth-child(2) em,.s202-chip-list em{display:inline-flex;align-items:center;margin:3px 5px 3px 0;padding:5px 9px;line-height:1.2}
.s202-chip-list,.s202-user-list{display:flex;flex-wrap:wrap;gap:7px;align-items:flex-start}
.s201-user-chip{display:inline-grid;gap:2px;min-width:145px;max-width:220px;padding:9px 11px;border:1px solid var(--border,#dce3ea);border-radius:10px;background:rgba(14,165,233,.05)}
.s201-user-chip b{font-size:12px;line-height:1.3}
.s201-user-chip small{margin:0!important;font-size:11px;line-height:1.3;color:var(--muted,#64748b)}
.s201-user-chip.muted{background:rgba(100,116,139,.06)}
.s202-diagnosis{display:grid;gap:7px;min-width:210px}
.s202-diagnosis .badge{justify-self:start}
.s20-issue{display:block!important;margin:0!important;padding-left:16px;position:relative;line-height:1.45}
.s20-issue:before{content:'•';position:absolute;left:3px;top:0}
.s201-decision-box{margin:0 0 18px;padding:16px 18px;border:1px solid rgba(217,119,6,.28);border-left:5px solid #d97706;border-radius:12px;background:rgba(245,158,11,.07)}
.s201-decision-box b{display:block;margin-bottom:5px;font-size:14px}
.s201-decision-box p{margin:0;font-size:13px;line-height:1.55}
.s20-sector-grid{gap:16px}
.s20-sector-grid section{padding:17px;border-radius:14px;min-height:130px}
.s20-sector-grid header{gap:12px;align-items:center;margin-bottom:12px}
.s20-sector-grid header b{font-size:14px}
.s20-sector-grid em{padding:6px 9px;margin:3px 4px 3px 0;line-height:1.25}
.s20-flow-grid{gap:14px}
.s20-flow-grid div{padding:17px;min-height:92px}
.s20-flow-grid b{font-size:14px}
.s20-flow-grid span{font-size:13px;line-height:1.55}
@media(max-width:900px){
 .s20-homologation-page>.settings-table-card{padding:17px}
 .s20-homologation-page .panel-title{flex-direction:column}
 .s20-homologation-page .panel-title>.btn,.s20-homologation-page .panel-title>.badge{align-self:flex-start}
 .s202-table-wrap{max-height:520px}
}
@media(max-width:640px){
 .s20-homologation-page{gap:16px}
 .s20-homologation-kpis article{min-height:auto}
 .s20-validation-result{gap:14px}
 .s20-validation-result .btn{width:100%}
}

/* Sprint 21 — Homologação funcional Comercial */
.s21-commercial-audit{margin-top:28px}
.s21-commercial-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:18px 0 22px}
.s21-commercial-summary section{padding:18px;border:1px solid var(--line,#dfe5ec);border-radius:14px;background:var(--panel-soft,#f8fafc);display:flex;flex-direction:column;gap:6px;min-height:118px}
.s21-commercial-summary small{font-size:12px;text-transform:uppercase;letter-spacing:.04em;opacity:.72}
.s21-commercial-summary strong{font-size:28px;line-height:1.1}
.s21-commercial-summary span{font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.s21-commercial-table th:nth-child(1){min-width:150px}.s21-commercial-table th:nth-child(2){min-width:230px}.s21-commercial-table th:nth-child(3){min-width:120px}.s21-commercial-table th:nth-child(4){min-width:360px}
.s21-commercial-table td{vertical-align:top;line-height:1.55}
.s21-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.s21-decision-head{grid-column:1/-1;padding:16px 18px;border-radius:13px;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.28);display:flex;flex-direction:column;gap:5px}
.s21-decision-head small{line-height:1.5}
.s21-decision-grid section{padding:17px 18px;border-radius:13px;border:1px solid var(--line,#dfe5ec);background:var(--panel,#fff)}
.s21-decision-grid section b{display:block;margin-bottom:7px}.s21-decision-grid section p{margin:0 0 12px;line-height:1.55;font-size:13px}.s21-decision-grid section span{display:inline-flex;padding:5px 9px;border-radius:999px;background:rgba(245,158,11,.13);font-size:11px;font-weight:700}
@media(max-width:1050px){.s21-commercial-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.s21-commercial-summary,.s21-decision-grid{grid-template-columns:1fr}.s21-decision-head{grid-column:auto}}

/* Sprint 22 — ações claras e fluxo documental comercial */
.action-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap;white-space:normal}
.action-btn{width:auto;min-width:42px;height:38px;padding:0 11px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px}
.action-btn .action-icon{font-size:16px;line-height:1}
.action-btn .action-label{font-size:11px;font-weight:750;line-height:1.1;white-space:nowrap}
.action-btn[aria-label="Editar cliente"],.action-btn[aria-label="Editar modelo"],.action-btn[aria-label="Editar moto"]{background:#fff9e9;border-color:#f1dfad;color:#8a6500}
.workflow-notice{display:flex;gap:16px;align-items:flex-start;padding:20px;border:1px solid #f0d591;background:#fffaf0;border-radius:13px}
.workflow-notice>span{display:grid;place-items:center;flex:0 0 38px;height:38px;border-radius:50%;background:#ffe8a6;color:#7b5900;font-size:21px;font-weight:900}
.workflow-notice h3{margin:0 0 7px;font-size:17px}.workflow-notice p{margin:0;color:var(--muted);line-height:1.55}
.sale-documents-grid{display:grid;gap:12px}.sale-documents-grid>section{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}
.sale-document-head{display:flex;align-items:center;gap:12px;min-width:0}.sale-document-head>span{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#edfaea;color:#248d1a;font-size:19px}.sale-document-head b,.sale-document-head small{display:block}.sale-document-head small{margin-top:4px;color:var(--muted)}
.sale-document-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.document-disabled{opacity:.62;background:#f8faf8!important}.document-disabled button{cursor:not-allowed}
.document-row{display:flex;justify-content:space-between;gap:20px;padding:13px 14px;border:1px solid var(--line);border-radius:9px}.document-row span{color:var(--muted)}
@media(max-width:900px){.action-btn .action-label{display:none}.action-btn{width:38px;padding:0}.sale-documents-grid>section{align-items:flex-start;flex-direction:column}.sale-document-actions{justify-content:flex-start}}

/* Sprint 22.1 — filtro mensal de vendas */
.sales-toolbar{align-items:flex-end;gap:10px;flex-wrap:wrap}
.sales-toolbar>input#salesSearch{flex:1 1 420px}
.month-filter-label{display:flex;flex-direction:column;gap:4px;min-width:165px;color:#65716b;font-size:11px;font-weight:700}
.month-filter-label input{height:40px;border:1px solid #dce3df;border-radius:9px;padding:0 10px;background:#fff;color:#17201c}
.empty-table-state{display:flex;flex-direction:column;align-items:center;gap:5px;padding:28px;color:#6d7872}
.empty-table-state b{color:#25302b}
@media(max-width:900px){.sales-toolbar>*{flex:1 1 180px}.sales-toolbar>input#salesSearch{flex-basis:100%}}

/* Sprint 22.3 — padronização das ações administrativas */
.settings-action-group{flex-wrap:wrap;min-width:190px}
.settings-action-group .action-btn{min-width:84px}
.action-btn.danger-soft{background:#fff3f3;border-color:#f0cccc;color:#a43b3b}
.action-btn.danger-soft:hover{background:#ffeaea;border-color:#e6a9a9;color:#8e2626}
#auditList .action-btn{justify-self:end;min-width:100px}
@media(max-width:1100px){.settings-action-group{min-width:auto}.settings-action-group .action-label{display:none}.settings-action-group .action-btn{width:38px;min-width:38px;padding:0}}


/* Sprint 22.4 — Administração: ações legíveis e auditoria alinhada */
.document-model-actions{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-width:270px;
  justify-content:flex-start;
}
#documentModelsTable th:last-child,
#documentModelsTable td:last-child{
  min-width:285px;
  width:285px;
}
.audit-list article{
  grid-template-columns:minmax(125px,150px) minmax(90px,120px) minmax(260px,1fr) minmax(115px,150px) minmax(112px,auto);
  column-gap:16px;
  padding:14px 12px;
}
.audit-list article > button.action-btn{
  justify-self:end;
  min-width:108px;
  white-space:nowrap;
}
.audit-list article > p{
  min-width:0;
  overflow-wrap:anywhere;
}
.audit-list article > em{
  min-width:0;
  overflow-wrap:anywhere;
}
@media(max-width:1180px){
  .document-model-actions{min-width:unset}
  #documentModelsTable th:last-child,#documentModelsTable td:last-child{min-width:150px;width:auto}
  .document-model-actions .action-label{display:none}
  .document-model-actions .action-btn{min-width:38px;padding-inline:10px}
  .audit-list article{grid-template-columns:125px 100px minmax(220px,1fr) 120px 108px;column-gap:10px}
}
@media(max-width:860px){
  .audit-list article{grid-template-columns:1fr;gap:7px}
  .audit-list article > em{text-align:left;display:block}
  .audit-list article > button.action-btn{justify-self:start}
}

/* Sprint 22.5 — ações legíveis em Logística, Pós-venda e Central de Melhorias */
.action-btn.warning-soft{background:#fff9e9;border-color:#f1dfad;color:#8a6500}
.action-btn.warning-soft:hover{background:#fff3cf;border-color:#e5c86f;color:#755500}
.route-action-group,.warranty-action-group,.service-action-group,.review-action-group,.improvement-action-group{justify-content:flex-start;flex-wrap:nowrap}
.route-action-group .action-btn,.service-action-group .action-btn,.review-action-group .action-btn,.improvement-action-group .action-btn{min-width:88px}
.warranty-action-group .action-btn{min-width:86px}
.warranty-action-group .action-btn[aria-label="Abrir atendimento"]{min-width:112px}
#routesTable th:last-child,#routesTable td:last-child{min-width:205px}
#warrantyTable th:last-child,#warrantyTable td:last-child{min-width:310px}
#serviceTable th:last-child,#serviceTable td:last-child{min-width:190px}
#reviewTable th:last-child,#reviewTable td:last-child{min-width:190px}
#improvementTable th:last-child,#improvementTable td:last-child{min-width:190px}
@media(max-width:1250px){
 .route-action-group .action-label,.warranty-action-group .action-label,.service-action-group .action-label,.review-action-group .action-label,.improvement-action-group .action-label{display:none}
 .route-action-group .action-btn,.warranty-action-group .action-btn,.service-action-group .action-btn,.review-action-group .action-btn,.improvement-action-group .action-btn{width:38px;min-width:38px;padding:0}
 #routesTable th:last-child,#routesTable td:last-child,#warrantyTable th:last-child,#warrantyTable td:last-child,#serviceTable th:last-child,#serviceTable td:last-child,#reviewTable th:last-child,#reviewTable td:last-child,#improvementTable th:last-child,#improvementTable td:last-child{min-width:110px}
}


/* Sprint 22.6 — ações padronizadas na tela de Entregas */
.delivery-action-group{justify-content:flex-start;flex-wrap:nowrap;gap:6px}
.delivery-action-group .action-btn{min-width:88px}
.delivery-action-group .action-btn[aria-label="Abrir checklist"]{min-width:92px}
.delivery-action-group .action-btn[aria-label="Reagendar entrega"]{min-width:96px;background:#fff8e8;border-color:#efd79c;color:#8a6500}
.delivery-action-group .action-btn[aria-label="Reagendar entrega"]:hover{background:#fff1c9;border-color:#dfbf68;color:#735200}
#deliveryTable th:last-child,#deliveryTable td:last-child{min-width:300px}
@media(max-width:1350px){
 .delivery-action-group .action-label{display:none}
 .delivery-action-group .action-btn{width:38px;min-width:38px;padding:0}
 #deliveryTable th:last-child,#deliveryTable td:last-child{min-width:185px}
}
@media(max-width:900px){
 .delivery-action-group{flex-wrap:wrap}
 #deliveryTable th:last-child,#deliveryTable td:last-child{min-width:120px}
}


/* Sprint 24 — Ambiente de Homologação */
.homologation-banner{display:flex;align-items:center;gap:10px;margin:10px 18px 0;padding:9px 13px;border:1px solid #f0d29a;background:#fff8e8;border-radius:11px;color:#5b4317}
.homologation-banner .homologation-dot{width:9px;height:9px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.14)}
.homologation-banner>div{display:grid;min-width:0;flex:1}.homologation-banner b{font-size:10px;letter-spacing:.08em}.homologation-banner small{font-size:10px;margin-top:2px;color:#806b43}.homologation-banner em{font-size:9px;font-style:normal;font-weight:800;white-space:nowrap}
.delivery-checklist-form{display:grid;gap:16px}.delivery-evidence-section{border:1px solid #dfe7e0;border-radius:13px;padding:15px;background:#fff}.delivery-upload-zone{position:relative;display:grid!important;grid-template-columns:42px minmax(0,1fr) auto;gap:12px;align-items:center;border:1px dashed #9fca9b!important;background:#f6fcf5!important;border-radius:11px!important;padding:13px!important;cursor:pointer}.delivery-upload-zone input{position:absolute;inset:0;opacity:0;cursor:pointer}.delivery-upload-zone>span{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e3f5e0}.delivery-upload-zone>div{display:grid}.delivery-upload-zone small{font-size:10px;color:#758078;margin-top:3px}.delivery-upload-zone em{font-style:normal;font-size:10px;font-weight:800;color:#278d20;background:#fff;border:1px solid #d6e6d4;padding:7px 9px;border-radius:8px}
.delivery-photo-preview,.delivery-photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:12px}.delivery-photo-preview article,.delivery-photo-gallery button{border:1px solid #dfe7e0;background:#fff;border-radius:11px;padding:8px;text-align:left}.delivery-photo-preview img,.delivery-photo-gallery img{width:100%;height:110px;object-fit:cover;border-radius:8px;background:#eef2ee}.delivery-photo-preview label{font-size:9px;margin-top:7px}.delivery-photo-preview select{width:100%;padding:7px;border:1px solid #dce4dd;border-radius:7px}.delivery-photo-preview article>div{display:flex;gap:6px;margin-top:7px}.delivery-photo-preview button,.delivery-photo-gallery button span{font-size:9px}.delivery-photo-preview button{flex:1;border:1px solid #dce4dd;background:#fff;border-radius:7px;padding:6px;cursor:pointer}.delivery-photo-gallery button{cursor:pointer}.delivery-photo-gallery button span{display:block;margin-top:6px;font-weight:800;color:#3c4a40}
.signature-box{border:1px solid #dce5dd;border-radius:11px;overflow:hidden;background:#fff}.signature-box canvas{display:block;width:100%;height:150px;touch-action:none;cursor:crosshair;background:repeating-linear-gradient(0deg,#fff,#fff 29px,#f2f5f2 30px)}.signature-actions{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e6ebe7;padding:8px 10px}.signature-actions small{color:#78837b}.delivery-detail-tabs{display:grid;gap:14px}.delivery-detail-section{border:1px solid #e0e7e1;border-radius:12px;padding:15px;background:#fff}.delivery-detail-section>h3{font-size:12px;margin:0 0 12px}.delivery-empty-evidence{display:grid;place-items:center;text-align:center;min-height:90px;border:1px dashed #d7e1d8;border-radius:10px;background:#fafcfa}.delivery-empty-evidence b{font-size:11px}.delivery-empty-evidence small{font-size:10px;color:#78837b;margin-top:4px}.saved-signature{display:grid;place-items:center;border:1px solid #e0e7e1;border-radius:10px;padding:10px}.saved-signature img{max-width:100%;height:110px;object-fit:contain}.saved-signature small{font-size:9px;color:#758078}.delivery-photo-view{text-align:center}.delivery-photo-view img{max-width:100%;max-height:70vh;border-radius:10px}.homologation-context-card{display:grid;gap:4px;border:1px solid #f0d29a;background:#fff9ec;border-radius:11px;padding:12px;color:#614b23}.homologation-context-card b{font-size:11px}.homologation-context-card span,.homologation-context-card small{font-size:9px;overflow-wrap:anywhere}
@media(max-width:760px){.homologation-banner{margin:8px 10px 0}.homologation-banner em{display:none}.delivery-upload-zone{grid-template-columns:38px 1fr}.delivery-upload-zone em{grid-column:1/-1}.delivery-photo-preview,.delivery-photo-gallery{grid-template-columns:1fr 1fr}}

/* Sprint 25 — Reserva inteligente de estoque */
#stockTable td:nth-child(5){min-width:190px}
#stockTable td:last-child{min-width:285px}
.reservation-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}
.action-btn.danger,.btn.danger{border-color:#efb6b6;color:#a92d2d;background:#fff7f7}
@media(max-width:1200px){#stockTable td:last-child{min-width:150px}.action-group .action-label{display:none}}

/* Sprint 25.2 — aproveitamento das margens do login e confirmação de saída */
.login-side-rail{display:none}
body.login-active .login-side-rail{
  position:fixed;left:18px;top:50%;transform:translateY(-50%);z-index:4;
  width:min(160px,calc((100vw - (1536px * var(--login-global-scale,1))) / 2 - 28px));
  min-width:112px;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;
  color:#dce5dd;pointer-events:none;
}
.login-side-rail-line{height:150px;width:1px;background:linear-gradient(transparent,rgba(112,220,33,.75),transparent);box-shadow:0 0 18px rgba(112,220,33,.35)}
.login-side-rail-card{width:100%;padding:22px 10px;border:1px solid rgba(112,220,33,.28);border-radius:18px;background:linear-gradient(180deg,rgba(12,18,13,.86),rgba(4,7,5,.92));text-align:center;box-shadow:0 18px 44px rgba(0,0,0,.32)}
.login-side-rail-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 14px;border-radius:14px;background:linear-gradient(145deg,#69e41f,#2c9417);color:#071006;font-size:24px;box-shadow:0 0 28px rgba(106,228,31,.25)}
.login-side-rail-card small,.login-side-rail-card b,.login-side-rail-card em{display:block}
.login-side-rail-card small{font-size:9px;letter-spacing:.22em;color:#92a196}
.login-side-rail-card b{font-size:12px;letter-spacing:.08em;color:#92ef42;margin:7px 0}
.login-side-rail-card em{font-size:10px;font-style:normal;color:#6f7c72}
.login-side-rail-status{display:flex;align-items:center;gap:8px;color:#77827a;font-size:10px;white-space:nowrap}
.login-side-rail-status i{width:7px;height:7px;border-radius:50%;background:#61db2f;box-shadow:0 0 12px rgba(97,219,47,.7)}
@media(max-width:1710px){body.login-active .login-side-rail{display:none}}

.logout-confirmation{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:10px 4px 4px}
.logout-confirmation-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#fff1f1;color:#c83f3f;font-size:28px;border:1px solid #ffd5d5}
.logout-confirmation h3{margin:0 0 7px;font-size:17px}
.logout-confirmation p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}
.logout-confirm-btn{background:#cf3f3f!important;border-color:#cf3f3f!important;color:#fff!important;box-shadow:0 8px 18px rgba(207,63,63,.18)}
.logout-confirm-btn:hover{background:#b93434!important;border-color:#b93434!important}

/* Sprint 25.2 — aproveitamento das margens do login e confirmação de saída */
.login-side-rail{display:none}
body.login-active .login-side-rail{
  position:fixed;left:18px;top:50%;transform:translateY(-50%);z-index:4;
  width:min(160px,calc((100vw - (1536px * var(--login-global-scale,1))) / 2 - 28px));
  min-width:112px;min-height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;
  color:#dce5dd;pointer-events:none;
}
.login-side-rail-line{height:150px;width:1px;background:linear-gradient(transparent,rgba(112,220,33,.75),transparent);box-shadow:0 0 18px rgba(112,220,33,.35)}
.login-side-rail-card{width:100%;padding:22px 10px;border:1px solid rgba(112,220,33,.28);border-radius:18px;background:linear-gradient(180deg,rgba(12,18,13,.86),rgba(4,7,5,.92));text-align:center;box-shadow:0 18px 44px rgba(0,0,0,.32)}
.login-side-rail-icon{display:grid;place-items:center;width:46px;height:46px;margin:0 auto 14px;border-radius:14px;background:linear-gradient(145deg,#69e41f,#2c9417);color:#071006;font-size:24px;box-shadow:0 0 28px rgba(106,228,31,.25)}
.login-side-rail-card small,.login-side-rail-card b,.login-side-rail-card em{display:block}
.login-side-rail-card small{font-size:9px;letter-spacing:.22em;color:#92a196}
.login-side-rail-card b{font-size:12px;letter-spacing:.08em;color:#92ef42;margin:7px 0}
.login-side-rail-card em{font-size:10px;font-style:normal;color:#6f7c72}
.login-side-rail-status{display:flex;align-items:center;gap:8px;color:#77827a;font-size:10px;white-space:nowrap}
.login-side-rail-status i{width:7px;height:7px;border-radius:50%;background:#61db2f;box-shadow:0 0 12px rgba(97,219,47,.7)}
@media(max-width:1710px){body.login-active .login-side-rail{display:none}}

.logout-confirmation{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:10px 4px 4px}
.logout-confirmation-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:17px;background:#fff1f1;color:#c83f3f;font-size:28px;border:1px solid #ffd5d5}
.logout-confirmation h3{margin:0 0 7px;font-size:17px}
.logout-confirmation p{margin:0;color:var(--muted);line-height:1.55;font-size:13px}
.logout-confirm-btn{background:#cf3f3f!important;border-color:#cf3f3f!important;color:#fff!important;box-shadow:0 8px 18px rgba(207,63,63,.18)}
.logout-confirm-btn:hover{background:#b93434!important;border-color:#b93434!important}

/* Sprint 25.8 RC2.1 — homologação de clientes e fiadores */
.credit-guarantor-hint{grid-column:1/-1;color:#68756d;margin-top:-4px}.guarantor-picker select:disabled,.guarantor-picker input:disabled,.guarantor-picker button:disabled{opacity:.55;cursor:not-allowed}.settings-user-cell small,.settings-table-card td small{display:block;color:#738078;margin-top:3px}.action-btn.warning-soft{border-color:#f0d28a;background:#fffaf0}.form-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e4e9e5;padding-top:14px;z-index:2}.tabs button{cursor:pointer}
\n/* RC2.2 Build 25.9 — correções pontuais de homologação */\n#guarantorTable .action-group{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:190px}\n#guarantorTable .action-btn{width:auto;min-width:86px;padding:0 12px}\n#guarantorTable .action-label{display:inline!important}\n.settings-content:has(#sellerReportTable),.settings-content:has(.seller-report-table){gap:20px}\n.settings-content .settings-table-card{margin-top:14px}\n.settings-content .settings-table-card>h3,.settings-content .settings-table-card>.settings-section-title{margin:0 0 14px}\n@media(max-width:900px){#guarantorTable .action-label{display:none!important}#guarantorTable .action-btn{width:38px;min-width:38px;padding:0}}\n
/* RC2.3 - validação e documentos unificados do cliente */
.input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.12)!important;background:#fffafa!important}
.field-error-message{display:block;color:#c62828;font-size:11px;margin-top:5px;font-weight:700}
.client-document-list{display:grid;gap:8px;margin-top:14px}
.client-document-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dfe7df;border-radius:10px;background:#f9fbf9}
.client-document-item>span{display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#eaf8e7;color:#169515}
.client-document-item>div{display:flex;flex-direction:column;min-width:0;flex:1}
.client-document-item b,.client-document-item small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.client-document-item small,.muted-text,.section-help{color:#748078;font-size:12px}
.client-edit-documents h3{margin:8px 0 10px}
.modal-tabs{overflow-x:auto;white-space:nowrap}
@media(max-width:760px){.client-document-item{align-items:flex-start}.client-document-item .btn{margin-left:auto}}
\n\n/* RC2.6 Build 26.3 — validação visual global sem quebra de layout */
.validation-field{position:relative;align-content:start}
.validation-field>.field-error-message{display:block;min-height:15px;line-height:15px;margin-top:2px;color:transparent;font-size:11px;font-weight:700;transition:color .16s ease;overflow-wrap:anywhere}
.validation-field>.field-error-message.visible{color:#c62828}
.validation-field>.field-error-message:not(.visible){user-select:none;pointer-events:none}
.input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.12)!important;background:#fffafa!important}
.form-grid,.modal-form.two-cols,.settings-form-grid{align-items:start}
@media(max-width:760px){.validation-field>.field-error-message{min-height:14px;line-height:14px}}


/* RC2.7 Build 26.4 — navegação sequencial do cadastro de clientes */


/* RC2.8 Build 26.5 — controlador de etapas por aba ativa */


/* RC2.14 — painéis premium de visualização */
.entity-view{display:grid;gap:18px}.entity-hero{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid #dfe8df;border-radius:16px;background:linear-gradient(135deg,#f8fbf8,#f1f8f1)}.entity-avatar{width:54px;height:54px;border-radius:16px;display:grid;place-items:center;background:#dff7dc;color:#17851a;font-weight:800;font-size:18px;flex:0 0 auto}.entity-hero-copy{min-width:0;flex:1}.entity-hero-copy span{display:block;color:#6f7c72;font-size:12px;text-transform:uppercase;letter-spacing:.06em}.entity-hero-copy h3{margin:3px 0 2px;font-size:20px}.entity-hero-copy p{margin:0;color:#6f7c72}.entity-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.entity-metrics article{padding:15px;border:1px solid #e1e7e2;border-radius:14px;background:#fff}.entity-metrics span,.entity-metrics small{display:block;color:#738078;font-size:12px}.entity-metrics b{display:block;margin:5px 0 3px;font-size:17px}.entity-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.entity-section{border:1px solid #e1e7e2;border-radius:15px;background:#fff;overflow:hidden}.entity-section.span-two{grid-column:1/-1}.entity-section>header{display:flex;align-items:center;gap:10px;padding:13px 15px;border-bottom:1px solid #edf1ed;background:#fafcfa}.entity-section>header>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:#e8f8e6}.entity-section>header b,.entity-section>header small{display:block}.entity-section>header small{color:#7a857d;font-size:12px;margin-top:2px}.entity-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:4px 14px 12px}.entity-info-grid>div{padding:12px 8px;border-bottom:1px solid #eef2ee}.entity-info-grid>div.span-full{grid-column:1/-1}.entity-info-grid span{display:block;color:#7a857d;font-size:12px;margin-bottom:4px}.entity-info-grid b{font-size:13px;word-break:break-word}.entity-note{margin:0;padding:16px;color:#465048;line-height:1.55}.linked-client-cards{display:grid;gap:8px;padding:14px}.linked-client-cards button{display:flex;justify-content:space-between;align-items:center;text-align:left;padding:11px 12px;border:1px solid #e2e8e2;border-radius:11px;background:#fff}.linked-client-cards span,.linked-client-cards small{display:block}.linked-client-cards small{color:#7b857d}.entity-empty{padding:18px;text-align:center;color:#7b857d}.contract-summary-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px}.contract-summary-row>div{padding:12px;border:1px solid #e8ece8;border-radius:11px}.contract-summary-row span{display:block;color:#7b857d;font-size:12px;margin-bottom:4px}.payment-progress{padding:14px;border:1px solid #e1e7e2;border-radius:14px}.payment-progress>div{display:flex;justify-content:space-between;margin-bottom:9px}.payment-progress i{display:block;height:10px;border-radius:99px;background:#edf1ed;overflow:hidden}.payment-progress i em{display:block;height:100%;background:#31cf2f;border-radius:99px}.finance-avatar{font-size:22px}.modal-card-wide .entity-view{padding-bottom:2px}
@media(max-width:760px){.entity-metrics,.entity-section-grid,.contract-summary-row{grid-template-columns:1fr}.entity-section.span-two{grid-column:auto}.entity-hero{align-items:flex-start}.entity-info-grid{grid-template-columns:1fr}.entity-info-grid>div.span-full{grid-column:auto}}

/* RC2.15 — parcelas vinculadas à venda e estimativa operacional de roteiros */
.sale-installments-section{overflow:hidden}
.installment-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:4px 0 16px}
.installment-summary-grid article{border:1px solid var(--border);border-radius:12px;padding:12px;background:var(--surface-soft,#f8faf9);display:flex;flex-direction:column;gap:4px}
.installment-summary-grid span{font-size:12px;color:var(--muted)}
.installment-summary-grid b{font-size:15px;color:var(--text)}
.sale-installment-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}
.sale-installment-table{width:100%;border-collapse:collapse;min-width:760px}
.sale-installment-table th,.sale-installment-table td{padding:11px 12px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}
.sale-installment-table th{font-size:12px;color:var(--muted);background:var(--surface-soft,#f8faf9)}
.sale-installment-table tbody tr:last-child td{border-bottom:0}
.sale-installment-note,.route-estimate-note{display:block;margin-top:10px;color:var(--muted);font-size:12px}
.empty-inline-state{padding:18px;border:1px dashed var(--border);border-radius:12px;display:flex;flex-direction:column;gap:4px;background:var(--surface-soft,#f8faf9)}
.empty-inline-state span{color:var(--muted);font-size:13px}
.route-estimate-warning{margin:12px 0 16px;padding:12px 14px;border-radius:10px;background:#fff8e8;border:1px solid #f0d796;color:#6f5516;font-size:13px}
.route-estimate-detail{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.installment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.route-estimate-detail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.installment-summary-grid,.route-estimate-detail{grid-template-columns:1fr}}


/* RC2.16 — DRE Gerencial */
.dre-validation-banner{display:flex;align-items:center;gap:14px;padding:15px 18px;border:1px solid #f0c36a;background:#fff9e8;border-radius:14px;margin-bottom:16px}.dre-validation-banner>span{font-size:24px}.dre-validation-banner div{display:grid;gap:3px;flex:1}.dre-validation-banner small{color:#6b7280}.dre-validation-banner em,.dre-basis-badge{font-style:normal;background:#fff1bd;color:#805600;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:700}.dre-filter-panel{padding:14px 16px;margin-bottom:16px}.dre-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.dre-filters label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#4b5563}.dre-filters input,.dre-filters select{min-width:170px;border:1px solid #dfe4e8;border-radius:9px;padding:9px 11px;background:#fff}.dre-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:16px}.dre-kpis article{background:#fff;border:1px solid #e3e8eb;border-radius:14px;padding:15px;display:grid;gap:6px}.dre-kpis span{font-size:12px;color:#6b7280}.dre-kpis strong{font-size:20px;color:#183d35}.dre-kpis strong.negative{color:#b42318}.dre-kpis small{font-size:11px;color:#8a949c}.dre-statement-panel{overflow:hidden}.dre-table th:not(:first-child),.dre-table td:not(:first-child){text-align:right}.dre-table tbody tr{cursor:pointer}.dre-table tbody tr:hover{background:#f6faf8}.dre-table td:first-child button{border:0;background:none;font:inherit;color:inherit;display:flex;gap:9px;align-items:center;width:100%;text-align:left}.dre-table .strong-row td{font-weight:800;border-top:2px solid #d7e2de}.dre-table .final td{background:#eaf7f1;color:#145c46;font-size:15px}.dre-table .negative td:nth-child(2){color:#9f2d25}.dre-table em{font-style:normal;font-size:12px;font-weight:700}.dre-table em.up{color:#157347}.dre-table em.down{color:#b42318}.dre-bottom-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:16px}.dre-bottom-grid>.panel{padding:16px}.dre-account-summary{display:grid;gap:8px}.dre-account-summary div{display:flex;justify-content:space-between;border-bottom:1px solid #edf0f2;padding:9px 2px}.dre-account-summary span{color:#4b5563}.dre-account-summary b{font-size:12px;color:#186248}.dre-pending-list{display:grid;gap:9px}.dre-pending-list article{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;border:1px solid #f0dfb1;background:#fffbef;border-radius:11px;padding:10px}.dre-pending-list article div{display:grid}.dre-pending-list small{color:#7a838b}.dre-structure-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.dre-structure-grid button{border:1px solid #e0e6e4;background:#fff;border-radius:13px;padding:15px;text-align:left;display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:3px;cursor:pointer}.dre-structure-grid button:hover{border-color:#57a88c;background:#f6fbf9}.dre-structure-grid button>span{grid-row:1/3;font-size:22px;color:#1b795d}.dre-structure-grid small{color:#6c767d}.dre-detail-summary{display:flex;justify-content:space-between;align-items:center;background:#f2f8f5;border-radius:12px;padding:14px;margin-bottom:12px}.dre-detail-summary b{font-size:22px;color:#175e49}.dre-detail-table small{display:block;color:#7c858c}.dre-rule-note{background:#f7f8f9;border-left:4px solid #d3a33b;padding:10px 12px;color:#626c73;border-radius:7px}.dre-account-manager{display:grid;gap:8px}.dre-account-manager article{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid #e4e8ea;border-radius:10px}.dre-account-manager article>span{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#edf7f3;color:#176b51;font-weight:700}.dre-account-manager article div{display:grid}.dre-account-manager small{color:#778188}.dre-account-manager em{font-style:normal;font-size:11px;background:#eef2f3;padding:5px 7px;border-radius:7px}.dre-single-field{display:grid;gap:7px}.dre-single-field select,.dre-single-field textarea{width:100%;border:1px solid #dce2e5;border-radius:9px;padding:10px}.dre-register-info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dre-register-info b{grid-column:1/-1}.dre-register-info span{border:1px solid #e3e8ea;border-radius:8px;padding:9px}.dre-closing-card{display:flex;gap:12px;align-items:center;padding:15px;border:1px solid #f1c96d;background:#fff9e9;border-radius:12px;margin-bottom:14px}.dre-closing-card.closed{border-color:#9bd0bb;background:#eff9f5}.dre-closing-card>span{font-size:24px}.dre-closing-card div{display:grid}.dre-closing-card small{color:#67727a}
@media(max-width:1100px){.dre-kpis{grid-template-columns:repeat(3,1fr)}.dre-structure-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.dre-kpis,.dre-bottom-grid,.dre-structure-grid{grid-template-columns:1fr}.dre-validation-banner{align-items:flex-start}.dre-validation-banner em{display:none}.dre-filters>*{width:100%}.dre-filters input,.dre-filters select{width:100%}}

/* RC2.17 — Motor de classificação e refinamento visual da DRE */
.dre-page .panel-head{padding:18px 20px;gap:18px;align-items:center}
.dre-statement-panel .table-wrap{padding:0 10px 12px}
.dre-table th{padding:13px 14px;white-space:nowrap}
.dre-table td{padding:14px;line-height:1.35;vertical-align:middle}
.dre-table td:first-child button{min-height:28px}
.dre-table tbody tr+tr td{border-top:1px solid #edf1ef}
.dre-bottom-grid{gap:20px;margin-top:20px}
.dre-bottom-grid>.panel{padding:4px 18px 18px}
.dre-account-summary{gap:0}
.dre-account-summary div{padding:12px 3px;min-height:44px;align-items:center}
.dre-pending-list{gap:12px}
.dre-pending-list article{padding:13px 14px;min-height:58px}
.dre-entries-panel{margin-top:20px;overflow:hidden}
.dre-recent-entries{display:grid;padding:0 20px 20px;gap:10px}
.dre-recent-entries article{display:grid;grid-template-columns:minmax(230px,1fr) 90px 130px auto;align-items:center;gap:14px;border:1px solid #e2e8e5;border-radius:12px;padding:13px 14px;background:#fff}
.dre-recent-entries article>div:first-child{display:grid;gap:4px;min-width:0}
.dre-recent-entries b{color:#223a34;overflow-wrap:anywhere}
.dre-recent-entries small{color:#758079;overflow-wrap:anywhere}
.dre-recent-entries>article>span{font-size:12px;color:#68746f;text-align:center}
.dre-recent-entries>article>strong{text-align:right;color:#173f34;font-size:15px;white-space:nowrap}
.dre-entry-actions{display:flex;gap:7px;justify-content:flex-end}
.btn.danger-soft{border-color:#e4b7b2;color:#9d3029;background:#fff7f6}
.dre-structure-grid{gap:14px;margin-top:20px}
.dre-structure-grid button{min-height:88px;padding:17px}
.dre-account-manager{gap:10px}
.dre-account-manager article{padding:13px 12px;min-height:58px}
.modal-form.two-cols{row-gap:16px;column-gap:18px}
.modal-form.two-cols label{gap:7px}
@media(max-width:900px){.dre-recent-entries article{grid-template-columns:1fr auto}.dre-recent-entries>article>span{display:none}.dre-recent-entries>article>strong{text-align:right}.dre-entry-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:560px){.dre-recent-entries article{grid-template-columns:1fr}.dre-recent-entries>article>strong{text-align:left}.dre-entry-actions{flex-wrap:wrap}}

/* RC2.18 — Redesign executivo da DRE */
.dre-executive{--dre-green:#20b743}.dre-title-row{display:flex;align-items:center;gap:12px}.dre-title-row h1{margin:0}.dre-status-chip{background:#fff0c7;color:#8c6300;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.dre-head{margin-bottom:14px}.dre-filter-panel{padding:12px 14px}.dre-filters{display:grid;grid-template-columns:180px 180px 220px 1fr;align-items:end}.dre-filter-actions{display:flex;justify-content:flex-end;gap:9px}.dre-kpis{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:14px}.dre-kpis article{min-height:132px;padding:14px}.dre-kpi-top{display:flex;align-items:center;gap:8px}.dre-kpi-top i{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eaf8ed;color:#15963a;font-style:normal;font-weight:800}.dre-kpis small.up{color:#168a36}.dre-kpis small.down{color:#c23b32}.dre-kpis small em{font-style:normal;color:#7c8781}.dre-kpi-spark{height:5px;border-radius:999px;background:#edf1ef;overflow:hidden;margin-top:auto}.dre-kpi-spark span{display:block;height:100%;background:#28b94b;border-radius:inherit}.dre-dashboard-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(300px,.9fr);gap:14px}.dre-side-stack{display:grid;gap:14px;align-content:start}.dre-trend-panel,.dre-pending-panel,.dre-quick-panel{overflow:hidden}.dre-trend-chart{padding:0 16px 14px;color:#20a543}.dre-trend-chart svg{display:block;width:100%;height:auto}.dre-chart-axis{stroke:#dce3df}.dre-chart-line{fill:none;stroke:currentColor;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.dre-trend-chart circle{fill:currentColor}.dre-trend-chart text{font-size:10px;fill:#7b8580}.dre-trend-summary{display:flex;justify-content:space-between;gap:10px;font-size:11px;color:#79837e}.dre-trend-summary span{display:grid;gap:2px}.dre-trend-summary b{color:#223b33}.dre-count-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:#e64943;color:#fff;font-size:11px}.dre-pending-panel .dre-pending-list{padding:0 16px}.dre-pending-list article{grid-template-columns:1fr auto auto;background:#fff;border-width:0 0 1px;border-radius:0;padding:12px 0}.icon-action{border:1px solid #dce4e0;background:#fff;border-radius:8px;min-width:32px;height:32px;display:grid;place-items:center;cursor:pointer}.text-action{border:0;background:none;color:#1767c0;font-weight:700;padding:12px 16px;text-align:left;cursor:pointer}.dre-lower-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:14px;margin-top:14px}.dre-entry-toolbar{display:grid;grid-template-columns:1fr 190px;gap:10px;padding:0 16px 12px}.dre-entry-toolbar select{border:1px solid #dce3df;border-radius:9px;padding:9px 11px;background:#fff}.dre-recent-entries{padding:0 16px}.dre-entry-table{display:grid}.dre-entry-head,.dre-entry-table article{display:grid;grid-template-columns:90px minmax(180px,1.3fr) minmax(140px,1fr) 90px 120px 108px;gap:10px;align-items:center}.dre-entry-head{font-size:11px;color:#75807a;font-weight:800;border-bottom:1px solid #dde4e0;padding:8px 0}.dre-entry-table article{padding:11px 0;border-bottom:1px solid #edf1ef}.dre-entry-table article>div:nth-child(2){display:grid}.dre-entry-table small{color:#818b86}.dre-entry-table em{font-style:normal;border-radius:999px;padding:5px 8px;font-size:11px;text-align:center}.dre-entry-table em.income{background:#e4f7e8;color:#13833a}.dre-entry-table em.expense{background:#fde9e7;color:#b23d36}.dre-entry-table strong{text-align:right}.dre-quick-panel .dre-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 16px 16px;margin:0}.dre-quick-panel .dre-structure-grid button{min-height:82px;padding:13px}.dre-statement-panel .table-wrap{padding:0 12px 12px}.dre-table th{padding:11px 10px;font-size:11px}.dre-table td{padding:11px 10px}.dre-table .value-up{color:#15823a}.dre-table .value-down{color:#bd3d34}.dre-table .strong-row td{background:#f3faf5;color:#155f31}.dre-table .final td{background:#e4f6e8}.dre-table td:first-child{min-width:210px}
@media(max-width:1250px){.dre-dashboard-grid,.dre-lower-grid{grid-template-columns:1fr}.dre-side-stack{grid-template-columns:1fr 1fr}.dre-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:900px){.dre-filters{grid-template-columns:1fr 1fr}.dre-filter-actions{justify-content:flex-start}.dre-side-stack{grid-template-columns:1fr}.dre-entry-head{display:none}.dre-entry-table article{grid-template-columns:1fr auto}.dre-entry-table article>span,.dre-entry-table article>em{display:none}.dre-entry-table strong{text-align:right}.dre-entry-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:620px){.dre-kpis,.dre-filters,.dre-quick-panel .dre-structure-grid,.dre-entry-toolbar{grid-template-columns:1fr}.dre-filter-actions{flex-wrap:wrap}.dre-title-row{align-items:flex-start;flex-direction:column}.dre-table td:first-child{min-width:170px}}

/* RC2.20 — alinhamento da tabela de lançamentos da DRE */
.dre-entries-panel .dre-recent-entries{padding:0 18px 18px;gap:0}
.dre-entries-panel .dre-entry-head,
.dre-entries-panel .dre-entry-table article{
  grid-template-columns:88px minmax(210px,1.35fr) minmax(190px,1fr) 92px 124px 112px;
  column-gap:16px;
}
.dre-entries-panel .dre-entry-head{
  min-height:42px;
  padding:10px 2px;
  align-items:center;
}
.dre-entries-panel .dre-entry-table article{
  min-height:62px;
  padding:12px 2px;
  border:0;
  border-bottom:1px solid #e5ebe8;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.dre-entries-panel .dre-entry-table article:last-child{border-bottom:0}
.dre-entries-panel .dre-entry-table article>span,
.dre-entries-panel .dre-entry-table article>div,
.dre-entries-panel .dre-entry-table article>em,
.dre-entries-panel .dre-entry-table article>strong{min-width:0}
.dre-entries-panel .dre-entry-table article>span:nth-child(3){line-height:1.3;overflow-wrap:anywhere}
.dre-entries-panel .dre-entry-table article>strong{font-size:15px;white-space:nowrap}
.dre-entries-panel .dre-entry-actions{gap:6px;justify-content:flex-start;white-space:nowrap}
.dre-entries-panel .icon-action{width:32px;min-width:32px;height:32px}
@media(max-width:1050px){
  .dre-entries-panel .dre-entry-head,
  .dre-entries-panel .dre-entry-table article{grid-template-columns:82px minmax(180px,1.2fr) minmax(150px,1fr) 84px 112px 108px;column-gap:10px}
}
@media(max-width:900px){
  .dre-entries-panel .dre-entry-table article{padding:14px 2px;row-gap:8px}
}

/* RC2.21 — DRE objetiva, hierarquia visual e resumo compacto */
.dre-statement-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:16px 18px 10px;border-bottom:1px solid #edf1ef}
.dre-statement-head>div:first-child{display:grid;gap:5px}
.dre-statement-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dre-statement-title h3{margin:0;font-size:17px}
.dre-statement-head p{margin:0;color:#7c8981;font-size:13px}
.dre-statement-title .dre-basis-badge{padding:5px 8px;font-size:11px}
.dre-period-summary{display:flex;align-items:stretch;border:1px solid #e4ebe7;border-radius:11px;overflow:hidden;background:#fbfdfc;flex-shrink:0}
.dre-period-summary span{display:grid;gap:2px;min-width:72px;padding:8px 10px;text-align:center;border-left:1px solid #e8eeeb}
.dre-period-summary span:first-child{border-left:0;min-width:118px}
.dre-period-summary b{font-size:13px;color:#173e33;white-space:nowrap}
.dre-period-summary small{font-size:10px;color:#7a8580}
.dre-period-summary .pending b{color:#b44a2d}
.dre-statement-panel .table-wrap{padding-top:0}
.dre-statement-panel .dre-table th{padding-top:10px}
.dre-quick-panel .dre-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:980px){.dre-statement-head{flex-direction:column}.dre-period-summary{width:100%}.dre-period-summary span{flex:1}.dre-period-summary span:first-child{min-width:0}}
@media(max-width:620px){.dre-period-summary{display:grid;grid-template-columns:repeat(2,1fr)}.dre-period-summary span,.dre-period-summary span:first-child{border-left:0;border-top:1px solid #e8eeeb;min-width:0}.dre-period-summary span:nth-child(-n+2){border-top:0}.dre-period-summary span:nth-child(even){border-left:1px solid #e8eeeb}}

/* GO LIVE 02 — Build 28.3 | Total de parcelas e recálculo automático */
.payment-section{display:grid;gap:10px;margin-bottom:18px}
.payment-section-title{display:flex;align-items:flex-start;gap:10px}
.payment-section-title>span{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#e5f9e3;color:#16981a;font-weight:800;flex:0 0 auto}
.payment-section-title h3{margin:1px 0 2px;font-size:16px}
.payment-section-title p{margin:0;color:#768079;font-size:12px}
.payment-negotiation-grid{grid-template-columns:1.1fr .75fr 1fr 1fr}
.payment-negotiation-grid label small{display:block;margin-top:6px;color:#68736d;font-size:11px}
.toggle-question{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 15px;border:1px solid #dfe7e2;border-radius:12px;background:#fff}
.toggle-question>span{font-weight:700}
.toggle-question>div{display:flex;gap:7px}
.toggle-question button{min-width:72px;padding:8px 13px;border:1px solid #d8e1db;border-radius:9px;background:#fff;font-weight:700;cursor:pointer}
.toggle-question button.selected{border-color:#28c72d;background:#eafbe8;color:#148a18}
.inline-info{margin-top:12px;padding:10px 12px;border-radius:9px;background:#f2faf1;color:#376b39;font-size:12px}
.payment-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.installment-preview-card{margin-top:16px}
.installment-preview{display:grid;gap:0;border:1px solid #e1e8e4;border-radius:11px;overflow:hidden}
.installment-preview-head,.installment-preview-row{display:grid;grid-template-columns:75px minmax(145px,.8fr) minmax(130px,.8fr) minmax(110px,.7fr) minmax(170px,1.2fr);align-items:center;gap:12px;padding:11px 14px}
.installment-preview-head{background:#f5f8f6;color:#69756e;font-size:11px;font-weight:800;text-transform:uppercase}
.installment-preview-row{border-top:1px solid #e7ece9;background:#fff}
.installment-preview-row:first-of-type{border-top:0}
.installment-preview-row input{width:100%;min-width:0}
.installment-preview-row strong{font-size:14px}
.installment-preview-row em{font-style:normal;font-size:11px;padding:5px 8px;border-radius:999px;width:max-content;max-width:100%}
.automatic-date{background:#eef4f0;color:#567064}
.manual-date{background:#fff2d5;color:#9a6310}
@media(max-width:1100px){.payment-negotiation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.installment-preview-head{display:none}.installment-preview-row{grid-template-columns:60px 1fr 1fr;row-gap:8px}.installment-preview-row span,.installment-preview-row em{grid-column:2/-1}}
@media(max-width:650px){.toggle-question{align-items:flex-start;flex-direction:column}.payment-negotiation-grid,.payment-summary{grid-template-columns:1fr}.installment-preview-row{grid-template-columns:50px 1fr}.installment-preview-row strong,.installment-preview-row span,.installment-preview-row em{grid-column:2}}

/* Build 28.3 */
.payment-negotiation-grid label small,.payment-section .form-grid label small{display:block;margin-top:6px;color:#718078;font-size:12px;line-height:1.35}.payment-section-title{margin-bottom:10px}.payment-section+.payment-section{margin-top:22px}

/* GO LIVE 03 - operação integrada */
.operation-preflight{display:grid;gap:18px}.preflight-status{padding:16px 18px;border-radius:14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.preflight-status.ready{background:#ecfdf3;border:1px solid #a7f3d0}.preflight-status.pending{background:#fff7ed;border:1px solid #fed7aa}.preflight-list{display:grid;gap:8px}.preflight-list>div{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--border);border-radius:11px}.preflight-icon{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;font-weight:800}.preflight-icon.done{background:#dcfce7;color:#166534}.preflight-icon.missing{background:#fee2e2;color:#991b1b}.sale-history-block{border-top:1px solid var(--border);padding-top:14px}.sale-history-block>div{padding:10px 0;border-bottom:1px solid var(--border);display:grid;grid-template-columns:1fr auto;gap:4px 12px}.sale-history-block p{grid-column:1/-1;margin:0;color:var(--muted)}.unit-swap-layout{display:grid;gap:16px}.current-unit-card{padding:16px;border-radius:14px;background:var(--panel-soft);border:1px solid var(--border)}.current-unit-card span{display:block;color:var(--muted);font-size:.86rem}.current-unit-card b{display:block;font-size:1.08rem;margin-top:4px}.unit-swap-layout label{display:grid;gap:7px;font-weight:700}.unit-swap-layout select,.unit-swap-layout textarea{width:100%}.info-callout{padding:13px 15px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}

/* GO LIVE 03.2 — Build 29.0 | Troca inteligente e termo aditivo */
.unit-swap-wizard{display:grid;gap:18px}.swap-comparison{display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);gap:14px;align-items:stretch}.swap-comparison.compact{margin-bottom:16px}.swap-unit-card,.swap-comparison>article{border:1px solid var(--border,#dbe3ea);border-radius:16px;padding:18px;background:#fff;display:flex;flex-direction:column;gap:7px}.swap-unit-card.current{background:#f8fafc}.swap-unit-card.next{background:#f7fbf8}.swap-unit-card>span,.swap-comparison>article>span{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:#64748b}.swap-unit-card>b,.swap-comparison>article>b{font-size:18px}.swap-unit-card small,.swap-comparison article small{color:#64748b}.swap-unit-card>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.swap-arrow{display:flex;align-items:center;justify-content:center;font-size:28px;color:#64748b}.swap-select-label{display:grid;gap:7px;font-weight:600}.swap-select-label select,.unit-swap-wizard textarea{width:100%;border:1px solid #cbd5e1;border-radius:12px;padding:11px 12px;background:#fff}.swap-financial-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.swap-financial-preview>div,.swap-detail-grid>div{border:1px solid #e2e8f0;border-radius:12px;padding:12px;background:#f8fafc}.swap-financial-preview span,.swap-detail-grid span{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.swap-financial-preview b,.swap-detail-grid b{display:block}.swap-financial-preview .positive{color:#15803d}.swap-financial-preview .negative{color:#b91c1c}.swap-financial-choice{border:1px solid #dbe3ea;border-radius:14px;padding:14px;display:grid;gap:10px}.swap-financial-choice legend{font-weight:700;padding:0 6px}.swap-financial-choice label{display:flex;align-items:center;gap:8px;font-weight:500}.info-callout.warning{border-color:#f59e0b;background:#fffbeb}.info-callout{display:flex;flex-direction:column;gap:3px}.swap-impact-list{border-left:4px solid #0f766e;padding:10px 12px;background:#f0fdfa;border-radius:8px;display:grid;gap:3px}.swap-confirmation{display:grid;gap:16px}.swap-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.critical-note{border:1px solid #f59e0b;background:#fffbeb;border-radius:12px;padding:13px;color:#78350f}.critical-confirm{text-align:center;display:grid;gap:12px;padding:10px}.critical-confirm>span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fef3c7;color:#92400e;font-size:26px;margin:auto}.critical-confirm h3{margin:0}.btn.danger{background:#b91c1c;color:#fff;border-color:#b91c1c}.addendum-document{display:grid;gap:18px;padding:8px}.addendum-title{text-align:center;border-bottom:2px solid #0f766e;padding-bottom:14px}.addendum-title span{font-size:12px;letter-spacing:.08em;color:#64748b}.addendum-title h2{margin:4px 0}.addendum-document section{border:1px solid #e2e8f0;border-radius:14px;padding:16px}.addendum-document h3{margin:0 0 12px}.addendum-signatures{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:28px}.addendum-signatures div{border-top:1px solid #334155;text-align:center;padding-top:8px}.sale-addendum-notice{margin-top:12px;padding:12px;border:1px solid #f59e0b;background:#fffbeb;border-radius:12px;display:grid;grid-template-columns:1fr auto;gap:4px 10px;align-items:center}.sale-addendum-notice span{font-size:12px;color:#92400e}.sale-addendum-notice .btn{grid-row:1/3;grid-column:2}.btn.small{padding:7px 10px;font-size:12px}
@media(max-width:760px){.swap-comparison{grid-template-columns:1fr}.swap-arrow{transform:rotate(90deg);height:24px}.swap-financial-preview,.swap-detail-grid{grid-template-columns:1fr}.swap-unit-card>div{grid-template-columns:1fr}}

/* GO LIVE 03.4 — Build 29.2 */
.sale-installment-note{display:block;padding:10px 14px 12px;line-height:1.4;color:#64748b;border-top:1px solid #eef2ee;background:#fff;white-space:normal}
.sale-installments-section{padding-bottom:0}
.swap-unit-card>div{align-items:stretch}.swap-unit-card>div>div{min-width:0}.swap-unit-card>div span{line-height:1.25}.swap-unit-card>div b{line-height:1.35;word-break:break-word}.swap-unit-card small{line-height:1.4}
.unit-swap-wizard .swap-comparison{align-items:stretch}.unit-swap-wizard .swap-unit-card{min-height:168px}
@media(max-width:760px){.sale-installment-note{padding-inline:10px}.unit-swap-wizard .swap-unit-card{min-height:auto}}


/* GO LIVE 04 — Central de Cobrança */
.billing-integration-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--line,#dfe4ea);border-radius:16px;background:#fff;margin-bottom:18px}.billing-integration-banner>div{display:flex;align-items:center;gap:14px}.billing-integration-banner small{display:block;margin-top:4px;color:var(--muted,#657080)}.billing-bank-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#0c2538;color:#fff;font-weight:800}.billing-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:18px;margin-bottom:18px}.billing-rule-preview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.billing-rule-preview>div,.billing-sync-summary>div{border:1px solid #e4e8ee;border-radius:12px;padding:13px;background:#fafbfd}.billing-rule-preview b,.billing-sync-summary b{display:block}.billing-rule-preview span,.billing-sync-summary span,.billing-sync-summary small{color:#697586;font-size:12px}.billing-sync-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.billing-sync-summary>small{grid-column:1/-1;line-height:1.5}.billing-action-tag{display:inline-flex;padding:6px 9px;border-radius:999px;background:#eef2f6;color:#344054;font-size:12px;font-weight:700}.billing-action-tag.due{background:#fff2cc;color:#7a5b00}.billing-action-tag.late{background:#ffe3e3;color:#9f1d1d}.billing-action-tag.before{background:#e7f0ff;color:#245aa8}.billing-event-history{margin-top:18px;border-top:1px solid #e4e8ee;padding-top:16px}.billing-event-history h3{margin:0 0 10px}.billing-event-history>div{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:10px 0;border-bottom:1px solid #eef1f4}.billing-event-history small{grid-column:1/-1;color:#7a8492}@media(max-width:980px){.billing-grid{grid-template-columns:1fr}.billing-rule-preview{grid-template-columns:1fr}.billing-sync-summary{grid-template-columns:1fr}.billing-sync-summary>small{grid-column:auto}}

/* GO LIVE 04.1 — paginação padronizada */
.table-pagination-summary{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.table-pagination-summary>span{white-space:nowrap}
.table-pagination-summary label{display:flex;align-items:center;gap:7px;font-size:11px;color:#657269}
.table-pagination-summary select{height:32px;min-width:66px;border:1px solid #d9e2da;border-radius:8px;background:#fff;padding:0 8px;color:#364139;font-weight:700}
@media(max-width:760px){.table-pagination-summary{width:100%;justify-content:space-between}.pagination-buttons{width:100%;justify-content:space-between}}

/* GO LIVE 05.1 - Garantias: anexos e validações */
.guarantee-file-preview{display:grid;gap:8px;margin-top:9px}
.guarantee-file-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #dfe7e1;border-radius:9px;background:#fbfdfb}
.guarantee-file-row>div:first-child{min-width:0;display:grid;gap:3px}
.guarantee-file-row b{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.guarantee-file-row small{color:#718078;font-size:11px}
.guarantee-file-row>div:last-child{display:flex;gap:7px;flex-shrink:0}
.btn.compact{padding:7px 10px;font-size:11px}
.btn.compact.danger{color:#b3261e;border-color:#f0cccc;background:#fff8f8}
.document-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.document-row>div{display:grid;gap:3px}
@media(max-width:700px){.guarantee-file-row{align-items:flex-start;flex-direction:column}.guarantee-file-row>div:last-child{width:100%}}

/* GO LIVE 06 — Entrada em lote e rastreabilidade de estoque */
.page-head-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.batch-stock-top{display:grid;grid-template-columns:1.4fr .7fr 1fr 1fr;gap:12px}
.batch-section-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:18px 0 9px;padding-top:14px;border-top:1px solid #e7ece8}
.batch-section-head>div{display:grid;gap:3px}.batch-section-head small{color:#748078}
.batch-color-rows{display:grid;gap:8px}.batch-color-row{display:grid;grid-template-columns:1.6fr .7fr 36px;gap:8px;align-items:end;padding:9px;border:1px solid #e1e8e3;border-radius:9px;background:#fbfdfb}
.batch-color-row label{margin:0}.batch-color-row .icon-btn{height:38px}
.batch-summary{display:flex;gap:18px;flex-wrap:wrap;padding:11px 13px;margin:12px 0;background:#f4f7f5;border-radius:9px;font-size:12px}.batch-summary span{display:flex;gap:5px}.ok-text{color:#19733c}.warn-text{color:#b36b00}
.batch-preview-head{display:flex;justify-content:space-between;gap:12px;align-items:end;margin:14px 0 7px}.batch-preview-head small{color:#748078}
.batch-unit-grid{display:grid;gap:6px;max-height:310px;overflow:auto;padding-right:4px}
.batch-unit-row{display:grid;grid-template-columns:32px 1fr 130px 1.5fr;gap:8px;align-items:center;padding:7px 9px;border:1px solid #e4e9e5;border-radius:8px}.batch-unit-row>span{font-size:11px;color:#77827b}.batch-unit-row>b{font-size:12px}.batch-unit-row input{min-width:0}
.stock-history-box{display:grid!important;gap:7px;margin-top:5px}.stock-history-item{display:grid;gap:2px;padding:8px 10px;background:#f7f9f7;border-radius:7px}.stock-history-item small{color:#718078}
@media(max-width:850px){.batch-stock-top{grid-template-columns:1fr 1fr}.batch-unit-row{grid-template-columns:28px 1fr}.batch-unit-row input{grid-column:span 1}}

/* GO LIVE 06.1 — seleção hierárquica de unidades */
.bike-selection-flow{display:grid;grid-template-columns:1.25fr 1fr 1.35fr;gap:10px;margin-bottom:12px}
.bike-selection-step{display:grid;grid-template-columns:30px 1fr;gap:9px;align-items:end;padding:10px;border:1px solid #e2e9e4;border-radius:10px;background:#fbfdfb}
.bike-selection-step>span{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#e9f9e9;color:#208331;font-weight:700;margin-bottom:5px}
.bike-selection-step label{margin:0}.bike-selection-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:9px 12px;margin-bottom:10px;background:#f5f8f6;border-radius:9px}.bike-selection-summary span{color:#718078;font-size:12px}.bike-selection-summary .link-btn{margin-left:auto}
.bike-model-card,.bike-color-card{display:flex;justify-content:space-between;align-items:center;text-align:left;border:1px solid #dfe7e1;background:#fff;border-radius:10px;padding:15px;cursor:pointer}.bike-model-card:hover,.bike-color-card:hover{border-color:#8edc91;background:#fbfffb}.bike-model-card>div,.bike-color-card>div{display:grid;gap:4px}.bike-model-card small,.bike-color-card small{color:#748078}.bike-model-card em,.bike-color-card em{font-style:normal;color:#238632;font-weight:600}
.compact-units .unit-choice-card{min-height:125px}.unit-choice-card small{display:block;color:#778078;margin:3px 0}
.swap-unit-picker{display:grid;grid-template-columns:1.2fr 1fr 1.5fr;gap:10px;margin:12px 0}.swap-unit-picker .span-full{grid-column:1/-1}
@media(max-width:800px){.bike-selection-flow,.swap-unit-picker{grid-template-columns:1fr}.swap-unit-picker .span-full{grid-column:auto}}

/* GO LIVE 06.2 — correção visualizar + redesign troca de unidade */
.swap-comparison{gap:18px}
.swap-unit-card{padding:18px!important}
.swap-unit-card>span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#60758a;margin-bottom:6px}
.swap-unit-card>b{display:block;font-size:18px;line-height:1.2;margin-bottom:4px}
.swap-unit-card>small{display:block;color:#6f7d76;margin-bottom:14px}
.swap-card-meta{display:grid!important;grid-template-columns:1fr 1fr;gap:9px!important}
.swap-card-meta p{margin:0;padding:9px 10px;border-radius:8px;background:rgba(255,255,255,.72);display:grid;gap:3px}
.swap-card-meta p span{font-size:10px;color:#748078}
.swap-card-meta p b{font-size:13px;line-height:1.25}
.swap-picker-panel{border:1px solid #dfe7e1;border-radius:12px;background:#fff;margin:14px 0;padding:14px}
.swap-picker-title{display:grid;gap:3px;margin-bottom:12px}
.swap-picker-title>b{font-size:15px}.swap-picker-title>span{font-size:12px;color:#718078}
.swap-picker-step{display:grid;grid-template-columns:34px 210px minmax(0,1fr);gap:10px;align-items:center;padding:10px 0;border-top:1px solid #eef1ef}
.swap-picker-step:first-of-type{border-top:0}
.swap-picker-step>i{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#e9f9e9;color:#218633;font-style:normal;font-weight:700}
.swap-picker-step>div:nth-child(2){display:grid;gap:2px}
.swap-picker-step>div:nth-child(2)>span{font-weight:700;font-size:12px}.swap-picker-step>div:nth-child(2)>small{font-size:10px;color:#78847d}
.swap-picker-step select,.swap-picker-step input{width:100%;min-height:39px}
.swap-unit-choice{display:grid;grid-template-columns:1fr 1.25fr;gap:8px}
.swap-picker-hint{padding:9px 11px;border-radius:8px;background:#f4f8f4;color:#607168;font-size:11px;margin-top:8px}
.swap-picker-hint b{color:#176c2d}
@media(max-width:800px){
 .swap-picker-step{grid-template-columns:32px 1fr}.swap-picker-step>select,.swap-picker-step>.swap-unit-choice{grid-column:1/-1}
 .swap-unit-choice{grid-template-columns:1fr}.swap-card-meta{grid-template-columns:1fr}
}

/* GO LIVE 07 — roteiros preparados sem fixar regras de entrega */
.route-reference-status{display:grid;gap:3px;padding:11px 13px;border-radius:9px;margin-bottom:12px}
.route-reference-status.estimated{background:#fff7e5;border:1px solid #f2d28b}
.route-reference-status.confirmed{background:#edf9ef;border:1px solid #aaddb2}
.route-reference-status span{font-size:11px;color:#66756d}
.route-reference-info{display:grid;gap:4px;padding:11px 13px;background:#f3f7f4;border-radius:9px;margin-bottom:14px}
.route-reference-info span{font-size:11px;color:#6f7c75}
.route-reference-note{padding:10px 12px;background:#f6f8f7;border-radius:8px;font-size:12px}

/* GO LIVE 08 — Financeiro / Contas a Receber */
.page-eyebrow{display:block;font-size:10px;font-weight:800;letter-spacing:.12em;color:#2a9b34;margin-bottom:5px}
.finance-summary-page,.receivables-page{max-width:1600px}
.finance-summary-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}
.finance-summary-kpis article{background:#fff;border:1px solid #e1e7e2;border-radius:12px;padding:17px 18px;display:grid;gap:5px;cursor:pointer;box-shadow:0 4px 15px rgba(22,46,29,.025)}
.finance-summary-kpis article:hover{border-color:#b8dcbc}.finance-summary-kpis span{font-size:11px;color:#728078}.finance-summary-kpis strong{font-size:23px}.finance-summary-kpis small{font-size:10px;color:#7c8781}
.finance-summary-kpis article.danger{border-left:4px solid #e8a3a3}.finance-summary-kpis article.danger strong{color:#b62c2c}
.finance-summary-grid{display:grid;grid-template-columns:1.7fr .8fr;gap:14px;margin-bottom:14px}.finance-summary-grid.lower{grid-template-columns:1fr 1fr}
.finance-forecast-panel,.finance-bank-panel,.finance-attention-panel{padding:18px}
.finance-forecast{height:230px;display:grid;grid-template-columns:repeat(10,1fr);gap:8px;align-items:end;padding-top:15px}
.forecast-day{border:0;background:transparent;display:grid;grid-template-rows:auto auto 1fr auto;gap:5px;height:100%;min-width:0;text-align:center;color:#6b7770}
.forecast-day>b{font-size:13px;color:#27312b}.forecast-day>span,.forecast-day>small{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forecast-day>i{display:flex;align-items:flex-end;justify-content:center;height:125px;background:#f3f6f4;border-radius:6px;padding:0 8px;overflow:hidden}.forecast-day>i>em{display:block;width:100%;background:#65d05b;border-radius:5px 5px 0 0;min-height:4px}
.finance-bank-summary{display:grid;gap:0;margin:10px 0 15px}.finance-bank-summary>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #edf0ee}.finance-bank-summary span{font-size:11px;color:#748078}.finance-bank-summary b{font-size:11px;text-align:right}
.finance-quick-list{display:grid}.finance-quick-list>button{border:0;border-top:1px solid #edf0ee;background:#fff;padding:12px 3px;display:flex;justify-content:space-between;gap:15px;text-align:left;cursor:pointer}.finance-quick-list>button:first-child{border-top:0}.finance-quick-list>button:hover{background:#f8fbf8}.finance-quick-list>button div,.finance-quick-list>button section{display:grid;gap:3px}.finance-quick-list>button section{text-align:right}.finance-quick-list b,.finance-quick-list strong{font-size:12px}.finance-quick-list span,.finance-quick-list small{font-size:10px;color:#758179}
.empty-finance-state{font-size:12px;color:#758179;padding:20px 0}.finance-summary-note{display:flex;gap:10px;padding:11px 14px;background:#f5f8f6;border-radius:9px;font-size:10px;color:#68766e}.finance-summary-note b{color:#27352d}
.receivable-kpis article{cursor:pointer}.receivable-kpis article:hover{border-color:#b7ddb9}.receivable-kpis article.attention strong{color:#b62c2c}
.clean-finance-panel{overflow:hidden}.clean-finance-toolbar{background:#fbfcfb;border-bottom:1px solid #e8ece9;padding:14px}.finance-table-caption{display:flex;justify-content:space-between;align-items:center;padding:14px 16px 8px}.finance-table-caption>div{display:grid;gap:2px}.finance-table-caption b{font-size:13px}.finance-table-caption span{font-size:10px;color:#768179}.text-action{border:0;background:transparent;color:#278d31;font-weight:700;font-size:11px;cursor:pointer}
.clean-finance-table th{font-size:10px;color:#6e7b73;background:#fafbfa}.clean-finance-table td{vertical-align:middle}.finance-row-overdue{background:#fffafa}.finance-row-overdue td:first-child{border-left:3px solid #e4a0a0}
.finance-audit-lines{display:grid}.finance-audit-lines>div{display:grid;grid-template-columns:180px 1fr;gap:12px;padding:10px 0;border-top:1px solid #edf0ee}.finance-audit-lines>div:first-child{border-top:0}.finance-audit-lines b{font-size:11px}.finance-audit-lines span{font-size:11px;color:#6d7972}
@media(max-width:1100px){.finance-summary-kpis{grid-template-columns:1fr 1fr}.finance-summary-grid,.finance-summary-grid.lower{grid-template-columns:1fr}.finance-forecast{overflow-x:auto;grid-template-columns:repeat(10,75px)}}

/* GO LIVE 08.1 — acabamento do detalhe financeiro */
.finance-entity-view .entity-section.span-two .finance-audit-lines{padding:10px 16px 14px}
.finance-entity-view .entity-section.span-two .finance-audit-lines>div{padding:11px 0;align-items:start}
.finance-entity-view .entity-section.span-two .finance-audit-lines>div:first-child{padding-top:8px}
.finance-entity-view .entity-section.span-two .finance-audit-lines>div:last-child{padding-bottom:4px}
.finance-edit-warning{display:grid;gap:4px;padding:11px 13px;border-radius:9px;background:#fff8e8;border:1px solid #f0d798}
.finance-edit-warning b{font-size:11px}.finance-edit-warning span{font-size:10px;color:#6f756f;line-height:1.45}

/* GO LIVE 08.2 — financeiro orientado à data real */
.finance-today-label{display:inline-block;margin-left:5px;font-weight:700;color:#31843a;font-size:10px}
.forecast-day.is-today{background:#f2fbf2;border-radius:9px;padding-top:5px}
.forecast-day.is-today>span,.forecast-day.is-today>b{color:#21832d;font-weight:800}
.forecast-day>small{white-space:normal;line-height:1.2;min-height:24px}

/* GO LIVE 09 — Conciliação e histórico de baixas */
.reconciliation-kpis article.attention strong{color:#b62c2c}
.reconciliation-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:14px;margin:14px 0}
.reconciliation-attention,.reconciliation-rules{padding:18px}
.recon-attention-list{display:grid;margin-top:6px}
.recon-attention-list>button{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;border:0;border-top:1px solid #edf0ee;background:#fff;padding:11px 2px;text-align:left;cursor:pointer}
.recon-attention-list>button:first-child{border-top:0}.recon-attention-list>button>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#fff0ef;color:#bb302b;font-weight:800}
.recon-attention-list>button>div{display:grid;gap:2px}.recon-attention-list b{font-size:11px}.recon-attention-list small{font-size:10px;color:#748078}.recon-attention-list em{font-style:normal;font-weight:700;font-size:11px}
.recon-ok-state{display:grid;gap:4px;padding:18px;background:#f2faf3;border-radius:9px;color:#2e7437}.recon-ok-state span{font-size:10px;color:#65756a}
.recon-rule-list{display:grid}.recon-rule-list>div{display:grid;gap:3px;padding:11px 0;border-top:1px solid #edf0ee}.recon-rule-list>div:first-child{border-top:0}.recon-rule-list b{font-size:11px}.recon-rule-list span{font-size:10px;color:#748078;line-height:1.45}
.recon-row-warning{background:#fffafa}.recon-row-warning td:first-child{border-left:3px solid #e3a09d}.cell-warning{display:block;color:#b33a35;font-size:9px;margin-top:3px}
@media(max-width:1000px){.reconciliation-grid{grid-template-columns:1fr}}

/* GO LIVE 09.1 — pagamento em BRL + atualização imediata da conciliação */
.field-help{display:block;margin-top:4px;color:#77827c;font-size:10px;line-height:1.35}
.payment-confirm-summary{display:flex;justify-content:space-between;align-items:center;margin-top:12px;padding:11px 13px;background:#f4f8f4;border-radius:9px;font-size:11px}
.payment-confirm-summary span{color:#6e7b73}.payment-confirm-summary b{font-size:13px}

/* GO LIVE 09.2 — transição global de status */
.cell-warning{display:block;margin-top:3px;color:#aa3c36;font-size:9px;line-height:1.25}

/* GO LIVE 09.3 — acabamento financeiro */
.payment-form-compact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.payment-form-compact .payment-method-field{max-width:270px}
.payment-form-compact .payment-status-field{max-width:220px}
.payment-form-compact .payment-method-field select,.payment-form-compact .payment-status-field select{min-height:42px}
.finance-reversal-confirm{display:grid;gap:14px}
.reversal-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;margin:0 auto;background:#fff0ef;color:#ba2f2a;font-size:24px;font-weight:700}
.reversal-title{text-align:center;display:grid;gap:4px}.reversal-title b{font-size:18px}.reversal-title span{font-size:11px;color:#718078}
.reversal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.reversal-grid>div{display:grid;gap:3px;padding:10px 12px;background:#f7f9f8;border:1px solid #e4e9e5;border-radius:8px}
.reversal-grid span{font-size:10px;color:#77827b}.reversal-grid b{font-size:12px}
.reversal-warning{display:grid;gap:4px;padding:11px 13px;background:#fff5e7;border:1px solid #efd39d;border-radius:9px}
.reversal-warning b{font-size:11px;color:#8b5a14}.reversal-warning span{font-size:10px;color:#6f736f;line-height:1.45}
.btn.danger{background:#c93630;color:#fff;border-color:#c93630}.btn.danger:hover{filter:brightness(.96)}
.finance-date-filter{display:grid;grid-template-columns:105px 160px;gap:7px;min-width:272px}
.finance-date-filter select,.finance-date-filter input{width:100%;min-width:0}
@media(max-width:760px){.reversal-grid{grid-template-columns:1fr}.finance-date-filter{grid-template-columns:1fr;min-width:0}.payment-form-compact .payment-method-field,.payment-form-compact .payment-status-field{max-width:none}}

/* GO LIVE 09.4 — padrão Mês / Data em filtros */
.period-mode-filter,.dre-period-mode{display:grid;grid-template-columns:82px minmax(135px,1fr);gap:7px;align-items:center}
.period-mode-filter select,.period-mode-filter input,.dre-period-mode select,.dre-period-mode input{width:100%;min-width:0}
.period-filter-label{min-width:245px}
.dre-period-mode{min-width:245px}
@media(max-width:760px){.period-mode-filter,.dre-period-mode{grid-template-columns:1fr}.period-filter-label,.dre-period-mode{min-width:0}}

/* GO LIVE 09.4.1 — correção visual dos filtros da DRE */
.dre-filter-panel{padding:14px 16px}
.dre-filters-clean{
  display:grid!important;
  grid-template-columns:minmax(270px,1.25fr) minmax(190px,.85fr) minmax(220px,.95fr) auto!important;
  gap:14px!important;
  align-items:end!important;
}
.dre-filter-group{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:6px!important;
  min-width:0!important;
  margin:0!important;
}
.dre-filter-group>span{
  display:block;
  font-size:11px;
  font-weight:700;
  color:#46544b;
  line-height:1.2;
}
.dre-filter-group select,
.dre-filter-group input{
  width:100%!important;
  min-width:0!important;
  height:40px;
  box-sizing:border-box;
}
.dre-filter-period .dre-period-mode{
  display:grid!important;
  grid-template-columns:88px minmax(150px,1fr)!important;
  gap:8px!important;
  min-width:0!important;
  width:100%!important;
}
.dre-filter-period .field-help{
  display:block;
  margin:0;
  min-height:14px;
  font-size:9px;
  line-height:1.25;
  color:#7b857e;
  white-space:normal;
}
.dre-filter-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  align-self:end!important;
  white-space:nowrap;
  padding-bottom:14px;
}
.dre-filter-actions .btn{min-height:40px}
@media(max-width:1050px){
  .dre-filters-clean{grid-template-columns:1fr 1fr!important}
  .dre-filter-actions{justify-content:flex-start!important;padding-bottom:0}
}
@media(max-width:650px){
  .dre-filters-clean{grid-template-columns:1fr!important}
  .dre-filter-period .dre-period-mode{grid-template-columns:82px 1fr!important}
}

/* GO LIVE 09.4.2 — filtro DRE compacto e alinhado */
.dre-filter-panel-compact{
  padding:12px 14px 10px!important;
  overflow:visible!important;
}
.dre-filter-toolbar{
  display:flex!important;
  align-items:flex-end!important;
  gap:12px!important;
  width:100%;
  min-width:0;
}
.dre-filter-control{
  display:grid!important;
  gap:5px!important;
  margin:0!important;
  min-width:0!important;
  flex:0 0 auto;
}
.dre-filter-control>span{
  display:block;
  font-size:10px;
  font-weight:700;
  color:#48564e;
  line-height:1;
}
.dre-filter-competence{width:330px!important}
.dre-filter-view{width:220px!important}
.dre-filter-compare{width:250px!important}
.dre-period-inline{
  display:grid!important;
  grid-template-columns:82px 1fr!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
}
.dre-period-inline select,
.dre-period-inline input,
.dre-filter-control>select{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  box-sizing:border-box!important;
}
.dre-filter-actions-compact{
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:0!important;
  flex:0 0 auto!important;
}
.dre-filter-actions-compact .btn{
  height:40px!important;
  min-height:40px!important;
  white-space:nowrap;
}
.dre-filter-footnote{
  margin-top:6px;
  font-size:9px;
  color:#7a857e;
  min-height:11px;
  line-height:1.2;
}
@media(max-width:1200px){
  .dre-filter-toolbar{flex-wrap:wrap!important}
  .dre-filter-actions-compact{margin-left:0!important}
}
@media(max-width:760px){
  .dre-filter-competence,.dre-filter-view,.dre-filter-compare{width:100%!important}
  .dre-filter-toolbar{display:grid!important;grid-template-columns:1fr!important}
  .dre-filter-actions-compact{width:100%;justify-content:flex-start!important}
}

/* GO LIVE 09.5 — padrão visual profissional para filtros e pesquisas */
:root{
  --filter-bg:#ffffff;
  --filter-soft:#f7faf8;
  --filter-border:#dce5df;
  --filter-border-hover:#bfcfc3;
  --filter-focus:#37c92b;
  --filter-text:#26332b;
  --filter-muted:#738078;
  --filter-radius:12px;
  --filter-shadow:0 2px 8px rgba(19,45,27,.035);
}

/* Campos de pesquisa e seleção usados em barras de consulta */
.toolbar input,
.toolbar select,
.sales-toolbar input,
.sales-toolbar select,
.finance-toolbar input,
.finance-toolbar select,
.crm-toolbar input,
.crm-toolbar select,
.logistics-toolbar input,
.logistics-toolbar select,
.aftersales-toolbar input,
.aftersales-toolbar select,
.service-toolbar input,
.service-toolbar select,
.improvement-toolbar input,
.improvement-toolbar select,
.attention-toolbar input,
.attention-toolbar select,
.dre-entry-toolbar input,
.dre-entry-toolbar select,
.dre-filter-toolbar input,
.dre-filter-toolbar select,
.dre-period-inline input,
.dre-period-inline select,
.dre-filter-control>select,
.period-mode-filter input,
.period-mode-filter select,
.finance-date-filter input,
.finance-date-filter select,
.month-filter-label input,
.month-filter-label select{
  min-height:42px!important;
  height:42px;
  border:1px solid var(--filter-border)!important;
  border-radius:var(--filter-radius)!important;
  background:var(--filter-bg)!important;
  color:var(--filter-text)!important;
  padding:0 13px!important;
  font:inherit;
  line-height:1.2;
  outline:none!important;
  box-shadow:var(--filter-shadow)!important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease;
}
.toolbar input:hover,
.toolbar select:hover,
.sales-toolbar input:hover,
.sales-toolbar select:hover,
.finance-toolbar input:hover,
.finance-toolbar select:hover,
.crm-toolbar input:hover,
.crm-toolbar select:hover,
.logistics-toolbar input:hover,
.logistics-toolbar select:hover,
.aftersales-toolbar input:hover,
.aftersales-toolbar select:hover,
.service-toolbar input:hover,
.service-toolbar select:hover,
.improvement-toolbar input:hover,
.improvement-toolbar select:hover,
.attention-toolbar input:hover,
.attention-toolbar select:hover,
.dre-entry-toolbar input:hover,
.dre-entry-toolbar select:hover,
.dre-filter-toolbar input:hover,
.dre-filter-toolbar select:hover,
.dre-period-inline input:hover,
.dre-period-inline select:hover,
.dre-filter-control>select:hover,
.period-mode-filter input:hover,
.period-mode-filter select:hover,
.finance-date-filter input:hover,
.finance-date-filter select:hover{
  border-color:var(--filter-border-hover)!important;
  background:#fff!important;
}
.toolbar input:focus,
.toolbar select:focus,
.sales-toolbar input:focus,
.sales-toolbar select:focus,
.finance-toolbar input:focus,
.finance-toolbar select:focus,
.crm-toolbar input:focus,
.crm-toolbar select:focus,
.logistics-toolbar input:focus,
.logistics-toolbar select:focus,
.aftersales-toolbar input:focus,
.aftersales-toolbar select:focus,
.service-toolbar input:focus,
.service-toolbar select:focus,
.improvement-toolbar input:focus,
.improvement-toolbar select:focus,
.attention-toolbar input:focus,
.attention-toolbar select:focus,
.dre-entry-toolbar input:focus,
.dre-entry-toolbar select:focus,
.dre-filter-toolbar input:focus,
.dre-filter-toolbar select:focus,
.dre-period-inline input:focus,
.dre-period-inline select:focus,
.dre-filter-control>select:focus,
.period-mode-filter input:focus,
.period-mode-filter select:focus,
.finance-date-filter input:focus,
.finance-date-filter select:focus{
  border-color:var(--filter-focus)!important;
  box-shadow:0 0 0 3px rgba(55,201,43,.11),0 3px 10px rgba(20,55,28,.045)!important;
}

/* Caixas de busca compostas */
.search-wide,
.client-search-control,
.global-search{
  border-radius:var(--filter-radius)!important;
  border-color:var(--filter-border)!important;
  background:var(--filter-bg)!important;
  box-shadow:var(--filter-shadow)!important;
}
.search-wide:focus-within,
.client-search-control:focus-within,
.global-search:focus-within{
  border-color:var(--filter-focus)!important;
  box-shadow:0 0 0 3px rgba(55,201,43,.10)!important;
}

/* Botões usados dentro de áreas de filtro */
.toolbar .btn,
.sales-toolbar .btn,
.finance-toolbar .btn,
.crm-toolbar .btn,
.logistics-toolbar .btn,
.aftersales-toolbar .btn,
.service-toolbar .btn,
.improvement-toolbar .btn,
.attention-toolbar .btn,
.dre-entry-toolbar .btn,
.dre-filter-actions .btn,
.dre-filter-actions-compact .btn,
.filter-action-btn{
  min-height:42px!important;
  border-radius:12px!important;
  border:1px solid var(--filter-border)!important;
  background:#fff!important;
  color:#26332b!important;
  padding:0 16px!important;
  box-shadow:0 2px 8px rgba(19,45,27,.035)!important;
  transition:.16s ease!important;
}
.toolbar .btn:hover,
.sales-toolbar .btn:hover,
.finance-toolbar .btn:hover,
.crm-toolbar .btn:hover,
.logistics-toolbar .btn:hover,
.aftersales-toolbar .btn:hover,
.service-toolbar .btn:hover,
.improvement-toolbar .btn:hover,
.attention-toolbar .btn:hover,
.dre-entry-toolbar .btn:hover,
.dre-filter-actions .btn:hover,
.dre-filter-actions-compact .btn:hover,
.filter-action-btn:hover{
  border-color:#b8c9bc!important;
  background:#f7faf8!important;
  transform:translateY(-1px);
  box-shadow:0 5px 14px rgba(19,45,27,.07)!important;
}

/* Painéis de filtro ficam mais leves e menos “formulário antigo” */
.crm-toolbar-panel,
.logistics-filter-panel,
.aftersales-filter-panel,
.improvement-filter-panel,
.attention-filter-panel,
.dre-filter-panel{
  border:1px solid #e2e9e4!important;
  border-radius:15px!important;
  background:linear-gradient(180deg,#fff,#fcfdfc)!important;
  box-shadow:0 3px 14px rgba(18,43,25,.035)!important;
}

/* DRE: preserva o layout compacto, mas com acabamento moderno */
.dre-filter-panel-compact{padding:13px 15px 11px!important}
.dre-filter-toolbar{gap:13px!important}
.dre-filter-control>span,
.month-filter-label>span{
  color:#5e6c63!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.015em;
}
.dre-period-inline{grid-template-columns:86px minmax(165px,1fr)!important;gap:8px!important}
.dre-filter-competence{width:340px!important}
.dre-filter-view{width:225px!important}
.dre-filter-compare{width:255px!important}
.dre-filter-footnote{
  margin-top:7px!important;
  color:#7d8981!important;
  font-size:9px!important;
}

/* Selects ficam visualmente consistentes em todos os filtros */
.toolbar select,
.sales-toolbar select,
.finance-toolbar select,
.crm-toolbar select,
.logistics-toolbar select,
.aftersales-toolbar select,
.service-toolbar select,
.improvement-toolbar select,
.attention-toolbar select,
.dre-entry-toolbar select,
.dre-filter-toolbar select,
.dre-period-inline select,
.period-mode-filter select,
.finance-date-filter select{
  cursor:pointer;
}

/* Datas: espaço adequado para o ícone nativo sem parecer apertado */
.toolbar input[type="date"],
.toolbar input[type="month"],
.sales-toolbar input[type="date"],
.sales-toolbar input[type="month"],
.finance-toolbar input[type="date"],
.finance-toolbar input[type="month"],
.dre-period-inline input[type="date"],
.dre-period-inline input[type="month"],
.period-mode-filter input[type="date"],
.period-mode-filter input[type="month"],
.finance-date-filter input[type="date"],
.finance-date-filter input[type="month"]{
  padding-right:10px!important;
}

/* Responsividade sem voltar ao aspecto quadrado */
@media(max-width:900px){
  .dre-filter-competence,.dre-filter-view,.dre-filter-compare{width:100%!important}
  .dre-filter-toolbar{display:grid!important;grid-template-columns:1fr!important}
  .dre-filter-actions-compact{margin-left:0!important;justify-content:flex-start!important}
}

/* GO LIVE 09.6 — padronização estrutural das pesquisas */
.urban-search-field,
.search-wide,
.global-search{
  position:relative;
  display:flex!important;
  align-items:center!important;
  gap:9px!important;
  min-height:44px!important;
  height:44px!important;
  padding:0 13px!important;
  border:1px solid #dce5df!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(19,45,27,.035)!important;
  color:#7d8a82!important;
  overflow:hidden;
}
.urban-search-field:focus-within,
.search-wide:focus-within,
.global-search:focus-within{
  border-color:#38c92d!important;
  box-shadow:0 0 0 3px rgba(56,201,45,.10),0 3px 10px rgba(19,45,27,.04)!important;
}
.urban-search-field input,
.search-wide input,
.global-search input{
  flex:1 1 auto!important;
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:0!important;
  padding:0!important;
  font:inherit;
  color:#26332b!important;
}
.urban-search-field input:focus,
.search-wide input:focus,
.global-search input:focus{
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
}
.urban-search-field::before,
.search-wide::before{
  content:"⌕";
  flex:0 0 auto;
  font-size:15px;
  line-height:1;
  color:#87928b;
}
.search-wide{color:transparent!important}
.search-wide>input{color:#26332b!important}

/* Standalone search inputs receive the same single-layer visual treatment. */
.urban-search-input{
  min-height:44px!important;
  height:44px!important;
  border:1px solid #dce5df!important;
  border-radius:13px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(19,45,27,.035)!important;
  padding:0 14px 0 38px!important;
  color:#26332b!important;
  outline:0!important;
  transition:.16s ease!important;
  background-image:
    radial-gradient(circle at 17px 22px, transparent 5px, transparent 5px),
    linear-gradient(#87928b,#87928b);
  background-repeat:no-repeat;
  background-size:0 0,0 0;
}
.urban-search-input:focus{
  border-color:#38c92d!important;
  box-shadow:0 0 0 3px rgba(56,201,45,.10),0 3px 10px rgba(19,45,27,.04)!important;
}

/* Use a real integrated magnifier for standalone searches without adding a second box. */
.toolbar>.urban-search-input,
.sales-toolbar>.urban-search-input,
.crm-toolbar>.urban-search-input,
.logistics-toolbar>.urban-search-input,
.aftersales-toolbar>.urban-search-input,
.service-toolbar>.urban-search-input,
.improvement-toolbar>.urban-search-input,
.attention-toolbar>.urban-search-input,
.dre-entry-toolbar>.urban-search-input{
  padding-left:40px!important;
  background:
    linear-gradient(45deg, transparent 46%, #87928b 47%, #87928b 54%, transparent 55%) 19px 25px/7px 7px no-repeat,
    radial-gradient(circle, transparent 47%, #87928b 49%, #87928b 58%, transparent 60%) 14px 17px/12px 12px no-repeat,
    #fff!important;
}

/* Prevent the old "box inside a box" look in wrapped searches. */
.toolbar .search-wide input,
.finance-toolbar .search-wide input,
.attention-toolbar .search-wide input,
.improvement-toolbar .search-wide input{
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
}

/* Search sizing in toolbars */
.toolbar .urban-search-input,
.sales-toolbar .urban-search-input,
.crm-toolbar .urban-search-input,
.logistics-toolbar .urban-search-input,
.aftersales-toolbar .urban-search-input,
.service-toolbar .urban-search-input,
.improvement-toolbar .urban-search-input,
.attention-toolbar .urban-search-input,
.dre-entry-toolbar .urban-search-input{
  flex:1 1 320px!important;
  min-width:220px!important;
}

/* Search controls never inherit square styles from native/general input rules. */
.urban-search-input::-webkit-search-cancel-button{cursor:pointer}

/* GO LIVE 09.7 — Design System único de pesquisa, filtros e campos */
:root{
  --uv-control-h:44px;
  --uv-control-radius:12px;
  --uv-control-border:#d9e3dc;
  --uv-control-border-hover:#b9cbbf;
  --uv-control-focus:#35c82b;
  --uv-control-bg:#fff;
  --uv-control-text:#27342c;
  --uv-control-muted:#7b8880;
  --uv-control-shadow:0 2px 8px rgba(18,45,27,.035);
}

/* ÚNICO componente de pesquisa */
.uv-search{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:var(--uv-control-h)!important;
  height:var(--uv-control-h)!important;
  width:100%;
  min-width:0;
  padding:0 13px 0 40px!important;
  border:1px solid var(--uv-control-border)!important;
  border-radius:var(--uv-control-radius)!important;
  background:var(--uv-control-bg)!important;
  box-shadow:var(--uv-control-shadow)!important;
  overflow:hidden;
  box-sizing:border-box!important;
  color:var(--uv-control-text)!important;
}
.uv-search::before{
  content:"";
  position:absolute;
  left:15px;
  top:50%;
  width:12px;
  height:12px;
  border:1.6px solid #7d8a82;
  border-radius:50%;
  transform:translateY(-58%);
  pointer-events:none;
  box-sizing:border-box;
}
.uv-search::after{
  content:"";
  position:absolute;
  left:26px;
  top:25px;
  width:6px;
  height:1.6px;
  background:#7d8a82;
  border-radius:2px;
  transform:rotate(45deg);
  transform-origin:left center;
  pointer-events:none;
}
.uv-search:hover{
  border-color:var(--uv-control-border-hover)!important;
}
.uv-search:focus-within{
  border-color:var(--uv-control-focus)!important;
  box-shadow:0 0 0 3px rgba(53,200,43,.10),0 3px 10px rgba(18,45,27,.045)!important;
}
.uv-search > input,
.uv-search-input{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:var(--uv-control-text)!important;
}
.uv-search > input:focus,
.uv-search-input:focus{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}
.uv-search > span{display:none!important}

/* Neutraliza implementações antigas para não haver duas lupas / duas molduras */
.global-search::before,
.search-wide::before,
.urban-search-field::before{content:none!important}
.global-search::after,
.search-wide::after,
.urban-search-field::after{content:none!important}
.urban-search-input{
  background-image:none!important;
  padding-left:0!important;
  border:0!important;
  box-shadow:none!important;
}

/* TODOS os selects e campos de data/mês no sistema seguem o mesmo acabamento */
.page select,
.settings-page select,
.modal select,
.uv-control{
  min-height:var(--uv-control-h)!important;
  height:var(--uv-control-h)!important;
  border:1px solid var(--uv-control-border)!important;
  border-radius:var(--uv-control-radius)!important;
  background-color:#fff!important;
  color:var(--uv-control-text)!important;
  padding:0 38px 0 13px!important;
  box-shadow:var(--uv-control-shadow)!important;
  outline:0!important;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease!important;
}
.page select:hover,
.settings-page select:hover,
.modal select:hover,
.uv-control:hover{
  border-color:var(--uv-control-border-hover)!important;
}
.page select:focus,
.settings-page select:focus,
.modal select:focus,
.uv-control:focus{
  border-color:var(--uv-control-focus)!important;
  box-shadow:0 0 0 3px rgba(53,200,43,.10),0 3px 10px rgba(18,45,27,.04)!important;
}

/* Inputs gerais importantes também deixam de parecer controles antigos/quadrados */
.page input[type="date"],
.page input[type="month"],
.page input[type="text"]:not(.uv-search-input),
.page input[type="email"],
.page input[type="tel"],
.page input[type="number"],
.settings-page input[type="text"]:not(.uv-search-input),
.settings-page input[type="email"],
.settings-page input[type="tel"],
.settings-page input[type="number"]{
  border-radius:var(--uv-control-radius)!important;
  border-color:var(--uv-control-border)!important;
}

/* Textareas, inclusive rodapé de documentos */
.page textarea,
.settings-page textarea,
.uv-textarea{
  border:1px solid var(--uv-control-border)!important;
  border-radius:12px!important;
  background:#fff!important;
  padding:11px 13px!important;
  box-shadow:var(--uv-control-shadow)!important;
  outline:0!important;
  line-height:1.45;
}
.page textarea:focus,
.settings-page textarea:focus,
.uv-textarea:focus{
  border-color:var(--uv-control-focus)!important;
  box-shadow:0 0 0 3px rgba(53,200,43,.10)!important;
}

/* Barras de filtro: mesma altura e alinhamento entre todos os módulos */
.toolbar,
.sales-toolbar,
.finance-toolbar,
.crm-toolbar,
.logistics-toolbar,
.aftersales-toolbar,
.service-toolbar,
.improvement-toolbar,
.attention-toolbar,
.dre-entry-toolbar{
  align-items:center!important;
  gap:10px!important;
}
.toolbar .uv-search,
.sales-toolbar .uv-search,
.finance-toolbar .uv-search,
.crm-toolbar .uv-search,
.logistics-toolbar .uv-search,
.aftersales-toolbar .uv-search,
.service-toolbar .uv-search,
.improvement-toolbar .uv-search,
.attention-toolbar .uv-search,
.dre-entry-toolbar .uv-search{
  flex:1 1 360px!important;
}

/* Botões secundários dentro de barras seguem o mesmo design */
.toolbar .btn,
.sales-toolbar .btn,
.finance-toolbar .btn,
.crm-toolbar .btn,
.logistics-toolbar .btn,
.aftersales-toolbar .btn,
.service-toolbar .btn,
.improvement-toolbar .btn,
.attention-toolbar .btn,
.dre-entry-toolbar .btn{
  min-height:var(--uv-control-h)!important;
  border-radius:var(--uv-control-radius)!important;
}

/* Administração: filtros gerados dinamicamente recebem o mesmo padrão */
.settings-content .toolbar,
.settings-content [class*="filter"],
.settings-content [class*="toolbar"]{
  gap:10px!important;
  align-items:center!important;
}
.settings-content .uv-search{flex:1 1 420px!important}
.settings-content select{min-width:180px}

/* Evita que selects virem faixas gigantes em Modelos de documentos */
.settings-content select[id*="Module"],
.settings-content select[id*="Status"],
.settings-content select[id*="Filter"]{
  width:auto!important;
  max-width:260px!important;
}

/* Campo global do topo também é exatamente o mesmo componente */
.topbar .uv-search,
header .uv-search{
  max-width:520px;
}

/* Responsividade consistente */
@media(max-width:900px){
  .toolbar,
  .sales-toolbar,
  .finance-toolbar,
  .crm-toolbar,
  .logistics-toolbar,
  .aftersales-toolbar,
  .service-toolbar,
  .improvement-toolbar,
  .attention-toolbar,
  .dre-entry-toolbar{
    flex-wrap:wrap!important;
  }
  .toolbar .uv-search,
  .sales-toolbar .uv-search,
  .finance-toolbar .uv-search,
  .crm-toolbar .uv-search,
  .logistics-toolbar .uv-search,
  .aftersales-toolbar .uv-search,
  .service-toolbar .uv-search,
  .improvement-toolbar .uv-search,
  .attention-toolbar .uv-search,
  .dre-entry-toolbar .uv-search{
    flex-basis:100%!important;
  }
}

/* GO LIVE 09.7.1 — correção final de consistência das pesquisas */
.uv-search{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:44px!important;
  height:44px!important;
  padding:0 14px 0 42px!important;
  border:1px solid #d9e3dc!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 2px 8px rgba(18,45,27,.035)!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

/* Uma única lupa para TODOS os campos de pesquisa, inclusive wrappers antigos */
.uv-search::before,
.global-search.uv-search::before,
.search-wide.uv-search::before,
.single-search.uv-search::before,
.delivery-search-box.uv-search::before,
.client-search-control.uv-search::before,
.urban-search-field.uv-search::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:15px!important;
  top:50%!important;
  width:12px!important;
  height:12px!important;
  border:1.6px solid #77857c!important;
  border-radius:50%!important;
  background:transparent!important;
  transform:translateY(-59%)!important;
  pointer-events:none!important;
  box-sizing:border-box!important;
  opacity:1!important;
}
.uv-search::after,
.global-search.uv-search::after,
.search-wide.uv-search::after,
.single-search.uv-search::after,
.delivery-search-box.uv-search::after,
.client-search-control.uv-search::after,
.urban-search-field.uv-search::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  left:25px!important;
  top:25px!important;
  width:7px!important;
  height:1.6px!important;
  border:0!important;
  border-radius:2px!important;
  background:#77857c!important;
  transform:rotate(45deg)!important;
  transform-origin:left center!important;
  pointer-events:none!important;
  opacity:1!important;
}
.uv-search:hover::before,
.uv-search:focus-within::before{border-color:#35a92d!important}
.uv-search:hover::after,
.uv-search:focus-within::after{background:#35a92d!important}

.uv-search > input,
.uv-search-input{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  min-height:42px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#27342c!important;
}

/* Evita que qualquer ícone legado gere duas lupas */
.uv-search > span,
.uv-search > i.search-icon,
.uv-search > .search-icon{display:none!important}

/* Campos de pesquisa sem wrapper, apenas durante o instante antes do normalizador rodar */
input[id*="Search" i]:not(.uv-search-input),
input[type="search"]:not(.uv-search-input){
  border-radius:12px!important;
}

/* Vendedores e comissões */
.seller-commission-card{
  padding:0!important;
  overflow:hidden!important;
  border:1px solid #e0e8e2!important;
  border-radius:14px!important;
  background:#fff!important;
}
.seller-commission-head{
  display:grid!important;
  gap:4px!important;
  padding:18px 20px 14px!important;
  margin:0!important;
  border-bottom:1px solid #e7ece8!important;
  background:#fff!important;
}
.seller-commission-head b{
  display:block!important;
  font-size:15px!important;
  line-height:1.25!important;
  color:#17251c!important;
}
.seller-commission-head small{
  display:block!important;
  font-size:11px!important;
  line-height:1.4!important;
  color:#748079!important;
}
.seller-commission-table{
  margin:0!important;
  padding:0 12px 10px!important;
}
.seller-commission-table table{
  width:100%!important;
}

/* Administração: controles nunca ultrapassam seu container */
.settings-content,
.settings-table-card,
.settings-list-toolbar{
  min-width:0!important;
}
.settings-list-toolbar{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
}
.settings-list-toolbar .uv-search{
  flex:1 1 420px!important;
  min-width:260px!important;
}
.settings-list-toolbar select{
  flex:0 1 230px!important;
  width:auto!important;
  min-width:180px!important;
  max-width:260px!important;
}

/* Em telas menores mantém padrão sem quebrar textos */
@media(max-width:800px){
  .settings-list-toolbar .uv-search{
    flex-basis:100%!important;
    min-width:100%!important;
  }
  .settings-list-toolbar select{
    flex:1 1 180px!important;
    max-width:none!important;
  }
}

/* GO LIVE 09.9 — Ficha 360° do Cliente */
.client360-modal{width:min(1180px,96vw)!important}
.client360-hero{align-items:center}
.client360-hero-actions{margin-left:auto;display:flex;gap:8px;flex-wrap:wrap}
.client360-tabs{display:flex;gap:6px;overflow:auto;padding:4px 0 12px;border-bottom:1px solid #e7ede9;margin-bottom:14px}
.client360-tabs button{border:0;background:transparent;padding:9px 12px;border-radius:10px;font-weight:700;color:#68766e;white-space:nowrap;cursor:pointer}
.client360-tabs button span{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#eef3ef;font-size:10px;margin-left:4px}
.client360-tabs button.active{background:#eef9ee;color:#218029}
.client360-tabs button.active span{background:#dff3df;color:#218029}
.client360-pane{display:none}.client360-pane.active{display:block}
.client360-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.client360-kpis article{display:grid;gap:4px;padding:14px;border:1px solid #e1e8e3;border-radius:12px;background:#fff}
.client360-kpis span,.client360-summary-strip span{font-size:10px;color:#77847b}
.client360-kpis b{font-size:18px}.client360-kpis small{font-size:10px;color:#6f7b73}
.client360-alert-card{background:#fffdfa}
.client360-alert-list{display:grid;gap:8px;padding:4px 0}
.client360-alert-list button{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid #efd9ad;background:#fff8e8;border-radius:9px;padding:10px 11px;text-align:left;cursor:pointer}
.client360-alert-list button b{font-size:11px}.client360-alert-list button span{font-size:10px;color:#8b651c;white-space:nowrap}
.client360-ok{display:grid;gap:3px;padding:11px;background:#eef9ef;border-radius:9px}.client360-ok b{color:#2d7a36}.client360-ok span{font-size:10px;color:#68766e}
.client360-table{overflow:auto;border:1px solid #e3e9e5;border-radius:12px;background:#fff}
.client360-table table{width:100%;border-collapse:collapse;min-width:680px}
.client360-table th{font-size:9px;text-transform:uppercase;letter-spacing:.03em;color:#6f7d74;background:#f8faf8;text-align:left;padding:10px;border-bottom:1px solid #e6ece7}
.client360-table td{padding:11px 10px;border-bottom:1px solid #edf1ee;font-size:11px}.client360-table tr:last-child td{border-bottom:0}
.client360-summary-strip{display:flex;align-items:center;gap:20px;padding:11px 13px;border:1px solid #e1e8e3;border-radius:11px;background:#f8fbf8;margin-bottom:10px;flex-wrap:wrap}
.client360-summary-strip>div{display:grid;gap:3px}.client360-summary-strip b{font-size:14px}.client360-summary-strip .btn{margin-left:auto}
.client360-empty{display:grid;place-items:center;text-align:center;gap:5px;min-height:180px;border:1px dashed #d7e2da;border-radius:12px;color:#718078}.client360-empty b{font-size:14px}.client360-empty span{font-size:11px}
.client360-post-list{display:grid;gap:9px}.client360-post-list article{display:grid;grid-template-columns:1fr auto;gap:6px 12px;padding:12px 14px;border:1px solid #e1e8e3;border-radius:11px;background:#fff}.client360-post-list article>div{display:grid;gap:2px}.client360-post-list span{font-size:9px;text-transform:uppercase;color:#78847c}.client360-post-list b{font-size:12px}.client360-post-list small{font-size:10px;color:#748078}.client360-post-list p{grid-column:1/-1;margin:0;font-size:10px;color:#5f6d64}
.client360-timeline{position:relative;display:grid;gap:0;padding-left:12px}.client360-timeline:before{content:"";position:absolute;left:17px;top:8px;bottom:8px;width:2px;background:#e1e8e3}.client360-timeline article{position:relative;display:grid;grid-template-columns:22px 1fr;gap:10px;padding:8px 0}.client360-timeline i{z-index:1;width:12px;height:12px;margin:5px 0 0 0;border-radius:50%;background:#35c82b;border:3px solid #fff;box-shadow:0 0 0 1px #cfe1d1}.client360-timeline article>div{display:grid;gap:2px}.client360-timeline span{font-size:9px;color:#7a877f}.client360-timeline b{font-size:11px}.client360-timeline p{margin:0;font-size:10px;color:#627067}
@media(max-width:900px){.client360-kpis{grid-template-columns:1fr 1fr}.client360-hero-actions{width:100%;margin-left:0}.client360-summary-strip .btn{margin-left:0}}
@media(max-width:560px){.client360-kpis{grid-template-columns:1fr}}

/* GO LIVE 09.9.1 — refinamento visual Ficha 360 + deep links */
.client360-modal .modal-body{background:#f8faf8}
.client360{display:grid;gap:14px}
.client360-hero{
  border:1px solid #dbe8dc!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#f2fbf2 0%,#fbfdfb 100%)!important;
  padding:17px 18px!important;
  box-shadow:0 5px 18px rgba(31,89,38,.045)!important;
}
.client360-hero .entity-avatar{
  width:56px!important;height:56px!important;border-radius:15px!important;
  background:linear-gradient(135deg,#dff7dd,#effbee)!important;
  color:#168328!important;font-size:17px!important;font-weight:800!important;
}
.client360-hero-copy>span{font-size:9px!important;letter-spacing:.08em;text-transform:uppercase;color:#62806a!important;font-weight:800}
.client360-hero-copy h3{font-size:19px!important;margin:3px 0!important}
.client360-hero-copy p{font-size:11px!important;margin:0!important;color:#637168!important}

.client360-tabs{
  position:sticky;top:0;z-index:3;
  gap:5px!important;
  padding:7px!important;
  margin:0!important;
  border:1px solid #e0e8e2!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 4px 14px rgba(18,45,27,.04)!important;
}
.client360-tabs button{
  display:flex!important;align-items:center!important;gap:6px!important;
  padding:9px 11px!important;border-radius:10px!important;
  font-size:11px!important;transition:.15s ease!important
}
.client360-tabs button i{
  width:21px;height:21px;display:grid;place-items:center;border-radius:7px;
  background:#f0f4f1;color:#64736a;font-style:normal;font-size:10px;font-weight:800
}
.client360-tabs button:hover{background:#f5f9f5!important;color:#286d30!important}
.client360-tabs button.active{
  background:linear-gradient(135deg,#e8f8e7,#f2fbf1)!important;
  color:#157725!important;
  box-shadow:inset 0 0 0 1px #d9efd8!important
}
.client360-tabs button.active i{background:#d8f2d6;color:#157725}
.client360-tabs button span{margin-left:1px!important;background:#edf2ee!important}
.client360-tabs button.active span{background:#d8f2d6!important}

.client360-kpis{gap:11px!important;margin:0!important}
.client360-kpis article{
  min-height:82px;padding:14px 15px!important;border-radius:13px!important;
  background:linear-gradient(180deg,#fff,#fbfdfb)!important;
  box-shadow:0 3px 12px rgba(19,45,27,.03)!important
}
.client360-kpis article:nth-child(2) b{color:#a45511}
.client360-kpis article:nth-child(3) b{color:#237c2d}

.client360 .entity-section{
  border-radius:14px!important;
  overflow:hidden!important;
  box-shadow:0 3px 12px rgba(19,45,27,.025)!important;
}
.client360 .entity-section>header{padding:12px 14px!important;background:#fbfdfb!important}
.client360 .entity-section>header>span{width:30px!important;height:30px!important;border-radius:9px!important}
.client360 .entity-info-grid{padding:6px 14px 10px!important}

.client360-alert-card{border-color:#eadfca!important}
.client360-alert-list{padding:8px 12px 12px!important}
.client360-alert-list .client360-attention-item{
  display:grid!important;
  grid-template-columns:34px minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  padding:10px 11px!important;
  border-radius:11px!important;
  border:1px solid #eadfca!important;
  background:#fffaf0!important;
  box-shadow:none!important
}
.client360-attention-item>i{
  width:32px;height:32px;display:grid;place-items:center;border-radius:9px;
  background:#fff1d3;color:#9b6814;font-style:normal;font-weight:900
}
.client360-attention-item>div{display:grid;gap:2px;min-width:0}
.client360-attention-item>div b{font-size:11px!important;color:#342e23}
.client360-attention-item>div small{font-size:9px;color:#857765;line-height:1.35}
.client360-attention-item>span{font-size:9px!important;font-weight:800;color:#9a6714!important}
.client360-attention-item.danger{background:#fff6f4!important;border-color:#efd6d0!important}
.client360-attention-item.danger>i{background:#fde6e1;color:#b33b2f}
.client360-attention-item.danger>span{color:#a13d32!important}

.client360-table{border-radius:14px!important;box-shadow:0 3px 12px rgba(19,45,27,.025)!important}
.client360-summary-strip{border-radius:13px!important;background:linear-gradient(180deg,#fbfdfb,#f6faf7)!important}
.client360-post-list article{border-radius:13px!important}
.client360-timeline{padding:8px 8px 8px 14px!important;background:#fff;border:1px solid #e3e9e5;border-radius:14px}

@media(max-width:760px){
 .client360-tabs{position:relative}
 .client360-alert-list .client360-attention-item{grid-template-columns:32px 1fr!important}
 .client360-attention-item>span{grid-column:2}
}

/* GO LIVE 09.9.2 — Ficha 360: navegação executiva */
.client360-tabs-pro{
  display:grid!important;
  grid-template-columns:repeat(7,minmax(118px,1fr))!important;
  gap:7px!important;
  padding:8px!important;
  overflow:auto!important;
  border:1px solid #dde6df!important;
  background:#f7faf7!important;
  border-radius:15px!important;
}
.client360-tabs-pro button{
  position:relative!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:3px!important;
  align-content:center!important;
  min-height:56px!important;
  padding:8px 10px!important;
  text-align:left!important;
  border:1px solid transparent!important;
  border-radius:11px!important;
  background:transparent!important;
  color:#65736a!important;
}
.client360-tabs-pro button strong{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  font-size:11px!important;
  line-height:1.15!important;
  color:inherit!important;
}
.client360-tabs-pro button small{
  display:block!important;
  font-size:8.5px!important;
  font-weight:500!important;
  color:#8a958e!important;
  line-height:1.15!important;
}
.client360-tabs-pro button strong span{
  display:inline-grid!important;
  place-items:center!important;
  min-width:21px!important;
  height:21px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  background:#e9efeb!important;
  color:#5e6d63!important;
  font-size:9px!important;
  font-weight:800!important;
}
.client360-tabs-pro button:hover{
  background:#fff!important;
  border-color:#dfe7e1!important;
  color:#275e2e!important;
  transform:translateY(-1px);
}
.client360-tabs-pro button.active{
  background:#fff!important;
  border-color:#bfe3c1!important;
  color:#137624!important;
  box-shadow:0 4px 12px rgba(26,96,36,.08)!important;
}
.client360-tabs-pro button.active:after{
  content:""!important;
  position:absolute!important;
  left:12px!important;right:12px!important;bottom:-1px!important;
  height:3px!important;
  border-radius:3px 3px 0 0!important;
  background:#2bc430!important;
}
.client360-tabs-pro button.active strong span{
  background:#dff4df!important;
  color:#137624!important;
}
.client360-tabs-pro button.active small{color:#66816a!important}

/* Mais separação entre resumo e dados */
.client360-pane.active{animation:client360Fade .16s ease}
@keyframes client360Fade{from{opacity:.55;transform:translateY(2px)}to{opacity:1;transform:none}}
.client360-kpis article{
  border-top:3px solid #edf2ee!important;
}
.client360-kpis article:nth-child(2){border-top-color:#e4b66c!important}
.client360-kpis article:nth-child(3){border-top-color:#73ca7a!important}
.client360-kpis article:nth-child(4){border-top-color:#8fb8e8!important}

/* Ponto de atenção financeiro ganha prioridade visual */
.client360-attention-item.danger{
  border-left:4px solid #dc4a3c!important;
}
.client360-attention-item.warning{
  border-left:4px solid #e5a72f!important;
}

@media(max-width:1100px){
  .client360-tabs-pro{grid-template-columns:repeat(4,minmax(150px,1fr))!important}
}
@media(max-width:700px){
  .client360-tabs-pro{display:flex!important}
  .client360-tabs-pro button{min-width:145px!important}
}

/* GO LIVE 10.0 — Dashboard Operacional */
.dashboard-operational{display:grid;gap:16px}
.dashboard-head{align-items:center}
.dashboard-head .eyebrow{font-size:9px;font-weight:800;letter-spacing:.12em;color:#1b9a2b}
.dashboard-head-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.dashboard-date-chip{display:grid;gap:2px;padding:7px 12px;border:1px solid #dce6df;border-radius:11px;background:#fff}
.dashboard-date-chip span{font-size:8px;color:#738078}.dashboard-date-chip b{font-size:11px}
.dashboard-priority-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.dashboard-priority-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px;text-align:left;padding:15px;border:1px solid #e1e8e3;border-radius:15px;background:#fff;cursor:pointer;box-shadow:0 3px 13px rgba(18,45,27,.035);transition:.16s}
.dashboard-priority-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(18,45,27,.07)}
.dashboard-priority-card>i{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#eef8ee;color:#258f30;font-style:normal;font-size:17px;font-weight:800}
.dashboard-priority-card>div{display:grid;gap:2px}.dashboard-priority-card span{font-size:9px;color:#748078}.dashboard-priority-card strong{font-size:18px}.dashboard-priority-card small{font-size:9px;color:#748078}.dashboard-priority-card>b{font-size:16px;color:#8c9890}
.dashboard-priority-card.danger{border-left:4px solid #df4b3e}.dashboard-priority-card.danger>i{background:#fee9e5;color:#c23c30}.dashboard-priority-card.danger strong{color:#be372e}
.dashboard-priority-card.warning{border-left:4px solid #e6a52c}.dashboard-priority-card.warning>i{background:#fff1d5;color:#a06b13}
.dashboard-priority-card.today{border-left:4px solid #36bd40}.dashboard-priority-card.delivery{border-left:4px solid #4c91dc}.dashboard-priority-card.delivery>i{background:#eaf3fd;color:#3478bd}
.dashboard-quick-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.dashboard-quick-actions button{display:flex;align-items:center;gap:9px;padding:10px 12px;border:1px solid #dfe7e1;border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.dashboard-quick-actions button:hover{border-color:#bcd8bf;background:#fbfefb}.dashboard-quick-actions i{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#eef8ee;color:#278b31;font-style:normal;font-weight:800}.dashboard-quick-actions div{display:grid;gap:2px}.dashboard-quick-actions b{font-size:10px}.dashboard-quick-actions span{font-size:8px;color:#7a867e}
.dashboard-work-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:12px}.dashboard-work-grid.secondary{grid-template-columns:1fr 1fr}
.dashboard-work-panel{padding:0!important;overflow:hidden}
.dashboard-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid #e7ece8}.dashboard-section-head>div{display:grid;gap:2px}.dashboard-section-head span{font-size:8px;font-weight:800;letter-spacing:.1em;color:#4ca558}.dashboard-section-head h3{margin:0;font-size:15px}.dashboard-section-head p{margin:0;font-size:9px;color:#758179}
.dashboard-action-list{display:grid}.dashboard-action-item{display:grid;grid-template-columns:36px 1fr auto;gap:10px;align-items:center;padding:12px 15px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.dashboard-action-item:last-child{border-bottom:0}.dashboard-action-item:hover{background:#fafcfa}.dashboard-action-item>i{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#f1f5f2;font-style:normal;font-weight:800}.dashboard-action-item>div{display:grid;gap:2px}.dashboard-action-item b{font-size:10px}.dashboard-action-item span{font-size:8.5px;color:#76827a}.dashboard-action-item>strong{font-size:9px;color:#327a3a}.dashboard-action-item.danger>i{background:#feeae6;color:#bc3c31}.dashboard-action-item.warning>i{background:#fff1d7;color:#a56e14}
.dashboard-next-days{display:grid;padding:7px}.dashboard-day{display:grid;grid-template-columns:74px 1fr;gap:10px;align-items:center;padding:8px 9px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer;border-radius:8px}.dashboard-day:hover{background:#f8fbf8}.dashboard-day.today{background:#eef9ef}.dashboard-day>div:first-child{display:grid;gap:1px}.dashboard-day>div:first-child span{font-size:8px;text-transform:capitalize;color:#718078}.dashboard-day>div:first-child b{font-size:12px}.dashboard-day-values{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px}.dashboard-day-values span{font-size:8.5px;color:#65736a}.dashboard-day-values i{font-style:normal;margin-right:4px;color:#2a9134}.dashboard-day-values strong{font-size:10px}
.dashboard-simple-list{display:grid}.dashboard-simple-list>button{display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:9px;padding:11px 15px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.dashboard-simple-list>button:hover{background:#fafcfa}.dashboard-simple-list>button>div{display:grid;gap:2px}.dashboard-simple-list b{font-size:10px}.dashboard-simple-list span{font-size:8.5px;color:#77837b}.dashboard-simple-list strong{font-size:10px}.dashboard-simple-list i{font-style:normal;color:#74907a}
.dashboard-metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}.dashboard-metric-grid>div{display:grid;gap:3px;padding:17px;border-right:1px solid #edf1ee;border-bottom:1px solid #edf1ee}.dashboard-metric-grid>div:nth-child(even){border-right:0}.dashboard-metric-grid>div:nth-last-child(-n+2){border-bottom:0}.dashboard-metric-grid span{font-size:9px;color:#758179}.dashboard-metric-grid b{font-size:18px}.dashboard-metric-grid small{font-size:8.5px;color:#758179}
.dashboard-empty-ok{display:flex;gap:10px;align-items:center;padding:18px}.dashboard-empty-ok>i{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#eaf8eb;color:#268a30;font-style:normal}.dashboard-empty-ok>div{display:grid;gap:2px}.dashboard-empty-ok b{font-size:10px}.dashboard-empty-ok span{font-size:8.5px;color:#748079}
@media(max-width:1100px){.dashboard-priority-grid{grid-template-columns:1fr 1fr}.dashboard-quick-actions{grid-template-columns:repeat(3,1fr)}}
@media(max-width:800px){.dashboard-work-grid,.dashboard-work-grid.secondary{grid-template-columns:1fr}.dashboard-quick-actions{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.dashboard-priority-grid{grid-template-columns:1fr}.dashboard-quick-actions{grid-template-columns:1fr}.dashboard-head-actions{width:100%}}

/* GO LIVE 10.1 — Dashboard adaptativo por perfil/permissão */
.dashboard-adaptive-page{display:block}.dashboard-adaptive-page #adaptiveDashboardRoot{display:grid;gap:15px}
.adaptive-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.adaptive-head>div:first-child{display:grid;gap:3px}.adaptive-head>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#1d9b2b}.adaptive-head h1{margin:0;font-size:28px}.adaptive-head p{margin:0;color:#728078;font-size:11px}.adaptive-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.adaptive-head-actions em{font-style:normal;font-size:9px;color:#6f7d74;background:#f5f8f5;border:1px solid #e1e8e3;border-radius:10px;padding:8px 10px}
.adaptive-kpis{display:grid;gap:10px}.adaptive-kpis.exec{grid-template-columns:repeat(5,minmax(0,1fr))}
.adaptive-kpi{position:relative;display:grid;gap:4px;text-align:left;padding:14px;border:1px solid #e0e7e2;border-radius:14px;background:#fff;box-shadow:0 3px 13px rgba(18,45,27,.035);cursor:default}.adaptive-kpi[data-dashboard-go]{cursor:pointer}.adaptive-kpi[data-dashboard-go]:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(18,45,27,.07)}.adaptive-kpi span{font-size:9px;color:#748079}.adaptive-kpi b{font-size:19px}.adaptive-kpi small{font-size:8.5px;color:#748079}.adaptive-kpi>i{position:absolute;right:12px;top:12px;font-style:normal;color:#87948c}.adaptive-kpi.positive{border-top:3px solid #43bf4b}.adaptive-kpi.positive b{color:#21802b}.adaptive-kpi.danger{border-top:3px solid #e05245}.adaptive-kpi.danger b{color:#ba382f}.adaptive-kpi.warning{border-top:3px solid #e3a52e}
.adaptive-grid{display:grid;gap:12px}.adaptive-grid.exec-main{grid-template-columns:1.25fr .75fr}.adaptive-panel{padding:0!important;overflow:hidden}.adaptive-panel>header,.sector-block>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid #e7ece8}.adaptive-panel header>div,.sector-block header>div{display:grid;gap:2px}.adaptive-panel header span,.sector-block header span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#36a343}.adaptive-panel h3,.sector-block h3{margin:0;font-size:15px}.adaptive-panel p,.sector-block p{margin:0;font-size:9px;color:#748079}
.adaptive-sales-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #edf1ee}.adaptive-sales-summary>div{display:grid;gap:3px;padding:12px 15px;border-right:1px solid #edf1ee}.adaptive-sales-summary>div:last-child{border-right:0}.adaptive-sales-summary span{font-size:8px;color:#76827a}.adaptive-sales-summary b{font-size:15px}
.adaptive-list{display:grid}.adaptive-list button{display:grid;grid-template-columns:1fr auto 18px;align-items:center;gap:9px;padding:10px 15px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.adaptive-list button:hover{background:#fafcfa}.adaptive-list button>div{display:grid;gap:2px}.adaptive-list b{font-size:10px}.adaptive-list small{font-size:8px;color:#77837b}.adaptive-list strong{font-size:10px}.adaptive-list i{font-style:normal}
.adaptive-bars{display:grid;gap:13px;padding:16px}.adaptive-bars>div{display:grid;gap:5px}.adaptive-bars>div>div{display:flex;justify-content:space-between;gap:8px}.adaptive-bars b{font-size:9.5px}.adaptive-bars span{font-size:9px;color:#6e7b73}.adaptive-bars i{display:block;height:7px;border-radius:999px;background:#edf2ee;overflow:hidden}.adaptive-bars i em{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2bc434,#7bd67f)}
.adaptive-section-title{display:flex;align-items:center;justify-content:space-between}.adaptive-section-title span{font-size:8px;font-weight:900;color:#35a442;letter-spacing:.1em}.adaptive-section-title h3{margin:2px 0 0;font-size:15px}.adaptive-operation-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.sector-permission-strip{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:10px 12px;border:1px solid #e0e8e2;border-radius:12px;background:#f8faf8}.sector-permission-strip>span{font-size:9px;font-weight:800;color:#5d6c63;margin-right:4px}.sector-permission-strip em{font-style:normal;font-size:8.5px;background:#fff;border:1px solid #dde6df;border-radius:999px;padding:5px 8px;color:#5d6c63}
.sector-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sector-block{padding:0!important;overflow:hidden}.sector-metrics{display:grid;grid-template-columns:repeat(3,1fr)}.sector-metrics>div{display:grid;gap:3px;padding:15px;border-right:1px solid #edf1ee}.sector-metrics>div:last-child{border-right:0}.sector-metrics span{font-size:8.5px;color:#718078}.sector-metrics b{font-size:17px}.sector-metrics small{font-size:8px;color:#77837b}.sector-metrics .danger b{color:#bb392f}.sector-metrics .warning b{color:#a46b12}.sector-actions{display:flex;gap:7px;flex-wrap:wrap;padding:10px 14px;border-top:1px solid #edf1ee;background:#fafcfa}.sector-actions button{border:1px solid #dbe5dd;background:#fff;border-radius:9px;padding:7px 10px;font-size:8.5px;font-weight:700;cursor:pointer}.sector-actions button:hover{border-color:#acd6b0;color:#23802c}
.attention-shortcut{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px!important;border-left:4px solid #35be3d!important}.attention-shortcut>div{display:grid;gap:2px}.attention-shortcut span{font-size:8px;font-weight:900;letter-spacing:.1em;color:#36a343}.attention-shortcut h3{margin:0;font-size:14px}.attention-shortcut p{margin:0;font-size:9px;color:#738078}.adaptive-empty,.adaptive-empty-card{padding:20px;color:#748079}.adaptive-empty-card{display:grid;gap:5px}
@media(max-width:1150px){.adaptive-kpis.exec{grid-template-columns:repeat(3,1fr)}.adaptive-operation-grid{grid-template-columns:1fr 1fr}.sector-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:800px){.adaptive-grid.exec-main{grid-template-columns:1fr}.adaptive-kpis.exec{grid-template-columns:1fr 1fr}.adaptive-head{align-items:flex-start;flex-direction:column}.attention-shortcut{align-items:flex-start;flex-direction:column}}
@media(max-width:520px){.adaptive-kpis.exec,.adaptive-operation-grid{grid-template-columns:1fr}.sector-metrics{grid-template-columns:1fr}.sector-metrics>div{border-right:0;border-bottom:1px solid #edf1ee}}

/* GO LIVE 10.2 — privacidade financeira por nível */
.privacy-context{display:inline-flex!important;width:max-content;align-items:center;gap:5px;margin-top:4px;padding:5px 8px;border:1px solid #dfe7e1;border-radius:999px;background:#f8faf8;color:#66736b;font-size:8px!important;font-weight:700}
.finance-privacy-note{display:flex;align-items:flex-start;gap:9px;margin:0 14px 10px;padding:10px 11px;border:1px solid #dfe6e1;border-radius:10px;background:#f8faf8}.finance-privacy-note>i{font-style:normal}.finance-privacy-note>div{display:grid;gap:2px}.finance-privacy-note b{font-size:9px;color:#435149}.finance-privacy-note span{font-size:8px;color:#77837b;line-height:1.35}
.sector-block.finance .sector-metrics{grid-template-columns:repeat(5,1fr)}
body[data-finance-access="operational"] .executive-only,
body[data-finance-access="none"] .executive-only{display:none!important}
@media(max-width:1050px){.sector-block.finance .sector-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:650px){.sector-block.finance .sector-metrics{grid-template-columns:1fr 1fr}}

/* GO LIVE 10.3 — Dashboard orientado ao dia de trabalho */
.workday-head{margin-bottom:12px}.workday-head h1{font-size:25px}.workday-head p{max-width:650px;font-size:10px!important;line-height:1.45!important}
.day-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:12px}.day-summary>div{display:grid;gap:2px;padding:13px 15px;border:1px solid #dfe7e1;border-radius:12px;background:#fff}.day-summary span{font-size:8.5px;color:#6e7b73}.day-summary b{font-size:21px;line-height:1.1}.day-summary small{font-size:8px;color:#7b877f}
.work-section{border:1px solid #dfe7e1;border-radius:13px;background:#fff;overflow:hidden;margin-bottom:12px}.work-section>header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;border-bottom:1px solid #e8ede9}.work-section>header>div{display:grid;gap:2px}.work-section>header span{font-size:7.5px;font-weight:900;letter-spacing:.1em;color:#36a343}.work-section>header h2{font-size:14px;margin:0}.work-section>header p,.work-section>header small{font-size:8.5px;color:#76827a;margin:0}
.priority-list{display:grid}.priority-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:11px;padding:11px 15px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.priority-row:last-child{border-bottom:0}.priority-row:hover{background:#fafcfa}.priority-row>i{display:grid;place-items:center;width:26px;height:26px;border-radius:8px;background:#edf7ee;color:#25872f;font-style:normal;font-size:9px;font-weight:900}.priority-row>div{display:grid;gap:2px}.priority-row b{font-size:10px}.priority-row span{font-size:8.5px;color:#748078}.priority-row>em{font-style:normal;font-size:8.5px;font-weight:800;color:#2a8c33}.priority-row.critical>i{background:#fff0ef;color:#c3382e}.priority-row.critical b{color:#b82f27}.priority-row.today>i{background:#eef7ff;color:#2c74b9}.priority-row.warning>i{background:#fff6e5;color:#a56b10}.all-clear{display:flex;align-items:center;gap:10px;padding:18px}.all-clear>i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#eaf8eb;color:#24842d;font-style:normal;font-weight:900}.all-clear>div{display:grid;gap:2px}.all-clear b{font-size:10px}.all-clear span{font-size:8.5px;color:#758078}
.flow-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.flow-grid button{display:grid;grid-template-columns:9px minmax(0,1fr) auto;align-items:center;gap:8px;padding:13px 14px;border:0;border-right:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.flow-grid button:last-child{border-right:0}.flow-grid button:hover{background:#fafcfa}.flow-grid i{width:8px;height:8px;border-radius:50%;background:#34b83c}.flow-grid i.attention{background:#e6a22a}.flow-grid i.normal{background:#5d9fd5}.flow-grid div{display:grid;gap:2px}.flow-grid b{font-size:9.5px}.flow-grid span{font-size:8px;color:#76827a}.flow-grid em{font-style:normal;color:#748078}
.work-bottom-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.work-bottom-grid .work-section{margin-bottom:0}.work-section.calm{background:#fbfdfb}.ok-list{display:grid;grid-template-columns:1fr 1fr;gap:0}.ok-list>div{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid #edf1ee;font-size:8.5px;color:#536158}.ok-list i{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#eaf8eb;color:#26852f;font-style:normal;font-weight:900}.next-list{display:grid}.next-list button{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:11px 14px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}.next-list button>div,.next-empty{display:grid;gap:2px}.next-list b,.next-empty b{font-size:9px}.next-list span,.next-empty span{font-size:8px;color:#76827a}.next-list em{font-style:normal}.next-empty{padding:15px}
@media(max-width:1100px){.flow-grid{grid-template-columns:1fr 1fr}.flow-grid button:nth-child(2n){border-right:0}.day-summary{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.day-summary,.flow-grid,.work-bottom-grid,.ok-list{grid-template-columns:1fr}.priority-row{grid-template-columns:28px 1fr}.priority-row>em{grid-column:2}.flow-grid button{border-right:0;border-bottom:1px solid #edf1ee}}

/* GO LIVE 10.4 — Dashboard limpo para início do expediente */
.uv-day-dashboard{display:grid;gap:14px;max-width:1420px;margin:0 auto}
.uv-day-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:6px 2px}
.uv-day-head>div:first-child{display:grid;gap:3px}
.uv-day-head>div:first-child>span{font-size:9px;font-weight:900;letter-spacing:.13em;color:#27a935}
.uv-day-head h1{margin:0;font-size:29px;line-height:1.05}
.uv-day-head p{margin:0;font-size:11px;color:#748079}
.uv-day-head>div:last-child{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.uv-day-head>div:last-child>small{font-size:9px;color:#758179}
.uv-day-head>div:last-child>b{font-size:10px;padding:7px 9px;border:1px solid #e0e7e2;border-radius:9px;background:#fff}

.uv-day-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.uv-day-summary article{display:grid;gap:3px;padding:13px 14px;border:1px solid #e0e7e2;border-radius:13px;background:#fff;box-shadow:0 3px 12px rgba(22,46,29,.025)}
.uv-day-summary span{font-size:9px;color:#728078}
.uv-day-summary b{font-size:22px;line-height:1}
.uv-day-summary small{font-size:8.5px;color:#859087}
.uv-day-summary article.hot{border-top:3px solid #e04f43}
.uv-day-summary article.hot b{color:#b93b32}

.uv-day-main-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.65fr);gap:12px}
.uv-day-start,.uv-day-status,.uv-day-next{padding:0!important;overflow:hidden}
.uv-day-start>header,.uv-day-next>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 16px;border-bottom:1px solid #e7ece8}
.uv-day-start header>div,.uv-day-next header>div,.uv-day-status>header{display:grid;gap:2px}
.uv-day-start header span,.uv-day-status header span,.uv-day-next header span{font-size:8px;font-weight:900;letter-spacing:.11em;color:#35a943}
.uv-day-start h2,.uv-day-status h2,.uv-day-next h2{margin:0;font-size:16px}
.uv-day-start p,.uv-day-status p,.uv-day-next p{margin:0;font-size:9px;color:#758179}

.uv-day-priority-list{display:grid}
.uv-day-priority{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 15px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;cursor:pointer}
.uv-day-priority:last-child{border-bottom:0}
.uv-day-priority:hover{background:#fafcfa}
.uv-day-index{display:grid;place-items:center;width:31px;height:31px;border-radius:9px;background:#edf7ee;color:#25862f;font-weight:900;font-size:10px}
.uv-day-priority>div{display:grid;gap:2px;min-width:0}
.uv-day-priority>div small{font-size:8px;font-weight:800;text-transform:uppercase;color:#7b877f}
.uv-day-priority>div b{font-size:11px}
.uv-day-priority>div p{font-size:9px;white-space:normal}
.uv-day-priority>em{font-style:normal;font-size:9px;font-weight:800;color:#278230;white-space:nowrap}
.uv-day-priority.critical{border-left:4px solid #dc4d40}
.uv-day-priority.critical .uv-day-index{background:#fde9e5;color:#b83a30}
.uv-day-priority.today{border-left:4px solid #41ba49}
.uv-day-priority.attention{border-left:4px solid #e0a536}
.uv-day-priority.normal{border-left:4px solid transparent}

.uv-day-status>header{padding:15px 16px;border-bottom:1px solid #e7ece8}
.uv-day-status>div{display:grid;gap:8px;padding:13px}
.uv-day-status>div>span{display:flex;align-items:center;gap:7px;padding:9px 10px;border-radius:9px;background:#f1f8f1;color:#466a4c;font-size:9px;font-weight:700}
.uv-day-clear{display:flex;align-items:center;gap:10px;padding:20px}
.uv-day-clear>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#e5f7e6;color:#21832b;font-weight:900}
.uv-day-clear>div{display:grid;gap:3px}.uv-day-clear b{font-size:11px}.uv-day-clear p{font-size:9px;color:#748079;margin:0}

.uv-day-next>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
.uv-day-next>div>button{display:flex;justify-content:space-between;align-items:center;gap:10px;text-align:left;padding:12px 15px;border:0;border-right:1px solid #edf1ee;border-bottom:1px solid #edf1ee;background:#fff;cursor:pointer}
.uv-day-next>div>button:hover{background:#fafcfa}
.uv-day-next button>div{display:grid;gap:2px}
.uv-day-next button small{font-size:8px;text-transform:uppercase;color:#758179}
.uv-day-next button b{font-size:10px}
.uv-day-next button>span{color:#358b3c}
.uv-day-empty{padding:18px;color:#7d8981;font-size:9px}

@media(max-width:900px){
 .uv-day-main-grid{grid-template-columns:1fr}
 .uv-day-summary{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .uv-day-head{align-items:flex-start;flex-direction:column}
 .uv-day-summary{grid-template-columns:1fr 1fr}
 .uv-day-priority{grid-template-columns:32px 1fr}
 .uv-day-priority>em{grid-column:2}
 .uv-day-next>div{grid-template-columns:1fr}
}

/* GO LIVE 10.4.2 — Filtros profissionais de Contratos */
.contract-filterbar{display:grid;grid-template-columns:minmax(340px,1.7fr) 190px 210px 120px auto auto auto;gap:8px;align-items:center;padding:12px;border-bottom:1px solid #e7ece8}
.contract-filterbar .search-wrap{min-width:0}
.contract-filterbar select,.contract-filterbar input[type="month"],.contract-filterbar input[type="date"]{height:42px;border:1px solid #dce5df;border-radius:11px;background:#fff;padding:0 12px;font-size:10px;outline:none}
.contract-filterbar select:focus,.contract-filterbar input:focus{border-color:#8bc991;box-shadow:0 0 0 3px rgba(50,180,60,.08)}
.contract-filterbar .btn{height:42px;white-space:nowrap}
.contract-filter-summary{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 13px;border-bottom:1px solid #edf1ee;background:#fbfcfb}
.contract-filter-summary span{font-size:9px;font-weight:800;color:#536158}
.contract-filter-summary small{font-size:8px;color:#829087}
.contracts-page .badge.red{background:#fde7e4;color:#b33a31}
@media(max-width:1250px){
 .contract-filterbar{grid-template-columns:minmax(300px,1fr) 180px 190px 110px auto}
 .contract-filterbar #contractModels{grid-column:auto/span 2}
}
@media(max-width:800px){
 .contract-filterbar{grid-template-columns:1fr 1fr}
 .contract-filterbar .contract-search-wrap{grid-column:1/-1}
 .contract-filterbar #contractModels{grid-column:1/-1}
}

/* GO LIVE 10.4.3 — Correção visual + fluxo rápido de Contratos */
.contract-filterbar{
  grid-template-columns:minmax(360px,1.7fr) 190px 210px 120px auto auto!important;
}
.contract-filterbar .contract-search-input{
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  margin:0!important;
}
/* O normalizador global pode envolver o input em .uv-search; ele deve ocupar só a célula da pesquisa. */
.contract-filterbar .uv-search{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  grid-column:auto!important;
}
.contract-filterbar > .search-icon,
.contract-filterbar > span.search-icon,
.contract-filterbar > i.search-icon,
.contract-filterbar > .contract-search-wrap > .search-icon{
  display:none!important;
}
.contract-status-card{position:relative;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.contract-status-card:hover{transform:translateY(-1px);border-color:#bcdcc0;box-shadow:0 7px 18px rgba(24,70,32,.055)}
.contract-status-card.active{border-color:#8bcf92!important;box-shadow:0 0 0 2px rgba(45,185,56,.07)}
.contract-status-card>em{position:absolute;right:12px;bottom:10px;font-style:normal;font-size:8px;font-weight:800;color:#2d8b35;opacity:.72}
.contract-row-today{background:#fbfefb}
@media(max-width:1250px){
 .contract-filterbar{grid-template-columns:minmax(300px,1fr) 180px 190px 110px auto!important}
 .contract-filterbar #contractModels{grid-column:auto/span 2}
}
@media(max-width:800px){
 .contract-filterbar{grid-template-columns:1fr 1fr!important}
 .contract-filterbar .contract-search-input,
 .contract-filterbar .uv-search{grid-column:1/-1!important}
 .contract-filterbar #contractModels{grid-column:1/-1!important}
}

/* GO LIVE 10.4.4 — estabilidade e feedback dos filtros de Contratos */
.contract-filter-summary .contract-active-filter{display:flex;align-items:center;gap:10px;min-width:0}
.contract-filter-summary #contractActiveFilter{font-size:8.5px;font-weight:700;color:#2f7f37;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:760px}
.contract-row-new{background:#f2fbf2!important;box-shadow:inset 4px 0 0 #37ba42}
.contract-new-note{color:#278b31!important;font-weight:800!important}

/* GO LIVE 10.4.5 — refinamento visual do Dashboard do funcionário */
.uv-day-dashboard{
  gap:18px!important;
  max-width:1460px!important;
}
.uv-day-head{
  padding:10px 4px 2px!important;
  align-items:center!important;
}
.uv-day-head h1{
  font-size:31px!important;
  letter-spacing:-.02em;
}
.uv-day-head p{
  font-size:11.5px!important;
  color:#6f7c73!important;
}
.uv-day-head-actions{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
}
.uv-day-calm{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border:1px solid #dfe8e1;
  background:#f7faf7;
  border-radius:999px;
  font-size:8.5px;
  font-weight:800;
  color:#58705e;
}
.uv-day-calm i{
  display:grid;
  place-items:center;
  width:17px;
  height:17px;
  border-radius:50%;
  font-style:normal;
  background:#e4f7e6;
  color:#278332;
}
.uv-day-summary{
  gap:12px!important;
}
.uv-day-summary article{
  min-height:94px;
  padding:15px 16px!important;
  border-radius:16px!important;
  box-shadow:0 8px 24px rgba(25,55,32,.035)!important;
  position:relative;
  overflow:hidden;
}
.uv-day-summary article::after{
  content:"";
  position:absolute;
  right:-18px;
  bottom:-28px;
  width:82px;
  height:82px;
  border-radius:50%;
  background:#f5f8f5;
}
.uv-day-summary article.hot::after{background:#fff1ef}
.uv-day-summary span{font-size:9.5px!important}
.uv-day-summary b{font-size:25px!important;z-index:1}
.uv-day-summary small{font-size:8.8px!important;z-index:1}

.uv-day-main-grid{
  grid-template-columns:minmax(0,1.65fr) minmax(320px,.62fr)!important;
  gap:14px!important;
}
.uv-day-start,
.uv-day-status,
.uv-day-next{
  border-radius:16px!important;
  box-shadow:0 10px 28px rgba(22,49,29,.04)!important;
}
.uv-day-start>header,
.uv-day-next>header{
  padding:17px 18px!important;
}
.uv-day-start h2,
.uv-day-status h2,
.uv-day-next h2{
  font-size:17px!important;
}
.uv-day-start p,
.uv-day-status p,
.uv-day-next p{
  font-size:9.5px!important;
}
.uv-day-priority{
  grid-template-columns:38px minmax(0,1fr) auto!important;
  padding:13px 17px!important;
  gap:12px!important;
  transition:background .15s ease,transform .15s ease;
}
.uv-day-priority:hover{
  background:#fbfdfb!important;
  transform:translateX(2px);
}
.uv-day-index{
  width:34px!important;
  height:34px!important;
  border-radius:10px!important;
  font-size:10.5px!important;
}
.uv-day-priority>div small{
  letter-spacing:.05em;
}
.uv-day-priority>div b{
  font-size:11.5px!important;
}
.uv-day-priority>div p{
  font-size:9.3px!important;
}
.uv-day-priority>em{
  padding:7px 9px;
  border-radius:8px;
  background:#f4faf4;
  border:1px solid #e0eee2;
}
.uv-day-priority.critical>em{
  background:#fff5f3;
  border-color:#f4d3ce;
  color:#a63f36;
}
.uv-day-priority.today>em{
  background:#f1faf2;
  border-color:#d5ead8;
}
.uv-day-priority.attention>em{
  background:#fff9ee;
  border-color:#f1e1b8;
  color:#916515;
}

.uv-day-status{
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfb 100%)!important;
}
.uv-day-status>header{
  padding:17px 18px!important;
}
.uv-day-status>div{
  padding:14px 16px 8px!important;
  gap:9px!important;
}
.uv-day-status>div>span{
  border:1px solid #e2ece3;
  background:#f4faf4!important;
  padding:10px 11px!important;
}
.uv-day-status>footer{
  padding:9px 16px 15px;
  font-size:8.5px;
  color:#8a958d;
}

.uv-day-next>div{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.uv-day-next>div>button{
  padding:14px 16px!important;
  min-height:64px;
}
.uv-day-next button b{font-size:10.5px!important}

@media(max-width:900px){
 .uv-day-main-grid{grid-template-columns:1fr!important}
}

/* GO LIVE 10.4.6 — saudação por horário + compactação do topo */
.uv-day-dashboard{
  padding-top:18px!important;
}
.uv-day-head{
  min-height:72px!important;
  padding:4px 4px 0!important;
  margin:0!important;
}
.uv-day-head>div:first-child{
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.uv-day-head h1{
  margin:2px 0 2px!important;
  line-height:1.02!important;
}
.uv-day-head p{
  margin:0!important;
}
.uv-day-head-actions{
  align-self:center!important;
}
.uv-day-summary{
  margin-top:0!important;
}
.uv-day-summary article{
  min-height:84px!important;
  padding:12px 16px!important;
}
.uv-day-summary article::after{
  width:70px!important;
  height:70px!important;
  right:-14px!important;
  bottom:-25px!important;
}
.uv-day-main-grid{
  margin-top:0!important;
}
@media(min-width:1100px){
 .uv-day-head{
   display:grid!important;
   grid-template-columns:minmax(0,1fr) auto!important;
   column-gap:24px!important;
 }
}

/* GO LIVE 10.4.7 — destaque visual da saudação */
.uv-day-head{
  background:linear-gradient(135deg,#ffffff 0%,#f7fbf7 100%);
  border:1px solid #e1e9e3;
  border-radius:18px;
  padding:14px 16px!important;
  box-shadow:0 10px 30px rgba(23,53,30,.04);
}
.uv-greeting-card{
  display:flex!important;
  align-items:center;
  gap:14px;
  min-width:0;
}
.uv-greeting-icon{
  flex:0 0 48px;
  width:48px;
  height:48px;
  display:grid;
  place-items:center;
  border-radius:15px;
  background:linear-gradient(145deg,#e9f9eb,#f8fcf8);
  border:1px solid #d8eadb;
  color:#2f9d3a;
  font-size:24px;
  line-height:1;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.8);
}
.uv-greeting-copy{
  display:grid!important;
  gap:2px;
  min-width:0;
}
.uv-greeting-copy>span{
  font-size:8.5px!important;
  font-weight:900;
  letter-spacing:.14em;
  color:#2fa83b;
}
.uv-greeting-copy h1{
  font-size:29px!important;
  margin:0!important;
  letter-spacing:-.02em;
}
.uv-greeting-copy p{
  margin:0!important;
  font-size:10.5px!important;
  color:#6f7c73!important;
}
.uv-day-head-actions{
  padding-left:12px;
}
@media(max-width:760px){
 .uv-day-head{padding:13px!important}
 .uv-greeting-icon{width:42px;height:42px;flex-basis:42px;font-size:21px}
 .uv-greeting-copy h1{font-size:24px!important}
}

/* GO LIVE 10.4.8 — hero do Meu Dia inspirado no protótipo aprovado */
.uv-day-head{
  position:relative;overflow:hidden;min-height:118px!important;padding:0!important;
  border:0!important;border-radius:18px!important;
  background:linear-gradient(110deg,#243d82 0%,#17356f 58%,#082d5b 100%)!important;
  box-shadow:0 12px 30px rgba(16,42,91,.14)!important;color:#fff;
  align-items:stretch!important;
}
.uv-day-head:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 28%,rgba(255,255,255,.12),transparent 24%),radial-gradient(circle at 88% 70%,rgba(255,255,255,.06),transparent 22%);pointer-events:none}
.uv-greeting-card{position:relative;z-index:1;padding:24px 28px!important;gap:18px!important}
.uv-greeting-icon{width:58px!important;height:58px!important;flex-basis:58px!important;border-radius:17px!important;background:rgba(255,255,255,.10)!important;border:1px solid rgba(255,255,255,.10)!important;color:#fff7b0!important;font-size:30px!important;box-shadow:none!important}
.uv-greeting-copy>span{color:#70e47a!important;font-size:9px!important}
.uv-greeting-copy h1{color:#fff!important;font-size:32px!important;letter-spacing:-.025em!important}
.uv-greeting-copy h1::first-line{color:#fff}
.uv-greeting-copy p{color:#dce6f6!important;font-size:11.5px!important}
.uv-day-head-actions{position:relative;z-index:1;padding:0 28px 0 16px!important;align-self:center!important}
.uv-day-head-actions>small{color:#d6e0ef!important}
.uv-day-head-actions>b{background:#fff!important;color:#16243b!important;border-color:rgba(255,255,255,.45)!important}
.uv-day-calm{background:rgba(255,255,255,.94)!important;color:#365646!important;border-color:rgba(255,255,255,.5)!important}
.uv-day-head .btn.primary{background:#31c82f!important;border-color:#31c82f!important;box-shadow:0 7px 18px rgba(34,197,51,.18)}
@media(max-width:760px){.uv-day-head{min-height:auto!important}.uv-greeting-card{padding:18px!important}.uv-day-head-actions{padding:0 18px 18px!important}.uv-greeting-copy h1{font-size:26px!important}}

/* GO LIVE 10.4.9 — Hero compacto */
.uv-day-head{
  min-height:0!important;
  height:auto!important;
  padding:12px 16px!important;
  border-radius:14px!important;
  margin:0!important;
}
.uv-greeting-card{
  gap:10px!important;
}
.uv-greeting-icon{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
  border-radius:11px!important;
  font-size:18px!important;
}
.uv-greeting-copy{
  gap:1px!important;
}
.uv-greeting-copy>span{
  font-size:7.5px!important;
  letter-spacing:.12em!important;
}
.uv-greeting-copy h1{
  font-size:22px!important;
  line-height:1!important;
  margin:0!important;
}
.uv-greeting-copy p{
  font-size:9px!important;
  line-height:1.2!important;
}
.uv-day-head-actions{
  gap:6px!important;
  padding-left:8px!important;
}
.uv-day-head-actions .uv-day-calm{
  padding:5px 8px!important;
  font-size:7.5px!important;
}
.uv-day-head-actions .uv-day-calm i{
  width:15px!important;
  height:15px!important;
}
.uv-day-head-actions>small{
  font-size:7.5px!important;
}
.uv-day-head-actions>b{
  font-size:8.5px!important;
  padding:6px 8px!important;
}
.uv-day-head-actions .btn.primary{
  height:36px!important;
  padding:0 14px!important;
  font-size:10px!important;
  border-radius:9px!important;
}
.uv-day-dashboard{
  gap:12px!important;
  padding-top:10px!important;
}
.uv-day-summary{
  gap:9px!important;
}
.uv-day-summary article{
  min-height:74px!important;
  padding:10px 14px!important;
}
.uv-day-summary b{
  font-size:22px!important;
}
@media(min-width:1100px){
  .uv-day-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
  }
}

/* GO LIVE 10.5.0 — Build 34.1
   Saudação em faixa horizontal: compacta, mas com tipografia legível */
.uv-day-head{
  min-height:96px!important;
  height:96px!important;
  padding:14px 24px!important;
  border-radius:14px!important;
  margin:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:24px!important;
  overflow:hidden!important;
}
.uv-greeting-card{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:13px!important;
  min-width:0!important;
}
.uv-greeting-icon{
  width:44px!important;
  height:44px!important;
  flex:0 0 44px!important;
  border-radius:12px!important;
  font-size:21px!important;
  margin:0!important;
}
.uv-greeting-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:2px!important;
  min-width:0!important;
}
.uv-greeting-copy>span{
  font-size:9px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  margin:0!important;
}
.uv-greeting-copy h1{
  font-size:31px!important;
  line-height:1.05!important;
  margin:0!important;
  font-weight:750!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
}
.uv-greeting-copy p{
  font-size:12px!important;
  line-height:1.25!important;
  margin:1px 0 0!important;
  white-space:nowrap!important;
}
.uv-day-head-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
  white-space:nowrap!important;
}
.uv-day-head-actions .uv-day-calm{
  padding:6px 9px!important;
  font-size:8px!important;
}
.uv-day-head-actions .uv-day-calm i{
  width:16px!important;
  height:16px!important;
}
.uv-day-head-actions>small{
  font-size:8px!important;
}
.uv-day-head-actions>b{
  font-size:9px!important;
  padding:7px 9px!important;
}
.uv-day-head-actions .btn.primary{
  height:38px!important;
  padding:0 15px!important;
  font-size:10.5px!important;
  border-radius:9px!important;
}
.uv-day-dashboard{
  padding-top:10px!important;
}
@media(max-width:1050px){
  .uv-day-head{
    height:auto!important;
    min-height:96px!important;
    grid-template-columns:1fr!important;
    row-gap:10px!important;
  }
  .uv-day-head-actions{
    justify-content:flex-start!important;
  }
}
@media(max-width:700px){
  .uv-day-head{
    padding:14px 16px!important;
  }
  .uv-greeting-copy h1{
    font-size:25px!important;
    white-space:normal!important;
  }
  .uv-greeting-copy p{
    white-space:normal!important;
  }
  .uv-day-head-actions{
    flex-wrap:wrap!important;
  }
}

/* GO LIVE 10.5.1 — Build 34.2
   Corrige o conteúdo interno da faixa "Meu Dia" sem aumentar a altura.
   Remove paddings herdados que deslocavam/recortavam a saudação. */
.uv-day-head{
  height:96px!important;
  min-height:96px!important;
  padding:0 24px!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:24px!important;
}
.uv-greeting-card{
  padding:0!important;
  margin:0!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:16px!important;
  height:auto!important;
  min-height:0!important;
}
.uv-greeting-icon{
  margin:0!important;
  width:52px!important;
  height:52px!important;
  flex:0 0 52px!important;
  border-radius:14px!important;
  font-size:25px!important;
}
.uv-greeting-copy{
  margin:0!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  gap:1px!important;
  line-height:1!important;
}
.uv-greeting-copy>span{
  margin:0 0 2px!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.uv-greeting-copy h1{
  margin:0!important;
  padding:0!important;
  font-size:28px!important;
  line-height:1.02!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  color:#fff!important;
}
.uv-greeting-copy p{
  margin:4px 0 0!important;
  padding:0!important;
  font-size:10.5px!important;
  line-height:1.15!important;
  color:#e4ecf8!important;
}
.uv-day-head-actions{
  padding:0!important;
  margin:0!important;
  align-self:center!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
@media(max-width:1050px){
  .uv-day-head{height:auto!important;min-height:96px!important;padding:14px 18px!important;grid-template-columns:1fr!important;row-gap:10px!important}
  .uv-day-head-actions{justify-content:flex-start!important}
}
@media(max-width:700px){
  .uv-greeting-icon{width:44px!important;height:44px!important;flex-basis:44px!important;font-size:21px!important}
  .uv-greeting-copy h1{font-size:24px!important;white-space:normal!important}
  .uv-greeting-copy p{white-space:normal!important}
}

/* GO LIVE 10.5.2 — Build 34.3
   Correção definitiva do alinhamento da saudação no banner compacto.
   O conteúdo fica horizontal: ícone + texto à esquerda, ações à direita. */
.uv-day-head{
  height:96px!important;
  min-height:96px!important;
  padding:0 22px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:24px!important;
  overflow:visible!important;
}
.uv-day-head .uv-greeting-card{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  align-self:center!important;
  justify-self:start!important;
  width:auto!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  gap:13px!important;
  position:relative!important;
  inset:auto!important;
  transform:none!important;
}
.uv-day-head .uv-greeting-icon{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  order:0!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  min-height:44px!important;
  flex:0 0 44px!important;
  margin:0!important;
  border-radius:12px!important;
  font-size:21px!important;
}
.uv-day-head .uv-greeting-copy{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  order:1!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  gap:1px!important;
}
.uv-day-head .uv-greeting-copy>span{
  display:block!important;
  margin:0 0 2px!important;
  padding:0!important;
  font-size:8px!important;
  line-height:1!important;
  letter-spacing:.13em!important;
  text-align:left!important;
}
.uv-day-head .uv-greeting-copy h1{
  display:block!important;
  margin:0!important;
  padding:0!important;
  font-size:29px!important;
  line-height:1.02!important;
  font-weight:800!important;
  letter-spacing:-.025em!important;
  white-space:nowrap!important;
  text-align:left!important;
}
.uv-day-head .uv-greeting-copy p{
  display:block!important;
  margin:4px 0 0!important;
  padding:0!important;
  font-size:10px!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  text-align:left!important;
}
.uv-day-head .uv-day-head-actions{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  align-self:center!important;
  justify-self:end!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:nowrap!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  gap:8px!important;
}
@media(max-width:1050px){
  .uv-day-head{
    height:auto!important;
    min-height:96px!important;
    padding:13px 18px!important;
    grid-template-columns:1fr!important;
    row-gap:9px!important;
  }
  .uv-day-head .uv-greeting-card{height:auto!important}
  .uv-day-head .uv-day-head-actions{justify-self:start!important;justify-content:flex-start!important;flex-wrap:wrap!important}
}
@media(max-width:700px){
  .uv-day-head .uv-greeting-copy h1{font-size:24px!important;white-space:normal!important}
  .uv-day-head .uv-greeting-copy p{white-space:normal!important}
}

/* GO LIVE 10.5.5 — autenticação, lembrete e recuperação */
.password-eye{appearance:none;border:0;background:transparent;color:#dfe8df;cursor:pointer;width:34px;height:34px;display:grid;place-items:center;border-radius:8px;font:inherit;padding:0}
.password-eye:hover,.password-eye:focus-visible{background:rgba(255,255,255,.07);color:#7cff20;outline:none}
.form-inline #forgotPasswordLink{font-weight:700;text-decoration:none}
.form-inline #forgotPasswordLink:hover{text-decoration:underline}
.homologation-recovery-code{display:grid;gap:4px;padding:12px 14px;border:1px solid #a7d88c;background:#f1faec;border-radius:12px;color:#245d18}
.homologation-recovery-code b{font-size:11px;text-transform:uppercase;letter-spacing:.08em}
.homologation-recovery-code span{font-size:16px;font-weight:800;letter-spacing:.08em}
.homologation-recovery-code small{color:#5f7658}
.temporary-password-field small,.modal-form label small{display:block;margin-top:5px;color:#718077;font-size:10px;font-weight:500}
.new-user-access-card{display:grid;gap:12px;padding:4px}
.new-user-access-card label{display:grid;gap:6px;font-weight:700}
.new-user-access-card input{width:100%;border:1px solid #dce5df;border-radius:10px;padding:11px 12px;background:#f8fbf8;font-weight:700}
.new-user-access-card small{padding:10px 12px;border-radius:10px;background:#f4faf4;color:#58705e}

/* GO LIVE 10.5.7 — Financeiro operacional + Entregas sem dependência de data */
.operational-delivery-kpis article{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.operational-delivery-kpis article:hover{transform:translateY(-1px);border-color:#bfe8c3;box-shadow:0 8px 22px rgba(35,104,44,.06)}
.operational-delivery-kpis article.attention strong{color:#c72f2f}
.logistics-toolbar-operational{display:grid!important;grid-template-columns:minmax(340px,1fr) 190px 175px 220px auto!important;gap:10px!important;align-items:center}
.logistics-toolbar-operational #deliveryDateFilter.hidden{display:none!important}
.delivery-filter-context{display:flex;align-items:center;gap:10px;padding:0 16px 13px;color:#758078;font-size:11px}
.delivery-filter-context b{color:#1f7b2a;font-size:11px}
.delivery-filter-context span{border-left:1px solid #e2e9e3;padding-left:10px}
@media(max-width:1100px){
 .logistics-toolbar-operational{grid-template-columns:1fr 1fr!important}
 .delivery-search-box{grid-column:1/-1}
 .delivery-filter-context{align-items:flex-start;flex-direction:column}
 .delivery-filter-context span{border-left:0;padding-left:0}
}

/* GO LIVE 10.5.8 — Reportar esta tela / chamados internos */
.report-screen-form .premium-context{margin-bottom:14px}
.critical-report-box{border:1px solid #eadede;background:#fffafa;border-radius:14px;padding:12px 14px}
.critical-report-box .premium-blocked{margin:0}
.critical-report-notice{margin-top:10px;padding:10px 12px;border-radius:10px;background:#fff0f0;border:1px solid #f2caca;display:flex;flex-direction:column;gap:3px;color:#8f2525}
.critical-report-notice b{font-size:11px}.critical-report-notice span{font-size:10px;line-height:1.45}
.critical-report-notice.hidden{display:none!important}


/* =========================================================
   SIDEBAR COMPACTA — grupos recolhíveis
   ========================================================= */
.sidebar #nav.compact-nav{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.sidebar #nav.compact-nav > span{display:none!important}
.sidebar .nav-primary{flex:0 0 auto}
.sidebar .nav-group{
  display:block;
  margin:1px 0;
  padding:0;
}
.sidebar .nav-group-toggle{
  width:100%;
  min-height:32px;
  padding:7px 10px;
  margin:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  color:#8ca79b;
  background:transparent;
  border:0;
  border-radius:8px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.06em;
  text-align:left;
  cursor:pointer;
}
.sidebar .nav-group-toggle:hover{
  color:#d9f5df;
  background:rgba(77,205,68,.07);
}
.sidebar .nav-group-toggle b{
  font-size:12px;
  font-weight:600;
  line-height:1;
  transition:transform .18s ease;
  opacity:.8;
}
.sidebar .nav-group.open .nav-group-toggle{
  color:#68dc5b;
  background:rgba(77,205,68,.08);
}
.sidebar .nav-group.open .nav-group-toggle b{
  transform:rotate(180deg);
}
.sidebar .nav-group-items{
  display:grid;
  grid-template-rows:0fr;
  opacity:0;
  transition:grid-template-rows .2s ease,opacity .15s ease;
}
.sidebar .nav-group-items > *{
  overflow:hidden;
}
.sidebar .nav-group.open .nav-group-items{
  grid-template-rows:1fr;
  opacity:1;
}
.sidebar .nav-group-items{
  overflow:hidden;
}
.sidebar .nav-group-items button{
  width:100%;
  min-height:34px;
  padding:7px 12px 7px 18px;
  margin:1px 0;
  font-size:13px;
  border-radius:8px;
}
.sidebar .nav-group.has-active .nav-group-toggle{
  color:#86e77c;
}


/* =========================================================
   SIDEBAR V4 — acordeão compacto / visual premium
   ========================================================= */
.sidebar #nav.compact-nav{
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  padding:0 8px 8px!important;
}
.sidebar #nav.compact-nav .nav-primary{
  margin:0 0 3px!important;
}
.sidebar #nav.compact-nav .nav-group{
  margin:0!important;
  padding:0!important;
  border-radius:10px;
}
.sidebar #nav.compact-nav .nav-group-toggle{
  box-sizing:border-box;
  width:100%;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0 9px 0 11px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:transparent!important;
  color:#8da79b!important;
  font-size:10px!important;
  font-weight:800!important;
  letter-spacing:.075em!important;
  line-height:1!important;
  cursor:pointer;
  transition:background .16s ease,border-color .16s ease,color .16s ease;
}
.sidebar #nav.compact-nav .nav-group-toggle:hover{
  color:#dff8e2!important;
  background:rgba(80,220,68,.065)!important;
  border-color:rgba(80,220,68,.10)!important;
}
.sidebar #nav.compact-nav .nav-group.open .nav-group-toggle{
  color:#75e66b!important;
  background:linear-gradient(90deg,rgba(61,198,52,.13),rgba(61,198,52,.035))!important;
  border-color:rgba(93,222,82,.16)!important;
}
.sidebar #nav.compact-nav .nav-expand-icon{
  width:21px;
  height:21px;
  flex:0 0 21px;
  display:inline-flex;
  position:relative;
  align-items:center;
  justify-content:center;
  border-radius:6px;
  border:1px solid rgba(141,167,155,.20);
  background:rgba(255,255,255,.025);
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.sidebar #nav.compact-nav .nav-expand-icon i{
  position:absolute;
  width:8px;
  height:1.5px;
  border-radius:2px;
  background:currentColor;
  transition:transform .18s ease,opacity .18s ease;
}
.sidebar #nav.compact-nav .nav-expand-icon i:nth-child(2){
  transform:rotate(90deg);
}
.sidebar #nav.compact-nav .nav-group.open .nav-expand-icon{
  background:rgba(95,226,83,.11);
  border-color:rgba(95,226,83,.28);
}
.sidebar #nav.compact-nav .nav-group.open .nav-expand-icon i:nth-child(2){
  transform:rotate(0);
  opacity:0;
}
.sidebar #nav.compact-nav .nav-group-items{
  display:block!important;
  max-height:0;
  opacity:0;
  overflow:hidden!important;
  padding:0!important;
  transition:max-height .22s ease,opacity .15s ease,padding .18s ease;
}
.sidebar #nav.compact-nav .nav-group.open .nav-group-items{
  max-height:300px;
  opacity:1;
  padding:3px 0 5px!important;
}
.sidebar #nav.compact-nav .nav-group-items button{
  box-sizing:border-box;
  width:calc(100% - 6px)!important;
  height:34px!important;
  min-height:34px!important;
  margin:1px 3px!important;
  padding:0 10px 0 14px!important;
  border-radius:8px!important;
  font-size:13px!important;
  line-height:34px!important;
}
.sidebar #nav.compact-nav .nav-group + .nav-group{
  margin-top:1px!important;
}
.sidebar #nav.compact-nav .nav-group.has-active:not(.open) .nav-group-toggle{
  color:#b9d6bd!important;
}


/* =========================================================
   SIDEBAR V5 — Urban Volt Navigation System
   Compacto, hierárquico e visualmente integrado ao ERP
   ========================================================= */

.sidebar #nav.compact-nav{
  gap:3px!important;
}

.sidebar #nav.compact-nav .nav-primary{
  position:relative;
  min-height:40px;
  border:1px solid transparent;
  border-radius:10px!important;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.sidebar #nav.compact-nav .nav-primary:hover{
  background:rgba(73,220,67,.06)!important;
  border-color:rgba(90,225,83,.10)!important;
}
.sidebar #nav.compact-nav .nav-primary.active{
  box-shadow:inset 3px 0 0 #4fe041;
}

.sidebar #nav.compact-nav .nav-group{
  position:relative;
  border-radius:11px;
}
.sidebar #nav.compact-nav .nav-group-toggle{
  min-height:40px!important;
  height:40px!important;
  padding:0 8px 0 7px!important;
  border-radius:10px!important;
  text-transform:none!important;
  letter-spacing:0!important;
}

.sidebar #nav.compact-nav .nav-group-main{
  min-width:0;
  display:flex;
  align-items:center;
  gap:9px;
}

.sidebar #nav.compact-nav .nav-section-icon{
  width:25px;
  height:25px;
  flex:0 0 25px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:7px;
  border:1px solid rgba(139,166,151,.13);
  background:rgba(255,255,255,.025);
  color:#95ac9e;
  font-size:12px;
  font-weight:800;
  line-height:1;
  transition:all .18s ease;
}

.sidebar #nav.compact-nav .nav-group-label{
  color:#a8b8ae;
  font-size:10px;
  font-weight:800;
  letter-spacing:.075em;
  white-space:normal;
  line-height:1.12;
  text-align:left;
}

.sidebar #nav.compact-nav .nav-group-toggle:hover .nav-section-icon{
  color:#dff8e1;
  border-color:rgba(81,225,70,.18);
  background:rgba(74,222,64,.08);
}
.sidebar #nav.compact-nav .nav-group-toggle:hover .nav-group-label{
  color:#e2eee5;
}

.sidebar #nav.compact-nav .nav-group.open{
  background:linear-gradient(180deg,rgba(55,181,47,.085),rgba(55,181,47,.018));
}
.sidebar #nav.compact-nav .nav-group.open::before{
  content:"";
  position:absolute;
  left:0;
  top:8px;
  bottom:8px;
  width:2px;
  border-radius:3px;
  background:linear-gradient(#5bea4f,#22a92d);
  box-shadow:0 0 10px rgba(72,225,66,.25);
}
.sidebar #nav.compact-nav .nav-group.open .nav-group-toggle{
  background:transparent!important;
  border-color:transparent!important;
}
.sidebar #nav.compact-nav .nav-group.open .nav-section-icon{
  color:#67ec5a;
  background:rgba(82,226,70,.11);
  border-color:rgba(82,226,70,.22);
}
.sidebar #nav.compact-nav .nav-group.open .nav-group-label{
  color:#dff6e2;
}

.sidebar #nav.compact-nav .nav-expand-icon{
  width:23px!important;
  height:23px!important;
  flex-basis:23px!important;
  border-radius:7px!important;
  border-color:rgba(138,164,151,.15)!important;
  background:rgba(255,255,255,.025)!important;
}
.sidebar #nav.compact-nav .nav-group.open .nav-expand-icon{
  color:#64e959!important;
  background:rgba(77,218,67,.09)!important;
  border-color:rgba(77,218,67,.22)!important;
}

.sidebar #nav.compact-nav .nav-group-items{
  margin-left:8px;
  padding-left:8px!important;
  border-left:1px solid rgba(129,157,142,.10);
}
.sidebar #nav.compact-nav .nav-group.open .nav-group-items{
  padding-top:2px!important;
  padding-bottom:6px!important;
}
.sidebar #nav.compact-nav .nav-group-items button{
  position:relative;
  width:calc(100% - 5px)!important;
  min-height:34px!important;
  height:34px!important;
  margin:1px 2px!important;
  padding:0 10px!important;
  border:1px solid transparent!important;
  border-radius:8px!important;
  color:#bac8bf!important;
  background:transparent!important;
  font-size:12.5px!important;
  line-height:32px!important;
  transition:background .14s ease,color .14s ease,border-color .14s ease,padding .14s ease;
}
.sidebar #nav.compact-nav .nav-group-items button:hover{
  color:#f2faf3!important;
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(255,255,255,.035)!important;
  padding-left:13px!important;
}
.sidebar #nav.compact-nav .nav-group-items button.active{
  color:#72ec67!important;
  background:rgba(69,206,60,.095)!important;
  border-color:rgba(76,218,66,.12)!important;
  font-weight:700;
}
.sidebar #nav.compact-nav .nav-group-items button.active::before{
  content:"";
  position:absolute;
  left:-9px;
  top:11px;
  width:4px;
  height:12px;
  border-radius:4px;
  background:#55df49;
  box-shadow:0 0 7px rgba(85,223,73,.30);
}

/* melhor leitura no menu sem aumentar a largura */
.sidebar #nav.compact-nav .nav-group[data-nav-group="crm"] .nav-group-label,
.sidebar #nav.compact-nav .nav-group[data-nav-group="gestao"] .nav-group-label{
  max-width:90px;
}

/* transição de abrir/fechar mais suave */
.sidebar #nav.compact-nav .nav-group-items{
  transition:max-height .22s cubic-bezier(.4,0,.2,1),opacity .13s ease,padding .18s ease!important;
}


/* =========================================================
   SIDEBAR V6 — alinhamento final + scrollbar invisível
   ========================================================= */

/* Remove a barra visual, mantendo rolagem por mouse/touch em telas menores */
.sidebar,
.sidebar #nav,
.sidebar #nav.compact-nav{
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.sidebar::-webkit-scrollbar,
.sidebar #nav::-webkit-scrollbar,
.sidebar #nav.compact-nav::-webkit-scrollbar{
  width:0!important;
  height:0!important;
  display:none!important;
}

/* Organização vertical mais compacta para caber melhor sem rolagem */
.sidebar{
  overflow:hidden!important;
}
.sidebar #nav.compact-nav{
  overflow-y:auto!important;
  overflow-x:hidden!important;
  gap:1px!important;
  padding:0 9px 5px!important;
}

/* Dashboard / Central de atenção */
.sidebar #nav.compact-nav .nav-primary{
  min-height:37px!important;
  height:37px!important;
  margin:0 0 2px!important;
  padding-left:12px!important;
  padding-right:9px!important;
  display:flex!important;
  align-items:center!important;
}

/* Cabeçalhos */
.sidebar #nav.compact-nav .nav-group-toggle{
  min-height:36px!important;
  height:36px!important;
  padding:0 7px 0 7px!important;
  align-items:center!important;
}
.sidebar #nav.compact-nav .nav-group-main{
  display:grid!important;
  grid-template-columns:25px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:9px!important;
  flex:1 1 auto!important;
  min-width:0!important;
}
.sidebar #nav.compact-nav .nav-section-icon{
  width:25px!important;
  height:25px!important;
  margin:0!important;
  align-self:center!important;
}
.sidebar #nav.compact-nav .nav-group-label{
  display:flex!important;
  align-items:center!important;
  min-height:25px!important;
  margin:0!important;
  padding:0!important;
  line-height:1.08!important;
}
.sidebar #nav.compact-nav .nav-expand-icon{
  margin-left:7px!important;
  margin-right:0!important;
}

/* Módulos internos */
.sidebar #nav.compact-nav .nav-group.open .nav-group-items{
  padding-top:1px!important;
  padding-bottom:3px!important;
}
.sidebar #nav.compact-nav .nav-group-items{
  margin-left:12px!important;
  padding-left:8px!important;
}
.sidebar #nav.compact-nav .nav-group-items button{
  min-height:31px!important;
  height:31px!important;
  line-height:29px!important;
  margin:0!important;
  padding-left:10px!important;
  font-size:12px!important;
}
.sidebar #nav.compact-nav .nav-group-items button:hover{
  padding-left:12px!important;
}
.sidebar #nav.compact-nav .nav-group-items button.active::before{
  top:9px!important;
  height:11px!important;
}

/* Mantém os blocos próximos */
.sidebar #nav.compact-nav .nav-group + .nav-group{
  margin-top:0!important;
}

/* Rodapé mais enxuto para liberar espaço */
.sidebar .sidebar-footer,
.sidebar footer{
  padding-top:5px!important;
  padding-bottom:8px!important;
  line-height:1.25!important;
}

/* Em telas mais baixas a rolagem continua funcionando, mas sem barra aparente */
@media (max-height:850px){
  .sidebar #nav.compact-nav .nav-primary{
    min-height:34px!important;
    height:34px!important;
  }
  .sidebar #nav.compact-nav .nav-group-toggle{
    min-height:33px!important;
    height:33px!important;
  }
  .sidebar #nav.compact-nav .nav-group-items button{
    min-height:29px!important;
    height:29px!important;
    line-height:27px!important;
  }
}

/* Produção — ajuste visual pendente Clientes / Comercial */
.edit-pane[data-edit-pane="comercial"] .guarantor-picker .guarantor-add-btn{
  align-self:end;
  margin-bottom:0;
  transform:translateY(-1px);
}
