/* Chat as a desktop window (Robert, 6 Oct 2026): move, resize, maximize, tear a tab off into its own window. See chat-window.js. */
.chat-resize{display:none}
@media (min-width:761px) and (min-height:500px){
  .chat-dialog.chat-floating{inset:auto;margin:0;max-width:none;max-height:none}
  .chat-dialog.chat-maximized{border-radius:0}
  .chat-dialog .chat-header{cursor:grab;user-select:none}
  .chat-dialog .chat-header :is(button,a,input,select,textarea,label){cursor:pointer;user-select:auto}
  .chat-dialog.chat-dragging,.chat-dialog.chat-dragging *{user-select:none !important}
  .chat-dialog.chat-dragging .chat-header{cursor:grabbing}
  html:not(.chat-solo) .chat-dialog .chat-resize{display:block;position:absolute;z-index:40;touch-action:none}
  .chat-resize:is([data-dir=n],[data-dir=s]){left:12px;right:12px;height:6px;cursor:ns-resize}
  .chat-resize:is([data-dir=e],[data-dir=w]){top:12px;bottom:12px;width:6px;cursor:ew-resize}
  .chat-resize[data-dir=n]{top:0}.chat-resize[data-dir=s]{bottom:0}.chat-resize[data-dir=e]{right:0}.chat-resize[data-dir=w]{left:0}
  .chat-resize:is([data-dir=ne],[data-dir=nw],[data-dir=se],[data-dir=sw]){width:14px;height:14px}
  .chat-resize[data-dir=ne]{top:0;right:0;cursor:nesw-resize}.chat-resize[data-dir=sw]{bottom:0;left:0;cursor:nesw-resize}
  .chat-resize[data-dir=nw]{top:0;left:0;cursor:nwse-resize}.chat-resize[data-dir=se]{bottom:0;right:0;cursor:nwse-resize}
  #chat-top-tabs .chat-tab-select{touch-action:none;user-select:none;-webkit-user-select:none}
}
.chat-tab-ghost{position:fixed;left:0;top:0;z-index:60;pointer-events:none;padding:6px 12px;border-radius:10px;border:1px solid var(--green,#2d7a57);
  background:color-mix(in srgb,var(--paper,#fafbf7) 92%,transparent);color:var(--ink,#14231c);font-size:14px;box-shadow:0 8px 24px #0005;white-space:nowrap}
.chat-tab-ghost-out{border-style:dashed;font-weight:600}
/* A torn-off window: the chat fills the whole browser window. */
html.chat-solo .chat-dialog{inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border-radius:0;border:0}
