/* Componente de escrita MAX: cápsula branca + núcleo de envio orbital. */
.composer{padding:14px 14px 8px;border:0;background:linear-gradient(180deg,#ffffff00,#fff 18px)}
.input-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 58px;align-items:center;gap:6px;min-height:72px;padding:6px 7px 6px 4px;border:1px solid #cfdaeb;border-radius:27px;background:linear-gradient(125deg,#fff 12%,#f6f9fe 64%,#eef4ff);box-shadow:0 4px 18px #31558d09,inset 0 1px 0 #fff;transition:border-color .2s,box-shadow .2s,background .2s;isolation:isolate}
.input-row:before{content:"";position:absolute;left:27px;right:79px;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,#6a9ef8,transparent);opacity:0;transition:opacity .2s;pointer-events:none}
.input-row:focus-within{border-color:#5a87d7;background:linear-gradient(125deg,#fff 12%,#f8faff 64%,#edf4ff);box-shadow:0 0 0 3px #edf3ff,0 8px 25px #3866aa0b}
.input-row:focus-within:before,.composer[data-ready="true"] .input-row:before{opacity:1}
.composer textarea{display:block;height:56px;min-height:56px;max-height:112px;padding:17px 6px 17px 14px;border:0;border-radius:21px;background:transparent;color:#243c5c;line-height:22px;letter-spacing:.005em;font-size:16px;caret-color:#366fe8;resize:none;scrollbar-width:thin;scrollbar-color:#b9cae5 transparent;box-shadow:none}
.composer textarea::placeholder{color:#7386a1;opacity:1}
.composer textarea:focus-visible{outline:0} /* Foco indicado pelo contorno de toda a cápsula acima. */
.send{position:relative;display:grid;place-items:center;align-self:end;width:58px;height:58px;flex:none;margin:0;padding:0;border:0;border-radius:50%;background:transparent;color:white;opacity:1;box-shadow:none;transition:transform .2s;overflow:visible}
.send:disabled{opacity:1}
.send-disc{position:absolute;inset:6px;border-radius:50%;background:radial-gradient(circle at 32% 19%,#78beff 0%,#4587fc 32%,#2861df 72%,#2053cb 100%);box-shadow:inset 0 1px 1px #e0f5ff,inset 0 -2px 5px #1b43a85e,0 3px 8px #2b66d63d;transition:background .25s,box-shadow .25s;pointer-events:none}
.send-disc:after{content:"";position:absolute;inset:2px;border-radius:50%;border:1px solid #c4e8ff47;pointer-events:none}
.send:disabled .send-disc{background:radial-gradient(circle at 32% 19%,#c1d8f7,#8faede 67%,#7999ca);box-shadow:inset 0 1px 1px #fff,0 2px 5px #5278aa16}
.send .send-orbit{position:absolute;inset:0;width:58px;height:58px;overflow:visible;pointer-events:none;transform-origin:center}
.orbit-track{stroke:#ccdaee;stroke-width:1;fill:none}.orbit-light{stroke:#4e89f3;stroke-width:2;fill:none;stroke-linecap:round;stroke-dasharray:30 160;opacity:.45}.orbit-dot{fill:#76c5ff;opacity:.6}
.send:enabled .send-orbit{animation:max-orbit 7s linear infinite}.send:enabled .orbit-light{opacity:1;filter:drop-shadow(0 0 1px #7dafff)}.send:enabled .orbit-dot{opacity:1}
.send .send-glyph{position:relative;z-index:1;width:40px;height:40px;overflow:visible;pointer-events:none;filter:drop-shadow(0 1px 1px #13369b33);transition:transform .25s}
.send:enabled:hover .send-glyph{transform:translate(1px,-1px) rotate(-6deg)}.send:enabled:hover .send-disc{box-shadow:inset 0 1px 2px #fff,0 4px 14px #497de75e}.send:enabled:active{transform:scale(.94)}
.send:focus-visible{outline:2px solid #285dc4;outline-offset:3px}
.send-flare{position:absolute;inset:5px;border:1px solid #7eaaff;border-radius:50%;opacity:0;pointer-events:none}
.composer.is-sending .send-glyph{animation:max-turbo-send .65s cubic-bezier(.32,.12,.28,1) both}.composer.is-sending .send-orbit{animation:max-orbit .14s linear infinite}.composer.is-sending .send-flare{animation:max-emission .65s ease-out both}.composer.is-sending .send-disc{background:radial-gradient(circle at 32% 19%,#a0d7ff,#457ffc 38%,#2b60d9 80%);animation:max-core-spin .65s cubic-bezier(.32,.12,.28,1) both}.composer.is-sending .orbit-light,.composer.is-sending .orbit-dot{opacity:1}
@keyframes max-orbit{to{transform:rotate(360deg)}}
@keyframes max-turbo-send{0%{transform:rotate(0) scale(1)}18%{transform:rotate(120deg) scale(.88)}78%{transform:rotate(960deg) scale(.88)}100%{transform:rotate(1080deg) scale(1)}}
@keyframes max-core-spin{to{transform:rotate(1080deg)}}
@keyframes max-emission{0%{transform:scale(.85);opacity:0}25%{opacity:.7}100%{transform:scale(1.28);opacity:0}}
.composer[data-thinking="true"] .send-orbit{animation:max-orbit .24s linear infinite}
.composer[data-thinking="true"] .send-glyph{animation:max-orbit .85s linear infinite}
.composer[data-thinking="true"] .send-disc{background:radial-gradient(circle at 28% 18%,#fff9 0%,transparent 30%),repeating-linear-gradient(16deg,#ffffff20 0 6px,#0000000a 8px 12px),currentColor;color:#d39167;animation:max-orbit 2s linear infinite,max-planets 9s ease-in-out infinite;box-shadow:inset 0 2px 2px #fff8,inset -5px -6px 9px #18234355,0 0 18px currentColor}
.composer[data-thinking="true"] .orbit-light{opacity:1;stroke:#c0a6e6}.composer[data-thinking="true"] .orbit-dot{opacity:1;fill:#f4d18c}
@keyframes max-planets{0%,100%{color:#c98e70}33%{color:#a8bad4}66%{color:#edba57}}
@media(prefers-reduced-motion:reduce){.composer[data-thinking="true"] .send-disc,.composer[data-thinking="true"] .send-orbit,.composer[data-thinking="true"] .send-glyph{animation:none!important}}
@media(max-width:350px){.composer{padding-left:10px;padding-right:10px}.input-row{gap:2px;padding-left:2px}.composer textarea{padding-left:12px}}
@media(prefers-reduced-motion:reduce){.input-row,.input-row:before,.send,.send-disc,.send-glyph{transition:none}.send .send-orbit,.composer.is-sending .send-glyph,.composer.is-sending .send-disc,.composer.is-sending .send-flare{animation:none}.composer.is-sending .send-glyph{opacity:1;transform:none}.composer.is-sending .send-flare{opacity:0}}
