.skipper-launcher { position:fixed; right:24px; bottom:24px; z-index:34; display:flex; align-items:center; gap:10px; padding:8px 16px 8px 8px; border:1px solid #f6c315; border-radius:3px; background:#111214; color:#f6c315; box-shadow:0 5px 24px #0007; font:700 13px system-ui; cursor:pointer; }
.skipper-launcher img { object-fit:contain; }
.skipper-dialog { box-sizing:border-box; overflow:hidden; position:fixed; inset: auto 24px 24px auto; width:min(440px,calc(100vw - 32px)); height:min(680px,calc(100dvh - 48px)); max-height:none; max-width:none; margin:0; padding:0; border:1px solid #ffffff30; border-top:3px solid #f6c315; border-radius:3px; background:#111214; color:#f5f5ef; box-shadow:0 24px 90px #0009; font:14px system-ui; }
.skipper-dialog[open] { display:flex; flex-direction:column; }
.skipper-dialog::backdrop { background:#0005; }
.skipper-dialog > header { display:flex; align-items:center; gap:10px; padding:16px; border-bottom:1px solid #ffffff18; }
.skipper-dialog header > div { flex:1; }
.skipper-dialog h2 { margin:0 0 3px; font-size:19px; }
.skipper-dialog header span,.skipper-location { font-size:11px; color:#aeb0a9; }
.skipper-dialog button { cursor:pointer; font:inherit; border-radius:2px; }
.skipper-dialog header button { min-height:40px; padding:8px; background:none; color:#f6c315; border:0; font-size:12px; }
.skipper-dialog #skipperClose { font-size:26px; }
.skipper-location { margin:0; padding:12px 16px; border-bottom:1px solid #ffffff0c; }
.skipper-messages { flex:1; min-height:0; overflow:auto; padding:16px; overscroll-behavior:contain; }
.skipper-message { padding:12px; margin-bottom:12px; line-height:1.65; background:#1c1e20; border:1px solid #ffffff10; border-radius:3px; overflow-wrap:anywhere; white-space:pre-wrap; }
.skipper-message[data-role=user] { margin-left:28px; background:#f6c31515; border-color:#f6c31530; }
.skipper-message strong { display:block; color:#f6c315; font-size:10px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:5px; }
.skipper-message a { color:#f6c315; text-decoration:underline; }
.skipper-suggestions { display:grid; gap:6px; padding:0 16px; }
.skipper-suggestions button { text-align:left; padding:10px; border:1px solid #ffffff20; background:#1c1e20; color:#e3e4df; font-size:12px; }
.skipper-status { margin:0; padding:10px 16px; color:#c7c9c2; font-size:12px; }
.skipper-dialog form { display:flex; gap:8px; padding:12px 16px 16px; border-top:1px solid #ffffff18; }
.skipper-dialog textarea { flex:1; width:0; min-height:48px; max-height:140px; resize:vertical; padding:10px; background:#090a0b; border:1px solid #ffffff25; color:#fff; border-radius:2px; font:14px system-ui; }
.skipper-dialog form button { align-self:flex-end; padding:14px; background:#f6c315; color:#090a0b; border:0; font-weight:750; }
.skipper-dialog button:disabled { opacity:.45; cursor:default; }
.skipper-dialog :focus-visible { outline:2px solid #f6c315; outline-offset:2px; }
@media(max-width:600px) { .skipper-launcher { right:16px; bottom:calc(20px + env(safe-area-inset-bottom)); } body:has(#mobile-app-banner:not([hidden])) .skipper-launcher { bottom:110px; } .skipper-dialog { inset:auto 8px 8px; width:calc(100vw - 16px); height:calc(100dvh - 24px); } }

.skipper-suggestions[hidden] { display:none; }
.workspace-floating-actions { position:fixed; z-index:34; right:24px; bottom:24px; display:flex; align-items:center; gap:10px; }
.workspace-floating-actions .skipper-launcher { position:static; }
.floating-get-app { display:flex; align-items:center; gap:10px; min-height:58px; padding:8px 14px; border:1px solid #f6c315; border-radius:2px; background:#f6c315; color:#090a0b; font:850 12px system-ui; cursor:pointer; box-shadow:0 5px 24px #0007; }
.floating-get-app:hover { background:#ffda49; }
.floating-get-app img { object-fit:contain; }
@media(max-width:600px) { .workspace-floating-actions { right:12px; bottom:calc(16px + env(safe-area-inset-bottom)); gap:8px; } .floating-get-app { gap:6px; padding:8px 10px; font-size:11px; } .workspace-floating-actions .skipper-launcher { padding-right:10px; gap:6px; } body:has(#mobile-app-banner:not([hidden])) .workspace-floating-actions { bottom:110px; } }
.workspace-floating-actions a.skipper-launcher { text-decoration:none; }

/* Expand the existing conversation without changing routes or losing a reply. */
.skipper-dialog.skipper-expanded { inset:16px; margin:auto; width:min(1200px,calc(100% - 32px)); height:calc(100dvh - 32px); max-width:calc(100% - 32px); max-height:calc(100dvh - 32px); border-radius:3px; }
.skipper-dialog.skipper-expanded > :is(header,.skipper-location,.skipper-messages,.skipper-suggestions,.skipper-status,form) { width:100%; box-sizing:border-box; padding-left:20px; padding-right:20px; }
.skipper-dialog.skipper-expanded .skipper-message { font-size:16px; }
.skipper-dialog.skipper-expanded form { padding-bottom:max(20px,env(safe-area-inset-bottom)); }
.skipper-dialog #skipperExpand { font-size:22px; min-width:40px; }
@media(max-width:600px) { .skipper-dialog > header { gap:5px; padding:12px; } .skipper-dialog header > img { width:32px; height:32px; } .skipper-dialog header button { padding:6px; } }

.skipper-dialog > :is(header,.skipper-location,.skipper-suggestions,.skipper-status,form){flex-shrink:0}
.skipper-dialog .skipper-messages{min-width:0;flex:1 1 0}
@media(max-width:600px){.skipper-dialog.skipper-expanded{inset:8px;width:calc(100% - 16px);max-width:calc(100% - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}.skipper-dialog.skipper-expanded>:is(header,.skipper-location,.skipper-messages,.skipper-suggestions,.skipper-status,form){padding-left:12px;padding-right:12px}}
@media(max-height:500px){.skipper-dialog .skipper-location,.skipper-dialog .skipper-suggestions{display:none}.skipper-dialog>header{padding-top:6px;padding-bottom:6px}.skipper-dialog form{padding-top:8px;padding-bottom:8px}}
