.support-widget { position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); z-index: 10010; font-family: inherit; }
.admin-page .support-widget, .support-widget.is-cookie-blocked { display: none; }
.support-launcher { position: relative; min-height: 66px; padding: 0 22px 0 10px; display: inline-flex; align-items: center; gap: 10px; border: 1px solid rgba(117,76,0,.22); border-radius: 21px; color: #181609; background: linear-gradient(145deg,#ffda56,#e6aa10); box-shadow: 0 18px 42px rgba(132,94,7,.22); cursor: pointer; font: inherit; isolation: isolate; transition: transform .18s ease, box-shadow .18s ease; }
.support-launcher::after { content: ''; position: absolute; z-index: -1; right: 22px; bottom: -5px; width: 15px; height: 15px; border-right: 1px solid rgba(117,76,0,.22); border-bottom: 1px solid rgba(117,76,0,.22); border-radius: 0 0 4px 0; background: #e6aa10; transform: rotate(45deg); }
.support-launcher:hover { transform: translateY(-2px); box-shadow: 0 22px 46px rgba(132,94,7,.30); }
.support-launcher-pet { width: 52px; flex: 0 0 52px; aspect-ratio: 12 / 13; pointer-events: none; background-image: url("../img/verdict/wave-strip.5c1b9b8fe4c9.png"); background-repeat: no-repeat; background-size: 400% 100%; background-position: 0 0; filter: drop-shadow(0 5px 7px rgba(0,0,0,.22)); animation: support-pet-wave 2.8s steps(1,end) infinite; will-change: background-position; }
.support-launcher strong { font-size: 17px; font-weight: 900; }
.support-launcher-dot { position: absolute; right: -3px; top: -3px; width: 14px; height: 14px; border: 3px solid #e6aa10; border-radius: 50%; background: #237536; }
@keyframes support-pet-wave {
  0%, 12%, 100% { background-position: 0 0; }
  18%, 35%, 88%, 94% { background-position: 33.333% 0; }
  42%, 58%, 72%, 82% { background-position: 66.666% 0; }
  62%, 68% { background-position: 100% 0; }
}
.support-panel { position: absolute; right: 0; bottom: 0; width: min(390px, calc(100vw - 28px)); height: min(650px, calc(100vh - 34px)); display: grid; grid-template-rows: auto minmax(0,1fr) auto; overflow: hidden; border: 1px solid rgba(34,45,39,.18); border-radius: 25px; color: #161b18; background: #fbfaf6; box-shadow: 0 28px 80px rgba(0,0,0,.30); transform-origin: right bottom; animation: support-panel-in .2s ease both; }
.support-panel.is-thread-view { height: auto; max-height: min(650px, calc(100vh - 34px)); grid-template-rows: auto auto auto; }
.support-panel[hidden] { display: none; }
@keyframes support-panel-in { from { opacity: 0; transform: translateY(9px) scale(.98); } to { opacity: 1; transform: none; } }
.support-panel-head { min-height: 78px; padding: 15px 16px; display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #fff; background: linear-gradient(140deg,#243029,#161c18); }
.support-panel-head > div { display: flex; align-items: center; gap: 11px; min-width: 0; }
.support-panel-head > div > div { min-width: 0; }
.support-agent-mark { width: 42px; height: 50px; flex: 0 0 auto; display: block; background: url("../img/verdict/waving.46f65f170e8c.png") center bottom / contain no-repeat; filter: drop-shadow(0 4px 5px rgba(0,0,0,.22)); }
.support-panel-head strong, .support-panel-head small { display: block; }
.support-panel-head strong { font-size: 14px; font-weight: 900; }
.support-panel-head small { margin-top: 4px; color: rgba(255,255,255,.68); font-size: 10px; }
.support-panel-head button { width: 38px; height: 38px; display: grid; place-items: center; border: 0; border-radius: 12px; color: #fff; background: rgba(255,255,255,.09); cursor: pointer; }
.support-panel-body { min-height: 0; padding: 16px; overflow-y: auto; overscroll-behavior: contain; }
.support-chat-stream { display: flex; flex-direction: column; gap: 9px; }
.support-chat-stream.is-thread { min-height: 0; max-height: min(360px, calc(100vh - 300px)); padding: 2px 1px 4px; overflow-y: auto; overscroll-behavior: contain; }
.support-bubble { max-width: 88%; padding: 11px 13px; align-self: flex-end; border-radius: 16px 16px 4px 16px; color: #fff; background: #237536; font-size: 12px; line-height: 1.5; white-space: pre-line; overflow-wrap: anywhere; }
.support-bubble.is-agent { align-self: flex-start; border: 1px solid rgba(34,45,39,.09); border-radius: 16px 16px 16px 4px; color: #222823; background: #f0eee7; }
.support-bubble small { display: block; margin-top: 5px; color: inherit; opacity: .62; font-size: 9px; }
.support-bubble.is-thinking::after { content: '...'; display: inline-block; width: 18px; overflow: hidden; vertical-align: bottom; animation: support-thinking 1.1s steps(4,end) infinite; }
@keyframes support-thinking { from { width: 0; } to { width: 18px; } }
.support-ai-answer { display: grid; gap: 7px; white-space: normal; }
.support-ai-label { color: #1e6c2d; font-size: 9px; font-weight: 950; letter-spacing: .35px; text-transform: uppercase; }
.support-ai-copy { white-space: pre-line; }
.support-ai-sources { padding-top: 7px; display: flex; flex-wrap: wrap; align-items: center; gap: 5px; border-top: 1px solid rgba(34,45,39,.10); color: #6a716c; font-size: 9px; font-weight: 750; }
.support-ai-sources a { padding: 3px 6px; border-radius: 7px; color: #176026; background: rgba(72,169,86,.10); text-decoration: none; }
.support-question-form, .support-message-form { margin-top: 14px; display: grid; grid-template-columns: minmax(0,1fr) 44px; gap: 8px; align-items: end; }
.support-question-form input, .support-message-form textarea, .support-request-screen input, .support-request-screen textarea { width: 100%; min-width: 0; border: 1px solid rgba(34,45,39,.17); border-radius: 14px; color: #171b18; background: #fff; outline: none; font: inherit; }
.support-question-form input { height: 46px; padding: 0 13px; font-size: 12px; }
.support-message-form textarea { min-height: 46px; max-height: 110px; padding: 10px 12px; resize: vertical; font-size: 12px; }
.support-question-form input:focus, .support-message-form textarea:focus, .support-request-screen input:focus, .support-request-screen textarea:focus { border-color: #369345; box-shadow: 0 0 0 3px rgba(54,147,69,.10); }
.support-question-form button, .support-message-form button { width: 44px; height: 44px; border: 0; border-radius: 14px; color: #fff; background: #237536; cursor: pointer; }
.support-question-form input:disabled, .support-question-form button:disabled, .support-popular button:disabled { cursor: wait; opacity: .58; }
.support-popular { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 7px; }
.support-popular > span { width: 100%; margin-bottom: 2px; color: #6a716c; font-size: 10px; font-weight: 850; text-transform: uppercase; letter-spacing: .35px; }
.support-popular button { padding: 8px 10px; border: 1px solid rgba(35,117,54,.18); border-radius: 999px; color: #23552c; background: rgba(72,169,86,.08); cursor: pointer; font: inherit; font-size: 10px; font-weight: 750; text-align: left; }
.support-operator-button, .support-submit-button, .support-new-request { width: 100%; min-height: 46px; margin-top: 16px; border: 0; border-radius: 14px; color: #fff; background: #292d30; cursor: pointer; font: inherit; font-size: 12px; font-weight: 900; }
.support-operator-button i { margin-right: 7px; }
.support-active-request { width: 100%; min-height: 58px; margin-top: 16px; padding: 10px 12px; display: grid; grid-template-columns: 34px minmax(0,1fr) 18px; gap: 10px; align-items: center; border: 1px solid rgba(35,117,54,.20); border-radius: 15px; color: #194d24; background: rgba(72,169,86,.09); cursor: pointer; font: inherit; text-align: left; }
.support-active-request[hidden] { display: none; }
.support-active-request > i:first-child { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 11px; color: #fff; background: #237536; }
.support-active-request > i:last-child { justify-self: end; font-size: 11px; }
.support-active-request strong, .support-active-request small { display: block; }
.support-active-request strong { font-size: 11px; font-weight: 920; }
.support-active-request small { margin-top: 3px; color: #667068; font-size: 9px; font-weight: 650; }
.support-back-button { padding: 0; border: 0; color: #237536; background: transparent; cursor: pointer; font: inherit; font-size: 11px; font-weight: 850; }
.support-back-button i { margin-right: 5px; }
.support-request-intro { margin: 16px 0; }
.support-request-intro strong { font-size: 18px; font-weight: 950; }
.support-request-intro p { margin: 5px 0 0; color: #68706a; font-size: 11px; line-height: 1.45; }
.support-request-screen form > label:not(.support-consent) { margin-top: 10px; display: grid; gap: 5px; color: #424943; font-size: 10px; font-weight: 850; }
.support-request-screen input { height: 43px; padding: 0 12px; font-size: 12px; }
.support-request-screen textarea { min-height: 96px; padding: 11px 12px; resize: vertical; font-size: 12px; }
.support-security-note { margin: 11px 0; padding: 9px 10px; border-radius: 11px; color: #765d22; background: #fff4d7; font-size: 10px; line-height: 1.4; }
.support-security-note i { margin-right: 5px; }
.support-consent { display: grid; grid-template-columns: 17px 1fr; gap: 7px; align-items: start; color: #5c635e; font-size: 9px; line-height: 1.45; }
.support-consent input { width: 16px; height: 16px; margin: 1px 0 0; }
.support-consent a { color: #176026; text-decoration: underline; }
.support-form-error { margin-top: 9px; padding: 8px 10px; border-radius: 10px; color: #962820; background: #fff0ee; font-size: 10px; line-height: 1.4; }
.support-thread-back { margin-bottom: 14px; }
.support-thread-meta { margin-bottom: 12px; display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.support-thread-meta strong, .support-thread-meta small { display: block; }
.support-thread-meta strong { font-size: 13px; }
.support-thread-meta small { margin-top: 3px; color: #6a716c; font-size: 9px; }
.support-panel-foot { min-height: 68px; padding: 11px 16px; display: flex; align-items: center; border-top: 1px solid rgba(34,45,39,.09); background: #f4f2eb; }
.support-panel-foot a { width: 100%; min-height: 46px; padding: 0 16px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; border: 1px solid rgba(23,108,139,.14); border-radius: 14px; color: #176c8b; background: rgba(23,108,139,.07); font-size: 14px; font-weight: 900; text-decoration: none; transition: color .18s ease, background .18s ease, transform .18s ease; }
.support-panel-foot a:hover { color: #0d526d; background: rgba(23,108,139,.12); transform: translateY(-1px); }
.support-panel-foot i { font-size: 21px; }
.support-honeypot { position: absolute!important; left: -10000px!important; width: 1px!important; height: 1px!important; overflow: hidden!important; }
.sr-only { 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; }

html[data-theme="dark"] .support-panel { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(131,170,140,.20); background: #0b100d; }
html[data-theme="dark"] .support-launcher { color: #fff; -webkit-text-fill-color: #fff; background: linear-gradient(145deg,#31a94a,#126d2c); box-shadow: 0 18px 42px rgba(18,109,44,.30); }
html[data-theme="dark"] .support-launcher:hover { box-shadow: 0 22px 48px rgba(18,109,44,.40); }
html[data-theme="dark"] .support-launcher::after { border-right-color: rgba(255,255,255,.12); border-bottom-color: rgba(255,255,255,.12); background: #126d2c; }
html[data-theme="dark"] .support-launcher-dot { border-color: #126d2c; background: #8aef96; }
html[data-theme="dark"] .support-panel-body { background: #0b100d; }
html[data-theme="dark"] .support-panel-head small { color: #b8c1ba; -webkit-text-fill-color: #b8c1ba; }
html[data-theme="dark"] .support-bubble.is-agent { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(131,170,140,.13); background: #171d19; }
html[data-theme="dark"] .support-ai-label { color: #fff; -webkit-text-fill-color: #fff; }
html[data-theme="dark"] .support-ai-sources { border-color: rgba(131,170,140,.16); color: #aeb9b0; -webkit-text-fill-color: #aeb9b0; }
html[data-theme="dark"] .support-ai-sources a { color: #fff; -webkit-text-fill-color: #fff; background: rgba(91,213,104,.09); }
html[data-theme="dark"] .support-question-form input, html[data-theme="dark"] .support-message-form textarea, html[data-theme="dark"] .support-request-screen input, html[data-theme="dark"] .support-request-screen textarea { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(131,170,140,.22); background: #111713; }
html[data-theme="dark"] :where(.support-question-form input, .support-message-form textarea, .support-request-screen input, .support-request-screen textarea)::placeholder { color: #aeb9b0; -webkit-text-fill-color: #aeb9b0; opacity: 1; }
html[data-theme="dark"] :where(.support-question-form input, .support-message-form textarea, .support-request-screen input, .support-request-screen textarea):focus { border-color: #64d56f; box-shadow: 0 0 0 3px rgba(100,213,111,.14); }
html[data-theme="dark"] .support-popular button { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(91,213,104,.22); background: rgba(91,213,104,.08); }
html[data-theme="dark"] .support-popular button:hover { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(91,213,104,.38); background: rgba(91,213,104,.14); }
html[data-theme="dark"] .support-active-request { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(91,213,104,.23); background: rgba(91,213,104,.08); }
html[data-theme="dark"] .support-active-request small { color: #aeb9b0; -webkit-text-fill-color: #aeb9b0; }
html[data-theme="dark"] .support-request-intro p, html[data-theme="dark"] .support-thread-meta small, html[data-theme="dark"] .support-popular > span, html[data-theme="dark"] .support-consent { color: #aeb9b0; -webkit-text-fill-color: #aeb9b0; }
html[data-theme="dark"] .support-request-screen form > label:not(.support-consent) { color: #fff; -webkit-text-fill-color: #fff; }
html[data-theme="dark"] .support-back-button { color: #fff; -webkit-text-fill-color: #fff; }
html[data-theme="dark"] :where(.support-operator-button, .support-submit-button, .support-new-request) { color: #fff; -webkit-text-fill-color: #fff; border: 1px solid rgba(131,170,140,.18); background: #253129; }
html[data-theme="dark"] :where(.support-operator-button, .support-submit-button, .support-new-request):hover { background: #304038; }
html[data-theme="dark"] .support-security-note { color: #fff; -webkit-text-fill-color: #fff; border: 1px solid rgba(230,181,75,.18); background: #2a2112; }
html[data-theme="dark"] .support-consent a { color: #fff; -webkit-text-fill-color: #fff; }
html[data-theme="dark"] .support-form-error { color: #fff; -webkit-text-fill-color: #fff; background: #311817; }
html[data-theme="dark"] .support-panel-foot { border-color: rgba(131,170,140,.14); background: #111713; }
html[data-theme="dark"] .support-panel-foot a,
html[data-theme="dark"] .support-panel-foot a:hover { color: #fff; -webkit-text-fill-color: #fff; border-color: rgba(255,255,255,.15); background: #176c8b; }
html[data-theme="dark"] .support-panel-foot a:hover { background: #1b7d9f; }

@media (max-width: 600px) {
  .support-widget { right: max(12px, env(safe-area-inset-right)); bottom: max(14px, env(safe-area-inset-bottom)); }
  .support-launcher { min-height: 58px; padding: 0 17px 0 8px; gap: 8px; border-radius: 18px; }
  .support-launcher-pet { width: 46px; flex-basis: 46px; }
  .support-launcher strong { font-size: 14px; }
  .support-panel { position: fixed; inset: auto 8px 8px 8px; width: auto; height: min(700px, calc(100dvh - 16px)); border-radius: 23px; }
  .support-panel.is-thread-view { height: auto; max-height: calc(100dvh - 16px); }
  .support-chat-stream.is-thread { max-height: min(380px, calc(100dvh - 300px)); }
}

@media (prefers-reduced-motion: reduce) {
  .support-launcher-pet { animation: none; background-position: 0 0; }
}
