/* All presentation is scoped to the owner-authorized chat. */
.folio-support-launcher{position:fixed;right:24px;bottom:22px;z-index:45;display:flex;align-items:center;gap:9px;height:48px;padding:0 18px;border:1px solid #d8e4f4;border-radius:999px;background:#fff;color:#15385f;box-shadow:0 5px 22px #17375620;font:600 13px/1 system-ui;cursor:pointer;transition:box-shadow .18s,transform .18s}
.folio-support-launcher svg{width:21px;height:21px;color:#2668d8}.folio-support-launcher:hover{transform:translateY(-2px);box-shadow:0 8px 25px #17375630}
.folio-support-chat{--chat-ink:#1b3553;--chat-muted:#566b83;--chat-line:#e3eaf3;--chat-paper:#fff;--chat-soft:#f4f7fc;--chat-accent:#245fc3;position:fixed;z-index:46;inset:auto 24px 82px auto;margin:0;width:420px;max-width:calc(100vw - 32px);padding:0;border:1px solid #dce5f1;border-radius:24px;background:var(--chat-paper);color:var(--chat-ink);box-shadow:0 18px 65px #102a4f2b,0 3px 12px #102a4f0a;box-sizing:border-box;font:14px/1.6 system-ui;color-scheme:light}
.folio-support-chat[open]{display:flex;flex-direction:column;height:min(650px,calc(100dvh - 106px));max-height:calc(100dvh - 106px);overflow:hidden}
.folio-support-chat [hidden]{display:none!important}.folio-support-chat *{box-sizing:border-box}.folio-support-chat svg{display:block;width:20px;height:20px;flex-shrink:0}
.folio-support-chat>header.folio-chat-top{position:static;display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:0;flex-shrink:0;padding:17px 20px;border-bottom:1px solid var(--chat-line);background:var(--chat-paper);box-shadow:none}
.folio-chat-brand{width:38px;height:40px;object-fit:contain}.folio-chat-heading{min-width:0}.folio-support-chat h2{font:italic 700 27px/1.1 Georgia,serif;letter-spacing:-1px;margin:0;color:var(--chat-ink)}.folio-support-chat header p{font:12px/1.4 system-ui;margin:4px 0 0;color:var(--chat-muted)}
.folio-chat-header-actions{display:flex;gap:4px;margin-left:auto}.folio-chat-header-actions button{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:11px;background:transparent;color:var(--chat-muted);cursor:pointer}.folio-chat-header-actions button:hover{background:var(--chat-soft);color:var(--chat-ink)}
.folio-support-chat .folio-chat-log{flex:1 1 auto;min-height:48px;overflow-y:auto;overscroll-behavior:contain;padding:24px 22px;scrollbar-width:thin;scrollbar-color:#c8d5e5 transparent;overflow-wrap:anywhere}
.folio-chat-welcome{padding:5px 0 0}.folio-chat-eyebrow{display:block;font:700 10px/1.5 system-ui;letter-spacing:1.5px;color:var(--chat-accent)}.folio-chat-welcome h3{font:650 27px/1.2 system-ui;letter-spacing:-.9px;margin:11px 0 12px;color:var(--chat-ink);max-width:290px}.folio-chat-welcome>p{font:14px/1.65 system-ui;color:var(--chat-muted);margin:0;max-width:310px}
.folio-chat-suggestions{display:grid;gap:9px;margin-top:25px}.folio-chat-suggestions button{display:flex;align-items:center;gap:11px;min-height:52px;padding:12px 13px;border:1px solid var(--chat-line);border-radius:13px;background:var(--chat-paper);color:var(--chat-ink);font:500 13px/1.45 system-ui;text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.folio-chat-suggestions button>svg:first-child{color:var(--chat-accent);width:19px;height:19px}.folio-chat-suggestions button>svg:last-child{margin-left:auto;width:14px;height:14px;color:var(--chat-muted)}.folio-chat-suggestions button:hover{border-color:#a9c5ed;background:var(--chat-soft)}
.folio-chat-help-link{display:inline-flex;align-items:center;gap:7px;font:500 12px/1.5 system-ui;color:var(--chat-accent);text-decoration:none;margin-top:19px}.folio-chat-help-link svg{width:13px;height:13px}.folio-chat-help-link:hover{text-decoration:underline}
.folio-support-chat .folio-chat-message{white-space:pre-wrap;font:14px/1.7 system-ui;padding:0;margin:0 0 22px;color:var(--chat-ink)}.folio-chat-message.assistant::before{content:'Folio';display:flex;align-items:center;min-height:26px;padding-left:33px;background:url('/brand.png') left center/25px 25px no-repeat;font:650 11px/1.5 system-ui;margin-bottom:8px;color:var(--chat-muted)}.folio-support-chat .folio-chat-message.user{padding:12px 15px;margin-left:38px;background:#eaf2ff;border:1px solid #dce9fc;border-radius:16px 16px 4px 16px}
.folio-chat-guides{margin:18px 0}.folio-chat-guides>h3{font:650 11px/1.5 system-ui;color:var(--chat-muted);margin:0 0 9px}.folio-chat-log details{padding:0;border:1px solid var(--chat-line);border-radius:13px;margin:8px 0;background:var(--chat-paper);font:13px/1.65 system-ui;overflow:hidden}.folio-chat-log summary{cursor:pointer;font-weight:600;color:var(--chat-ink);padding:13px 14px}.folio-chat-log details[open] summary{background:var(--chat-soft);border-bottom:1px solid var(--chat-line)}.folio-chat-guide-body{padding:1px 15px 13px}.folio-chat-guide-body p{font:13px/1.7 system-ui;color:var(--chat-ink);margin:12px 0 0}.folio-chat-guide-body ol{padding-left:20px;margin:12px 0}.folio-chat-guide-body li{padding-left:3px;margin:7px 0}
.folio-support-chat>form{flex-shrink:0;margin:0;padding:12px 16px 14px;border-top:1px solid var(--chat-line);background:var(--chat-paper)}.folio-chat-composer{display:flex;align-items:flex-end;gap:7px;padding:7px;border:1px solid #cfdceb;border-radius:16px;background:var(--chat-soft);transition:border-color .15s,box-shadow .15s}.folio-chat-composer:focus-within{border-color:#6194dc;box-shadow:0 0 0 3px #3e78cc12}
.folio-support-chat textarea{display:block;flex:1;min-width:0;width:100%;height:44px;min-height:44px;max-height:112px;resize:none;margin:0;padding:10px 7px;border:0;border-radius:0;background:transparent;color:var(--chat-ink);font:14px/1.55 system-ui;box-shadow:none;outline:none}.folio-support-chat textarea::placeholder{color:var(--chat-muted)}
.folio-chat-composer button{display:grid;place-items:center;width:40px;height:40px;min-height:40px;flex-shrink:0;padding:0;margin:0 1px 1px 0;border:0;border-radius:12px;background:#2868d1;color:#fff;cursor:pointer}.folio-chat-composer button:hover{background:#215bb9}.folio-chat-composer button svg{width:20px;height:20px}.folio-chat-composer button:disabled{opacity:1;background:#d7e2f1;color:#60758f;cursor:default}
.folio-chat-privacy{display:flex;align-items:center;justify-content:center;gap:5px;margin-top:10px;color:var(--chat-muted);font:10px/1.5 system-ui}.folio-chat-privacy svg{width:11px;height:11px}.folio-support-chat .folio-chat-status{margin:9px 3px 0;color:var(--chat-muted);font:12px/1.5 system-ui;max-height:68px;overflow:auto}.folio-chat-status:empty{display:none}
.folio-chat-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.folio-support-chat button:focus-visible,.folio-support-chat a:focus-visible,.folio-support-chat summary:focus-visible,.folio-support-launcher:focus-visible{outline:2px solid #5185ce;outline-offset:3px}.folio-support-chat button:disabled{cursor:wait;opacity:.55}
.folio-support-chat .folio-chat-toolbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin:0 0 9px}.folio-chat-toolbar button{display:inline-flex;align-items:center;gap:5px;border:0;padding:5px 0;min-height:32px;background:transparent;color:var(--chat-muted);font:500 11px/1.4 system-ui;cursor:pointer}.folio-chat-toolbar button:hover{color:var(--chat-accent)}.folio-chat-toolbar svg{width:17px;height:17px}.folio-chat-toolbar small{font:700 8px system-ui;background:#e9f1ff;padding:3px 4px;border-radius:4px;color:#245fc3}.folio-chat-toolbar [data-agent]{margin-left:auto}
.folio-chat-files{display:flex;gap:5px;flex-wrap:wrap;max-height:70px;overflow:auto}.folio-chat-files button{font:11px system-ui;background:var(--chat-soft);color:var(--chat-ink);border:1px solid var(--chat-line);border-radius:7px;padding:6px;max-width:100%;overflow-wrap:anywhere;margin-bottom:7px}
.folio-support-chat .folio-chat-tool{display:grid;gap:10px;padding:15px;margin-top:12px;background:var(--chat-soft);border:1px solid var(--chat-line);border-radius:13px}.folio-chat-tool label{display:grid;gap:4px;font-size:12px}.folio-chat-tool select,.folio-chat-tool input{width:100%;min-width:0;font:13px system-ui;color:var(--chat-ink);background:var(--chat-paper);border:1px solid var(--chat-line);border-radius:8px;padding:9px}.folio-chat-tool-options{display:grid;gap:8px}.folio-chat-tool-options p{font-size:12px;margin:0}.folio-chat-tool button,.folio-chat-retry{border:1px solid var(--chat-line);border-radius:9px;font:500 12px system-ui;padding:10px 13px;background:var(--chat-paper);color:var(--chat-ink);cursor:pointer}.folio-chat-tool button[type=submit]{background:#2868d1;color:white}.folio-chat-tool button:disabled{opacity:.5}.folio-chat-job{font:13px/1.6 system-ui;padding:13px;border:1px solid var(--chat-line);border-radius:11px}.folio-chat-job a{color:var(--chat-accent)}.folio-chat-message.agent{border-left:3px solid #2868d1;white-space:pre-wrap;padding-left:12px}
.folio-chat-contact{padding:17px;border:1px solid var(--chat-line);border-radius:14px;background:var(--chat-soft);margin:12px 0}.folio-chat-contact h3{font:650 16px/1.4 system-ui;margin:0 0 8px;color:var(--chat-ink)}.folio-chat-contact p{font:13px/1.65 system-ui;margin:0 0 12px;color:var(--chat-muted)}.folio-chat-contact a{display:block;color:var(--chat-accent);font:600 14px/1.5 system-ui}.folio-chat-contact small{display:block;font:11px/1.5 system-ui;color:var(--chat-muted);margin-top:9px}
.dark .folio-support-chat{--chat-ink:#e5edf8;--chat-muted:#a9bbd1;--chat-line:#30435e;--chat-paper:#14243b;--chat-soft:#1c304b;--chat-accent:#a4c7ff;border-color:#354960;color-scheme:dark}.dark .folio-support-launcher{background:#17273e;border-color:#354960;color:#e0e9f5}.dark .folio-support-launcher svg{color:#9ac2ff}.dark .folio-support-chat .folio-chat-message.user{background:#243f64;border-color:#35537c}.dark .folio-chat-composer{border-color:#435b7b}.dark .folio-chat-suggestions button:hover{border-color:#617fa6}.dark .folio-chat-toolbar small{background:#2a456a;color:#bad4ff}.dark .folio-chat-composer button:disabled{background:#344b69;color:#b4c7de}
@media(max-width:500px){.folio-support-launcher{right:16px;bottom:max(16px,env(safe-area-inset-bottom));height:46px}.folio-support-chat{inset:auto 12px max(74px,calc(64px + env(safe-area-inset-bottom)));max-width:none;width:auto;border-radius:21px}.folio-support-chat[open]{height:min(650px,calc(100dvh - 94px));max-height:calc(100dvh - 94px)}.folio-support-chat>header.folio-chat-top{padding:14px 16px}.folio-support-chat .folio-chat-log{padding:20px 18px}.folio-chat-welcome h3{font-size:26px}.folio-support-chat textarea{font-size:16px}.folio-chat-toolbar{column-gap:9px!important}.folio-chat-toolbar button{font-size:11px}.folio-chat-toolbar [data-agent]{margin-left:auto}}
@media(max-width:355px){.folio-chat-toolbar [data-agent]{margin-left:0}.folio-chat-welcome h3{font-size:23px}.folio-support-chat .folio-chat-log{padding:17px 14px}}
@media(max-height:580px){.folio-support-chat{bottom:12px}.folio-support-chat[open]{height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.folio-support-chat>header.folio-chat-top{padding-top:10px;padding-bottom:10px}.folio-chat-welcome{padding-top:0}.folio-chat-suggestions{margin-top:14px}.folio-support-chat .folio-chat-log{padding-top:14px;padding-bottom:14px}.folio-support-chat>form{padding-top:8px;padding-bottom:9px}.folio-chat-privacy{display:none}}
.folio-chat-thinking{display:flex;align-items:center;gap:11px;width:fit-content;padding:13px 15px;border:1px solid var(--chat-line);border-radius:15px 15px 15px 4px;background:var(--chat-soft);color:var(--chat-muted);font:12px/1.5 system-ui;margin:3px 0 20px}
.folio-chat-thinking-dots{display:flex;align-items:center;gap:4px;height:18px}.folio-chat-thinking-dots i{display:block;width:6px;height:6px;border-radius:50%;background:var(--chat-accent);animation:folio-chat-think 1.3s ease-in-out infinite}.folio-chat-thinking-dots i:nth-child(2){animation-delay:.16s}.folio-chat-thinking-dots i:nth-child(3){animation-delay:.32s}@keyframes folio-chat-think{0%,65%,100%{transform:translateY(0);opacity:.45}30%{transform:translateY(-4px);opacity:1}}
@media(prefers-reduced-motion:reduce){.folio-support-chat *,.folio-support-launcher{transition:none}.folio-chat-thinking-dots i{animation:none;opacity:1}}

/* Account identity, retained consultations and guest recovery. */
.folio-chat-identity{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-shrink:0;padding:9px 20px;border-bottom:1px solid var(--chat-line);background:var(--chat-soft);font:11px/1.4 system-ui}.folio-chat-identity>span{display:grid;gap:2px;min-width:0}.folio-chat-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--chat-muted)}.folio-chat-identity button{flex-shrink:0;border:0;background:transparent;color:var(--chat-accent);font:600 11px system-ui;cursor:pointer;padding:6px}.folio-chat-continuity{padding:16px;border:1px solid var(--chat-line);border-radius:13px;background:var(--chat-soft);margin:0 0 20px}.folio-chat-continuity h3{font:650 15px/1.4 system-ui;margin:0 0 9px;color:var(--chat-ink)}.folio-chat-continuity p{font:12px/1.6 system-ui;margin:8px 0 12px;color:var(--chat-muted)}.folio-chat-continuity form{display:grid;gap:10px}.folio-chat-continuity label{display:grid;gap:6px;font:600 11px system-ui;color:var(--chat-ink)}.folio-chat-continuity input{width:100%;min-width:0;padding:10px 11px;border:1px solid var(--chat-line);border-radius:9px;background:var(--chat-paper);color:var(--chat-ink);font:14px system-ui}.folio-chat-continuity button{border:1px solid var(--chat-line);border-radius:9px;background:var(--chat-paper);color:var(--chat-accent);padding:8px 11px;font:600 11px/1.5 system-ui;cursor:pointer;margin:3px 4px 0 0}.folio-chat-continuity form button{background:#2868d1;color:white}.folio-chat-continuity button:disabled{opacity:.5;cursor:wait}.folio-chat-continuity a{display:block;color:var(--chat-accent);font:12px/1.5 system-ui;margin:14px 0}.folio-chat-continuity .folio-chat-history-row{display:flex;flex-direction:column;align-items:flex-start;width:100%;text-align:left;padding:11px 12px;margin-bottom:7px}.folio-chat-history-row span{font-weight:400;color:var(--chat-muted);margin-top:4px}.folio-chat-continuity input:focus-visible,.folio-chat-continuity button:focus-visible{outline:2px solid var(--chat-accent);outline-offset:2px}@media(max-width:500px){.folio-chat-identity{padding:8px 16px}.folio-chat-continuity input{font-size:16px}}

.folio-chat-identity>div{display:flex;align-items:center;flex-shrink:0;gap:3px}.folio-chat-identity>div button{white-space:nowrap}
