/* SEGScale Central: casca única (menu lateral, barra superior, menu do usuário) */
:root{--shw:0px;--shh:52px}
@media (min-width:1100px){html.shell{--shw:252px}}
html.shell body{margin-left:var(--shw)}

.sh-side{position:fixed;z-index:95;top:0;bottom:0;left:0;width:min(300px,86vw);display:flex;flex-direction:column;gap:6px;padding:14px 12px 12px;background:var(--navy-deep,#0F1626);border-right:1px solid var(--line,rgba(148,163,194,.22));overflow-y:auto;overscroll-behavior:contain;transform:translateX(-100%);transition:transform .22s ease;visibility:hidden}
.sh-side.on{transform:none;visibility:visible}
@media (min-width:1100px){.sh-side{width:var(--shw);transform:none;visibility:visible;z-index:60}}
.sh-brand{display:block;padding:4px 8px 2px}
.sh-brand img{display:block;width:124px;height:auto}
.sh-logo-l{display:none!important}
html[data-theme="light"] .sh-logo-d{display:none!important}
html[data-theme="light"] .sh-logo-l{display:block!important}
.sh-prod{padding:0 8px;font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--sky,#9FB0D0);font-weight:600}
.sh-nav{display:grid;gap:4px;margin-top:6px}
.sh-gt{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border-radius:10px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted,#A7B2C7);font-weight:600}
.sh-gt::-webkit-details-marker{display:none}
.sh-gn{flex:1 1 auto;min-width:0}
.sh-gt::after{content:"";flex:none;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}
.sh-g[open]>.sh-gt::after{transform:rotate(-135deg)}
.sh-gt:hover{background:rgba(148,163,194,.1)}
.sh-l{display:grid;gap:2px;margin:2px 0 6px}
.sh-a{display:flex;align-items:center;gap:12px;min-height:42px;padding:0 12px;border-radius:10px;color:var(--ink,#F9F2F2);font-size:.875rem;font-weight:600;border-left:3px solid transparent}
.sh-a:hover{background:rgba(148,163,194,.12)}
.sh-a[aria-current="page"]{background:rgba(0,67,253,.22);border-left-color:var(--blue,#0043FD);font-weight:600}
.sh-foot{margin-top:auto;padding:12px 8px 0;font-size:.6875rem;color:var(--muted,#A7B2C7);line-height:1.4}

.sh-bar{position:sticky;top:0;z-index:90;display:flex;align-items:center;gap:10px;min-height:var(--shh);padding:6px 16px;background:var(--navy-deep,#0F1626);border-bottom:1px solid var(--line,rgba(148,163,194,.22));color:var(--ink,#F9F2F2)}
.sh-mb{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:44px;height:44px;padding:0 11px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:12px;background:transparent;cursor:pointer;flex:none}
.sh-mb span{display:block;height:2px;border-radius:2px;background:var(--ink,#F9F2F2)}
@media (min-width:1100px){.sh-mb{display:none}}
.sh-cli{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1 auto;max-width:420px}
.sh-cl{flex:none;font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted,#A7B2C7)}
.sh-sel{min-width:0;width:100%;min-height:44px;padding:0 12px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:12px;background:var(--navy,#1B2438);color:var(--ink,#F9F2F2);font:inherit;font-size:.875rem;font-weight:600}
.sh-cn{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600;font-size:.875rem}
.sh-new{flex:none;display:inline-flex;align-items:center;min-height:44px;padding:0 14px;border-radius:12px;background:var(--blue,#0043FD);color:#fff;font-size:.8125rem;font-weight:600}
.sh-new:hover{background:var(--blue-2,#3C68FF)}
.sh-sp{flex:1 1 0}
.sh-uw{position:relative;flex:none}
.sh-user{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 10px 0 6px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:99px;background:transparent;color:inherit;font:inherit;cursor:pointer}
.sh-av{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--blue,#0043FD);color:#fff;font-size:.75rem;font-weight:700}
.sh-un{display:grid;text-align:left;line-height:1.15;min-width:0}
.sh-un b{font-size:.8125rem;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sh-un small{font-size:.6875rem;color:var(--muted,#A7B2C7)}
.sh-um{position:absolute;right:0;top:calc(100% + 8px);z-index:100;width:min(320px,88vw);display:grid;gap:4px;padding:10px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:14px;background:var(--navy-deep,#0F1626);box-shadow:0 18px 40px rgba(3,10,28,.45)}
.sh-um[hidden]{display:none}
.sh-ue{padding:2px 8px 6px;font-size:.75rem;color:var(--muted,#A7B2C7);overflow:hidden;text-overflow:ellipsis}
.sh-uh{padding:8px 8px 2px;font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--sky,#9FB0D0);font-weight:600}
.sh-ui{display:flex;align-items:center;min-height:44px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--ink,#F9F2F2);font:inherit;font-size:.875rem;text-align:left;cursor:pointer}
.sh-ui:hover{background:rgba(148,163,194,.14)}
.sh-up{font-size:.8125rem;color:var(--muted,#A7B2C7)}
.sh-out{color:#ff9d8f}
.sh-scrim{position:fixed;inset:0;z-index:92;background:rgba(3,10,28,.6)}
.sh-scrim[hidden]{display:none}
.sh-vazio{max-width:520px;margin:12vh auto;padding:0 20px}
.sh-vazio h1{font-family:var(--f-title,inherit);font-size:1.5rem;margin-bottom:8px}
.sh-vazio p{color:var(--muted,#A7B2C7)}

html[data-theme="light"] .sh-side,html[data-theme="light"] .sh-bar,html[data-theme="light"] .sh-um{background:#fff;color:#1B2438}
html[data-theme="light"] .sh-a,html[data-theme="light"] .sh-ui,html[data-theme="light"] .sh-user{color:#1B2438}
html[data-theme="light"] .sh-sel{background:#fff;color:#1B2438}
html[data-theme="light"] .sh-mb span{background:#1B2438}
html[data-theme="light"] .sh-a[aria-current="page"]{background:rgba(0,67,253,.1)}
html[data-theme="light"] .sh-out{color:#b52f20}

/* o selo de conta antigo some: o seletor de cliente passa a ser o da casca */
html.shell .seg-conta-wrap{display:none!important}
/* o menu lateral próprio das telas de administração dá lugar ao da Central */
html.shell .burger[aria-controls="side"],html.shell nav.side#side,html.shell .scrim#scrim{display:none!important}

/* cabeçalhos das telas passam a grudar abaixo da barra da Central */
html.shell .top,html.shell .dtop,html.shell .bar-top{top:var(--shh)}
html.shell .ptop{top:var(--shh);left:var(--shw)}
html.shell .navbar,html.shell .ticker{left:var(--shw)}
html.shell .ds-prog,html.shell .prog{top:var(--shh);left:var(--shw);width:calc(100% - var(--shw))}
html.shell .rx-tabs,html.shell .stepper{top:calc(64px + var(--shh))}
html.shell .fp-prev{top:calc(80px + var(--shh))}
html.shell .gt-side{top:calc(84px + var(--shh))}
html.shell .controls{top:calc(150px + var(--shh));max-height:calc(100vh - 230px - var(--shh))}
html.shell .rx-out{top:calc(130px + var(--shh))}

@media (max-width:520px){
  .sh-bar{gap:8px;padding:6px 10px}
  .sh-cl,.sh-un,.sh-new{display:none}
  .sh-user{padding:0 6px}
}
@media (max-width:360px){.sh-cli{max-width:46vw}}
body.tv .sh-bar,body.tv .sh-side,body.tv .sh-scrim{display:none!important}
html:has(body.tv){--shw:0px}
@media print{.sh-side,.sh-bar,.sh-scrim{display:none!important}html.shell body{margin-left:0}}
html.prn .sh-side,html.prn .sh-bar,html.prn .sh-scrim{display:none!important}
html.prn.shell body{margin-left:auto}
@media (prefers-reduced-motion:reduce){.sh-side{transition:none}}
@media (min-width:1100px){html.shell .top .brand,html.shell .ptop .brand,html.shell .dtop .brand,html.shell .bar-top .brand{display:none}}
.sh-i{display:inline-grid;place-items:center;flex:none;width:20px;height:20px}
.sh-i svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sh-an{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sh-a .sh-i{color:var(--sky,#9FB0D0);opacity:.9}
.sh-a[aria-current="page"] .sh-i{color:#fff;opacity:1}
html[data-theme="light"] .sh-a .sh-i{color:#0043FD}
.sh-gt .sh-i{opacity:.8}
.sh-new{gap:8px}
.sh-new .sh-i svg{stroke-width:2.2}
.sh-ui{gap:10px}
.sh-ui .sh-i{color:var(--sky,#9FB0D0)}
.sh-out .sh-i{color:inherit}
@media (max-width:520px){.sh-new{display:inline-flex;padding:0 12px}.sh-new span:not(.sh-i){display:none}}
/* um só tamanho de título principal em todas as telas, para a fonte não "pular" ao navegar pelo menu */
@media screen{html.shell:not(.prn) h1:not(.dtop h1):not(#sheet h1):not(.paper h1){font-size:clamp(1.875rem,1.25rem + 2.2vw,2.75rem)!important;line-height:1.1!important}}

/* celular e tablet: faixas de chips e de gates quebram em linhas em vez de cortar o texto na borda */
@media screen and (max-width:899px){
  html.shell .gates,html.shell #fchips.chips,html.shell .chips:not(.chips-row){flex-wrap:wrap;overflow:visible}
  html.shell .gtrack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:10px}
  html.shell .gtrack li{flex:none;min-width:0}
  html.shell .gtrack li *{min-width:0;overflow-wrap:anywhere}
  html.shell .gates li{white-space:normal}
}
@media screen and (max-width:420px){html.shell .gtrack{grid-template-columns:minmax(0,1fr)}}
/* barras de abas e de etapas continuam rolando de lado, com um degradê que mostra que há mais à direita */
@media screen and (max-width:899px){
  html.shell .rx-tabs,html.shell .tabs,html.shell #st-list{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 32px),transparent);mask-image:linear-gradient(90deg,#000 calc(100% - 32px),transparent)}
}
/* o nome e o papel fixos das telas de administração eram de demonstração; quem vale é a pessoa logada na barra da Central */
html.shell .bar-top .me,html.shell .bar-top .who-tag{display:none}
@media screen and (max-width:520px){html.shell .dtop .brand img{width:88px;height:auto}}
/* as telas de administração reservavam uma coluna para o menu próprio, que agora é o da Central */
html.shell .page,html.shell .adm .foot{margin-left:0!important}
/* mesma escala de letra em todas as telas; só o painel de TV (dashboard) cresce em tela grande */
@media (min-width:1920px){html.shell:not(:has(body.tv)){font-size:100%}}
/* estado da sincronização e aviso de conflito */
.sh-sync{display:inline-flex;align-items:center;gap:8px;min-height:32px;padding:0 12px;border:1px solid var(--line);border-radius:99px;font-size:.75rem;color:var(--muted);white-space:nowrap}
.sh-sync[hidden]{display:none}
.sh-sync i{width:8px;height:8px;border-radius:50%;background:var(--green,#4AD892);flex:none}
.sh-sync.pendente i,.sh-sync.salvando i{background:var(--amber,#FFC24B)}
.sh-sync.erro i,.sh-sync.conflito i{background:#ff6b57}
@media (max-width:760px){.sh-synt{display:none}.sh-sync{padding:0 10px}}
.sh-conf{position:sticky;top:var(--shh);z-index:89;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;background:#3A1F1A;border-bottom:1px solid #ff6b57;color:#FFE3DD;font-size:.875rem}
.sh-conf[hidden]{display:none}
.sh-conf p{flex:1 1 260px;min-width:0;overflow-wrap:anywhere}
.sh-conf .btn{min-height:44px}
html[data-theme="light"] .sh-conf{background:#FFEAE5;color:#7A1F10}
@media print{.sh-conf,.sh-sync{display:none!important}}
/* guia de preenchimento */
.sh-guia{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 14px 0 10px;border:1px solid var(--line);border-radius:99px;background:transparent;color:inherit;font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}
.sh-guia:hover{border-color:var(--sky,#9FB0D0)}
.sh-guia .sh-i svg{width:20px;height:20px}
@media (max-width:760px){.sh-guiat{display:none}.sh-guia{padding:0 10px}}
.gd{position:fixed;inset:0 0 0 auto;margin:0;width:min(720px,100%);height:100%;max-height:100%;padding:0;border:0;border-left:1px solid var(--line);background:var(--navy-deep,#0F1626);color:var(--ink,#F9F2F2);overflow:auto;overscroll-behavior:contain}
.gd::backdrop{background:rgba(3,10,28,.65)}
.gd-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px clamp(16px,4vw,32px);background:var(--navy-deep,#0F1626);border-bottom:1px solid var(--line)}
.gd-tt{display:grid;gap:4px;min-width:0}
.gd-eb{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sky,#9FB0D0)}
.gd-top h2{font-family:var(--f-title,inherit);font-size:clamp(1.125rem,1rem + .6vw,1.5rem);line-height:1.2;overflow-wrap:anywhere}
.gd-x{flex:none;min-height:44px;padding:0 18px;border:1px solid var(--line);border-radius:99px;background:transparent;color:inherit;font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}
.gd-x:hover{border-color:var(--sky,#9FB0D0)}
.gd-in{display:grid;gap:24px;width:calc(100% - 2 * clamp(16px,4vw,32px));max-width:620px;margin:0 auto;padding:28px 0 64px}
.gd-lead{font-size:1rem;line-height:1.75;max-width:62ch;overflow-wrap:anywhere}
.gd-c{display:grid;gap:16px;padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--navy,#1B2438)}
.gd-c h3{display:flex;align-items:center;gap:12px;font-family:var(--f-title,inherit);font-size:1.0625rem}
.gd-ci{flex:none;display:grid;place-items:center;width:36px;height:36px;border-radius:12px;background:rgba(148,163,194,.14);color:var(--sky,#9FB0D0)}
.gd-ci svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gd-ul{display:grid;gap:12px;margin:0;padding-left:22px;list-style:disc}
.gd-ul li{font-size:.9375rem;line-height:1.65;overflow-wrap:anywhere;padding-left:4px}
.gd-ul li::marker{color:var(--sky,#9FB0D0)}
.gd-secs{display:grid;gap:12px}
.gd-bt{font-family:var(--f-title,inherit);font-size:1.25rem;margin:8px 0 4px}
.gd-s{border:1px solid var(--line);border-radius:18px;background:var(--navy,#1B2438);min-width:0;overflow:hidden}
.gd-s summary{display:flex;align-items:center;gap:14px;min-height:60px;padding:10px 20px;cursor:pointer;list-style:none;font-weight:600;font-size:1rem}
.gd-s summary::-webkit-details-marker{display:none}
.gd-s summary::after{content:"+";margin-left:auto;font-size:1.5rem;line-height:1;color:var(--sky,#9FB0D0)}
.gd-s[open] summary::after{content:"\2212"}
.gd-s[open] summary{border-bottom:1px solid var(--line)}
.gd-n{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(148,163,194,.16);color:var(--sky,#9FB0D0);font-size:.875rem}
.gd-s[open] .gd-n{background:var(--blue,#0043FD);color:#fff}
.gd-sn{min-width:0;overflow-wrap:anywhere}
.gd-sb{display:grid;gap:0}
.gd-r{display:grid;gap:8px;padding:18px 20px;border-bottom:1px solid var(--line)}
.gd-r:last-child{border-bottom:0}
.gd-r h4{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.gd-rc{min-width:0}
.gd-r p{font-size:.9375rem;line-height:1.7;overflow-wrap:anywhere}
.gd-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none;counter-reset:gd}
.gd-steps li{position:relative;counter-increment:gd;min-height:28px;padding-left:40px;font-size:.9375rem;line-height:1.65;overflow-wrap:anywhere}
.gd-steps li::before{content:counter(gd);position:absolute;left:0;top:0;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1px solid var(--line);font-size:.8125rem;font-weight:600;color:var(--sky,#9FB0D0)}
.gd-cuid{background:rgba(255,194,75,.08);border-left:3px solid var(--amber,#FFC24B)}
.gd-cuid h4{color:var(--amber,#FFC24B)}
.gd-fim{font-size:.9375rem;line-height:1.7;color:var(--muted);text-align:center;padding:8px 0 0;overflow-wrap:anywhere}
@media (min-width:640px){.gd-r{grid-template-columns:150px minmax(0,1fr);gap:20px}}
html[data-theme="light"] .gd,html[data-theme="light"] .gd-top{background:#fff;color:#1B2438}
html[data-theme="light"] .gd-s,html[data-theme="light"] .gd-c{background:#F2F4F8}
html[data-theme="light"] .gd-cuid h4{color:#8A5A00}
html[data-theme="light"] .gd-ci,html[data-theme="light"] .gd-n,html[data-theme="light"] .gd-steps li::before,html[data-theme="light"] .gd-eb{color:#2B4FB8}
html[data-theme="light"] .gd-s[open] .gd-n{color:#fff}
@media print{.sh-guia,.gd{display:none!important}}
/* Respiro: com o menu lateral aberto sobra menos largura, então duas colunas só quando cabem de verdade */
@media (min-width:1100px) and (max-width:1499px){
  html.shell .rx-body,html.shell body[data-sec="devolutiva"] .rx-body{grid-template-columns:minmax(0,1fr)}
  html.shell .rx-out{position:static}
}
@media (min-width:1500px){html.shell .rx-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}}
html.shell .rx-body{gap:24px}
html.shell .rx-in,html.shell .rx-out{gap:20px}
html.shell .rx .card{gap:16px;padding:24px}
@media (max-width:640px){html.shell .rx .card{padding:18px}}
html.shell .rx-g2{gap:16px}
html.shell .rx-tiles{gap:14px}
html.shell .rx-t{padding:16px}
html.shell .rx-tbl th,html.shell .rx-tbl td{padding:10px 12px}
html.shell .rx-live{gap:14px}
html.shell .rx-tabs{gap:10px}

/* ===== RESPIRO GLOBAL =====
   Regra da casa: nada espremido, margem em todos os lados, textos e cartões organizados. Vale para as telas da Central. */
/* mesma margem lateral em todas as telas, qualquer que seja o contêiner da página */
html.shell .wrap,html.shell .col,html.shell .col.wide{width:min(1280px,100% - 2 * clamp(16px,3vw,40px));margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}
@media (min-width:1920px){html.shell .col.wide{width:min(1700px,100% - 2 * clamp(16px,3vw,40px))}}
.ce-main{padding-bottom:96px}
.ce-head{padding:44px 0 28px}
.ce-head h1{margin:8px 0 14px}
.ce-head .lead{line-height:1.7}
.ce-kpis{gap:16px;margin:12px 0 36px}
.ce-k{padding:20px 22px;border-radius:18px}
.ce-k small{font-size:.8125rem;line-height:1.4}
.ce-k b{margin-top:8px}
.ce-sec{margin:40px 0 16px;gap:14px}
.ce-sec h2{line-height:1.25}
.ce-note{margin:0 0 24px;line-height:1.7;max-width:72ch}
.ce-grid{gap:24px}
.ce-card{gap:18px;padding:24px;border-radius:20px}
.ce-top{gap:16px}
.ce-top h3{line-height:1.3}
.ce-risk{gap:10px;line-height:1.5}
.ce-et{gap:10px}
.ce-etapa{padding:5px 12px;line-height:1.4}
.ce-gate{gap:12px;line-height:1.6}
.ce-prox{line-height:1.65}
.ce-resp{gap:10px}
.ce-chip{padding:6px 14px;line-height:1.4}
.ce-act{gap:12px}
.ce-card .ce-act{margin-top:4px}
.ce-blk{margin-top:48px}
.ce-blk h2{margin-bottom:12px}
.ce-form{gap:20px;padding:24px;max-width:600px}
.ce-form label{gap:8px}
.ce-tools{gap:14px;margin-bottom:24px}
.ce-vazio{padding:44px 28px}
.ce-vazio h3{margin-bottom:10px}
.ce-tbl th{padding:14px 18px}
.ce-tbl td{padding:16px 18px;line-height:1.5}
.ce-chk{min-height:48px;padding:0 10px;gap:14px}
.ce-lista{gap:6px}
@media (max-width:640px){
  .ce-head{padding:28px 0 20px}
  .ce-card,.ce-form{padding:20px}
  .ce-k{padding:16px 18px}
  .ce-grid{gap:18px}
  .ce-tbl tr{padding:20px 18px;gap:12px}
}
/* ficha do cliente */
.fi-steps{gap:12px;margin:8px 0 24px}
.fi-step{padding:14px 18px;border-radius:18px}
.fi-now{gap:16px;padding:24px;margin-bottom:28px;border-radius:22px}
.fi-txt{line-height:1.7}
.fi-layout{gap:28px}
.fi-cards{gap:24px}
.fi-card{gap:20px;padding:24px;border-radius:20px}
.fi-card h3{gap:12px}
.fi-fs{gap:20px}
.fi-f{gap:8px}
.fi-dl{gap:18px}
.fi-row{gap:4px}
.fi-side{gap:24px}
.fi-notas{gap:14px}
.fi-notas li{padding:14px 16px}
.fi-save{margin-top:20px}
.fi-tl{margin-top:48px}
.fi-list{margin:20px 0}
.fi-ti{padding-bottom:26px;gap:14px}
.fi-ti::before{left:17px}
@media (max-width:640px){.fi-now,.fi-card{padding:20px}.fi-step{padding:12px 14px}}
/* diálogos e menus */
.sd-in{padding:28px;gap:6px}
.sd-in h2{margin-bottom:8px}
.sd-p{line-height:1.65;margin-bottom:6px}
.sd-r{margin-top:12px;gap:12px}
.sd-l{margin-top:10px}
.sh-um{padding:14px;gap:6px}
.sh-ui{min-height:44px;padding:8px 12px}
.sh-uh{margin:10px 0 4px}
@media (max-width:759px){
  html.shell .ce-wrapt{border:0;background:transparent;border-radius:0}
  html.shell .ce-tbl tr{border:1px solid var(--line);border-radius:20px;background:var(--navy,#1B2438);margin-bottom:16px}
  html.shell .ce-tbl td{grid-template-columns:104px minmax(0,1fr)}
  html[data-theme="light"].shell .ce-tbl tr{background:#fff}
}
/* Gates: o menu lateral reduz a largura útil, então a trilha e as colunas só se abrem de verdade em telas largas */
@media (min-width:1100px) and (max-width:1499px){
  html.shell .gt-grid{grid-template-columns:minmax(0,1fr)}
  html.shell .gtrack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:14px}
  html.shell .gtrack li{flex:none;min-width:0}
}
@media (min-width:1500px){html.shell .gtrack li{min-width:0}}
html.shell .gt-grid{gap:24px}
html.shell .crit{padding:20px 22px;gap:18px}

/* Planejamento: alvos de toque e largura do medidor com o menu lateral aberto */
html.shell input.rng{height:44px}
html.shell .scroll-cue{width:44px;height:44px;border-radius:22px}
html.shell .brand{min-height:44px;display:inline-flex;align-items:center}
@media (min-width:1100px){html.shell .gauge-card{grid-template-columns:250px minmax(0,1fr)}}
html.shell .gauge-card>*{min-width:0;overflow-wrap:anywhere}
html.shell body.plan input:not([type=range]):not([type=checkbox]):not([type=radio]),html.shell body.plan select,html.shell body.plan button:not(.sbtn):not(.pill2){min-height:44px}
html.shell body.plan .pill2{min-height:44px}

.gd-ajuda{display:grid;justify-items:center;gap:14px;padding:24px;border:1px dashed var(--line);border-radius:18px;text-align:center}
.gd-ajuda p{font-size:.9375rem;line-height:1.6;max-width:44ch}
/* navegação das Configurações */
.cf-nav{display:grid;gap:12px;margin:0 0 24px;padding-top:28px}
.cf-eb{font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sky,#9FB0D0)}
.cf-l{display:flex;gap:10px;overflow-x:auto;list-style:none;margin:0;padding:0 0 8px;scrollbar-width:thin}
.cf-l li{flex:none}
.cf-a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:99px;background:transparent;color:inherit;font-weight:600;font-size:.875rem;text-decoration:none;white-space:nowrap}
.cf-a:hover{border-color:var(--sky,#9FB0D0)}
.cf-a[aria-current="page"]{background:var(--blue,#0043FD);border-color:var(--blue,#0043FD);color:#fff}
@media (max-width:760px){.cf-l{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}}
html[data-theme="light"] .cf-eb{color:#2B4FB8}
@media print{.cf-nav{display:none}}
.cf-nav + .ce-head,.cf-nav + .page-head{padding-top:8px}
.cf-nav ~ .ce-head h1{margin-top:4px}

/* sino de avisos da equipe */
.sh-sn{margin-right:4px}
.sh-bell{position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:50%;background:transparent;color:inherit;cursor:pointer}
.sh-bell:hover{border-color:var(--sky,#9FB0D0)}
.sh-bell .sh-i,.sh-bell svg{width:22px;height:22px}
.sh-bd{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;padding:0 5px;border-radius:99px;background:#d93a2b;color:#fff;font-size:.6875rem;font-weight:600;line-height:20px;text-align:center}
.sh-bd[hidden]{display:none}
.sh-avp{width:min(380px,92vw);max-height:min(70dvh,560px);overflow-y:auto}
.sh-avh{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 6px 8px}
.sh-avi{display:grid;gap:4px;padding:12px 14px;border-radius:10px;color:inherit;font-size:.875rem;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}
.sh-avi:hover{background:rgba(148,163,194,.14)}
.sh-avi.nova{border-left:3px solid var(--blue-2,#3C68FF);background:rgba(0,67,253,.1)}
.sh-avi small{color:var(--muted,#A7B2C7)}
.sh-avt{display:flex;align-items:center;justify-content:center;min-height:44px;margin-top:6px;border-top:1px solid var(--line,rgba(148,163,194,.22));color:var(--sky,#9FB0D0);font-size:.875rem;font-weight:600;text-decoration:none}
html[data-theme="light"] .sh-bell,html[data-theme="light"] .sh-avi{color:#1B2438}
@media (max-width:520px){.sh-sn{position:static}.sh-sn .sh-avp{position:fixed;left:12px;right:12px;top:68px;width:auto}}

/* ---------- formulários e cartões: um padrão só para o sistema inteiro ----------
   Rótulo em cima, campo embaixo, largura total, 24px de respiro nos cartões e 20px entre campos. */
.ce-card{gap:20px;padding:24px;border-radius:20px}
.ce-lab{display:grid;gap:8px;min-width:0;align-content:start}
.ce-lab>span:first-child{font-size:.8125rem;font-weight:600;line-height:1.4;color:var(--ink)}
.ce-lab>.ce-in,.ce-lab>select,.ce-lab>input,.ce-lab>textarea{width:100%}
.ce-in{min-height:46px}
select.ce-in{cursor:pointer}
textarea.ce-in{min-height:96px;padding:12px 14px;line-height:1.6;resize:vertical}
.ce-in::placeholder{color:var(--muted);opacity:.75}
.ce-in:focus-visible,.cht-tw .ce-in:focus-visible{outline:2px solid var(--sky,#9FB0D0);outline-offset:2px;border-color:transparent}
html[data-theme="light"] .ce-in:focus-visible{outline-color:#0043FD}
.ce-erro{margin:0;font-size:.8125rem;line-height:1.5;color:var(--bd,#ff8a7a)}
.ce-erro:empty{display:none}
.ce-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:12px}
.ce-acoes .btn{min-height:48px}
.ch-g2{gap:20px 24px}
.ch-form{gap:24px}

/* aviso rápido de confirmação (Tarefa criada, Documento salvo...), embaixo e centralizado, sem atrapalhar a tela */
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:200;max-width:min(560px,calc(100vw - 32px));transform:translate(-50%,24px);opacity:0;pointer-events:none;padding:14px 22px;border:1px solid var(--line);border-radius:14px;background:var(--navy,#1B2438);color:var(--ink);font-size:.9375rem;font-weight:600;line-height:1.5;text-align:center;box-shadow:0 18px 40px -18px rgba(0,0,0,.7);transition:opacity .25s,transform .25s}
.toast.on{opacity:1;transform:translate(-50%,0)}
html[data-theme="light"] .toast{background:#fff;color:#1B2438}
@media (prefers-reduced-motion:reduce){.toast{transition:none}}
.sh-pend{margin-left:auto;min-width:20px;padding:0 6px;border-radius:99px;background:var(--blue,#0043FD);color:#fff;font-size:.6875rem;font-weight:600;line-height:20px;text-align:center}
.sh-l li[hidden]{display:none}

/* ============================================================
   Camada de padrão da interface (IDV): rolagem, menu recolhível, guia centralizado,
   etiquetas, linhas de informação e calendário. Vale em todas as telas da Central.
   ============================================================ */

/* ---------- barras de rolagem na IDV (vertical e horizontal) ---------- */
:root,:root *{scrollbar-width:thin;scrollbar-color:rgba(60,104,255,.55) transparent}
:root[data-theme="light"],:root[data-theme="light"] *{scrollbar-color:rgba(0,67,253,.5) transparent}
::-webkit-scrollbar{width:12px;height:12px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(60,104,255,.5);border:3px solid transparent;background-clip:content-box;border-radius:99px}
::-webkit-scrollbar-thumb:hover{background:rgba(60,104,255,.85);border:3px solid transparent;background-clip:content-box}
::-webkit-scrollbar-corner{background:transparent}
html[data-theme="light"] ::-webkit-scrollbar-thumb{background:rgba(0,67,253,.45);border:3px solid transparent;background-clip:content-box}

/* ---------- menu lateral: nunca rola para o lado, texto longo quebra ---------- */
.sh-side{overflow-x:hidden}
.sh-a{min-width:0}
.sh-an{min-width:0;white-space:normal;overflow-wrap:anywhere;line-height:1.3}

/* ---------- menu recolhível (computador): seta para esconder e para mostrar ---------- */
.sh-tg{display:none;place-items:center;width:44px;height:44px;border:1px solid var(--line,rgba(148,163,194,.22));border-radius:12px;background:transparent;color:var(--ink,#F9F2F2);cursor:pointer;flex:none}
.sh-tg:hover{border-color:var(--sky,#9FB0D0)}
.sh-tg:focus-visible{outline:3px solid var(--sky,#9FB0D0);outline-offset:2px}
.sh-tg svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
html[data-theme="light"] .sh-tg{color:#1B2438}
@media (min-width:1100px){
  .sh-tg{display:inline-grid}
  html.shell body{transition:margin-left .25s ease}
  .sh-side{transition:transform .25s ease,visibility .25s}
  html.shell.menu-off{--shw:0px}
  html.shell.menu-off .sh-side{transform:translateX(-100%);visibility:hidden}
}
@media (prefers-reduced-motion:reduce){html.shell body,.sh-side{transition:none}}

/* ---------- barra de etapas do guia (Próximo): flutua no centro, translúcida, fora do menu ---------- */
.navbar{left:50%!important;right:auto!important;bottom:16px!important;transform:translateX(-50%);width:min(680px,calc(100vw - 32px));border:1px solid var(--line);border-radius:20px;background:rgba(15,22,38,.72);backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);box-shadow:0 18px 40px -22px rgba(0,0,0,.7);padding:8px 10px}
html[data-theme="light"] .navbar{background:rgba(255,255,255,.78)}
@media (min-width:1100px){html.shell .navbar{left:calc(var(--shw) + (100vw - var(--shw)) / 2)!important;width:min(680px,calc(100vw - var(--shw) - 48px))}}
body:has(.navbar){padding-bottom:96px}
.n-mid{padding:0 6px}

/* ---------- etiquetas e situações: sempre alinhadas, nunca uma sobre a outra ---------- */
.seg-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 12px;border:1px solid var(--line);border-radius:99px;font-family:var(--f-body);font-size:.75rem;font-weight:600;line-height:1.3;text-align:center;white-space:normal;color:var(--ink)}
.seg-chip.ok{color:var(--good,var(--green,#4AD892));border-color:currentColor}
.seg-chip.warn{color:var(--amber,#FFC24B);border-color:currentColor}
.seg-chip.bad{color:var(--bad,#ff9b8c);border-color:currentColor}
.seg-chip.neutro{color:var(--muted)}
html[data-theme="light"] .seg-chip.warn{color:#7a5000}
.seg-tags{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:center;margin-top:6px}
.ce-tag{display:inline-flex;align-items:center;white-space:nowrap}

/* ---------- linhas de informação (texto à esquerda, valor à direita, mesmo padrão em todas as ferramentas) ---------- */
.mq-ni li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 16px;align-items:start}
.mq-ni li>div{min-width:0;overflow-wrap:anywhere}
.mq-ni strong{max-width:min(260px,46vw);text-align:right;overflow-wrap:anywhere;line-height:1.25;font-size:clamp(.9375rem,.9rem + .3vw,1.125rem)}
.mq-ni strong .seg-chip{font-size:.75rem}
@media (max-width:560px){.mq-ni li{grid-template-columns:minmax(0,1fr)}.mq-ni strong{max-width:none;text-align:left}}

/* ---------- tabela de clientes: vira cartões alinhados quando o espaço é curto (com o menu aberto, abaixo de 1500 px) ---------- */
@media (max-width:1499px){
  .ce-tbl,.ce-tbl tbody{display:block}
  .ce-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ce-tbl tbody{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}
  .ce-tbl tr{display:grid;gap:10px;align-content:start;padding:18px 20px;border:1px solid var(--line);border-radius:16px;background:rgba(148,163,194,.04)}
  .ce-tbl td{display:grid;grid-template-columns:132px minmax(0,1fr);gap:10px;align-items:start;padding:0;border:0;overflow-wrap:anywhere}
  .ce-tbl td::before{content:attr(data-l);font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:3px}
  .ce-tbl td:not([data-l])::before{content:none}
  .ce-wrapt{overflow:visible}
  .ce-tbl td[data-l="Ações"]{padding-top:6px;border-top:1px solid var(--line)}
}
@media (max-width:420px){.ce-tbl td{grid-template-columns:minmax(0,1fr)}}
.ce-tbl td[data-l="Cliente"] b{display:block;overflow-wrap:anywhere}
.ce-act{align-items:center}

/* ---------- calendário na IDV ---------- */
.cal-w{position:relative;display:flex;align-items:center;width:100%;min-width:0}
.cal-w>input{flex:1 1 auto;min-width:0;padding-right:48px}
.cal-w>input[type="date"]::-webkit-calendar-picker-indicator{display:none}
.cal-w>input[type="date"]{appearance:none;-webkit-appearance:none}
.cal-b{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:10px;background:transparent;color:var(--sky,#9FB0D0);cursor:pointer}
.cal-b:hover{background:rgba(148,163,194,.14);color:var(--ink)}
.cal-b:focus-visible{outline:3px solid var(--sky,#9FB0D0);outline-offset:1px}
.cal{position:absolute;z-index:300;width:320px;max-width:calc(100vw - 16px);padding:14px;border:1px solid var(--line);border-radius:18px;background:var(--navy,#1B2438);color:var(--ink);box-shadow:0 28px 60px -24px rgba(0,0,0,.75);font-family:var(--f-body)}
html[data-theme="light"] .cal{background:#fff;box-shadow:0 24px 50px -24px rgba(27,36,56,.5)}
.cal-sheet{position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;width:auto;max-width:none;border-radius:20px}
.cal-h{display:flex;align-items:center;gap:4px;margin:0 0 10px}
.cal-t{flex:1;text-align:center;font-family:var(--f-title,inherit);font-size:.9375rem}
.cal-t::first-letter{text-transform:uppercase}
.cal-n{display:grid;place-items:center;width:36px;height:36px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:1rem;cursor:pointer}
.cal-n:hover{border-color:var(--line);background:rgba(148,163,194,.1)}
.cal-g{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}
.cal-s{padding:4px 0;text-align:center;font-size:.6875rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cal-d{aspect-ratio:1;min-height:38px;display:grid;place-items:center;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:.875rem;cursor:pointer}
.cal-d:hover:not(:disabled){background:rgba(148,163,194,.14)}
.cal-o{color:var(--muted);opacity:.55}
.cal-hoje{border-color:var(--sky,#9FB0D0)}
.cal-sel,.cal-sel:hover{background:var(--blue,#0043FD)!important;border-color:var(--blue,#0043FD);color:#fff;opacity:1}
.cal-d:disabled{opacity:.25;cursor:not-allowed}
.cal-d:focus-visible,.cal-n:focus-visible,.cal-a:focus-visible{outline:3px solid var(--sky,#9FB0D0);outline-offset:1px}
.cal-f{display:flex;gap:8px;justify-content:space-between;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}
.cal-a{min-height:40px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:.8125rem;font-weight:600;cursor:pointer}
.cal-a:hover{border-color:var(--sky,#9FB0D0)}
@media print{.cal,.cal-b{display:none}}
.ce-tbl td>*{min-width:0}
.ce-cl{display:grid;gap:2px;justify-items:start}
.ce-cl .seg-tags{margin-top:4px}
.ce-etapa{justify-self:start}

/* campo de arquivo no padrao da IDV (todas as telas) */
input[type=file]:not(.sr):not([hidden]){display:flex;align-items:center;width:100%;min-height:52px;padding:6px 12px 6px 6px;border:1px dashed var(--line);border-radius:12px;background:var(--navy-deep,#0F1626);color:var(--muted);font:inherit;font-size:.875rem;cursor:pointer;min-width:0}
input[type=file]:not(.sr):not([hidden]):hover{border-color:var(--sky,#9FB0D0)}
input[type=file]:not(.sr):not([hidden]):focus-visible{outline:3px solid var(--sky,#9FB0D0);outline-offset:2px}
input[type=file]:not(.sr):not([hidden])::file-selector-button{min-height:40px;margin:0 14px 0 0;padding:0 18px;border:0;border-radius:99px;background:var(--blue,#0043FD);color:#fff;font:inherit;font-weight:600;font-size:.875rem;cursor:pointer;transition:background .15s}
input[type=file]:not(.sr):not([hidden])::file-selector-button:hover{background:var(--blue-2,#3C68FF)}
@media (prefers-reduced-motion:reduce){input[type=file]:not(.sr):not([hidden])::file-selector-button{transition:none}}

/* acao de exclusao: contorno de aviso, nunca azul de acao principal */
.mini.ce-del{border-color:var(--bad,#ff9b8c);color:var(--bad,#ff9b8c)}
.mini.ce-del:hover{background:rgba(255,155,140,.12)}
.btn.ce-del-ok{background:#b3261e;border-color:#b3261e;color:#fff}
.btn.ce-del-ok:disabled{opacity:.45;cursor:not-allowed}

/* rede de seguranca: nenhum bloco se move, inclina ou levanta quando o mouse passa por cima, em qualquer tela */
:is([class*="card"],[class*="kpi"],.lk,.orb,.s4,.node,.person,.cardx,.feature,.panel,.paper,.tk-row,.bb-card):not(dialog):is(:hover,:focus-visible){transform:none!important;translate:none!important;rotate:none!important;scale:none!important}
