
#alfa-chat-root,#alfa-chat-root *{box-sizing:border-box}
#alfa-chat-root{
  --a-black:#111;
  --a-black-2:#1d1d1d;
  --a-red:#a31820;
  --a-red-dark:#831018;
  --a-ivory:#faf9f6;
  --a-paper:#fff;
  --a-soft:#f5f4f0;
  --a-line:#e3e1db;
  --a-line-2:#d2d0c8;
  --a-text:#171717;
  --a-muted:#6d6b66;
  --a-faint:#97948d;
  --a-green:#28764a;
  --a-shadow:0 18px 60px rgba(0,0,0,.16);
  font-family:Arial,Helvetica,sans-serif;
  color:var(--a-text);
  font-size:14px;
  line-height:1.45;
}
#alfa-chat-root button,#alfa-chat-root input,#alfa-chat-root textarea{font:inherit}
#alfa-chat-root button{-webkit-tap-highlight-color:transparent}

.ac-launcher{
  position:fixed;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));
  z-index:99990;display:flex;align-items:center;gap:9px;
  min-height:52px;padding:0 15px 0 7px;
  border:1px solid #111;border-radius:999px;background:#111;color:#fff;
  cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.2);
  transition:transform .18s ease,box-shadow .18s ease;
}
.ac-launcher:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(0,0,0,.24)}
.ac-launcher:active{transform:scale(.98)}
.ac-launcher:focus-visible,.ac-x:focus-visible,.ac-chip:focus-visible,
.ac-send:focus-visible,.ac-card:focus-visible,.ac-back:focus-visible{
  outline:2px solid var(--a-red);outline-offset:3px
}
.ac-mark{
  width:36px;height:36px;display:grid;place-items:center;flex:0 0 36px;
  border-radius:50%;background:var(--a-red);color:#fff;font:600 17px/1 Georgia,serif
}
.ac-launcher-copy{text-align:left}
.ac-launcher-copy strong{display:block;font-size:12px;font-weight:700;color:#fff}
.ac-launcher-copy em{display:block;margin-top:1px;color:#fff;font-size:10px;font-style:normal}

.ac-panel{
  position:fixed;inset:0;z-index:99991;display:none;flex-direction:column;
  width:100%;height:100dvh;overflow:hidden;background:var(--a-paper);color:var(--a-text)
}
.ac-panel.open{display:flex}

.ac-head{
  position:relative;flex:0 0 auto;padding:13px 14px 12px;
  border-bottom:1px solid var(--a-line);background:#fff
}
.ac-brandline{display:flex;align-items:center;gap:9px;padding-right:35px}
.ac-head-mark{
  width:34px;height:34px;display:grid;place-items:center;flex:0 0 34px;
  border-radius:50%;background:var(--a-black);color:#fff;font:600 16px/1 Georgia,serif
}
.ac-head-copy{min-width:0}
.ac-head-kicker{margin:0 0 1px;color:#77756f;font-size:8px;line-height:1;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ac-head h2{margin:0;font:500 20px/1.05 Georgia,"Times New Roman",serif;letter-spacing:-.015em}
.ac-status{margin-left:auto;display:inline-flex;align-items:center;gap:5px;color:#6e6d68;font-size:9px;white-space:nowrap}
.ac-status-dot{width:6px;height:6px;border-radius:50%;background:#4c9a6c}
.ac-head>p{margin:8px 0 0 43px;color:var(--a-muted);font-size:9px}
.ac-head>p strong{color:var(--a-text);font-weight:600}
.ac-x{
  position:absolute;top:8px;right:8px;z-index:20;width:42px;height:42px;min-width:42px;min-height:42px;
  display:grid;place-items:center;border:1px solid #111;border-radius:50%;background:#111;color:#fff !important;
  cursor:pointer;font-size:24px;font-weight:400;line-height:1;padding:0;pointer-events:auto;
  touch-action:manipulation;-webkit-appearance:none;appearance:none
}
.ac-x:hover{background:#000;color:#fff !important}
.ac-x:active{transform:scale(.96)}

.ac-log{
  flex:1;min-height:0;overflow-y:auto;padding:14px 13px 13px;background:#fff;
  scroll-behavior:smooth;-webkit-overflow-scrolling:touch
}
.ac-log::-webkit-scrollbar{width:4px}
.ac-log::-webkit-scrollbar-thumb{background:#d8d6cf;border-radius:99px}

.ac-welcome{padding:2px 1px 13px}
.ac-welcome-kicker{margin-bottom:5px;color:var(--a-red);font-size:9px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}
.ac-welcome strong{display:block;max-width:310px;font:500 24px/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.02em}
.ac-welcome p{max-width:350px;margin:6px 0 0;color:var(--a-muted);font-size:10px;line-height:1.5}

.ac-section-title{
  display:flex;align-items:center;justify-content:space-between;gap:10px;margin:3px 1px 8px;
  color:#222;font-size:10px;font-weight:700;letter-spacing:.02em
}
.ac-section-title span{color:var(--a-faint);font-size:9px;font-weight:400}

.ac-chips{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:0 0 15px
}
.ac-chip{
  min-height:42px;padding:8px 9px;border:1px solid var(--a-line);border-radius:5px;
  background:#fff;color:#171717 !important;text-align:left;font-size:10px;font-weight:700;
  cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease
}
.ac-chip:hover{border-color:#bdbab2;background:var(--a-soft);transform:translateY(-1px)}
.ac-chip:active{transform:scale(.98)}
.ac-chip.desk{
  grid-column:1/-1;border-color:var(--a-black);background:var(--a-black);color:#fff !important;
  text-align:center
}
.ac-chip.desk:hover{background:#000;border-color:#000;color:#fff !important}

.ac-msg{
  max-width:91%;margin:0 0 8px;padding:10px 12px;border-radius:5px;font-size:11px;line-height:1.58;
  white-space:pre-wrap;animation:ac-in .2s ease both
}
.ac-msg.bot{margin-right:auto;border:1px solid var(--a-line);background:#fff;color:#171717}
.ac-msg.user{margin-left:auto;color:#fff !important;background:var(--a-black);border:1px solid var(--a-black)}
@keyframes ac-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.ac-mail{margin:0 0 10px 1px;color:var(--a-green);font-size:9px}
.ac-mail.fail{color:#9a542e}

.ac-cards{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0 0 15px}
.ac-card{
  min-width:0;display:flex;align-items:center;justify-content:space-between;gap:7px;
  padding:11px 10px;border:1px solid var(--a-line);border-radius:5px;background:#fff;color:#171717;
  text-decoration:none;transition:border-color .15s ease,background .15s ease,transform .15s ease
}
.ac-card:hover{border-color:#bdbab2;background:var(--a-soft);transform:translateY(-1px)}
.ac-card:active{transform:scale(.985)}
.ac-card-main{min-width:0}
.ac-card b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:700;color:#171717}
.ac-card-main>span{display:block;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6d6b66;font-size:8px}
.ac-card-arrow{
  width:23px;height:23px;display:grid !important;place-items:center;flex:0 0 23px;
  border:1px solid var(--a-line);border-radius:50%;color:#171717 !important;font-size:11px !important
}

.ac-listings{display:grid;gap:7px;margin:0 0 15px}
.ac-listing{
  display:grid;grid-template-columns:62px 1fr auto;align-items:center;gap:10px;
  padding:8px;border:1px solid var(--a-line);border-radius:5px;background:#fff;
  color:#171717;text-decoration:none;transition:border-color .15s ease,background .15s ease
}
.ac-listing:hover{border-color:#bdbab2;background:var(--a-soft)}
.ac-listing-media{
  width:62px;height:62px;display:grid;place-items:center;overflow:hidden;border-radius:4px;background:#f1f0eb
}
.ac-listing-media img{width:100%;height:100%;object-fit:cover;display:block}
.ac-listing-placeholder{font:500 20px Georgia,serif;color:#aaa}
.ac-listing-copy{min-width:0}
.ac-listing-title{
  display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:10px;font-weight:700;color:#171717
}
.ac-listing-meta{display:block;margin-top:3px;color:#77756f;font-size:8px;line-height:1.35}
.ac-listing-price{display:block;margin-top:4px;color:#171717;font-size:9px;font-weight:700}
.ac-listing-arrow{
  width:22px;height:22px;display:grid;place-items:center;border:1px solid var(--a-line);
  border-radius:50%;color:#171717;font-size:10px
}

.ac-form{
  margin:0 0 14px;padding:13px;border:1px solid var(--a-line);background:var(--a-soft);border-radius:5px
}
.ac-form-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}
.ac-form-head strong{font:500 17px/1.1 Georgia,serif;color:#171717}
.ac-form-head span{color:var(--a-red);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ac-form-note{margin:0 0 9px;color:var(--a-muted);font-size:9px;line-height:1.45}
.ac-form input,.ac-form textarea,.ac-compose input{
  width:100%;border:1px solid var(--a-line-2);border-radius:3px;background:#fff;color:#171717;outline:none;font-size:11px
}
.ac-form input{height:38px;padding:0 10px;margin-bottom:6px}
.ac-form textarea{min-height:76px;padding:9px 10px;resize:vertical}
.ac-form input:focus,.ac-form textarea:focus,.ac-compose input:focus{
  border-color:#8c8981;box-shadow:0 0 0 2px rgba(21,21,21,.05)
}

.ac-compose{
  display:flex;gap:6px;flex:0 0 auto;padding:8px 9px max(9px,env(safe-area-inset-bottom));
  border-top:1px solid var(--a-line);background:#fff
}
.ac-compose input{min-width:0;flex:1;height:43px;padding:0 11px;background:#fff}
.ac-compose input::placeholder{color:#96938d}
.ac-send.go{
  min-width:58px;min-height:43px;padding:0 13px;border:1px solid var(--a-black);border-radius:3px;
  background:var(--a-black);color:#fff !important;font-size:10px;font-weight:700;cursor:pointer
}
.ac-send.go:hover{background:#000}
.ac-send:disabled{opacity:.45;cursor:default}

.ac-back{
  display:inline-flex;align-items:center;gap:5px;margin:0 0 9px;padding:0;border:0;background:none;
  color:#555;font-size:9px;font-weight:700;cursor:pointer
}
.ac-back:hover{color:#111}

.ac-typing{display:inline-flex;gap:4px;align-items:center;height:13px}
.ac-typing i{width:4px;height:4px;border-radius:50%;background:#aaa;animation:ac-dot 1s infinite ease-in-out}
.ac-typing i:nth-child(2){animation-delay:.15s}.ac-typing i:nth-child(3){animation-delay:.3s}
@keyframes ac-dot{0%,80%,100%{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}

@media (min-width:640px){
  .ac-panel{
    inset:auto 22px 22px auto;width:min(430px,calc(100vw - 44px));height:min(690px,calc(100dvh - 44px));
    border:1px solid var(--a-line);border-radius:8px;box-shadow:var(--a-shadow)
  }
  .ac-head{border-radius:8px 8px 0 0}
  .ac-log{padding:18px 17px 14px}
}
@media (max-width:380px){
  .ac-log{padding-left:11px;padding-right:11px}
  .ac-cards{grid-template-columns:1fr}
  .ac-listing{grid-template-columns:56px 1fr auto}
  .ac-listing-media{width:56px;height:56px}
  .ac-welcome strong{font-size:22px}
}
@media (prefers-reduced-motion:reduce){
  #alfa-chat-root *,#alfa-chat-root *::before,#alfa-chat-root *::after{
    animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important
  }
}

/* Hard rule: every black surface in the widget uses white foreground text. */
#alfa-chat-root .ac-launcher,
#alfa-chat-root .ac-launcher strong,
#alfa-chat-root .ac-launcher em,
#alfa-chat-root .ac-chip.desk,
#alfa-chat-root .ac-msg.user,
#alfa-chat-root .ac-send.go,
#alfa-chat-root .ac-x { color:#fff !important; }
#alfa-chat-root .ac-launcher,
#alfa-chat-root .ac-chip.desk,
#alfa-chat-root .ac-msg.user,
#alfa-chat-root .ac-send.go,
#alfa-chat-root .ac-x { background:#111 !important; }
