/* MSNBOT Luz 4.6.1 — correção definitiva da linha Luz 4.6 */
:root{
  --v461-topbar-height:38px;
  --v461-dock-height:82px;
  --v461-page-gap:clamp(10px,1.35vw,24px);
  --block-rgb:244,247,252;
  --block-strong-rgb:255,255,255;
  --block-ink:#14213a;
  --block-muted:#5f6f89;
  --block-border:rgba(63,84,119,.18);
  --block-hover:rgba(40,120,245,.09);
  --chat-shade:rgba(255,255,255,.06);
  --chat-aux-ink:#14213a;
  --chat-aux-shadow:0 1px 2px rgba(255,255,255,.82);
  scrollbar-gutter:stable;
}
html[data-theme="dark"]{
  --block-rgb:21,28,42;
  --block-strong-rgb:28,37,54;
  --block-ink:#f2f6ff;
  --block-muted:#bdc9dc;
  --block-border:rgba(189,207,235,.18);
  --block-hover:rgba(109,166,255,.12);
}
html,body{width:100%;max-width:100%;min-height:100%;overflow-x:clip!important}
html{overflow-y:auto!important}
body{height:auto!important;max-height:none!important;overflow-y:visible!important}

/* Uma única barra de rolagem: a da página, no canto direito da tela. */
main.page:not(.auth-page){
  box-sizing:border-box!important;
  width:calc(100% - (2 * var(--v461-page-gap)))!important;
  max-width:none!important;
  min-height:calc(100dvh - var(--v461-topbar-height))!important;
  height:auto!important;
  max-height:none!important;
  margin:0 var(--v461-page-gap)!important;
  padding-inline:0!important;
  overflow:visible!important;
}
body:not(.dock-autohide).dock-pos-bottom main.page:not(.auth-page){
  min-height:calc(100dvh - var(--v461-topbar-height))!important;
  height:auto!important;
  max-height:none!important;
  margin-bottom:0!important;
  padding-bottom:calc(var(--v461-dock-height) + env(safe-area-inset-bottom,0px))!important;
  overflow:visible!important;
}
body.dock-autohide.dock-pos-bottom main.page:not(.auth-page){padding-bottom:18px!important}
body:not(.dock-autohide).dock-pos-left main.page:not(.auth-page){padding-left:calc(var(--v461-dock-height) + env(safe-area-inset-left,0px))!important}
body:not(.dock-autohide).dock-pos-right main.page:not(.auth-page){padding-right:calc(var(--v461-dock-height) + env(safe-area-inset-right,0px))!important}

/* O CHAT mantém somente a rolagem própria da lista e das mensagens. */
body:has(.msn-v33-shell) main.page:not(.auth-page){
  min-height:0!important;
  height:calc(100dvh - var(--v461-topbar-height) - var(--v461-dock-height) - env(safe-area-inset-bottom,0px))!important;
  max-height:calc(100dvh - var(--v461-topbar-height) - var(--v461-dock-height) - env(safe-area-inset-bottom,0px))!important;
  padding-bottom:0!important;
  overflow:hidden!important;
}
body:has(.msn-v33-shell).dock-autohide main.page:not(.auth-page){height:calc(100dvh - var(--v461-topbar-height) - 18px)!important;max-height:calc(100dvh - var(--v461-topbar-height) - 18px)!important}

/* Transparência global: somente o fundo recebe alfa; textos e ícones ficam íntegros. */
body :where(
  .panel,.card,.dash-panel,.content-card,.summary-card,.filters-card,.table-wrap,
  .settings-card,.settings-personal-card,.settings-shell,.settings-content,.settings-nav,
  .d42-period,.d42-overview>article,.d42-kpis>a,.d42-comparison,.d42-finance,.d42-origin,.d42-interests,.d441-audience-trend,.d44-sales,
  .audience-shell,.audience-list-panel,.audience-filters,.campaign-shell,.broadcast-shell,.schedule-shell,.flow-shell,.automation-shell,
  .billing-shell,.billing-table-card,.billing-detail,.billing-subscriptions,.billing-clients,.billing-kpis>article,.billing-period-bar,.billing-section-head,.billing-plan-grid>article,
  .tasks-shell,.task-list-card,.task-detail-card,.utility-filterbar,.utilities-stats>article,.kanban-column,
  .schedule-shell,.schedule-calendar-card,.schedule-side,.schedule-detail-card,.schedule-stats>article,.month-grid,.week-grid,.day-agenda,
  .flow-editor-shell,.flow-list-card,.flow-editor-left,.flow-main,.flow-inspector,.flow-stage-toolbar,.flow-folder-tile,.flow-stats>article,
  .software-update>.update-card,.software-update>.update-available,.super-update,
  .msn-v33-inbox,.msn-v33-contact-card,.msn-v33-header,.msn-v33-chat-head,.msn-v33-composer,
  .auth-card,.prefs-content,.prefs-sidebar
){
  background-color:rgba(var(--block-rgb),var(--panel-alpha))!important;
  color:var(--block-ink);
  border-color:var(--block-border)!important;
  backdrop-filter:blur(14px) saturate(118%);
}
body :where(input,select,textarea,.small-btn,.button,.period-tabs,.search-box){color:var(--block-ink)}
body :where(.muted,.field-help,.conversation-meta){color:var(--block-muted)!important}

/* Cobranças: superfície legível sem apagar o papel de parede. */
.billing-table-card,.billing-detail,.billing-subscriptions,.billing-clients{background-color:rgba(var(--block-rgb),var(--panel-alpha))!important}
.billing-table-wrap{background:rgba(var(--block-strong-rgb),calc(var(--panel-alpha) * .46))!important;border-radius:0 0 20px 20px}
.billing-table :where(th,td,.billing-client,.billing-amount,strong){color:var(--block-ink)}
.billing-table :where(th,small),.billing-client small{color:var(--block-muted)!important}
.billing-table th,.billing-table td{border-color:var(--block-border)!important}
.billing-table tbody tr:hover,.billing-table tbody tr.selected{background:var(--block-hover)!important}
.billing-status.status-pending,.billing-status.status-overdue,.billing-status.status-due_today,.billing-status.status-paid,.billing-status.status-cancelled{filter:none;text-shadow:none}

/* Utilitários: cada APP recebe uma base própria e mantém o ícone colorido. */
.launchpad-head{padding:13px 16px;border:1px solid var(--block-border);border-radius:18px;background:rgba(var(--block-rgb),var(--panel-alpha));backdrop-filter:blur(14px) saturate(118%)}
.launchpad-head h1,.launchpad-app strong,.launchpad-hint{color:var(--block-ink)!important;text-shadow:none!important}
.launchpad-grid{gap:clamp(10px,1.35vw,18px)!important}
.launchpad-app{box-sizing:border-box;padding:10px 8px;border:1px solid var(--block-border);border-radius:18px;background:rgba(var(--block-rgb),var(--panel-alpha));backdrop-filter:blur(13px) saturate(116%)}
.launchpad-app:hover{background-color:rgba(var(--block-strong-rgb),var(--panel-alpha));border-color:color-mix(in srgb,var(--accent,#2878f5) 45%,var(--block-border))!important;box-shadow:0 12px 28px rgba(14,29,55,.14)}
.launchpad-dock-toggle,.app-rename-pop>summary{background:rgba(var(--block-strong-rgb),.72)!important;color:var(--block-ink)!important;border-color:var(--block-border)!important}
.launchpad-hint{display:block;width:max-content;max-width:100%;margin:12px auto 0;padding:7px 12px;border-radius:999px;background:rgba(var(--block-rgb),var(--panel-alpha));font-weight:750}

/* Painel: botão de intervalo e barras mais fáceis de ler. */
.d42-period [data-calendar-open]{display:grid!important;place-items:center;font-size:18px!important;line-height:1!important;min-width:34px;min-height:34px;padding:4px!important}
.d45-percent{display:none!important}
.d44-comparison-stage{align-items:center!important}
.d45-bar-group>div{gap:5px!important}
.d45-bar-group i{width:min(92%,34px)!important;min-width:10px!important;border-radius:7px 7px 3px 3px!important}

/* CHAT: fontes maiores, contenção e reticências apenas nos campos de uma linha. */
.msn-v33-shell{font-size:15px!important;min-width:0;max-width:100%}
.msn-v33-inbox,.msn-v33-contact-card{font-size:14px!important;min-width:0}
.msn-v33-conversation{min-width:0;padding:10px 9px!important;gap:10px!important}
.msn-v33-conversation .conversation-row{min-width:0}
.msn-v33-conversation .conversation-row strong{font-size:clamp(14px,calc(14.5px * var(--font-scale,1)),17px)!important;line-height:1.3!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.msn-v33-conversation .conversation-row small{font-size:clamp(12px,calc(12.5px * var(--font-scale,1)),15px)!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.msn-v33-conversation .conversation-row time{font-size:clamp(11px,calc(11.5px * var(--font-scale,1)),13px)!important;white-space:nowrap!important}
.msn-v33-conversation .conversation-meta{display:block;max-width:100%;font-size:clamp(11px,calc(11.5px * var(--font-scale,1)),13px)!important;line-height:1.35!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.unread-badge{min-width:20px!important;height:20px!important;font-size:10px!important}
.msn-v33-chat,.msn-v33-messages{min-width:0;max-width:100%;overflow-x:hidden!important}
.msn-v33-chat-head h2{font-size:clamp(16px,calc(17px * var(--font-scale,1)),20px)!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.msn-v33-chat-head :where(span,small){font-size:clamp(11.5px,calc(12px * var(--font-scale,1)),14px)!important}
.message-bubble-v33{box-sizing:border-box;max-width:min(82%,680px)!important;min-width:0;font-size:clamp(15px,calc(15.5px * var(--font-scale,1)),18px)!important;line-height:1.46!important;padding:9px 12px 8px!important;overflow:hidden}
.message-bubble-v33 .message-content,.message-bubble-v33 .message-content>span{display:block;max-width:100%;white-space:pre-wrap!important;overflow-wrap:anywhere!important;word-break:break-word!important}
.message-agent,.message-type-v33{font-size:clamp(11px,calc(11.5px * var(--font-scale,1)),13px)!important}
.message-bubble-v33 footer{font-size:clamp(10.5px,calc(11px * var(--font-scale,1)),12.5px)!important;line-height:1.2!important;white-space:nowrap!important}
.message-error{font-size:12px!important;line-height:1.35!important;overflow-wrap:anywhere}
.composer-form-v33{min-width:0}.composer-form-v33 textarea{box-sizing:border-box;min-width:0;max-width:100%;font-size:clamp(15px,calc(15.5px * var(--font-scale,1)),18px)!important;line-height:1.4!important;overflow-x:hidden;white-space:pre-wrap;overflow-wrap:anywhere}
.contact-card-top h2{font-size:clamp(17px,calc(18px * var(--font-scale,1)),21px)!important;overflow-wrap:anywhere}
.contact-card-top p,.ticket-state{font-size:clamp(12px,calc(12.5px * var(--font-scale,1)),14px)!important;overflow-wrap:anywhere}
.contact-core{font-size:clamp(12.5px,calc(13px * var(--font-scale,1)),15px)!important;gap:10px!important}
.contact-core>div{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)!important;align-items:start}
.contact-core dt,.contact-core dd{min-width:0;line-height:1.35}
.contact-core dd{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.contact-card-section>summary{font-size:clamp(12.5px,calc(13px * var(--font-scale,1)),15px)!important}
.contact-data,.contact-editor label,.contact-card-section .side-form label,.automation-card,.assignment-select select,.assignment-select .small-btn{font-size:clamp(12px,calc(12.5px * var(--font-scale,1)),14px)!important}

/* Recibos reais: falha é diferente de mensagem aguardando entrega. */
.delivery-ticks{display:inline-flex!important;align-items:center;min-width:14px;margin-left:4px;padding:0!important;font-family:Arial,sans-serif!important;font-size:0!important;font-weight:900!important;letter-spacing:0!important;white-space:nowrap;opacity:1!important}
.delivery-ticks::before{font-size:15px;line-height:1;letter-spacing:-3px}
.delivery-ticks.sent::before{content:"✓";letter-spacing:0;color:#e03a47}
.delivery-ticks.delivered::before{content:"✓✓";color:#e6ad00}
.delivery-ticks.read::before{content:"✓✓";color:#13975a}
.delivery-error{display:inline-grid!important;place-items:center;width:16px;height:16px;margin-left:4px;border-radius:50%;background:#d93545;color:#fff;font:900 11px/1 Arial,sans-serif;opacity:1!important}

/* Fundo do CHAT: cover preserva proporção, preenche a área e nunca estica. */
.msn-v33-messages,.msn-messages{position:relative!important;isolation:isolate;background-image:var(--chat-wallpaper)!important;background-position:center center!important;background-size:cover!important;background-repeat:no-repeat!important;color:var(--chat-aux-ink)}
.chat-background-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;z-index:-2!important;pointer-events:none;background:#0b1018}
.chat-background-shade{position:absolute!important;inset:0!important;z-index:-1!important;pointer-events:none;background:var(--chat-shade)!important;transition:background .22s ease}
body.chat-bg-is-light{--chat-aux-ink:#111827;--chat-aux-shadow:0 1px 2px rgba(255,255,255,.9)}
body.chat-bg-is-dark{--chat-aux-ink:#fff;--chat-aux-shadow:0 1px 3px rgba(0,0,0,.88)}
html[data-theme="light"] body.chat-bg-is-light{--chat-shade:rgba(255,255,255,.06)}
html[data-theme="light"] body.chat-bg-is-dark{--chat-shade:rgba(238,243,250,.18)}
html[data-theme="dark"] body.chat-bg-is-light{--chat-shade:rgba(1,7,17,.25)}
html[data-theme="dark"] body.chat-bg-is-dark{--chat-shade:rgba(0,5,14,.08)}
.msn-v33-messages :where(.msn-day-label,.msn-no-messages>*,.message-window-banner){color:var(--chat-aux-ink)!important;text-shadow:var(--chat-aux-shadow)!important}

/* Controle de tom do fundo do CHAT. */
.chat-wallpaper-form-v461{display:grid;gap:12px}
.chat-tone-choice-v461{display:flex;gap:8px;flex-wrap:wrap;margin:0;padding:10px;border:1px solid var(--block-border);border-radius:13px}
.chat-tone-choice-v461 legend{padding:0 5px;font-size:12px;font-weight:800;color:var(--block-muted)}
.chat-tone-choice-v461 label{margin:0;cursor:pointer}
.chat-tone-choice-v461 input{position:absolute;opacity:0;pointer-events:none}
.chat-tone-choice-v461 span{display:block;padding:8px 11px;border:1px solid var(--block-border);border-radius:999px;background:rgba(var(--block-strong-rgb),.56);font-size:12px;font-weight:750}
.chat-tone-choice-v461 input:checked+span{border-color:var(--accent,#2878f5);background:color-mix(in srgb,var(--accent,#2878f5) 14%,transparent);color:var(--accent,#2878f5)}

@media(max-width:760px){
  :root{--v461-page-gap:7px;--v461-dock-height:72px}
  main.page:not(.auth-page){width:calc(100% - 14px)!important;margin-inline:7px!important}
  body:has(.msn-v33-shell) main.page:not(.auth-page){height:calc(100dvh - var(--v461-topbar-height) - var(--v461-dock-height) - env(safe-area-inset-bottom,0px))!important;max-height:calc(100dvh - var(--v461-topbar-height) - var(--v461-dock-height) - env(safe-area-inset-bottom,0px))!important}
  .message-bubble-v33{max-width:90%!important}
  .msn-v33-conversation .conversation-row strong{font-size:14.5px!important}
  .msn-v33-conversation .conversation-row small{font-size:12.5px!important}
  .contact-core>div{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr)!important}
  .launchpad-head{align-items:stretch!important;gap:9px}.launchpad-search{width:100%;max-width:none}
  .billing-table-wrap{max-width:100%;overflow-x:auto}
}
@media(max-width:760px) and (orientation:landscape){:root{--v461-dock-height:58px}}
@media(prefers-reduced-motion:reduce){.chat-background-video{display:none!important}.chat-background-shade{transition:none}}
