/* Shared interaction surfaces keep their geometry while content streams. */
.ss-shell :is(button,summary,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ss-blue);outline-offset:3px}
.ss-shell :is(button,summary,a){-webkit-tap-highlight-color:transparent}
.ss-shell :is(button,summary){touch-action:manipulation}
.ss-shell .ss-resize-handle{touch-action:none}
.ss-shell button[aria-busy=true],.ss-shell form[aria-busy=true] button[type=submit]{cursor:progress}
.ss-shell :is(button,summary):disabled{cursor:default}
.ss-shell .ss-search:focus-within{outline-offset:2px}
.ss-shell .ss-search input:focus-visible{outline:0}
.ss-shell #ss-transcript:focus-visible,.ss-shell #ss-context-body:focus-visible{outline-offset:-3px}
.ss-interactions-ready :is(.ss-row-menu>div,.ss-composer-options>.ss-composer-popover).ss-interaction-popover{position:fixed;inset:auto;margin:0;box-sizing:border-box;z-index:1150;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;color:var(--ss-text);border:1px solid var(--ss-line);background:var(--ss-panel);border-radius:12px;box-shadow:0 14px 44px #0004;animation:ss-interaction-enter .12s ease-out}
.ss-interactions-ready .ss-row-menu>div.ss-interaction-popover{display:flex;flex-direction:column;min-width:180px;padding:5px;width:max-content}
.ss-interactions-ready .ss-row-menu>div.ss-interaction-popover>button{justify-content:flex-start;width:100%;margin:0;text-align:left;border:0;border-radius:7px;padding:8px 11px;min-height:36px;white-space:normal;overflow-wrap:anywhere;line-height:1.5}
.ss-interactions-ready .ss-row-menu:not([open])>div.ss-interaction-popover{display:none}
.ss-interactions-ready .ss-composer-options>.ss-composer-popover.ss-interaction-popover{width:min(340px,calc(100vw - 20px));padding:16px}
.ss-interactions-ready .ss-context-tabs [role=tab][aria-selected=true]{color:var(--ss-text);background:var(--ss-raised);box-shadow:inset 0 0 0 1px var(--ss-line)}
.ss-interactions-ready .ss-context-tabs [role=tab]:focus-visible{outline-offset:-2px}
.ss-interactions-ready .ss-context{container-type:inline-size;container-name:ss-context-panel}
.ss-interactions-ready :is(.ss-context-body,.ss-list){scrollbar-gutter:stable;overscroll-behavior:contain}
.ss-interactions-ready :is(.ss-context-body,.sf-attention,.ss-command-notice,.sf-feature-error,.ss-history-status,.ss-list-error,.sf-dialog .error){overflow-wrap:anywhere}
.ss-interactions-ready :is(.sf-actions,.ss-owner-actions){flex-wrap:wrap}
.ss-interactions-ready .sf-section .ss-button{max-width:100%;white-space:normal;text-align:center}
.ss-interactions-ready .sf-dialog form[aria-busy=true] #sf-dialog-submit:before{content:'';width:11px;height:11px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ss-interaction-spin .75s linear infinite}
.ss-interactions-ready .sf-dialog .error:not(:empty){padding:9px 11px;border-radius:8px;background:color-mix(in srgb,var(--red) 8%,var(--ss-panel));line-height:1.6}
.ss-interactions-ready .sf-results-error{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:9px 0;font-size:12px}
.ss-interactions-ready .sf-results-error>span{flex:1;min-width:120px}
.ss-interactions-ready :is(.ss-create-dialog,.ss-metadata-dialog,.sf-dialog){overscroll-behavior:contain;max-width:calc(100vw - 20px)}
@container ss-context-panel (max-width:310px){
  .ss-context-tabs{gap:2px;padding:8px}
  .ss-context-tabs button{font-size:11px;padding-inline:2px}
  .ss-context-body{padding-inline:12px}
  .sf-task header,.sf-integration header{flex-wrap:wrap;gap:4px}
  .sf-section>h3{flex-wrap:wrap}
  .ss-facts{grid-template-columns:minmax(60px,.65fr) minmax(0,1fr);gap:7px}
}
@media(max-width:640px),(pointer:coarse){
  .ss-interactions-ready :is(.ss-row-menu>summary,.ss-copy-id,.ss-mobile-list,.ss-context-toggle,.ss-fold,.ss-layout-close){min-width:36px;min-height:36px}
  .ss-interactions-ready .ss-row-menu>div.ss-interaction-popover>button{min-height:42px;font-size:13px}
  .ss-interactions-ready .ss-context-tabs button{min-height:40px}
  .ss-interactions-ready .sf-message-actions .ss-button{min-height:32px}
  .ss-interactions-ready .ss-composer-controls :is(.ss-composer-icon,#ss-send){min-height:36px;min-width:36px}
  .ss-interactions-ready .sf-dialog footer .ss-button,.ss-interactions-ready .ss-layout-reset{min-height:42px}
  .ss-interactions-ready .ss-composer.ss-composer-compact .ss-composer-popover label{grid-template-columns:minmax(0,1fr);gap:5px;margin:12px 0}
  .ss-interactions-ready .ss-composer.ss-composer-compact .ss-composer-popover :is(select,#ss-effort,#ss-permission){min-height:40px;height:40px;font-size:16px}
}
@keyframes ss-interaction-enter{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
@keyframes ss-interaction-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){
  .ss-shell,.ss-shell *,.ss-shell *:before,.ss-shell *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
