
/* KB-IDEA-023 — LOCAL/STAGING visual prototype */
.ai-contact{padding-top:42px;padding-bottom:22px}
.ai-contact-box{
  display:grid;grid-template-columns:1.25fr .75fr;gap:44px;align-items:center;
  padding:44px 48px;border:1px solid var(--line);border-radius:26px;
  background:linear-gradient(145deg,#f7fbff 0%,#eef6ff 100%);
  box-shadow:0 18px 45px rgba(6,27,67,.06)
}
.ai-contact-copy h2{font-size:clamp(2rem,3.4vw,3.15rem);max-width:850px}
.ai-contact-copy>p:not(.eyebrow){color:var(--muted);font-size:1.05rem;max-width:780px}
.ai-contact-note{font-size:.92rem!important;color:#6d7888!important;margin-bottom:0}
.ai-contact-action{display:grid;gap:12px;justify-items:start}
.ai-contact-action small{max-width:300px;color:var(--muted)}
.service-ai-box{margin:44px 0;padding:34px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,#f7fbff,#eef6ff)}
.service-ai-box h2{margin-top:0}.service-ai-box p{color:var(--muted)}

.karbot-ai-panel{
  position:fixed;right:22px;bottom:82px;z-index:130;width:min(400px,calc(100vw - 28px));height:min(610px,calc(100vh - 110px));
  display:none;grid-template-rows:auto auto 1fr auto auto;background:#fff;border:1px solid #dce5f0;border-radius:22px;
  overflow:hidden;box-shadow:0 28px 80px rgba(6,27,67,.25)
}
.karbot-ai-panel.is-open{display:grid}
.karbot-ai-head{display:flex;align-items:center;justify-content:space-between;padding:18px 18px 15px;background:linear-gradient(135deg,#061b43,#0a3474);color:#fff}
.karbot-ai-head strong{display:block;font-size:1.02rem}.karbot-ai-head span{display:block;color:#bfd2ea;font-size:.82rem;margin-top:2px}
.karbot-ai-close{width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;font-size:1.5rem;cursor:pointer}
.karbot-ai-disclosure{padding:10px 16px;background:#f4f8fd;border-bottom:1px solid #e5ebf3;color:#5c687a;font-size:.78rem;line-height:1.35}
.karbot-ai-messages{padding:18px;overflow:auto;display:flex;flex-direction:column;gap:12px;background:#fff}
.karbot-ai-message{max-width:88%;padding:11px 13px;border-radius:14px;font-size:.92rem;line-height:1.45;white-space:pre-wrap}
.karbot-ai-message-assistant{align-self:flex-start;background:#f1f5fa;color:#172339;border-bottom-left-radius:5px}
.karbot-ai-message-user{align-self:flex-end;background:#0a3474;color:#fff;border-bottom-right-radius:5px}
.karbot-ai-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;border-top:1px solid #e5ebf3;background:#fff}
.karbot-ai-compose textarea{resize:none;border:1px solid #ced8e6;border-radius:12px;padding:11px 12px;font:inherit;min-height:46px;max-height:110px;outline:none}
.karbot-ai-compose textarea:focus{border-color:#0b8cff;box-shadow:0 0 0 3px rgba(11,140,255,.1)}
.karbot-ai-compose button{border:0;border-radius:12px;background:#0b8cff;color:#fff;font-weight:800;padding:0 14px;cursor:pointer}
.karbot-ai-prototype-note{text-align:center;padding:8px 12px;background:#fff8db;color:#6a5412;border-top:1px solid #f1e3a7;font-size:.68rem;font-weight:800;letter-spacing:.035em}
.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}
body.karbot-ai-open{overflow:hidden}
@media(max-width:900px){.ai-contact-box{grid-template-columns:1fr;gap:24px}}
@media(max-width:620px){
  .ai-contact{padding-top:18px}.ai-contact-box{padding:28px 22px;border-radius:20px}
  .karbot-ai-panel{inset:8px;width:auto;height:auto;max-height:none;border-radius:18px}
  .karbot-ai-message{max-width:92%}
}
.karbot-ai-summary{align-self:stretch;border:1px solid #cfe0f2;background:#f7fbff;border-radius:14px;padding:13px 14px;color:#172339}
.karbot-ai-summary>strong{display:block;margin-bottom:7px}.karbot-ai-summary ul{margin:0 0 8px;padding-left:18px;font-size:.86rem;line-height:1.4}.karbot-ai-summary-meta{font-size:.8rem;color:#617086;margin-bottom:10px}
.karbot-ai-submit{width:100%;border:0;border-radius:11px;background:#0b8cff;color:#fff;font-weight:800;padding:11px 12px;cursor:pointer}.karbot-ai-submit:hover{filter:brightness(.97)}
.karbot-ai-compose button:disabled,.karbot-ai-compose textarea:disabled{opacity:.6;cursor:not-allowed}

/* FINAL AI CONTACT LAYOUT */
@media (min-width:1180px) {
  .ai-contact-box {
    grid-template-columns:minmax(0,1.65fr) minmax(280px,.55fr);
    gap:36px;
  }

  .ai-contact-title {
    max-width:none !important;
    font-size:clamp(2.4rem,3.15vw,3.15rem) !important;
    line-height:1.04;
  }

  .ai-contact-title > span {
    display:block;
    white-space:nowrap;
  }
}

.ai-contact-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.ai-contact-button-icon {
  width:32px;
  height:32px;
  flex:0 0 32px;
  display:grid;
  place-items:center;
  padding:5px;
  border-radius:9px;
  background:#fff;
  color:#0b8cff;
}

.ai-contact-button-icon svg {
  display:block;
  width:22px;
  height:22px;
}

@media (max-width:1179px) {
  .ai-contact-title > span {
    display:block;
    white-space:normal;
  }
}
/* AI SECTION BREATHING ROOM */
@media (min-width:1180px) {
  .ai-contact-box {
    grid-template-columns:minmax(0,1.7fr) minmax(250px,.5fr);
    gap:56px;
  }

  .ai-contact-title {
    font-size:clamp(2.3rem,2.85vw,2.95rem) !important;
    line-height:1.06;
  }

  .ai-contact-button {
    padding-left:22px;
    padding-right:22px;
  }

  .ai-contact-button-icon {
    width:29px;
    height:29px;
    flex-basis:29px;
  }
}

/* KARBOT AI TYPOGRAPHY FINAL — BEGIN */

.ai-contact-copy > p:not(.eyebrow) {
  color: var(--kb-text-body);
  font-size: var(--kb-size-section-intro);
}

.ai-contact-note,
.ai-contact-action small {
  color: var(--kb-text-secondary) !important;
  font-size: var(--kb-size-meta);
}

.karbot-ai-head span {
  color: var(--kb-text-on-dark-muted);
}

.karbot-ai-disclosure {
  color: var(--kb-text-secondary);
}

/*
  Chat ma celowo ciemniejszy tekst niż zwykły body:
  mały panel + krótkie komunikaty wymagają mocniejszego kontrastu.
*/
.karbot-ai-message-assistant,
.karbot-ai-summary {
  color: #172339;
}

.karbot-ai-summary-meta {
  color: var(--kb-text-secondary);
}

.karbot-ai-compose textarea {
  color: var(--kb-text-heading);
}

/*
  Żółty prototype/status pozostaje osobnym kolorem semantycznym.
  Zielony/czerwony status formularza również pozostają osobne.
*/

/* KARBOT AI TYPOGRAPHY FINAL — END */
