#thijse-agent-root, #thijse-agent-root * { box-sizing: border-box; }
#thijse-agent-root { --ta-ink:#30363c; --ta-surface:#fff; --ta-line:#e1e3e5; --ta-muted:#697078; --ta-accent:#d9362b; --ta-accent-dark:#b92820; --ta-green:#57a773; position:fixed; z-index:2147483000; right:24px; bottom:22px; display:flex; flex-direction:column; align-items:flex-end; gap:12px; color:var(--ta-ink); font-family:Arial,Helvetica,sans-serif; font-size:14px; line-height:1.45; }
#thijse-agent-root[data-test="true"]::before { content:"TESTMODUS"; position:absolute; right:74px; bottom:4px; padding:5px 8px; border-radius:999px; background:#fff0ed; color:#c83a27; border:1px solid #f3c8c0; font-size:8px; font-weight:800; letter-spacing:.12em; }
.thijse-agent-panel { width:396px; height:min(630px,calc(100svh - 112px)); min-height:500px; display:grid; grid-template-rows:auto minmax(0,1fr) auto; overflow:hidden; background:var(--ta-surface); border:1px solid rgba(48,54,60,.18); border-radius:14px; box-shadow:0 24px 64px rgba(27,31,35,.28); animation:ta-open .24s cubic-bezier(.2,.8,.2,1); position:relative; }
.thijse-agent-panel[hidden] { display:none !important; }
@keyframes ta-open { from { opacity:0; transform:translateY(14px) scale(.975); } to { opacity:1; transform:none; } }
.thijse-agent-header { min-height:78px; padding:13px 16px; border-bottom:3px solid var(--ta-accent); display:flex; align-items:center; justify-content:space-between; background:var(--ta-ink); }
.thijse-agent-identity { display:flex; align-items:center; gap:11px; }
.thijse-agent-avatar { width:50px; height:50px; border-radius:50%; display:grid; place-items:center; overflow:hidden; background:#fff; border:2px solid rgba(255,255,255,.72); position:relative; }
.thijse-agent-avatar img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.04); }
.thijse-agent-identity strong { display:block; font-size:14px; color:#fff; letter-spacing:.025em; }
.thijse-agent-identity small { display:block; margin-top:3px; color:var(--ta-green); font-size:10px; }
.thijse-agent-header-actions { display:flex; gap:3px; }
.thijse-agent-icon-button { width:34px; height:34px; padding:0; border:0; border-radius:50%; background:transparent; color:rgba(255,255,255,.72); font-size:21px; line-height:1; cursor:pointer; }
.thijse-agent-icon-button:hover { background:rgba(255,255,255,.1); color:#fff; }
.thijse-agent-body { min-height:0; overflow:auto; display:flex; flex-direction:column; background:var(--ta-surface); scrollbar-width:thin; scrollbar-color:#ccd3d1 transparent; }
.thijse-agent-welcome { margin:auto; width:100%; padding:32px 28px; text-align:center; background:linear-gradient(180deg,rgba(217,54,43,.055),transparent 42%); }
.thijse-agent-welcome[hidden], .thijse-agent-conversation[hidden], .thijse-agent-composer[hidden] { display:none !important; }
.thijse-agent-welcome-mark { width:68px; height:68px; margin:0 auto 16px; border:3px solid #fff; border-radius:50%; display:grid; place-items:center; overflow:hidden; background:#f2f3f4; box-shadow:0 6px 20px rgba(48,54,60,.16); position:relative; }
.thijse-agent-welcome-mark img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.02); }
.thijse-agent-kicker { margin:0 0 6px !important; color:var(--ta-accent); font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.18em; }
.thijse-agent-welcome h2 { margin:0 !important; color:var(--ta-ink); font:700 27px/1.18 Arial,Helvetica,sans-serif; letter-spacing:-.025em; }
.thijse-agent-welcome-copy { max-width:340px; margin:12px auto 22px !important; color:var(--ta-muted); font-size:12.5px; line-height:1.58; }
.thijse-agent-name-form { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:8px; max-width:350px; margin:0 auto; text-align:left; }
.thijse-agent-name-form label { color:var(--ta-ink); font-size:11px; font-weight:700; }
.thijse-agent-name-form input { display:block; width:100%; height:48px; margin-top:8px; padding:0 14px; border:1px solid #cdd4d2; border-radius:11px; background:#fff; color:var(--ta-ink); outline:none; font-size:13px; }
.thijse-agent-name-form input:focus { border-color:var(--ta-ink); box-shadow:0 0 0 3px rgba(16,43,57,.08); }
.thijse-agent-name-form button, .thijse-agent-form-submit { height:48px; padding:0 16px; border:0; border-radius:11px; background:var(--ta-accent); color:#fff; font-size:12px; font-weight:800; cursor:pointer; }
.thijse-agent-name-form button:hover, .thijse-agent-form-submit:hover { background:var(--ta-accent-dark); }
.thijse-agent-privacy { display:block; margin-top:14px; color:#899290; font-size:9px; }
.thijse-agent-conversation { padding:18px 17px 8px; }
.thijse-agent-divider { display:flex; align-items:center; gap:10px; margin:1px 0 18px; color:#929b99; font-size:9px; text-transform:uppercase; letter-spacing:.12em; }
.thijse-agent-divider::before,.thijse-agent-divider::after { content:""; height:1px; background:#e2e5e3; flex:1; }
.thijse-agent-message { display:flex; gap:8px; margin-bottom:14px; align-items:flex-end; }
.thijse-agent-message.visitor { justify-content:flex-end; padding-left:13%; }
.thijse-agent-message.agent { padding-right:5%; }
.thijse-agent-message-avatar { width:30px; height:30px; flex:0 0 30px; border-radius:50%; display:grid; place-items:center; overflow:hidden; background:#fff; border:1px solid #d8dcde; }
.thijse-agent-message-avatar img { width:100%; height:100%; object-fit:cover; object-position:center 18%; transform:scale(1.25); }
.thijse-agent-bubble { padding:11px 13px; border-radius:15px; font-size:12.5px; line-height:1.5; box-shadow:0 5px 14px rgba(16,43,57,.05); white-space:pre-wrap; }
.thijse-agent-message.agent .thijse-agent-bubble { background:#f0f1f2; color:var(--ta-ink); border-bottom-left-radius:5px; }
.thijse-agent-message.visitor .thijse-agent-bubble { background:var(--ta-accent); color:#fff; border-bottom-right-radius:5px; }
.thijse-agent-message small { display:block; margin:4px 4px 0; color:#9ba3a1; font-size:8px; }
.thijse-agent-message.visitor small { text-align:right; }
.thijse-agent-typing { display:flex; gap:4px; padding:12px 14px; background:#eef1ee; border-radius:15px 15px 15px 5px; }
.thijse-agent-typing i { width:5px; height:5px; border-radius:50%; background:#83908e; animation:ta-typing 1s infinite ease-in-out; }
.thijse-agent-typing i:nth-child(2) { animation-delay:.15s; }
.thijse-agent-typing i:nth-child(3) { animation-delay:.3s; }
@keyframes ta-typing { 0%,60%,100% { transform:translateY(0); opacity:.45; } 30% { transform:translateY(-3px); opacity:1; } }
.thijse-agent-suggestions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:5px 0 14px 34px; }
.thijse-agent-suggestions button { min-height:41px; padding:8px 11px; border:1px solid #d9dedc; border-radius:9px; background:#fff; color:var(--ta-ink); text-align:left; font-size:10px; font-weight:700; cursor:pointer; }
.thijse-agent-suggestions button:hover { border-color:var(--ta-accent); color:var(--ta-accent-dark); }
.thijse-agent-action-link { display:inline-block; margin:0 0 14px 34px; padding:10px 14px; border-radius:9px; background:var(--ta-accent); color:#fff !important; text-decoration:none !important; font-size:11px; font-weight:800; }
.thijse-agent-composer { padding:11px 13px 10px; border-top:1px solid var(--ta-line); background:#fff; }
.thijse-agent-input-wrap { height:45px; display:flex; align-items:center; gap:8px; padding:0 5px 0 13px; border:1px solid #d0d6d4; border-radius:12px; background:#fbfbf8; }
.thijse-agent-input-wrap:focus-within { border-color:var(--ta-ink); box-shadow:0 0 0 3px rgba(16,43,57,.07); }
.thijse-agent-input-wrap input { min-width:0; flex:1; border:0 !important; outline:0 !important; box-shadow:none !important; background:transparent !important; color:var(--ta-ink); font-size:12px; }
.thijse-agent-send { width:34px; height:34px; padding:0; border:0; border-radius:9px; background:var(--ta-accent); color:#fff; font-size:16px; cursor:pointer; }
.thijse-agent-composer > small { display:block; margin-top:6px; text-align:center; color:#9ba3a2; font-size:8px; }
.thijse-agent-launcher-wrap { display:flex; align-items:center; gap:10px; }
.thijse-agent-launcher-wrap.is-open { height:0; overflow:visible; }
.thijse-agent-launcher-label { padding:12px 17px 12px 20px; border:1px solid rgba(255,255,255,.3); border-radius:7px; background:linear-gradient(145deg,#3b4249,#292e33); color:#fff; box-shadow:0 18px 44px rgba(12,15,18,.36),0 4px 12px rgba(12,15,18,.24),inset 0 1px 0 rgba(255,255,255,.08); font-size:11px; font-weight:700; text-shadow:0 1px 2px rgba(0,0,0,.25); position:relative; transform:translateY(-1px); overflow:visible; }
.thijse-agent-launcher-label::before { content:""; position:absolute; left:0; top:7px; bottom:7px; width:4px; border-radius:0 4px 4px 0; background:var(--ta-accent); box-shadow:0 0 12px rgba(217,54,43,.36); }
.thijse-agent-launcher-label::after { content:""; position:absolute; right:-5px; top:50%; width:10px; height:10px; background:var(--ta-ink); transform:translateY(-50%) rotate(45deg); }
.thijse-agent-launcher { width:66px; height:66px; flex:0 0 66px; padding:0; border:3px solid #fff; border-radius:50%; background:var(--ta-accent); color:#fff; display:grid; place-items:center; overflow:hidden; box-shadow:0 14px 34px rgba(27,31,35,.3); cursor:pointer; position:relative; }
.thijse-agent-launcher img { width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.03); }
.thijse-agent-launcher:hover { background:var(--ta-accent-dark); transform:translateY(-2px); }
.thijse-agent-launcher i { position:absolute; right:2px; top:3px; width:13px; height:13px; background:var(--ta-green); border:2px solid #fff; border-radius:50%; }
.thijse-agent-close { font:300 32px/1 Arial,sans-serif; }
.thijse-agent-form-overlay { position:absolute; inset:0; z-index:5; display:flex; align-items:flex-end; background:rgba(10,32,43,.48); backdrop-filter:blur(3px); }
.thijse-agent-form-card { width:100%; max-height:92%; overflow:auto; padding:18px; border-radius:18px 18px 0 0; background:#fff; box-shadow:0 -16px 45px rgba(10,32,43,.18); }
.thijse-agent-form-top { display:flex; align-items:center; justify-content:space-between; margin-bottom:14px; }
.thijse-agent-form-top h3 { margin:0 !important; color:var(--ta-ink); font:700 22px Arial,Helvetica,sans-serif; }
.thijse-agent-form-top button { width:32px; height:32px; border:0; border-radius:50%; background:#f0efeb; color:var(--ta-ink); font-size:22px; cursor:pointer; }
.thijse-agent-form-card form { display:grid; gap:10px; }
.thijse-agent-form-card label { color:var(--ta-ink); font-size:10px; font-weight:700; }
.thijse-agent-form-card input,.thijse-agent-form-card textarea { display:block; width:100%; margin-top:5px; padding:10px 11px; border:1px solid #d0d6d4; border-radius:8px; background:#fff; color:var(--ta-ink); font:12px Arial,sans-serif; outline:none; }
.thijse-agent-form-card textarea { min-height:84px; resize:vertical; }
.thijse-agent-form-card input:focus,.thijse-agent-form-card textarea:focus { border-color:var(--ta-ink); box-shadow:0 0 0 3px rgba(16,43,57,.07); }
.thijse-agent-form-privacy { margin:2px 0 !important; color:var(--ta-muted); font-size:9px; line-height:1.5; }
.thijse-agent-form-error { margin:0 !important; padding:9px; border-radius:7px; background:#fff0ed; color:#b22f20; font-size:10px; }
.thijse-agent-form-submit { width:100%; }
.thijse-agent-hp { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; opacity:0 !important; }

@media (max-width:520px) {
  #thijse-agent-root { right:12px; bottom:12px; left:12px; }
  #thijse-agent-root[data-test="true"]::before { right:68px; }
  .thijse-agent-panel { width:100%; height:calc(100svh - 24px); max-height:780px; min-height:0; border-radius:19px; }
  .thijse-agent-launcher-wrap { margin-left:auto; }
  .thijse-agent-launcher-wrap.is-open { display:none; }
  .thijse-agent-launcher { width:58px; height:58px; flex-basis:58px; }
  .thijse-agent-launcher-label { font-size:10px; }
  .thijse-agent-welcome { padding:28px 20px; }
  .thijse-agent-name-form { grid-template-columns:1fr; }
  .thijse-agent-suggestions { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  #thijse-agent-root *,#thijse-agent-root *::before,#thijse-agent-root *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; }
}
