.chat-header{position:relative}.chat-header:after{content:"";left:50%;bottom:calc(-1 * var(--swan-sem-border-width-standard));width:100vw;height:var(--swan-sem-border-width-standard);background:var(--swan-sem-color-border-standard);pointer-events:none;position:absolute;transform:translate(-50%)}.chat-turn:has(>.chat-turn-widgets:empty):not(:has(>.chat-turn-feedback)):not([data-reported]){display:none}.chat-turn-feedback{margin-top:var(--swan-sem-space-3)}.chat-turn-widgets:empty+.chat-turn-feedback{margin-top:0}.chat-turn-text>:last-child{margin-bottom:0}.composer{gap:var(--swan-sem-space-3);padding-top:var(--swan-base-space-075);margin-inline:calc(var(--swan-sem-space-2) * -1);flex-direction:column;flex:none;display:flex}.composer-frame{position:relative}.composer-box{--composer-brand-blue:#2ba8e0;--composer-ring-light:var(--swan-sem-color-brand-vista-blue);z-index:1;gap:var(--swan-sem-space-2);padding:var(--swan-sem-space-4);background-color:var(--swan-sem-color-bg-input);border:var(--swan-sem-border-width-input) solid var(--swan-sem-color-border-input);border-radius:var(--swan-base-border-radius-300);cursor:text;flex-direction:column;display:flex;position:relative}.composer-box:focus-within{border-color:var(--swan-sem-color-border-selected)}@property --composer-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.composer-box-active{box-shadow:0 2px 12px color-mix(in srgb, var(--composer-brand-blue) 18%, transparent);border-color:#0000}.composer-box-active:before{content:"";inset:calc(var(--swan-sem-border-width-input) * -1);border-radius:inherit;background:conic-gradient(from var(--composer-angle), var(--swan-sem-color-fg-accent), var(--composer-brand-blue), var(--composer-ring-light), color-mix(in srgb, var(--composer-ring-light) 25%, transparent), var(--swan-sem-color-fg-accent));-webkit-mask-composite:xor;pointer-events:none;padding:1.5px;position:absolute;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@media (prefers-reduced-motion:no-preference){.composer-box-active:before{animation:5s linear infinite composer-border-turn}}@keyframes composer-border-turn{to{--composer-angle:360deg}}.composer-attachments{gap:var(--swan-sem-space-3);margin-bottom:var(--swan-sem-space-4);flex-wrap:nowrap;display:flex;overflow-x:auto}.composer-tile{flex:none;width:72px;height:72px;position:relative}.composer-tile-failed:after{content:"";border:1px solid var(--swan-sem-color-border-error-strong-paired);border-radius:var(--swan-base-border-radius-300);pointer-events:none;position:absolute;inset:0}.composer-tile-failed .composer-image{opacity:.5}.composer-veil{background-color:var(--swan-base-color-white-opacity-70);place-items:center;display:grid;position:absolute;inset:0}.composer-spinner{box-sizing:border-box;border:var(--swan-sem-border-width-strong) solid var(--swan-sem-color-bg-disabled);border-top-color:var(--swan-sem-color-border-accent);border-radius:50%;width:24px;height:24px}@media (prefers-reduced-motion:no-preference){.composer-spinner{animation:1s linear infinite composer-spin}}@keyframes composer-spin{to{transform:rotate(360deg)}}.composer-badge{border:1px solid var(--swan-sem-color-border-standard);background-color:var(--swan-sem-color-bg-container);color:var(--swan-sem-color-fg-standard);pointer-events:none;border-radius:6px;padding:0 3px;font-size:9px;font-weight:700;line-height:13px;position:absolute;bottom:3px;left:3px}.composer-remove-button,.composer-retry-button{width:32px;min-width:0;height:32px;min-height:0;padding:0;position:absolute}.composer-remove-button{top:var(--swan-sem-space-2);right:var(--swan-sem-space-2)}.composer-retry-button{left:var(--swan-sem-space-2);bottom:var(--swan-sem-space-2);color:var(--swan-sem-color-fg-error)}.composer-remove-button:after,.composer-retry-button:after{content:"";position:absolute;inset:-6px}.composer-text-field{box-sizing:border-box;width:100%;min-height:24px;max-height:120px;padding:var(--swan-sem-space-1) 0;resize:none;color:var(--swan-sem-color-fg-standard);font-family:var(--swan-base-font-family-primary);font-size:var(--swan-base-font-size-100);line-height:var(--swan-base-font-line-height-300);background:0 0;border:0;outline:0;margin:0;display:block}.composer-box .composer-text-field:focus,.composer-box .composer-text-field:focus-visible{box-shadow:none;outline:0}.composer-text-field::placeholder{color:var(--swan-sem-color-fg-subtle);opacity:1;font-style:italic}.composer-actions{justify-content:space-between;align-items:center;display:flex}.composer-send{width:40px;height:40px}.composer-error-drawer{z-index:0;left:var(--swan-sem-space-4);right:var(--swan-sem-space-4);gap:var(--swan-sem-space-2);padding:var(--swan-sem-space-3) var(--swan-sem-space-4) calc(var(--swan-sem-space-3) + 12px);border:1px solid var(--swan-sem-color-border-error);border-radius:var(--swan-base-border-radius-300) var(--swan-base-border-radius-300) 0 0;background-color:var(--swan-sem-color-bg-error);color:var(--swan-sem-color-fg-error);line-height:var(--swan-base-font-line-height-300);border-bottom:0;flex-direction:column;display:flex;position:absolute;bottom:calc(100% - 12px)}.composer-error-drawer-item{align-items:flex-start;gap:var(--swan-sem-space-2);display:flex}.composer-error-drawer-icon{flex:none;margin-top:1px}@media (prefers-reduced-motion:no-preference){.composer-error-drawer{animation:.15s ease-out composer-drawer-up}.composer-error-drawer-leaving{animation:.15s ease-in forwards composer-drawer-down}}@keyframes composer-drawer-up{0%{transform:translateY(100%)}}@keyframes composer-drawer-down{to{transform:translateY(100%)}}@media (prefers-reduced-motion:no-preference){.chat-thinking-text,.chat-skeleton{animation:1.6s ease-in-out infinite chat-thinking-pulse}}@keyframes chat-thinking-pulse{0%,to{opacity:1}50%{opacity:.45}}
