.tknfy-support{--ink:#0f172a;--muted:#64748b;--line:#e2e8f0;--soft:#f8fafc;--navy:#07111f;--accent:#c9a646;--accent2:#e2c66d;--ok:#15803d;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);box-sizing:border-box}.tknfy-support *{box-sizing:border-box}.tknfy-support button,.tknfy-support input,.tknfy-support textarea,.tknfy-support select{font:inherit}.tknfy-support.is-dedicated{max-width:1120px;margin:24px auto 48px;padding:0 16px}.tknfy-support-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:38px 40px;border-radius:30px;background:linear-gradient(135deg,#07111f,#17253b);color:#fff;box-shadow:0 28px 70px rgba(15,23,42,.14);margin-bottom:16px;overflow:hidden;position:relative}.tknfy-support-hero:after{content:"";position:absolute;width:300px;height:300px;border-radius:999px;right:-100px;top:-160px;background:radial-gradient(circle,rgba(226,198,109,.28),transparent 68%)}.tknfy-support-kicker,.tknfy-profile-eyebrow{display:block;font-size:11px;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:var(--accent2)}.tknfy-support-hero h1{font-size:clamp(34px,5vw,58px);line-height:1;letter-spacing:-.05em;margin:10px 0 12px;color:#fff}.tknfy-support-hero p{max-width:720px;margin:0;color:rgba(255,255,255,.72);font-weight:600;line-height:1.55}.tknfy-support-status{position:relative;z-index:1;white-space:nowrap;display:flex;align-items:center;gap:8px;padding:10px 13px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.13);font-size:12px;font-weight:800}.tknfy-support-status span{width:8px;height:8px;border-radius:999px;background:#94a3b8;box-shadow:none;opacity:.42;animation:none}.tknfy-support.is-thinking .tknfy-support-status span{background:#22c55e;opacity:1;box-shadow:0 0 0 4px rgba(34,197,94,.12);animation:tknfyStatusPulse 1s infinite ease-in-out}@keyframes tknfyStatusPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 4px rgba(34,197,94,.10)}50%{transform:scale(1.18);box-shadow:0 0 0 7px rgba(34,197,94,.05)}}.tknfy-support-shell{position:relative;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 20px 60px rgba(15,23,42,.08);overflow:hidden}.tknfy-support-head{display:flex;align-items:center;gap:11px;padding:14px 16px;border-bottom:1px solid var(--line);background:rgba(255,255,255,.96);position:relative;z-index:3}.tknfy-support-brandmark{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),#273b5a);color:var(--accent2);font-weight:950;font-size:18px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.1)}.tknfy-support-headcopy{display:grid;min-width:0}.tknfy-support-headcopy strong{font-size:14px}.tknfy-support-headcopy small{font-size:11px;color:var(--muted);font-weight:700}.tknfy-icon-btn{margin-left:auto;width:36px;height:36px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#475569;font-weight:900;cursor:pointer}.tknfy-icon-btn:hover{background:var(--soft)}.tknfy-profile-gate{padding:36px 18px;background:linear-gradient(180deg,#fff,var(--soft))}.tknfy-profile-card{max-width:620px;margin:0 auto;padding:26px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 16px 42px rgba(15,23,42,.07)}.tknfy-profile-card h2,.tknfy-ticket-card h2{font-size:26px;letter-spacing:-.03em;margin:8px 0;color:var(--ink)}.tknfy-profile-card>p,.tknfy-ticket-card>p{color:var(--muted);font-size:13px;line-height:1.6;margin:0 0 18px}.tknfy-profile-card form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tknfy-profile-card label,.tknfy-ticket-grid label{display:grid;gap:6px;font-size:12px;font-weight:850;color:#334155}.tknfy-profile-card input,.tknfy-ticket-grid input,.tknfy-ticket-grid textarea,.tknfy-ticket-grid select{width:100%;border:1px solid #cbd5e1;border-radius:13px;background:#fff;padding:11px 12px;color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}.tknfy-profile-card input:focus,.tknfy-ticket-grid input:focus,.tknfy-ticket-grid textarea:focus,.tknfy-ticket-grid select:focus,.tknfy-composer textarea:focus{border-color:#94a3b8;box-shadow:0 0 0 3px rgba(148,163,184,.14)}.tknfy-privacy-note{grid-column:1/-1!important;margin:0!important;color:var(--muted)!important;font-size:11px!important;line-height:1.5}.tknfy-privacy-note a{color:#334155;font-weight:800}.tknfy-primary{grid-column:1/-1;border:0;border-radius:13px;padding:12px 16px;background:linear-gradient(135deg,var(--navy),#203654);color:#fff;font-weight:900;cursor:pointer;box-shadow:0 10px 24px rgba(15,23,42,.12)}.tknfy-primary:disabled{opacity:.6;cursor:wait}.tknfy-form-note{grid-column:1/-1;min-height:18px;color:var(--muted);font-size:11px;font-weight:700}.tknfy-form-note.is-error{color:#b91c1c}.tknfy-form-note.is-success{color:var(--ok)}.tknfy-support-body{position:relative}.tknfy-customer-strip{padding:8px 16px;background:#f8fafc;border-bottom:1px solid var(--line);color:#64748b;font-size:11px;font-weight:750}.tknfy-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 14px;border-bottom:1px solid var(--line)}.tknfy-quick-grid button{border:1px solid var(--line);border-radius:999px;background:#fff;color:#334155;padding:9px 10px;font-size:11px;font-weight:850;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tknfy-quick-grid button:hover{background:var(--soft);border-color:#cbd5e1}.tknfy-messages{height:min(42vh,440px);min-height:280px;overflow:auto;padding:18px 16px;scroll-behavior:smooth;background:linear-gradient(180deg,#fff 0,#fff 72%,#fbfdff 100%)}.tknfy-message{display:flex;margin:0 0 12px}.tknfy-message.is-user{justify-content:flex-end}.tknfy-bubble{max-width:min(760px,86%);padding:12px 14px;border-radius:18px;font-size:13px;line-height:1.58;white-space:pre-wrap;overflow-wrap:anywhere}.tknfy-message.is-assistant .tknfy-bubble{background:#f1f5f9;color:#172033;border-bottom-left-radius:6px}.tknfy-message.is-user .tknfy-bubble{background:linear-gradient(135deg,#101a2c,#253d5e);color:#fff;border-bottom-right-radius:6px}.tknfy-message.is-new{animation:tknfyPop .16s ease-out}@keyframes tknfyPop{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.tknfy-typing[hidden]{display:none!important}.tknfy-typing{display:flex;gap:4px;padding:0 18px 10px}.tknfy-typing span{width:6px;height:6px;border-radius:999px;background:#94a3b8;animation:tknfyDot 1s infinite ease-in-out}.tknfy-typing span:nth-child(2){animation-delay:.15s}.tknfy-typing span:nth-child(3){animation-delay:.3s}@keyframes tknfyDot{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.tknfy-composer{margin:0 12px 10px;border:1px solid #cbd5e1;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.07);overflow:hidden}.tknfy-composer textarea{display:block;width:100%;resize:none;border:0!important;box-shadow:none!important;outline:none;min-height:44px;max-height:150px;padding:12px 13px 5px;color:var(--ink);line-height:1.45;font-size:13px}.tknfy-composer-actions{display:flex;align-items:center;gap:6px;padding:6px 7px 8px}.tknfy-action-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:11px;background:#fff;color:#475569;display:grid;place-items:center;font-weight:900;cursor:pointer}.tknfy-action-btn:hover{background:var(--soft)}.tknfy-action-btn.is-listening{background:#fee2e2;border-color:#fecaca;color:#b91c1c;animation:tknfyPulse 1s infinite}@keyframes tknfyPulse{50%{box-shadow:0 0 0 6px rgba(239,68,68,.10)}}.tknfy-send{margin-left:auto;border:0;border-radius:11px;background:var(--navy);color:#fff;padding:9px 15px;font-size:12px;font-weight:900;cursor:pointer}.tknfy-send:disabled{opacity:.55;cursor:wait}.tknfy-attachment-preview{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--line);background:#f8fafc;color:#475569;font-size:11px;font-weight:750}.tknfy-attachment-preview img{width:38px;height:38px;border-radius:8px;object-fit:cover;border:1px solid var(--line)}.tknfy-attachment-preview span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tknfy-attachment-preview button{margin-left:auto;border:0;background:transparent;color:#b91c1c;font-size:11px;font-weight:850;cursor:pointer}.tknfy-safety{padding:0 16px 13px;color:#94a3b8;font-size:10px;font-weight:700;text-align:center}.tknfy-ticket-modal{position:fixed;inset:0;z-index:1000000;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(2,6,23,.66);backdrop-filter:blur(3px)}.tknfy-ticket-modal[hidden]{display:none!important}.tknfy-ticket-card{width:min(780px,100%);max-height:88vh;overflow:auto;border-radius:24px;background:#fff;padding:24px;box-shadow:0 30px 90px rgba(0,0,0,.28);position:relative}.tknfy-ticket-close{position:absolute;right:16px;top:16px;border:1px solid var(--line);border-radius:999px;background:#fff;padding:7px 11px;color:#475569;font-size:11px;font-weight:850;cursor:pointer}.tknfy-ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.tknfy-ticket-grid .wide{grid-column:1/-1}.tknfy-ticket-grid small{font-weight:600;color:#94a3b8}.tknfy-support-modal-open{overflow:hidden}.tknfy-support-launcher-wrap{position:fixed;right:20px;bottom:20px;z-index:999999}.tknfy-support-launcher{border:0;border-radius:999px;padding:12px 18px;background:#07111f;color:#fff;font-weight:900;box-shadow:0 14px 36px rgba(15,23,42,.24);cursor:pointer}.tknfy-support-launcher-panel{position:absolute;right:0;bottom:54px;width:min(430px,calc(100vw - 24px));box-shadow:0 26px 70px rgba(15,23,42,.22);border-radius:24px}.tknfy-support-launcher-panel[hidden]{display:none!important}.tknfy-support.is-compact .tknfy-support-shell{border-radius:24px}.tknfy-support.is-compact .tknfy-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tknfy-support.is-compact .tknfy-messages{height:340px;min-height:250px}.tknfy-support.is-compact .tknfy-profile-gate{padding:16px 10px}.tknfy-support.is-compact .tknfy-profile-card{padding:18px}.tknfy-support.is-compact .tknfy-profile-card form{grid-template-columns:1fr}.tknfy-support.is-compact .tknfy-privacy-note,.tknfy-support.is-compact .tknfy-primary,.tknfy-support.is-compact .tknfy-form-note{grid-column:auto!important}@media(max-width:760px){.tknfy-support.is-dedicated{margin:10px auto 28px;padding:0 8px}.tknfy-support-hero{padding:25px 20px;border-radius:22px;align-items:flex-start;flex-direction:column}.tknfy-support-hero h1{font-size:38px}.tknfy-support-shell{border-radius:22px}.tknfy-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.tknfy-messages{height:42vh;min-height:280px;padding:14px 10px}.tknfy-bubble{max-width:91%;font-size:12.5px}.tknfy-profile-card{padding:19px;border-radius:20px}.tknfy-profile-card form,.tknfy-ticket-grid{grid-template-columns:1fr}.tknfy-privacy-note,.tknfy-primary,.tknfy-form-note,.tknfy-ticket-grid .wide{grid-column:auto!important}.tknfy-ticket-card{padding:20px 14px;border-radius:20px}.tknfy-support-launcher-wrap{right:12px;bottom:12px}.tknfy-support-launcher-panel{right:0;bottom:52px}.tknfy-support-head{padding:11px 12px}.tknfy-customer-strip{padding:7px 12px}.tknfy-composer{margin:0 8px 8px}.tknfy-safety{padding:0 10px 10px}}@media(max-width:420px){.tknfy-quick-grid{gap:6px}.tknfy-quick-grid button{font-size:10.5px;padding:8px 7px}.tknfy-support-status{white-space:normal}.tknfy-profile-card h2,.tknfy-ticket-card h2{font-size:23px}}


/* v2.0.4 — floating launcher uses a real viewport overlay instead of an absolute dropdown. */
body.tknfy-launcher-open{overflow:hidden}
.tknfy-support-launcher-panel{
  position:fixed;
  inset:0;
  width:auto;
  border-radius:0;
  box-shadow:none;
  padding:20px;
  background:rgba(2,6,23,.58);
  -webkit-backdrop-filter:blur(4px);
  backdrop-filter:blur(4px);
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  z-index:1000001;
}
.tknfy-support-launcher-panel[hidden]{display:none!important}
.tknfy-support-launcher-panel>.tknfy-support.is-compact{
  width:min(440px,100%);
  max-width:100%;
  max-height:calc(100dvh - 40px);
  background:#fff;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 34px 100px rgba(2,6,23,.38);
}
.tknfy-support.is-compact .tknfy-support-shell{
  height:min(620px,calc(100dvh - 40px));
  max-height:calc(100dvh - 40px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:26px;
}
.tknfy-support.is-compact .tknfy-support-head{flex:0 0 auto}
.tknfy-support.is-compact .tknfy-launcher-close{margin-left:0;font-size:21px;line-height:1}
.tknfy-support.is-compact .tknfy-profile-gate:not([hidden]){display:block;flex:1 1 auto;min-height:0;overflow:auto}
.tknfy-support.is-compact .tknfy-support-body:not([hidden]){display:flex;flex:1 1 auto;min-height:0;flex-direction:column}
.tknfy-support.is-compact .tknfy-customer-strip{flex:0 0 auto}
.tknfy-support.is-compact .tknfy-quick-grid{
  flex:0 0 auto;
  display:flex;
  grid-template-columns:none;
  overflow-x:auto;
  gap:6px;
  padding:9px 10px;
  scrollbar-width:thin;
}
.tknfy-support.is-compact .tknfy-quick-grid button{flex:0 0 auto;max-width:170px}
.tknfy-support.is-compact .tknfy-messages{
  flex:1 1 auto;
  height:auto;
  min-height:0;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.tknfy-support.is-compact .tknfy-typing,
.tknfy-support.is-compact .tknfy-composer,
.tknfy-support.is-compact .tknfy-safety{flex:0 0 auto}

@media(max-width:600px){
  .tknfy-support-launcher-panel{padding:0;align-items:stretch;justify-content:stretch}
  .tknfy-support-launcher-panel>.tknfy-support.is-compact{
    width:100%;
    height:100dvh;
    max-height:100dvh;
    border-radius:0;
  }
  .tknfy-support.is-compact .tknfy-support-shell{
    width:100%;
    height:100dvh;
    max-height:100dvh;
    border:0;
    border-radius:0!important;
  }
  .tknfy-support.is-compact .tknfy-support-head{padding-top:max(11px,env(safe-area-inset-top))}
  .tknfy-support.is-compact .tknfy-safety{padding-bottom:max(10px,env(safe-area-inset-bottom))}
  .tknfy-support.is-compact .tknfy-profile-gate{padding:14px 10px}
  .tknfy-support.is-compact .tknfy-profile-card{border-radius:18px}
}
.tknfy-support-launcher-wrap{z-index:2147483000}


/* v2.0.8 — compact dedicated Support hero on mobile */
@media (max-width: 640px) {
  .tknfy-support.is-dedicated .tknfy-support-hero {
    padding: 14px 14px 12px !important;
    border-radius: 18px !important;
    gap: 8px !important;
    margin-bottom: 10px !important;
  }

  .tknfy-support.is-dedicated .tknfy-support-kicker {
    font-size: 9px !important;
    line-height: 1.2 !important;
    letter-spacing: .10em !important;
    padding: 0 !important;
    margin: 0 0 5px !important;
  }

  .tknfy-support.is-dedicated .tknfy-support-hero h1 {
    font-size: 24px !important;
    line-height: 1.05 !important;
    letter-spacing: -.035em !important;
    margin: 0 !important;
  }

  .tknfy-support.is-dedicated .tknfy-support-hero-copy {
    display: none !important;
  }

  .tknfy-support.is-dedicated .tknfy-support-status {
    margin-top: 7px !important;
    font-size: 10px !important;
    padding: 5px 8px !important;
  }
}


/* v2.1.0 — compact identity-free controls */
.tknfy-customer-strip {
  display: none !important;
}

.tknfy-icon-btn,
.tknfy-action-btn {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 0 !important;
  line-height: 1 !important;
  vertical-align: middle !important;
}

.tknfy-icon-btn > span,
.tknfy-action-btn > span {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.tknfy-action-btn {
  flex: 0 0 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  font-size: 16px !important;
}

.tknfy-icon-btn {
  flex: 0 0 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  font-size: 17px !important;
}

.tknfy-composer-actions {
  min-height: 48px;
}

@media (max-width: 640px) {
  .tknfy-action-btn {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    flex-basis: 32px !important;
  }

  .tknfy-icon-btn {
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    flex-basis: 34px !important;
  }
}


/* v2.1.1 — reliable voice recording/transcription */
.tknfy-voice-note{
  min-width:0;
  margin-left:2px;
  color:#64748b;
  font-size:10px;
  font-weight:750;
  line-height:1.2;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.tknfy-voice-note.is-active{color:#1d4ed8}
.tknfy-voice-note.is-success{color:#15803d}
.tknfy-voice-note.is-error{color:#b91c1c}
.tknfy-action-btn.is-transcribing{
  background:#eff6ff;
  border-color:#bfdbfe;
  color:#1d4ed8;
  cursor:wait;
}
@media (max-width:640px){
  .tknfy-voice-note{
    max-width:108px;
    font-size:9px;
  }
}
