/* triobum AI chat: escopo próprio; a página e as modais existentes permanecem intactas. */
.ai-chat-actions--white{align-items:center}
.ai-chat-actions--white .ai-chat-reply-label{display:inline-flex;margin-top:1px;padding:7px 0;min-height:36px;text-decoration:underline;text-underline-offset:3px}
.ai-chat-reply-label:focus-visible{outline:2px solid #83baff;outline-offset:3px}
/* Acesso no header: o SVG aprovado precisa de dimensões antes de abrir a modal. */
.header-ai-toggle{box-sizing:border-box;display:grid;place-items:center;flex:none;width:36px;height:36px;padding:6px;margin:0;border:0;border-radius:50%;background:#f1f2f3;color:#17191b;cursor:pointer;appearance:none;-webkit-appearance:none;transition:background .15s ease}
.header-ai-toggle .ai-chat-access-glyph{display:block;width:24px;height:24px}
.header-ai-toggle:hover,.header-ai-toggle[aria-expanded="true"]{background:#83baff}
.header-ai-toggle:focus-visible{outline:2px solid #83baff;outline-offset:4px}
@media(max-width:700px){.header-ai-toggle{width:34px;height:34px;padding:5px}}
@media(max-width:370px){.header-ai-toggle{width:30px;height:30px;padding:4px}.header-ai-toggle .ai-chat-access-glyph{width:22px;height:22px}}
.ai-chat-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.ai-chat-dialog:not([open]){display:none}
/* Mesma superfície da busca; WAAPI no JS permite reverter a abertura em curso. */
.ai-chat-dialog{box-sizing:border-box;position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#fff;color:var(--ink,#17191c);overflow:hidden;display:flex;flex-direction:column;opacity:1;transform:none;isolation:isolate}
.ai-chat-dialog::backdrop{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.ai-chat-header{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:76px;padding:18px clamp(20px,4vw,52px);border-bottom:1px solid #272727;background:#000;flex:0 0 auto;z-index:2}
.ai-chat-brand{display:flex;align-items:center;gap:10px;min-width:0;color:#fff;font-weight:800;letter-spacing:-.055em;font-size:clamp(1.22rem,2vw,1.65rem);white-space:nowrap}
.ai-chat-brand-name{display:inline-block}.ai-chat-badge{font-size:.55em;letter-spacing:.13em;border:1px solid #83baff;border-radius:999px;padding:.4em .7em;line-height:1;background:#83baff;color:#17191b;font-weight:800}
.ai-chat-mark{position:relative;display:inline-flex;align-items:flex-end;justify-content:center;gap:2px;width:27px;height:27px;margin-left:1px;color:#fff;overflow:visible}
.ai-chat-mark i{display:block;width:3px;height:19px;border-radius:2px;transform-origin:50% 100%;animation:ai-chat-mark-bars 4.8s ease-in-out infinite both}
.ai-chat-mark i:nth-child(1){background:#b5d253;animation-delay:-.32s}.ai-chat-mark i:nth-child(2){background:#ffc060;animation-delay:-.16s}.ai-chat-mark i:nth-child(3){background:#ff795f}.ai-chat-mark i:nth-child(4){background:#ee6aa6;animation-delay:.16s}.ai-chat-mark i:nth-child(5){background:#8c74d9;animation-delay:.32s}.ai-chat-mark i:nth-child(6){background:#3088da;animation-delay:.48s}
.ai-chat-mark b{position:absolute;inset:0;display:grid;place-items:center;font-size:28px;line-height:1;opacity:0;transform:scale(.45) rotate(-18deg);animation:ai-chat-mark-star 4.8s ease-in-out infinite both;color:#fff}
@keyframes ai-chat-mark-bars{0%,25%{height:19px;opacity:1;transform:rotate(0) scaleX(1)}44%,67%{height:10px;opacity:.18;transform:rotate(42deg) scaleX(.45)}82%,100%{height:19px;opacity:1;transform:rotate(0) scaleX(1)}}
@keyframes ai-chat-mark-star{0%,29%{opacity:0;transform:scale(.45) rotate(-18deg)}48%,70%{opacity:1;transform:scale(1) rotate(0)}90%,100%{opacity:0;transform:scale(.45) rotate(18deg)}}
.ai-chat-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.ai-chat-nav-button{min-height:42px;padding:9px 15px;border:1px solid #5f5f5f;border-radius:999px;background:transparent;color:#fff;font-size:.84rem;font-weight:680;white-space:nowrap}.ai-chat-nav-button:hover{border-color:#fff;background:#171717}
.ai-chat-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:10px;margin:0;border:0;border-radius:50%;background:#fff;color:#17191c;transition:background .15s ease}.ai-chat-close:hover{background:#83baff}.ai-chat-close:focus-visible{outline:2px solid #83baff;outline-offset:4px}.ai-chat-close svg{width:22px;height:22px}
.ai-chat-main{display:flex;flex:1 1 auto;min-height:0;overflow:hidden;background:#fff}.ai-chat-screen{width:100%;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c8cdd1 transparent;padding:clamp(25px,4vw,54px) clamp(20px,5vw,76px) 36px;outline:none}
/* As transições internas vivem nos panes incoming/outgoing definidos no fechamento deste arquivo. */
.ai-chat-page{width:min(100%,900px);min-height:100%;margin:0 auto;display:flex;flex-direction:column;justify-content:center}.ai-chat-page--thread{justify-content:flex-start;width:min(100%,980px)}
.ai-chat-heading{font-size:clamp(2rem,4vw,3.25rem);line-height:1.08;letter-spacing:-.06em;margin:0 0 15px;color:#17191c}.ai-chat-description{max-width:650px;color:var(--muted,#5c626b);font-size:1rem;line-height:1.6;margin:0 0 28px}
/* Contexto: vetor literal e medidas da prévia aprovada de 70%, sem redesenho. */
.ai-chat-context-button{box-sizing:border-box;display:flex;align-items:center;gap:12px;width:100%;max-width:100%;padding:16px 18px;margin:0 0 40px;border:1px solid #d8d8d8;border-radius:14px;background:#fff;color:#17191c;text-align:left;font:inherit}
.ai-chat-context-button:hover{border-color:#17191c;background:#f8faf8}
.ai-chat-context-button>.ai-chat-book-glyph{display:block;flex:none;width:auto;height:26.1078125px;max-width:none;margin:0;padding:0;overflow:visible;color:#17191c}
.ai-chat-context-button>.ai-chat-context-copy{display:flex;flex:1;flex-direction:column;justify-content:center;gap:5px;min-width:0}
.ai-chat-context-copy span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ai-chat-context-lead{color:#17191c;font-size:14px;font-weight:600;line-height:1.4;letter-spacing:0}
.ai-chat-context-title{color:#555;font-size:14px;font-weight:400;line-height:1.5}
.ai-chat-context-button[data-selected="true"]{border-color:#9ab94a;background:#f7fbe9}
.ai-chat-suggestions-label{margin:0 0 20px;color:#70767d;font-size:.76rem;font-weight:760;letter-spacing:.15em;text-transform:uppercase}.ai-chat-suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ai-chat-suggestion{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:72px;padding:16px 18px;border:1px solid #d8dcdf;border-radius:14px;background:#fafafa;color:#17191c;text-align:left;line-height:1.42;font-size:.94rem}.ai-chat-suggestion:hover{border-color:#17191c;background:#fff}.ai-chat-suggestion-text{flex:1;min-width:0}.ai-chat-suggestion-arrow{flex:none;font-size:1.45rem;line-height:1}
.ai-chat-suggestion-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-height:40px;margin-top:11px}.ai-chat-other,.ai-chat-pause{display:inline-flex;align-items:center;gap:7px;padding:7px 3px;border:0;background:transparent;color:#555d65;font-size:.82rem}.ai-chat-other:hover,.ai-chat-pause:hover{text-decoration:underline;text-underline-offset:3px}.ai-chat-pause{opacity:1;animation:ai-chat-control-in 250ms ease both}@keyframes ai-chat-control-in{from{opacity:0}to{opacity:1}}
.ai-chat-list-page{width:min(100%,860px);margin:0 auto}.ai-chat-list-heading-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:26px}.ai-chat-list-heading-row .ai-chat-heading{margin-bottom:8px}.ai-chat-list-label{margin:20px 0 10px;color:#626870;font-size:.82rem;font-weight:700}.ai-chat-delete-all{display:inline-flex;align-items:center;gap:7px;flex:none;padding:5px 0;border:0;background:transparent;color:#555d65;font-size:.82rem;font-weight:650}.ai-chat-delete-all:hover{color:#17191c;text-decoration:underline;text-underline-offset:3px}.ai-chat-trash{display:block;width:19px;height:19px;flex:none}.ai-chat-list{list-style:none;padding:0;margin:0}.ai-chat-list[data-ai-chat-removing="true"]{opacity:0;transition:opacity 250ms ease}.ai-chat-list-item{display:flex;align-items:center;gap:16px;min-width:0;padding:18px 0;border-top:1px solid #e5e7eb;animation:ai-chat-list-enter 200ms ease both}.ai-chat-list-item[data-ai-chat-removing="true"]{opacity:0;transition:opacity 250ms ease}.ai-chat-list-item-main{display:block;flex:1;min-width:0;padding:4px 0;border:0;background:transparent;text-align:left}.ai-chat-list-item-copy{display:flex;flex:1;min-width:0;flex-direction:column}.ai-chat-list-item-copy>time{order:0;align-self:flex-start;color:#7a8086;font-size:.75rem}.ai-chat-list-item-actions{display:flex;align-items:center;gap:14px;margin-top:10px}.ai-chat-list-item-resume{display:inline-flex;align-items:center;gap:6px;padding:7px 0;border:0;background:transparent;color:#17191c;font-size:.82rem;font-weight:750}.ai-chat-list-item-resume:hover{text-decoration:underline;text-underline-offset:3px}.ai-chat-list-item-arrow{font-size:1.05rem;line-height:1}.ai-chat-list-item-copy .ai-chat-list-item-main{order:-1}.ai-chat-list-item-title{margin:0 0 6px;color:#17191c;font-size:1rem;font-weight:750;letter-spacing:-.025em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-chat-list-item-summary{margin:0;color:#686f76;font-size:.88rem;line-height:1.42;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-chat-list-item time{flex:none;color:#7a8086;font-size:.75rem}.ai-chat-list-item-delete{display:inline-flex;align-items:center;gap:6px;flex:none;padding:7px 0;border:0;background:transparent;color:#60676e;font-size:.8rem}.ai-chat-list-item-delete:hover{color:#17191c;text-decoration:underline;text-underline-offset:3px}.ai-chat-list-empty{padding:24px 0;color:#626870;line-height:1.6}@keyframes ai-chat-list-enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
.ai-chat-thread-toolbar{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0 0 27px}.ai-chat-back{display:inline-flex;align-items:center;gap:6px;padding:5px 0;border:0;background:transparent;color:#555d65;font-size:.86rem;font-weight:680}.ai-chat-back:hover{text-decoration:underline;text-underline-offset:3px}.ai-chat-thread-title{min-width:0;margin:0;color:#17191c;font-size:clamp(1.25rem,2.5vw,1.8rem);line-height:1.18;letter-spacing:-.045em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ai-chat-messages{width:100%;max-width:900px;margin:0 auto}.ai-chat-message{margin:0 0 27px}.ai-chat-message-user{display:flex;justify-content:flex-end;animation:ai-chat-person-in 250ms ease both}.ai-chat-message-user>p{max-width:min(78%,680px);margin:0;padding:14px 18px;border-radius:16px 16px 3px 16px;background:#ededed;color:#17191c;line-height:1.52;white-space:pre-wrap;overflow-wrap:anywhere}.ai-chat-message-assistant{font-size:1rem;line-height:1.65}.ai-chat-message-assistant[data-ai-chat-new="true"]{animation:ai-chat-response-in 200ms cubic-bezier(.2,.8,.25,1) both}.ai-chat-message-assistant>p{margin:0 0 15px;white-space:pre-wrap;overflow-wrap:anywhere}.ai-chat-message-assistant[data-ai-chat-status="pending"]{min-height:56px}.ai-chat-message-stage{display:inline-flex;align-items:center;gap:8px;color:#626870;font-size:.9rem}.ai-chat-message-stage::before{content:"";width:8px;height:8px;border-radius:50%;background:#b5d253}.ai-chat-message-error{padding:15px 17px;border:1px solid #e1caca;border-radius:13px;background:#fff8f8;color:#752d2d;font-size:.91rem;line-height:1.55}.ai-chat-message-error p{margin:0 0 10px}.ai-chat-retry{padding:7px 12px;border:1px solid #752d2d;border-radius:999px;background:#fff;color:#752d2d;font-size:.82rem;font-weight:700}.ai-chat-response-block{margin:17px 0}.ai-chat-actions{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0 5px}.ai-chat-action,.ai-chat-continuation{display:inline-flex;align-items:center;min-height:40px;padding:9px 15px;border-radius:999px;font-size:.84rem;font-weight:700;line-height:1.3}.ai-chat-action{border:1px solid #111315;background:#111315;color:#fff}.ai-chat-action:hover{background:#000}.ai-chat-continuation{border:1px solid #cfd3d6;background:#fff;color:#17191c}.ai-chat-continuation:hover{border-color:#17191c}.ai-chat-sources{margin:20px 0 0;padding:15px 17px;border-top:1px solid #e5e7eb;color:#626870;font-size:.78rem;line-height:1.5}.ai-chat-sources strong{display:block;margin-bottom:7px;color:#454c55}.ai-chat-sources ul{margin:0;padding-left:18px}.ai-chat-sources a{text-decoration:underline;text-underline-offset:2px}.ai-chat-new-response{position:sticky;bottom:12px;display:block;margin:0 auto;padding:9px 14px;border:1px solid #17191c;border-radius:999px;background:#17191c;color:#fff;font-size:.82rem;font-weight:700;box-shadow:0 6px 20px #0002;animation:ai-chat-control-in 250ms ease both}.ai-chat-new-response:hover{background:#000}
.ai-chat-footer{flex:0 0 auto;padding:15px clamp(20px,4vw,52px) 13px;border-top:1px solid var(--line,#e5e7eb);background:#fff;z-index:2}.ai-chat-composer{width:min(100%,980px);margin:0 auto}.ai-chat-composer-box{display:flex;align-items:flex-end;gap:12px;padding:11px 12px 11px 16px;border:1px solid #cdd1d4;border-radius:16px;background:#fff}.ai-chat-composer-box:focus-within{border-color:#17191c;box-shadow:0 0 0 2px #17191c18}.ai-chat-input,.ai-chat-composer textarea{display:block;flex:1;min-width:0;max-height:120px;min-height:42px;padding:8px 0;border:0;outline:0;background:transparent;color:#17191c;resize:none;line-height:1.5;font-size:1rem}.ai-chat-input::placeholder,.ai-chat-composer textarea::placeholder{color:#7a8086}.ai-chat-composer-side{display:flex;align-items:center;gap:9px;flex:none}.ai-chat-counter{min-width:42px;color:#737980;text-align:right;font-size:.72rem;white-space:nowrap}.ai-chat-counter[data-ai-chat-overlimit="true"]{min-width:0;color:#9a2929;font-weight:700}.ai-chat-send,.ai-chat-stop{min-height:40px;border:0;border-radius:999px;padding:9px 15px;font-size:.83rem;font-weight:750}.ai-chat-send{display:inline-flex;align-items:center;gap:6px;background:#111315;color:#fff}.ai-chat-send span:first-child{font-size:1.18rem;line-height:.7}.ai-chat-send:hover{background:#000}.ai-chat-send:disabled{cursor:not-allowed;background:#c5c9cc;color:#fff}.ai-chat-stop{background:#f1f2f3;color:#17191c}.ai-chat-stop:hover{background:#e3e5e7}.ai-chat-disclaimer{margin:8px 0 0;color:#7b8187;text-align:center;font-size:.72rem;line-height:1.4}.ai-chat-storage-status{display:block;margin-top:5px;color:#7b8187;text-align:center;font-size:.68rem}.ai-chat-storage-status:not([hidden]){animation:ai-chat-control-in 250ms ease both}
.ai-chat-confirm-content>p:not(.eyebrow){color:var(--muted,#5c626b);line-height:1.55}.ai-chat-confirm-content h2{margin-bottom:12px}
@keyframes ai-chat-person-in{from{opacity:0}to{opacity:1}}@keyframes ai-chat-response-in{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
@media(max-width:700px){.ai-chat-header{min-height:66px;padding:12px 16px}.ai-chat-header-actions{gap:4px}.ai-chat-nav-button{min-height:38px;padding:8px 11px;font-size:.76rem}.ai-chat-close{width:42px;height:42px}.ai-chat-screen{padding:24px 16px 28px}.ai-chat-footer{padding:11px 13px 10px}.ai-chat-suggestions{grid-template-columns:1fr}.ai-chat-heading{font-size:clamp(1.9rem,9vw,2.65rem)}.ai-chat-page{justify-content:flex-start;padding-top:10vh}.ai-chat-page--thread{padding-top:0}.ai-chat-list-heading-row{display:block;margin-bottom:20px}.ai-chat-delete-all{margin-top:4px}.ai-chat-list-item{gap:9px;padding:16px 0}.ai-chat-list-item time{display:none}.ai-chat-list-item-delete{font-size:.75rem}.ai-chat-message-user>p{max-width:90%}.ai-chat-thread-toolbar{margin-bottom:21px}.ai-chat-composer-box{gap:8px;padding-left:12px}.ai-chat-counter{font-size:.68rem}.ai-chat-send,.ai-chat-stop{padding-inline:11px}.ai-chat-send span:last-child{display:none}.ai-chat-context-button{margin-bottom:40px}}
@media(prefers-reduced-motion:reduce){.ai-chat-dialog,.ai-chat-dialog[data-ai-chat-phase="opening"],.ai-chat-dialog[data-ai-chat-phase="closing"],.ai-chat-screen[data-ai-chat-transition],.ai-chat-message-user,.ai-chat-message-assistant,.ai-chat-list-item,.ai-chat-suggestion-controls,.ai-chat-storage-status,.ai-chat-new-response{animation:none!important;transition:none!important}.ai-chat-mark i{animation:none!important;opacity:0!important}.ai-chat-mark b{animation:none!important;opacity:1!important;transform:none!important}.ai-chat-pause{display:none!important}.ai-chat-screen{scroll-behavior:auto!important}}

/* MVP chat: panes sobrepostos e cards aprovados, sem reanimar histórico. */
.ai-chat-main{position:relative;display:block}
.ai-chat-main>.ai-chat-screen{position:absolute;inset:0;box-sizing:border-box;width:100%;height:100%;overflow-y:auto}
.ai-chat-screen[data-ai-chat-pane-role="incoming"][data-ai-chat-pane="forward"]{animation:ai-chat-screen-forward-in 300ms cubic-bezier(.2,.8,.25,1) both}
.ai-chat-screen[data-ai-chat-pane-role="outgoing"][data-ai-chat-pane="forward"]{animation:ai-chat-screen-forward-out 300ms cubic-bezier(.2,.8,.25,1) both}
.ai-chat-screen[data-ai-chat-pane-role="incoming"][data-ai-chat-pane="back"]{animation:ai-chat-screen-back-in 300ms cubic-bezier(.2,.8,.25,1) both}
.ai-chat-screen[data-ai-chat-pane-role="outgoing"][data-ai-chat-pane="back"]{animation:ai-chat-screen-back-out 300ms cubic-bezier(.2,.8,.25,1) both}
.ai-chat-screen[data-ai-chat-pane-role="incoming"][data-ai-chat-pane="fade"]{animation:ai-chat-screen-fade 250ms ease both}
.ai-chat-screen[data-ai-chat-pane-role="incoming"][data-ai-chat-sequential-fade="true"]{animation-delay:250ms}
.ai-chat-screen[data-ai-chat-sequential-fade="true"] .ai-chat-message[data-ai-chat-new="true"]{animation-delay:250ms}
@keyframes ai-chat-screen-fade{from{opacity:0}to{opacity:1}}
@keyframes ai-chat-screen-forward-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@keyframes ai-chat-screen-forward-out{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@keyframes ai-chat-screen-back-in{from{transform:translateX(-100%)}to{transform:translateX(0)}}
@keyframes ai-chat-screen-back-out{from{transform:translateX(0)}to{transform:translateX(100%)}}
.ai-chat-list-page{width:min(100%,860px);margin:0 auto}
.ai-chat-list-label-row{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:22px 0 10px;min-height:28px}
.ai-chat-list-label-row .ai-chat-list-label{margin:0}
.ai-chat-list-item{display:block;min-width:0;margin:10px 0;padding:18px 20px;border:1px solid #e0e3e5;border-radius:16px;background:#fafafa;animation:none}
.ai-chat-list-item-copy{display:block;min-width:0}
.ai-chat-list-item-body{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;min-width:0}
.ai-chat-list-item-main{display:block;min-width:0;flex:1;padding:0}
.ai-chat-list-item-body>time{flex:none;white-space:nowrap}
.ai-chat-list-item-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;margin-top:13px}
.ai-chat-list-item-resume,.ai-chat-list-item-delete{padding:7px 0}
.ai-chat-list-item-delete{justify-content:center}
.ai-chat-list-item[data-ai-chat-removing="true"]{animation:ai-chat-list-item-out 250ms ease both;pointer-events:none}
@keyframes ai-chat-list-item-out{from{opacity:1}to{opacity:0}}
.ai-chat-message-user,.ai-chat-message-assistant[data-ai-chat-new="true"]{animation:none}
.ai-chat-message-user[data-ai-chat-new="true"]{animation:ai-chat-person-in 250ms ease both}
.ai-chat-message-assistant[data-ai-chat-new="true"]{animation:ai-chat-response-in 200ms cubic-bezier(.2,.8,.25,1) both}
/* Acomodação e lista: um único movimento medido/controlado pelo JS, sem deslocamento CSS adicional. */
.ai-chat-screen{scroll-behavior:auto}
.ai-chat-message-assistant:is([data-ai-chat-status="pending"],[data-ai-chat-status="error"],[data-ai-chat-status="interrupted"]){min-height:56px}
.ai-chat-new-response[data-ai-chat-removing="true"]{animation:ai-chat-control-out 250ms ease both;pointer-events:none}
@keyframes ai-chat-control-out{from{opacity:1}to{opacity:0}}
.ai-chat-suggestion-controls{justify-content:flex-end;margin-top:3px}
.ai-chat-pause svg,.ai-chat-other svg{width:18px;height:18px;flex:none}
@media(max-width:700px){
  .ai-chat-list-label-row{gap:12px;margin-top:20px}
  .ai-chat-list-item{margin:9px 0;padding:17px 16px}
  .ai-chat-list-item-body{gap:12px}
  .ai-chat-list-item-actions{gap:12px}
}
@media(prefers-reduced-motion:reduce){
  .ai-chat-main>.ai-chat-screen[data-ai-chat-pane-role],.ai-chat-screen[data-ai-chat-transition],.ai-chat-message-user[data-ai-chat-new="true"],.ai-chat-message-assistant[data-ai-chat-new="true"],.ai-chat-messages[data-ai-chat-follow="true"],.ai-chat-new-response[data-ai-chat-removing="true"]{animation:none!important;transition:none!important;transform:none!important}
}

/* Chat: controles da lista/entrada e troca somente da área de sugestões. */
.ai-chat-header .ai-chat-nav-button[data-ai-chat-header-back="true"]::before{content:var(--ai-chat-arrow-left) / "";display:inline-block;margin-right:6px}
.ai-chat-list-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex:none}
.ai-chat-list-new{border-color:#111315;background:#111315;color:#fff}
.ai-chat-list-new:hover{border-color:#000;background:#000}
.ai-chat-view-suggestions{border-color:#111315;background:#fff;color:#111315}
.ai-chat-view-suggestions:hover{border-color:#111315;background:#f7f8f8}

.ai-chat-suggestions{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0}
.ai-chat-suggestions[data-ai-chat-transition="true"]{overflow:hidden}
.ai-chat-suggestion-set{display:grid;grid-area:1 / 1;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.ai-chat-suggestion-set[data-ai-chat-suggestion-pane="outgoing"]{z-index:1;pointer-events:none}
.ai-chat-suggestion-set[data-ai-chat-suggestion-pane="incoming"]{z-index:2}
@media(max-width:700px){
  .ai-chat-list-heading-actions{justify-content:flex-start;margin-top:16px}
  .ai-chat-suggestion-set{grid-template-columns:minmax(0,1fr)}
}
@media(prefers-reduced-motion:reduce){
  .ai-chat-suggestion-set[data-ai-chat-suggestion-pane],.ai-chat-suggestion-set[data-ai-chat-suggestion-pane] .ai-chat-suggestion{animation:none!important;transform:none!important;transition:none!important;opacity:1!important}
}

.ai-chat-mark{width:29px;height:29px;margin-left:0;align-items:center;overflow:visible}
.ai-chat-mark svg{display:block;width:29px;height:29px;overflow:visible}
.ai-chat-mark svg path{stroke:none;transform:none}
.ai-chat-main>.ai-chat-screen{background:#fff}
.ai-chat-screen[data-ai-chat-pane-role="outgoing"][data-ai-chat-pane="fade"]{animation:ai-chat-screen-fade-out 250ms ease both}
@keyframes ai-chat-screen-fade-out{from{opacity:1}to{opacity:0}}
.ai-chat-screen[data-ai-chat-pane-role="outgoing"]{pointer-events:none}

/* Paridade: só o contêiner pertence ao chat; o card usa o Design System nativo. */
.ai-chat-trusted-block .product-showcase,
.ai-chat-trusted-block .lado-a-lado {
  width: 100%; max-width: none; min-width: 0; margin: 0; padding: 0; border: 0;
}
/* Neutralizar só o breakout !important de página; o card interno permanece nativo. */
.ai-chat-trusted-block .product-showcase {
  width: 100% !important; max-width: none !important; margin: 0 !important;
}
.ai-chat-trusted-block .ai-chat-block-showcase-intro { margin-bottom: 14px; }
.ai-chat-trusted-block .ai-chat-block-showcase-intro h3 { margin: 0 0 6px; }
.ai-chat-trusted-block .ai-chat-block-showcase-intro p { margin: 0; color: var(--muted); }
/* Tinta contínua: escala proporcional pela altura, largura preenchida por repetição. */
.ai-chat-component-band .ai-chat-marker {
  -webkit-text-stroke: 0;
  text-shadow: none;
  padding: .24em .42em;
  background-image: url("assets/chat/marker-gray.svg");
  background-repeat: repeat-x;
  background-position: left center;
  background-size: auto 100%;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
}
.ai-chat-component-band .ai-chat-block-question-kicker .ai-chat-marker {
  font-weight: 700;
  color: #000000;
  background-image: url("assets/chat/marker-yellow.svg");
}
.ai-chat-trusted-block .ai-chat-block-showcase.product-showcase > .ai-chat-block-showcase-cards.showcase-grid > .showcase-card {
  grid-column: auto !important; width: 100%; min-width: 0;
}
/* O último Summary mantém a largura da coluna, sem se esticar pela linha. */
.ai-chat-trusted-block .ai-chat-block-showcase.product-showcase > .ai-chat-block-showcase-cards.showcase-grid > .showcase-card:last-child:nth-child(odd) {
  grid-column: auto !important;
}
.ai-chat-trusted-block .ai-chat-block-showcase.product-showcase > .ai-chat-block-showcase-cards.showcase-grid,
.ai-chat-trusted-block .ai-chat-block-product .product-showcase .showcase-grid:has(> .showcase-card),
.ai-chat-trusted-block .lado-a-lado .duels-grid,
.ai-chat-single-card-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: 100%; max-width: none; min-width: 0; gap: 20px; align-items: start;
}
.ai-chat-single-card-grid > .ai-chat-block { width: 100%; min-width: 0; }
/* O observador da malha posiciona cada card na própria coluna, sem reordenar o DOM.
   O intervalo vertical vem do gap nativo; a altura é medida sem transforms.
   A prioridade impede grid-auto-rows:auto do Summary de colapsar as trilhas vazias. */
.ai-chat-component-band [data-ai-chat-card-layout="columns"] {
  grid-auto-rows: 1px !important;
  row-gap: 0 !important;
  align-content: start;
}
@media (max-width: 700px) {
  .ai-chat-trusted-block .ai-chat-block-showcase.product-showcase > .ai-chat-block-showcase-cards.showcase-grid,
  .ai-chat-trusted-block .ai-chat-block-product .product-showcase .showcase-grid:has(> .showcase-card),
  .ai-chat-trusted-block .lado-a-lado .duels-grid,
  .ai-chat-single-card-grid { grid-template-columns: minmax(0, 1fr) !important; }
}
/* Ofertas: a grade pode abrir uma terceira coluna sem alterar Summary/Stories unitários. */
.ai-chat-offers-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: 100%; max-width: none; min-width: 0; gap: 20px; align-items: start;
}
.ai-chat-offers-grid > .ai-chat-block { width: 100%; min-width: 0; }
@media (min-width: 1100px) {
  .ai-chat-offers-grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 700px) {
  .ai-chat-offers-grid { grid-template-columns: minmax(0, 1fr) !important; }
}
/* Story: o frame e os controles usam as mesmas classes nativas da galeria. */
.ai-chat-story-stage { width: min(100%, 390px); --entenda-card-ratio: 9/16; }
.ai-chat-story-stage amp-story-player { position: absolute; inset: 0; display: block; width: 100%; height: 100%; border: 0; }
.ai-chat-story-stage [data-ai-chat-story-poster] { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.ai-chat-story-stage [hidden] { display: none !important; }
.ai-chat-story-stage .ai-chat-block-story-link { display: grid; padding: 0; }

/* Mesmo link amplo nativo de {tag}; não aplicar sobre players de Story. */
.ai-chat-trusted-block :is(.showcase-card,.duel-card,.ai-chat-block-question){position:relative;isolation:isolate}
.ai-chat-trusted-block .showcase-copy{position:static}
.ai-chat-trusted-block .showcase-copy>.link-arrow,
.ai-chat-trusted-block .duel-card>.duel-link,
.ai-chat-trusted-block .ai-chat-block-question-action{position:static;z-index:auto}
.ai-chat-trusted-block .showcase-copy>.link-arrow::after,
.ai-chat-trusted-block .duel-card>.duel-link::after,
.ai-chat-trusted-block .ai-chat-block-question-action::after{content:"";position:absolute;inset:0;z-index:20;border-radius:inherit;cursor:pointer}
.ai-chat-trusted-block .showcase-copy>.link-arrow:focus-visible::after,
.ai-chat-trusted-block .duel-card>.duel-link:focus-visible::after,
.ai-chat-trusted-block .ai-chat-block-question-action:focus-visible::after{outline:2px solid currentColor;outline-offset:-3px}
.ai-chat-trusted-block :is(.showcase-card,.duel-card,.ai-chat-block-question) :is(button,input,select,textarea,[role="button"]),
.ai-chat-trusted-block .showcase-card a:not(.link-arrow),
.ai-chat-trusted-block .duel-card a:not(.duel-link),
.ai-chat-trusted-block .ai-chat-block-question a:not(.ai-chat-block-question-action){position:relative;z-index:21}

/* Faixas aprovadas: apenas os blocos, não o fundo inteiro da conversa. */
.ai-chat-main > .ai-chat-screen { overflow-x: hidden; }
.ai-chat-component-band {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  width: var(--ai-chat-band-width, 100%);
  max-width: none;
  margin: 18px calc((100% - var(--ai-chat-band-width, 100%)) / 2) 20px;
  padding: 24px max(32px, calc((100% - 1200px) / 2));
  border-block: 1px solid #d8d8d8;
  border-radius: 0;
  overflow: hidden;
  background-color: #fff;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2250.911688%22%20height%3D%2250.911688%22%20viewBox%3D%220%200%2050.911688%2050.911688%22%3E%3Cpath%20d%3D%22M0%200L50.911688%2050.911688M0%2050.911688L50.911688%200%22%20fill%3D%22none%22%20stroke%3D%22%23e0e2e5%22%20stroke-width%3D%220.7%22%2F%3E%3Cg%20fill%3D%22%23c8ccd1%22%3E%3Ccircle%20cx%3D%220%22%20cy%3D%220%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%2250.911688%22%20cy%3D%220%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%220%22%20cy%3D%2250.911688%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%2250.911688%22%20cy%3D%2250.911688%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%2225.455844%22%20cy%3D%2225.455844%22%20r%3D%222%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
  background-size: 50.911688px 50.911688px;
  background-position: 0 0;
}
.ai-chat-component-band[data-ai-chat-grid-active="true"] { background-image: none; }
.ai-chat-component-band > canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}
.ai-chat-band-content {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1200px;
  min-width: 0;
  margin-inline: auto;
}
@media (max-width: 700px) {
  .ai-chat-component-band { padding: 20px 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .ai-chat-component-band > canvas { display: none; }
}

/* Com dois destinos no header, permitir quebra em telas estreitas sem sobreposição. */
@media (max-width: 700px) {
  .ai-chat-header { flex-wrap: wrap; row-gap: 8px; }
  .ai-chat-header-actions { margin-left: auto; }
}

.ai-chat-story-stage .entenda-story-playback{top:12px;right:12px}
/* A galeria reutiliza o chrome/frames nativos; só o wrapper do chat recebe contenção. */
.ai-chat-trusted-block [data-ai-chat-story-gallery]{
  box-sizing:border-box;
  width:100%;
  max-width:1320px;
  margin:0 auto;
  padding:0;
  --ai-chat-story-columns:2;
  --entenda-card-width:min(390px,calc((100% - 32px) / 2));
}
.ai-chat-trusted-block [data-ai-chat-story-gallery] > .story-directory{
  width:100%;
  grid-template-columns:repeat(var(--ai-chat-story-columns,2),minmax(0,var(--entenda-card-width,390px)));
}
@media (min-width:1100px){
  .ai-chat-trusted-block [data-ai-chat-story-gallery]{
    --ai-chat-story-columns:3;
    --entenda-card-width:min(390px,calc((100% - 64px) / 3));
  }
}
@media (max-width:700px){
  .ai-chat-trusted-block [data-ai-chat-story-gallery]{
    --ai-chat-story-columns:1;
    --entenda-card-width:min(390px,100%);
  }
}

/* Respiro e compositor aprovados em 27/10, 04:54; títulos maiores ainda em prévia. */
.ai-chat-list-heading-row { margin-bottom: 36px; }
.ai-chat-list-label-row { margin: 28px 0 20px; }
.ai-chat-list-item { margin: 24px 0; padding: 24px 28px; }
.ai-chat-list-item-title { margin-bottom: 10px; }
.ai-chat-list-item-summary { line-height: 1.55; }
.ai-chat-list-item-actions { margin-top: 20px; }
.ai-chat-page:not(.ai-chat-page--thread) > .ai-chat-description { margin-bottom: 40px; }
.ai-chat-context-button { margin-bottom: 52px; }
.ai-chat-suggestion-set { gap: 20px; }
/* Manter o respiro de 3px dos controles, as duas linhas desktop e o rodízio existentes. */
.ai-chat-composer-box { align-items: center; }
.ai-chat-composer-side { flex-direction: column; align-items: flex-end; gap: 5px; max-width: calc(100% - 80px); }
.ai-chat-composer-buttons { display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
.ai-chat-send { justify-content: center; }
.ai-chat-counter { display: block; text-align: right; }
.ai-chat-counter[data-ai-chat-overlimit="true"] { max-width: 13rem; white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 700px) {
  .ai-chat-list-heading-row { margin-bottom: 28px; }
  .ai-chat-list-label-row { margin: 24px 0 18px; }
  .ai-chat-list-item { margin: 20px 0; padding: 20px 18px; }
  .ai-chat-list-item-actions { margin-top: 20px; }
  .ai-chat-page:not(.ai-chat-page--thread) > .ai-chat-description { margin-bottom: 32px; }
  .ai-chat-context-button { margin-bottom: 44px; }
  .ai-chat-suggestion-set { gap: 14px; }
  .ai-chat-composer-side { gap: 5px; }
  .ai-chat-send { min-width: 42px; min-height: 42px; }
}

/* Setas próprias do chat: símbolos só no CSS; spans vazios e aria-hidden
   preservam a geometria e não disputam ::after dos cards clicáveis. */
.ai-chat-dialog{
  --ai-chat-arrow-left:"←";
  --ai-chat-arrow-right:"→";
  --ai-chat-arrow-up:"↑";
  --ai-chat-arrow-external:"↗";
}
.ai-chat-back-arrow::before{content:var(--ai-chat-arrow-left) / ""}
.ai-chat-send-arrow::before{content:var(--ai-chat-arrow-up) / ""}
.ai-chat-suggestion-arrow::after,
.ai-chat-list-item-arrow::after{content:var(--ai-chat-arrow-right) / ""}
.ai-chat-external-arrow::after{content:var(--ai-chat-arrow-external) / ""}
.ai-chat-header .ai-chat-nav-button[data-ai-chat-header-suggestions="true"]::after{
  content:var(--ai-chat-arrow-right) / "";
  display:inline-block;
  margin-left:6px;
}

/* Fechamento 27/10: o nome cresce na lista; o header usa a pose medida da prévia. */
.ai-chat-list-item-title{font-size:clamp(1.35rem,1.7vw,1.5rem);line-height:1.12;letter-spacing:-.04em}
.ai-chat-header{position:relative;box-sizing:border-box;flex-wrap:nowrap}
.ai-chat-brand{display:contents}
.ai-chat-brand-name,.ai-chat-badge,.ai-chat-mark{position:absolute;transform-origin:top left;white-space:nowrap}
.ai-chat-header-actions{position:absolute;top:50%;right:clamp(20px,4vw,52px);display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px;transform:translateY(-50%);white-space:nowrap;z-index:1}
.ai-chat-header-actions>.ai-chat-nav-button,.ai-chat-header-actions>.ai-chat-close{flex:0 0 auto}
.ai-chat-header[data-ai-chat-header-layout="stacked"] .ai-chat-brand-name,.ai-chat-header[data-ai-chat-header-layout="stacked"] .ai-chat-badge,.ai-chat-header[data-ai-chat-header-layout="stacked"] .ai-chat-mark{will-change:left,top,transform}
@media(prefers-reduced-motion:reduce){.ai-chat-header,.ai-chat-brand-name,.ai-chat-badge,.ai-chat-mark{transition:none!important}.ai-chat-header-actions{transform:translateY(-50%)!important}}

/* Última mensagem: fora do rodapé, na área útil da conversa. */
.ai-chat-last-message{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:3;display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:calc(100% - 32px);padding:9px 14px;border:1px solid #17191c;border-radius:999px;background:#17191c;color:#fff;font-size:.82rem;font-weight:700;line-height:1.4;white-space:nowrap;box-shadow:0 6px 20px #0002;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 250ms ease,visibility 0s linear 250ms}
.ai-chat-last-message::before{content:"↓" / "";flex:none;font-size:1.15em;line-height:1}
.ai-chat-last-message[data-ai-chat-visible="true"]{opacity:1;visibility:visible;pointer-events:auto;transition:opacity 250ms ease,visibility 0s}
.ai-chat-last-message:hover{background:#000}
.ai-chat-last-message:focus-visible{outline:3px solid var(--blue,#83baff);outline-offset:4px}
@media(prefers-reduced-motion:reduce){.ai-chat-last-message,.ai-chat-last-message[data-ai-chat-visible="true"]{transition:none!important}}

/* Story ampliado no chat: elevar toda a cadeia de stacking contexts, não
   somente o card. O player/iframe continuam no mesmo DOM e o scroll não muda. */
.ai-chat-dialog .ai-chat-main:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)),
.ai-chat-dialog .ai-chat-screen:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)),
.ai-chat-dialog .ai-chat-component-band:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)){z-index:4}
.ai-chat-dialog .ai-chat-screen:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)),
.ai-chat-dialog .ai-chat-message:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)){animation:none;transform:none}
/* O backdrop fixo precisa escapar do recorte da faixa, sem alterar o scroll. */
.ai-chat-dialog .ai-chat-component-band:has([data-ai-chat-story-gallery] .entenda-story-card:is([data-entenda-transition],.is-entenda-fullscreen)){overflow:visible}

/* Retry manual: erro legível, ação única e movimento só quando o request existe. */
.ai-chat-message-error{border-color:#e0e3e5;background:#f4f5f6;color:#17191c}
.ai-chat-message-error--retrying{border-color:#dfe3e6;background:#f4f5f6}
.ai-chat-retry-title{margin:0 0 8px!important;color:#17191c;font-size:1rem;font-weight:750;line-height:1.35}
.ai-chat-retry-help{margin:0 0 12px!important;color:#626870;font-size:.86rem;line-height:1.5}
.ai-chat-retry{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:9px 15px;border:1px solid #111315;border-radius:999px;background:#111315;color:#fff;font-size:.84rem;font-weight:750;line-height:1.3;cursor:pointer}
.ai-chat-retry::before{content:"↻" / "";display:inline-block;flex:none;color:var(--ai-chat-retry-accent,#0866e9);font-size:1.16rem;line-height:1;transform-origin:center}
.ai-chat-retry:hover:not(:disabled){background:#000}
.ai-chat-retry:focus-visible{outline:3px solid var(--ai-chat-retry-accent,#0866e9);outline-offset:3px}
.ai-chat-retry:disabled{cursor:wait;opacity:1}
.ai-chat-retry[data-ai-chat-retry-reappeared="true"]::before{animation:ai-chat-retry-wobble 520ms ease both}
.ai-chat-retry[data-ai-chat-retry-busy="true"]::before{animation:ai-chat-retry-spin 700ms linear infinite}
@keyframes ai-chat-retry-wobble{0%,100%{transform:rotate(0)}28%{transform:rotate(-13deg)}58%{transform:rotate(9deg)}80%{transform:rotate(-4deg)}}
@keyframes ai-chat-retry-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.ai-chat-retry[data-ai-chat-retry-reappeared="true"]::before,.ai-chat-retry[data-ai-chat-retry-busy="true"]::before{animation:none!important;transform:none!important}}
