.homearrives-ai-widget{max-width:800px;width:100%;font-family:inherit;box-sizing:border-box}.homearrives-ai-widget *{box-sizing:border-box}.homearrives-ai-form label{display:block;font-weight:600;margin-bottom:10px}.homearrives-ai-fields{display:flex;gap:10px}.homearrives-ai-fields input{flex:1;min-width:0;padding:12px;border:1px solid #999;border-radius:0;font:inherit}.homearrives-ai-fields button{padding:12px 22px;border:0;border-radius:0;background:var(--ha-ai-primary,#1d4ed8);color:#fff;cursor:pointer;font:inherit}.homearrives-ai-fields button:disabled{opacity:.6;cursor:wait}.homearrives-ai-answer{margin-top:16px;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}@media(max-width:520px){.homearrives-ai-fields{flex-direction:column}.homearrives-ai-fields button{width:100%}}

.homearrives-ai-answer.homearrives-ai-typing::after{content:"";display:inline-block;width:2px;height:1em;background:currentColor;vertical-align:-.15em;margin-left:2px;animation:homearrives-ai-cursor-blink .8s steps(1,end) infinite}@keyframes homearrives-ai-cursor-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.homearrives-ai-answer.homearrives-ai-typing::after{animation:none}}

.homearrives-ai-widget .homearrives-ai-footer{margin-top:18px;padding:12px 8px;background:transparent!important;box-shadow:none!important;border:0!important;text-align:center;display:flex;flex-direction:column;align-items:center;gap:3px;line-height:1.5}.homearrives-ai-widget .homearrives-ai-footer a{text-decoration:none;transition:color .15s ease}.homearrives-ai-widget .homearrives-ai-footer .homearrives-ai-powered{color:var(--ha-ai-powered,#555);font-size:13px;font-weight:500}.homearrives-ai-widget .homearrives-ai-footer .homearrives-ai-footer-link{color:var(--ha-ai-link,#1d4ed8);font-size:11px}.homearrives-ai-widget .homearrives-ai-footer a:hover,.homearrives-ai-widget .homearrives-ai-footer a:focus-visible{color:var(--ha-ai-hover,#1e40af);text-decoration:underline}

/* v1.2.3: Editable client main title and subtitle above the search form. */
.homearrives-ai-widget .homearrives-ai-heading{text-align:center;margin:0 0 28px}
.homearrives-ai-widget .homearrives-ai-main-title{font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(32px,4.5vw,60px);line-height:1.13;letter-spacing:-1.5px;color:#fff;margin:0 0 16px;overflow-wrap:anywhere}
.homearrives-ai-widget .homearrives-ai-sub-title{font-size:clamp(14px,1.5vw,18px);line-height:1.6;color:#bac2cc;margin:0}
.homearrives-ai-widget .homearrives-ai-heading:empty{display:none}
.homearrives-ai-widget .homearrives-ai-form .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* v1.2.4: Center both headings and allow independent per-client colors. */
.homearrives-ai-widget .homearrives-ai-heading{width:100%;text-align:center!important;display:flex;flex-direction:column;align-items:center;justify-content:center}
.homearrives-ai-widget .homearrives-ai-main-title{width:100%;text-align:center!important;color:var(--haai-main-title-color,#ffffff)!important}
.homearrives-ai-widget .homearrives-ai-sub-title{width:100%;text-align:center!important;color:var(--haai-sub-title-color,#bac2cc)!important}

/* v1.2.5: Explicit client heading color overrides, including theme selectors. */
body .homearrives-ai-widget .homearrives-ai-heading .homearrives-ai-main-title,body .homearrives-ai-widget .homearrives-ai-heading .homearrives-ai-sub-title{color:inherit;}

/* v1.2.6 — Copy AI reply only; do not affect footer or form. */
.homearrives-ai-widget .homearrives-ai-copy{display:inline-block;margin:12px 0 2px;padding:9px 16px;border:1px solid var(--ha-ai-primary,#1d4ed8);border-radius:0;background:transparent;color:inherit;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.homearrives-ai-widget .homearrives-ai-copy:hover,.homearrives-ai-widget .homearrives-ai-copy:focus-visible{background:var(--ha-ai-primary,#1d4ed8);color:#fff}
.homearrives-ai-widget .homearrives-ai-copy[hidden]{display:none!important}

/* v1.2.7: Center Copy Reply button without changing answer alignment. */
.homearrives-ai-widget .homearrives-ai-copy:not([hidden]){display:block;width:max-content;max-width:100%;margin:12px auto 2px;text-align:center}

/* v1.2.9: Per-client search field colors. Inline custom properties set by authorized client/admin settings. */
body .homearrives-ai-widget .homearrives-ai-form .homearrives-ai-fields input[type="text"]{background:var(--haai-input-bg,#ffffff)!important;background-color:var(--haai-input-bg,#ffffff)!important;color:var(--haai-input-text,#111111)!important;-webkit-text-fill-color:var(--haai-input-text,#111111)!important;}
body .homearrives-ai-widget .homearrives-ai-form .homearrives-ai-fields input[type="text"]::placeholder{color:var(--haai-input-placeholder,#777777)!important;-webkit-text-fill-color:var(--haai-input-placeholder,#777777)!important;opacity:1!important;}

/* v1.3.0: enforce per-client placeholder styling for browser themes. */
.homearrives-ai-widget .homearrives-ai-form input[name="question"]::placeholder{color:var(--haai-input-placeholder,#777777)!important;opacity:1!important;}

/* v1.3.6 responsive AI input: tablet stays inline, phones stack */
.homearrives-ai-widget{min-width:0;max-width:100%;overflow:visible}
.homearrives-ai-widget .homearrives-ai-fields{display:flex;align-items:stretch;min-width:0;max-width:100%;gap:10px}
.homearrives-ai-widget .homearrives-ai-fields input[name="question"]{display:block;min-width:0;width:0;flex:1 1 0;max-width:100%;font-size:16px;line-height:1.4}
.homearrives-ai-widget .homearrives-ai-fields button[type="submit"]{flex:0 0 auto;white-space:nowrap;min-height:48px}
.homearrives-ai-widget .homearrives-ai-main-title{font-size:clamp(30px,6vw,60px);overflow-wrap:anywhere}
.homearrives-ai-widget .homearrives-ai-answer{max-width:100%;overflow-wrap:anywhere;word-break:normal}
@media(max-width:520px){
 .homearrives-ai-widget .homearrives-ai-heading{margin-bottom:22px}
 .homearrives-ai-widget .homearrives-ai-main-title{font-size:clamp(28px,9vw,42px);letter-spacing:-.7px}
 .homearrives-ai-widget .homearrives-ai-fields{flex-direction:column;gap:10px}
 .homearrives-ai-widget .homearrives-ai-fields input[name="question"]{width:100%;flex:0 0 auto;min-height:50px}
 .homearrives-ai-widget .homearrives-ai-fields button[type="submit"]{width:100%;min-height:48px}
}

/* v1.3.21: Subtitle text and optional video trigger share one centered line. */
.homearrives-ai-widget .haai-subtitle-video-row{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;max-width:100%;min-height:34px}
.homearrives-ai-widget .haai-subtitle-video-row .homearrives-ai-sub-title{width:auto!important;max-width:calc(100% - 52px);flex:0 1 auto;margin:0!important;text-align:center!important;overflow-wrap:anywhere}
.homearrives-ai-widget .haai-subtitle-video-row .haai-video-feature{flex:0 0 auto;margin:0!important;align-self:center}
@media(max-width:520px){.homearrives-ai-widget .haai-subtitle-video-row{gap:9px}.homearrives-ai-widget .haai-subtitle-video-row .homearrives-ai-sub-title{max-width:calc(100% - 45px)}}

/* v1.3.22: Keep subtitle and video button on one line, including cached-theme overrides. */
.homearrives-ai-widget .homearrives-ai-heading .haai-subtitle-video-row{display:flex!important;flex-flow:row nowrap!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:100%!important}
.homearrives-ai-widget .homearrives-ai-heading .haai-subtitle-video-row > .homearrives-ai-sub-title{display:block!important;width:auto!important;max-width:calc(100% - 50px)!important;flex:0 1 auto!important;margin:0!important}
.homearrives-ai-widget .homearrives-ai-heading .haai-subtitle-video-row > .haai-video-feature{display:inline-flex!important;flex:0 0 34px!important;width:34px!important;margin:0!important}
