/* Freespirits AI Tech Agent — independent styles, responsive and no font dependencies */
.fsai-tech-root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;position:fixed;right:clamp(14px,2vw,28px);bottom:clamp(14px,2vw,28px);z-index:2147481000;font-size:14px;color:#152337;line-height:1.45}
.fsai-tech-root *, .fsai-tech-root *::before,.fsai-tech-root *::after{box-sizing:border-box}
.fsai-tech-root [hidden]{display:none!important}
.fsai-tech-launch{display:flex;align-items:center;gap:11px;border:0;border-radius:999px;background:var(--fsai-accent,#1073ba);color:#fff;padding:9px 18px 9px 9px;box-shadow:0 8px 26px rgba(10,39,75,.22);font-weight:700;font-size:14px;line-height:1.2;font-family:inherit;cursor:pointer;transition:transform .16s,box-shadow .16s;max-width:calc(100vw - 32px)}
.fsai-tech-launch:hover{transform:translateY(-2px);box-shadow:0 12px 32px rgba(10,39,75,.26)}
.fsai-tech-launch:focus-visible,.fsai-tech-root button:focus-visible,.fsai-tech-root input:focus-visible,.fsai-tech-root textarea:focus-visible{outline:3px solid #fcbf49;outline-offset:3px}
.fsai-tech-launch-icon{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.20);display:grid;place-items:center;font-size:22px}
.fsai-tech-window{position:absolute;right:0;bottom:66px;width:min(390px,calc(100vw - 28px));height:min(620px,calc(100dvh - 104px));max-height:780px;background:#fff;border:1px solid #dce4ed;border-radius:20px;display:flex;flex-direction:column;box-shadow:0 16px 54px rgba(18,34,63,.24);overflow:hidden;animation:fsai-appear .16s ease-out}
@keyframes fsai-appear{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.fsai-tech-header{flex:0 0 auto;display:flex;align-items:center;gap:11px;padding:16px;color:#fff;background:linear-gradient(120deg,var(--fsai-accent,#1073ba),#122b52)}
.fsai-tech-avatar{height:42px;width:42px;border-radius:15px;background:rgba(255,255,255,.20);display:grid;place-items:center;font-size:24px;flex-shrink:0}
.fsai-tech-heading{min-width:0;flex:1}.fsai-tech-heading strong{display:block;font-size:15px;font-weight:750;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fsai-tech-heading small{display:block;color:rgba(255,255,255,.86);font-size:11px;margin-top:3px}
.fsai-tech-close{border:0!important;background:transparent!important;color:#fff!important;font-size:29px!important;line-height:1!important;padding:2px 8px!important;cursor:pointer;min-width:32px}
.fsai-tech-intro{overflow-y:auto;padding:23px 20px;flex:1;background:linear-gradient(180deg,#f7fbff,#fff 46%)}
.fsai-tech-welcome{font-size:17px;font-weight:700;line-height:1.4;margin:0 0 8px;color:#1d2a3f}.fsai-tech-subtitle{color:#657386;margin:0 0 19px;font-size:13px}
.fsai-tech-root form label{display:block;font-size:12px;font-weight:650;color:#34445a;margin-bottom:13px}
.fsai-tech-root input[type=text],.fsai-tech-root input[type=email]{width:100%;margin-top:5px;border:1px solid #c9d5e2;border-radius:10px;padding:11px 12px;min-height:43px;background:#fff;color:#203148;font:inherit}
.fsai-tech-name-fields{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.fsai-tech-root .fsai-tech-check{display:flex;gap:9px;align-items:flex-start;font-size:11px;font-weight:400;color:#5a6978;line-height:1.5;margin:12px 0}
.fsai-tech-check input{margin:2px 0 0;accent-color:var(--fsai-accent,#1073ba);flex-shrink:0;width:15px;height:15px}
.fsai-tech-root a{color:var(--fsai-accent,#1073ba);text-decoration:underline}
.fsai-tech-trap{position:absolute!important;left:-10000px!important;opacity:0!important;height:1px!important;width:1px!important}
.fsai-tech-root .fsai-tech-primary{border:0;background:var(--fsai-accent,#1073ba);color:#fff;border-radius:11px;padding:12px 17px;width:100%;min-height:44px;font-weight:700;font-size:14px;font-family:inherit;cursor:pointer;margin-top:13px}
.fsai-tech-root button:disabled{opacity:.56;cursor:wait}
.fsai-tech-chat{min-height:0;flex:1;display:flex;flex-direction:column;background:#f7f9fc}
.fsai-tech-status{font-size:11px;background:#e8f5ee;color:#20523c;padding:9px 12px;border-bottom:1px solid #dce8e2}
.fsai-tech-status.fsai-tech-alert{background:#fff0eb;color:#8a331e}
.fsai-tech-status summary{cursor:pointer;font-weight:650;list-style:none}.fsai-tech-status summary::-webkit-details-marker{display:none}
.fsai-tech-status ul{list-style:none;margin:8px 0 0;padding:0;max-height:100px;overflow:auto}.fsai-tech-status li{padding:3px 0;border-top:1px solid rgba(50,70,80,.12)}
.fsai-tech-messages{min-height:0;flex:1;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:11px;padding:18px 14px 14px}
.fsai-tech-message{max-width:88%;padding:11px 13px;border-radius:16px;word-break:break-word;white-space:pre-wrap;font-size:13px;line-height:1.56;box-shadow:0 1px 4px rgba(30,54,80,.05)}
.fsai-tech-from-agent{align-self:flex-start;background:#fff;color:#243447;border:1px solid #e9edf4;border-bottom-left-radius:5px}
.fsai-tech-from-user{align-self:flex-end;background:var(--fsai-accent,#1073ba);color:#fff;border-bottom-right-radius:5px}
.fsai-tech-compose{margin:0!important;padding:12px 11px 8px;border-top:1px solid #dfe6ee;background:#fff;display:flex;align-items:end;gap:8px}
.fsai-tech-root #fsai-tech-input{margin:0!important;min-width:0;flex:1;resize:vertical;max-height:100px;min-height:43px;padding:10px 12px;border:1px solid #cbd7e4;border-radius:12px;background:#fafcfe;color:#203148;font:inherit;line-height:1.4}
.fsai-tech-root #fsai-tech-send{border:0!important;background:var(--fsai-accent,#1073ba)!important;color:#fff!important;height:42px;width:43px;min-width:43px;border-radius:12px;font-size:20px;cursor:pointer}
.fsai-tech-foot{background:#fff;padding:5px 13px 12px;color:#8993a1;text-align:center;font-size:10px;line-height:1.4}
.fsai-tech-error{background:#fff0ed;border-top:1px solid #f8b8ab;color:#ac2b1c;padding:9px 12px;font-size:12px;flex-shrink:0}
.fsai-tech-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:480px){.fsai-tech-root{right:10px;bottom:10px}.fsai-tech-window{width:calc(100vw - 20px);height:min(690px,calc(100dvh - 85px));bottom:62px;border-radius:17px}.fsai-tech-launch{padding:7px 12px 7px 7px}.fsai-tech-launch-icon{height:35px;width:35px}.fsai-tech-header{padding:14px}.fsai-tech-intro{padding:18px 16px}}
@media(max-height:560px){.fsai-tech-window{height:calc(100dvh - 86px);bottom:60px}}
@media(prefers-reduced-motion:reduce){.fsai-tech-window{animation:none}.fsai-tech-launch{transition:none}}
/* v1.1: Existing header link can be the sole launcher; dialog remains fixed and responsive. */
.fsai-tech-no-launcher .fsai-tech-launch{display:none!important}
.fsai-tech-no-launcher .fsai-tech-window{bottom:0}
.fsai-tech-root .fsai-tech-finish{border:0;background:#eef3ff;color:#244177;font-weight:650;font-size:12px;font-family:inherit;padding:10px;cursor:pointer;border-top:1px solid #dfe6ee}
.fsai-tech-root .fsai-tech-finish:hover{background:#e3e9fa}
.fsai-tech-ticket{background:#fff;overflow-y:auto;min-height:0;flex:1;padding:26px 20px 20px}
.fsai-tech-ticket h3{font-size:18px;margin:0 0 12px;line-height:1.4;color:#162c4a}
.fsai-tech-ticket p{font-size:13px;color:#526479;line-height:1.65;margin:0 0 20px}
.fsai-tech-root .fsai-tech-secondary{display:block;width:100%;border:1px solid #d5e0ef;border-radius:11px;background:#fff;color:#203c65;padding:12px 17px;margin-top:12px;font:inherit;font-weight:700;cursor:pointer}
.fsai-tech-root .fsai-tech-textbtn{display:block;border:0;background:transparent;color:var(--fsai-accent,#1073ba);text-decoration:underline;cursor:pointer;margin:14px auto 0;padding:8px;font:inherit}
.fsai-tech-root #fsai-tech-ticket-extra{width:100%;margin:5px 0 0;resize:vertical;max-height:190px;min-height:100px;border:1px solid #c9d5e2;border-radius:10px;padding:11px 12px;background:#fff;color:#203148;font:inherit}
.fsai-tech-root #fsai-tech-ticket-success p{font-size:15px}
@media(max-width:480px){.fsai-tech-no-launcher .fsai-tech-window{bottom:0;height:min(690px,calc(100dvh - 20px))}}
