:root{--qac-bg:#111214;--qac-panel:#191a1d;--qac-panel-2:#222327;--qac-line:#45464b;--qac-text:#f1f1f2;--qac-dim:#c2c2c6;--qac-silver:#d0d0d3;--qac-black:#080809}
.qac-chat-dock,.qac-chat-dock *,.qac-panel,.qac-panel *{box-sizing:border-box}

.qac-panel button,.qac-panel input,.qac-panel textarea,.qac-panel select{font:inherit}
.qac-panel button,.qac-launcher,.qac-teaser button{cursor:pointer}
.qac-panel[hidden],.qac-teaser[hidden]{display:none!important}
.qac-review-bar{min-height:34px;padding:9px clamp(16px,4vw,54px);display:flex;justify-content:space-between;gap:18px;border-bottom:1px solid #303135;background:#0b0b0c;color:#c5c5c9;font-size:10px;font-weight:700;letter-spacing:.12em}
.qac-header{height:82px;padding:14px clamp(16px,4vw,54px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303135;background:linear-gradient(100deg,#17181a,#101113)}
.qac-brand{display:inline-flex;align-items:center;max-width:180px}.qac-brand img{display:block;width:170px;max-width:100%;height:auto}
.qac-private-tag{padding:7px 10px;border:1px solid #494a4f;border-radius:2px;color:#c5c5c9;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.qac-page-content{width:min(1100px,90vw);margin:0 auto;padding:clamp(42px,8vw,96px) 0 90px}
.qac-eyebrow{margin:0 0 14px;color:#bdbdc1;font-size:11px;font-weight:800;letter-spacing:.17em}
.qac-page-content h1{max-width:800px;margin:0;color:#f3f3f4;font-size:clamp(42px,7vw,76px);font-weight:500;line-height:.98;letter-spacing:-.045em}
.qac-lede{max-width:670px;margin:22px 0 0;color:#d0d0d3;font-size:17px;line-height:1.65}
.qac-demo-note{display:grid;gap:5px;max-width:680px;margin-top:28px;padding:15px 18px;border:1px solid #55565b;border-left:3px solid #c8c8cb;background:#1b1c1f;color:#ceced1;font-size:13px;line-height:1.5}
.qac-demo-note strong{color:#f1f1f2;font-size:14px}
.qac-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:56px;border-top:1px solid #393a3e;border-bottom:1px solid #393a3e}
.qac-steps article{min-height:170px;padding:23px 22px;border-right:1px solid #393a3e}.qac-steps article:first-child{padding-left:0}.qac-steps article:last-child{border:0}
.qac-steps article>span{color:#a8a8ad;font-size:10px;font-weight:800;letter-spacing:.14em}
.qac-steps h2{margin:17px 0 7px;color:#ececee;font-size:16px;font-weight:700}
.qac-steps p{margin:0;color:#bcbcc0;font-size:13px;line-height:1.55}
.qac-footer-note{max-width:700px;margin:22px 0 0;color:#b5b5ba;font-size:12px;line-height:1.5}
.qac-chat-dock{position:fixed;z-index:5000;right:22px;bottom:20px;display:flex;align-items:flex-end;gap:12px}
.qac-teaser{position:relative;width:238px;padding:16px 17px 14px;border:1px solid #56575c;border-radius:8px;background:#202124;box-shadow:0 12px 34px #0008;display:grid;gap:6px;color:#eee}
.qac-teaser strong{padding-right:20px;font-size:14px}.qac-teaser>span{color:#c4c4c8;font-size:12px;line-height:1.4}
.qac-teaser-close{position:absolute;top:7px;right:8px;width:28px;height:28px;padding:0;border:0;background:transparent;color:#c7c7cb;font-size:20px;line-height:1}
.qac-teaser-action{display:flex;justify-content:space-between;align-items:center;min-height:38px;margin-top:4px;padding:8px 10px;border:1px solid #66676b;border-radius:3px;background:#2a2b2e;color:#f4f4f5;text-align:left;font-size:12px;font-weight:700}
.qac-launcher{width:60px;height:60px;padding:0;border:1px solid #e2e2e4;border-radius:50%;display:grid;place-content:center;justify-items:center;gap:2px;background:#d1d1d3;color:#151517;box-shadow:0 10px 30px #0008;font-size:10px;font-weight:800;letter-spacing:.04em}
.qac-launcher svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round}
.qac-launcher:hover,.qac-teaser-action:hover{background:#fff;color:#111}
.qac-panel{position:fixed;z-index:5001;right:22px;bottom:94px;width:min(394px,calc(100vw - 32px));height:min(620px,calc(100dvh - 118px));min-height:390px;display:flex;flex-direction:column;overflow:hidden;border:1px solid #5a5b60;border-radius:11px;background:var(--qac-panel);box-shadow:0 22px 70px #000a;color:var(--qac-text);animation:qac-open .16s ease-out both}
@keyframes qac-open{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.qac-panel-head{flex:none;display:flex;align-items:center;gap:11px;padding:13px 13px 12px;border-bottom:1px solid #393a3f;background:linear-gradient(130deg,#242529,#1b1c1f)}
.qac-avatar{width:36px;height:36px;flex:none;display:grid;place-items:center;border:1px solid #929398;border-radius:50%;background:linear-gradient(145deg,#4a4b50,#191a1d);color:#f5f5f5;font-weight:800;font-size:15px}
.qac-panel-identity{min-width:0;flex:1}.qac-panel-identity h2{margin:0;color:#f0f0f1;font-size:13px;line-height:1.2}.qac-panel-identity p{display:flex;align-items:center;gap:6px;margin:5px 0 0;color:#c0c0c4;font-size:10px;line-height:1.2}
.qac-online-dot{width:6px;height:6px;border-radius:50%;background:#c6c6c9}
.qac-close{width:34px;height:34px;flex:none;border:1px solid #57585d;border-radius:50%;background:#252629;color:#f3f3f4;font-size:19px;line-height:1}
.qac-session-notice{flex:none;padding:8px 13px;border-bottom:1px solid #393a3f;background:#1d1e21;color:#c8c8cc;font-size:10px;line-height:1.35}.qac-session-notice strong{color:#e5e5e7}
.qac-progress{flex:none;padding:9px 14px 10px;border-bottom:1px solid #393a3f}.qac-progress-label{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;color:#c7c7ca;font-size:10px}.qac-progress-track{height:3px;overflow:hidden;border-radius:4px;background:#3c3d41}.qac-progress-track span{display:block;width:0;height:100%;background:#d1d1d4;transition:width .16s ease}
.qac-transcript{flex:1;min-height:0;overflow:auto;padding:14px 13px 12px;overscroll-behavior:contain;scrollbar-color:#525358 transparent;scrollbar-width:thin}
.qac-message{width:fit-content;max-width:92%;margin:0 0 11px;padding:10px 11px;border:1px solid #3e3f43;border-radius:3px 11px 11px 11px;background:#242529;color:#ececee;font-size:12px;line-height:1.5;overflow-wrap:anywhere;white-space:pre-wrap}
.qac-message-user{margin-left:auto;border-color:#66676c;border-radius:11px 3px 11px 11px;background:#303135;color:#f6f6f7}
.qac-message strong{color:#f3f3f4}.qac-message p{margin:0 0 6px}.qac-message p:last-child{margin-bottom:0}
.qac-typing{display:flex;align-items:center;gap:8px;color:#c8c8cb}.qac-typing-dots{display:inline-flex;gap:3px}.qac-typing-dots i{width:4px;height:4px;border-radius:50%;background:#d1d1d4;animation:qac-dot .7s ease-in-out infinite alternate}.qac-typing-dots i:nth-child(2){animation-delay:.12s}.qac-typing-dots i:nth-child(3){animation-delay:.24s}
@keyframes qac-dot{to{opacity:.28;transform:translateY(-2px)}}
.qac-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 13px}.qac-chip{min-height:34px;padding:7px 9px;border:1px solid #66676b;border-radius:18px;background:#202124;color:#ededee;font-size:11px;line-height:1.25;text-align:left}.qac-chip:hover,.qac-chip:focus-visible{border-color:#d6d6d9;background:#303135}
.qac-step-card{width:100%;margin:-1px 0 12px;padding:10px 11px 11px;border:1px solid #44454a;border-radius:3px 10px 10px 10px;background:#1d1e21}
.qac-step-card legend{padding:0 4px;color:#f0f0f2;font-size:12px;font-weight:700;line-height:1.4}.qac-step-help{margin:0 0 9px;color:#c4c4c8;font-size:10px;line-height:1.4}
.qac-field{display:grid;gap:5px;margin-top:8px}.qac-field label,.qac-field-label{color:#d8d8db;font-size:10px;font-weight:700}.qac-field input,.qac-field textarea,.qac-field select{width:100%;min-height:38px;padding:8px 9px;border:1px solid #64656a;border-radius:3px;background:#101113;color:#f3f3f4;font-size:12px}.qac-field textarea{min-height:68px;resize:vertical;line-height:1.4}.qac-field input::placeholder,.qac-field textarea::placeholder{color:#9d9da2}.qac-field input:focus-visible,.qac-field textarea:focus-visible,.qac-field select:focus-visible,.qac-chip:focus-visible,.qac-step-button:focus-visible,.qac-close:focus-visible,.qac-launcher:focus-visible,.qac-teaser button:focus-visible,.qac-compose button:focus-visible{outline:3px solid #eee;outline-offset:2px}
.qac-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 9px}.qac-field-grid .qac-field-full{grid-column:1/-1}
.qac-step-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:10px}.qac-step-button{min-height:34px;padding:7px 10px;border:1px solid #696a6f;border-radius:3px;background:#252629;color:#e5e5e7;font-size:10px;font-weight:700}.qac-step-button-primary{border-color:#d1d1d4;background:#d1d1d4;color:#151517}.qac-step-button-primary:hover{background:#fff}
.qac-error{margin:8px 0 0;color:#ffdada;font-size:10px;line-height:1.4}.qac-error:empty{display:none}
.qac-summary{margin:0 0 11px;padding:11px;border:1px solid #525358;border-radius:4px;background:#1c1d20}.qac-summary h3{margin:0 0 8px;color:#f1f1f2;font-size:12px}.qac-summary dl{display:grid;grid-template-columns:84px minmax(0,1fr);gap:5px 9px;margin:0;font-size:10px;line-height:1.4}.qac-summary dt{color:#bcbcc0}.qac-summary dd{min-width:0;margin:0;color:#e7e7e9;overflow-wrap:anywhere}
.qac-structured{margin-top:8px;border-top:1px solid #414247;padding-top:8px}.qac-structured summary{color:#c8c8cc;font-size:10px;cursor:pointer}.qac-structured pre{max-height:130px;overflow:auto;color:#d8d8da;font-size:9px;white-space:pre-wrap;overflow-wrap:anywhere}
.qac-compose{flex:none;padding:10px;border-top:1px solid #393a3f;background:#191a1d}.qac-compose-form{display:flex;align-items:flex-end;gap:7px}.qac-compose-form input{width:100%;min-width:0;min-height:39px;padding:8px 10px;border:1px solid #64656a;border-radius:4px;background:#101113;color:#f4f4f5;font-size:12px}.qac-compose-form button{min-height:39px;padding:8px 11px;border:1px solid #d0d0d3;border-radius:3px;background:#d0d0d3;color:#151517;font-size:11px;font-weight:800}.qac-compose-label{display:block;margin-bottom:5px;color:#bfc0c4;font-size:9px}.qac-compose-hint{margin:6px 1px 0;color:#aeb0b5;font-size:9px;line-height:1.35}
.qac-panel button:disabled{opacity:.56;cursor:default}
@media(max-width:760px){.qac-steps{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:38px}.qac-steps article{min-height:142px;padding:18px 16px}.qac-steps article:nth-child(2){border-right:0}.qac-steps article:nth-child(3){padding-left:0;border-top:1px solid #393a3e}.qac-steps article:nth-child(4){border-top:1px solid #393a3e}.qac-lede{font-size:15px}}
@media(max-width:600px){.qac-review-bar{font-size:8px;letter-spacing:.08em}.qac-review-bar span:last-child{text-align:right}.qac-header{height:68px}.qac-brand img{width:144px}.qac-page-content{width:88vw;padding-top:42px}.qac-page-content h1{font-size:clamp(39px,12vw,56px)}.qac-demo-note{font-size:12px}.qac-steps{margin-top:34px}.qac-steps article{padding:16px 13px}.qac-steps h2{margin-top:13px;font-size:14px}.qac-steps p{font-size:11px}.qac-chat-dock{right:12px;bottom:12px;gap:8px}.qac-teaser{width:min(210px,calc(100vw - 91px));padding:12px 13px}.qac-teaser strong{font-size:12px}.qac-teaser>span{font-size:10px}.qac-teaser-action{min-height:34px;font-size:10px}.qac-launcher{width:54px;height:54px}.qac-panel{right:8px;bottom:8px;width:calc(100vw - 16px);height:min(650px,calc(100dvh - 16px));min-height:min(390px,calc(100dvh - 16px));border-radius:10px}.qac-transcript{padding:12px 10px}.qac-panel-head{padding:11px}.qac-session-notice{font-size:9px}.qac-compose{padding:8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Revision 2.36 — keyboard, touch, safe-area and narrow viewport hardening. */
.qac-review-bar{flex-wrap:wrap}
.qac-review-bar>span{min-width:0}
.qac-header{gap:12px;padding-left:calc(clamp(16px,4vw,54px) + env(safe-area-inset-left,0px));padding-right:calc(clamp(16px,4vw,54px) + env(safe-area-inset-right,0px))}
.qac-brand{min-width:0}
.qac-private-tag{max-width:48%;text-align:center;overflow-wrap:anywhere}
.qac-chat-dock{right:calc(22px + env(safe-area-inset-right,0px));bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.qac-panel{max-height:calc(100dvh - 24px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px))}
.qac-close,.qac-teaser-close,.qac-teaser-action,.qac-launcher,.qac-chip,.qac-step-button,.qac-compose-form button{min-height:44px}
.qac-close{width:44px;height:44px}
.qac-teaser-close{top:4px;right:4px;width:44px;height:44px}
.qac-teaser strong{padding-right:38px}
.qac-field input,.qac-field select,.qac-compose-form input{min-height:44px}
.qac-field textarea{min-height:76px}
.qac-chip{padding:9px 11px}
.qac-step-button{padding:9px 12px}
.qac-compose-form button{padding:9px 13px}
@media(max-width:600px){
  .qac-review-bar{gap:4px 12px;line-height:1.35}
  .qac-header{padding-left:calc(16px + env(safe-area-inset-left,0px));padding-right:calc(16px + env(safe-area-inset-right,0px))}
  .qac-chat-dock{right:max(12px,env(safe-area-inset-right,0px));bottom:max(12px,env(safe-area-inset-bottom,0px))}
  .qac-teaser-close{top:3px;right:3px}
  .qac-teaser strong{padding-right:38px}
  .qac-launcher{width:54px;height:54px}
  .qac-panel{top:auto;left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));bottom:max(8px,env(safe-area-inset-bottom,0px));width:auto;height:min(650px,calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px))));min-height:min(390px,calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px))));max-height:calc(100dvh - max(8px,env(safe-area-inset-top,0px)) - max(8px,env(safe-area-inset-bottom,0px)))}
  .qac-panel-head{gap:8px}
  .qac-chip{padding:9px 10px}
  .qac-step-actions{flex-wrap:wrap}
  .qac-step-button{flex:1 1 auto}
}
@media(max-width:370px){
  .qac-review-bar{letter-spacing:.04em}
  .qac-private-tag{font-size:9px;letter-spacing:.06em}
  .qac-panel-head{gap:6px;padding:9px}
  .qac-session-notice{padding:7px 10px}
  .qac-compose-form{gap:5px}
  .qac-compose-form button{padding-right:9px;padding-left:9px}
}

.qac-live-consent{display:flex;align-items:flex-start;gap:9px;margin:12px 0;color:#e1e1e3;font-size:12px;line-height:1.45}.qac-live-consent input{width:18px;min-width:18px;min-height:18px;margin:1px 0 0}.qac-live-consent a{color:#fff;text-decoration:underline}.qac-turnstile{min-height:65px;margin:10px 0;overflow:hidden}.qac-review-actions button:disabled{opacity:.5;cursor:not-allowed}

/* Header-only move control and safe, viewport-clamped widget placement. */
.qac-move-handle{flex:none;min-width:48px;min-height:40px;padding:7px 10px;border:1px solid #68696d;border-radius:7px;background:#292a2e;color:#f4f4f5;font-size:12px;font-weight:700;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.qac-move-handle:active{cursor:grabbing}.qac-move-handle[aria-pressed="true"]{background:#3e424a;border-color:#e2974d}
.qac-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.qac-panel.qac-positioned{inset:auto;max-width:calc(100vw - 16px);min-height:min(390px,calc(100dvh - 16px));}
.qac-chat-dock.qac-footer-safe{align-items:flex-start}.qac-chat-dock.qac-footer-safe .qac-teaser{display:none!important}
.qac-panel.qac-footer-safe{min-height:0;max-height:calc(100dvh - 20px);}
.qac-panel-head{touch-action:auto}.qac-move-handle{touch-action:none}
@media(max-width:760px){.qac-panel.qac-positioned{width:min(394px,calc(100vw - 16px));border-radius:10px}.qac-panel.qac-footer-safe{width:min(394px,calc(100vw - 20px));}}


/* Revision 2.44 — homepage move/reset controls match the standalone demo. */
.qac-move-handle{min-width:54px;min-height:44px;padding:7px 8px;touch-action:none;cursor:grab}
.qac-reset-position{flex:none;min-width:48px;min-height:44px;padding:7px 8px;border:1px solid #68696d;border-radius:7px;background:#202125;color:#f4f4f5;font-size:11px;font-weight:700}
.qac-reset-position:hover{background:#34353a}
/* Revision 2.45: the invitation card and launcher move as one usable group. */
.qac-chat-dock{touch-action:none;user-select:none;-webkit-user-select:none;cursor:grab}
.qac-chat-dock:active{cursor:grabbing}
.qac-teaser,.qac-teaser *:not(button),.qac-launcher{user-select:none;-webkit-user-select:none}
.qac-teaser-grip{display:inline-flex;align-items:center;min-height:22px;align-self:start;padding:3px 6px;border:1px dashed #666;border-radius:3px;background:#191a1d;color:#d8d8db;font-size:9px;line-height:1;letter-spacing:.03em;cursor:grab}
.qac-teaser button,.qac-launcher{cursor:pointer}
