﻿.tt-client{--client-blue:var(--tt-heading-accent,#006dfa);--client-ink:var(--tt-heading-ink,#171a20);--client-muted:#64758a;--client-line:#dfe7f2;color:var(--client-ink);background:#f7f9fc;padding:clamp(60px,8vw,120px) 24px;font-size:var(--tt-copy-card-size,16px);line-height:1.6}.tt-client *{box-sizing:border-box}.tt-client-shell{max-width:1400px;margin:0 auto}.tt-client p{font-size:var(--tt-copy-card-size,16px);line-height:1.65}.tt-client .tt-client-eyebrow{font-size:var(--tt-copy-label-size,14px);letter-spacing:.1em;font-weight:600;color:var(--client-blue);margin:0 0 20px}.tt-client-login{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(30px,7vw,100px)}.tt-client-intro h1{font-family:var(--tt-heading-family,Manrope,sans-serif);font-size:var(--tt-h1-size,64px);font-weight:var(--tt-h1-weight,500);line-height:1.05;letter-spacing:var(--tt-heading-tracking,-.06em);margin:0 0 28px}.tt-client-intro h1 em{font-family:Georgia,serif;font-weight:400;color:var(--client-blue)}.tt-client-intro>p:not(.tt-client-eyebrow){max-width:510px;color:var(--client-muted);font-size:var(--tt-copy-lead-size,18px)}.tt-client-benefits{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:40px;padding-top:25px;border-top:1px solid var(--client-line);font-size:var(--tt-copy-small-size,13px);color:var(--client-muted)}.tt-client-card{background:#fff;border:1px solid var(--client-line);border-radius:24px;padding:clamp(25px,4vw,48px)}.tt-client-login-card{background:linear-gradient(140deg,#f3eeff 0%,#fff 50%,#fff2e7 100%);box-shadow:0 24px 70px #27466d0a}.tt-client .tt-client-card h2,.tt-client .tt-client-thread h2{font-size:var(--tt-h3-size,26px);font-weight:var(--tt-h3-weight,580);line-height:1.2;letter-spacing:-.04em;margin:0 0 14px}.tt-client-card>p{color:var(--client-muted)}.tt-client-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#e7f0ff;color:var(--client-blue);font-size:26px;margin-bottom:25px}.tt-client form{margin:26px 0 20px}.tt-client label{display:block;font-size:var(--tt-copy-compact-size,15px);font-weight:500;margin-bottom:10px}.tt-client input[type=email],.tt-client textarea{display:block;width:100%;max-width:100%;min-width:0;font:inherit;font-size:16px;background:#fff;border:1px solid #cfdbeb;border-radius:12px;color:var(--client-ink);padding:15px 16px;box-shadow:none;outline-offset:4px}.tt-client-login-card .tt-client-button{width:100%;margin-top:18px}.tt-client .tt-client-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid var(--client-blue);border-radius:12px;background:var(--client-blue);color:#fff;text-decoration:none;cursor:pointer;min-height:48px;padding:12px 20px;font:inherit;font-size:var(--tt-copy-action-size,16px);font-weight:500;line-height:1.4;transition:background .2s,transform .2s}.tt-client .tt-client-button:hover{background:#005bd3;color:#fff;transform:translateY(-1px)}.tt-client .tt-client-button.is-secondary{color:var(--client-blue);background:#fff;border-color:var(--client-line)}.tt-client a:not(.tt-client-button){color:var(--client-blue);text-decoration:none}.tt-client a:not(.tt-client-button):hover{text-decoration:underline}.tt-client .tt-client-small{font-size:var(--tt-copy-small-size,13px);line-height:1.6}.tt-client-notice{padding:18px 22px;margin-bottom:26px;border:1px solid #c9dcfa;border-radius:14px;background:#edf5ff;color:#254c82}.tt-client-header{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:36px}.tt-client-header h1{font-size:var(--tt-h3-display-size,48px);line-height:1.12;margin:0 0 12px}.tt-client-header p:not(.tt-client-eyebrow){color:var(--client-muted);margin:0}.tt-client-header .tt-client-eyebrow{margin-bottom:12px}.tt-client-signout{margin-left:15px;white-space:nowrap}.tt-client-layout{display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start;gap:24px}.tt-client-sidebar{padding:24px;background:#fff;border:1px solid var(--client-line);border-radius:20px;min-width:0}.tt-client-sidebar h2{font-size:var(--tt-h5-size,17px);line-height:1.35;margin:0 0 20px}.tt-client .tt-client-inquiry{display:flex;flex-direction:column;gap:9px;padding:18px;margin:0 -8px 10px;border:1px solid transparent;border-radius:14px;color:var(--client-ink)}.tt-client .tt-client-inquiry:hover{text-decoration:none;background:#f7faff}.tt-client .tt-client-inquiry.is-active{background:#eef5ff;border-color:#dbe8fc}.tt-client-inquiry small{font-size:var(--tt-copy-small-size,13px);color:var(--client-muted)}.tt-client-inquiry strong{font-weight:550}.tt-client-status{font-size:var(--tt-copy-small-size,13px);color:#3d6394}.tt-client-new{display:block;border-top:1px solid var(--client-line);padding-top:20px;margin-top:22px;font-size:var(--tt-copy-compact-size,15px)}.tt-client-thread{background:#fff;border:1px solid var(--client-line);border-radius:20px;overflow:hidden;min-width:0}.tt-client-thread-head{padding:28px 32px;border-bottom:1px solid var(--client-line)}.tt-client-thread-head .tt-client-eyebrow{font-size:var(--tt-copy-small-size,13px);margin-bottom:12px}.tt-client-project-meta{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:var(--tt-copy-small-size,13px);color:var(--client-muted)}.tt-client-messages{padding:30px;background:#fafcff;max-height:650px;overflow:auto;scrollbar-width:thin}.tt-client-message{max-width:88%;padding:20px 22px;margin:0 0 22px;background:#fff;border:1px solid var(--client-line);border-radius:16px}.tt-client-message.is-customer{margin-left:auto;background:#edf5ff;border-color:#dce9fc}.tt-client-message>div{display:flex;justify-content:space-between;gap:12px;font-size:var(--tt-copy-small-size,13px);line-height:1.5}.tt-client-message strong{font-weight:550}.tt-client-message time{color:var(--client-muted);font-size:var(--tt-copy-small-size,13px)}.tt-client-message p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0 0;font-size:var(--tt-copy-compact-size,15px);line-height:1.75}.tt-client .tt-client-compose{padding:26px 32px;margin:0;border-top:1px solid var(--client-line)}.tt-client textarea{resize:vertical;min-height:125px}.tt-client-compose>div{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:16px}.tt-client-compose>div p{font-size:var(--tt-copy-small-size,13px);max-width:320px;color:var(--client-muted);margin:0}.tt-client a:focus-visible,.tt-client button:focus-visible,.tt-client input:focus-visible,.tt-client textarea:focus-visible{outline:3px solid #84b7ff;outline-offset:4px}.tt-client button:disabled{opacity:.65;cursor:wait}
@media(max-width:1000px){.tt-client-login{grid-template-columns:1fr 1fr;gap:30px}.tt-client-layout{grid-template-columns:240px minmax(0,1fr)}.tt-client-message{max-width:100%}.tt-client-messages,.tt-client-thread-head,.tt-client .tt-client-compose{padding:22px}}
@media(max-width:700px){.tt-client{padding:55px 16px}.tt-client-login,.tt-client-layout{grid-template-columns:1fr}.tt-client-login{gap:32px}.tt-client-intro h1{font-size:var(--tt-h1-size,46px)}.tt-client-intro>p:not(.tt-client-eyebrow){font-size:16px}.tt-client-header{align-items:flex-start;flex-direction:column}.tt-client-header h1{font-size:var(--tt-h3-display-size,34px)}.tt-client-sidebar{padding:20px}.tt-client-inquiry{padding:14px}.tt-client-benefits{margin-top:25px}.tt-client-message>div{flex-direction:column;gap:4px}.tt-client .tt-client-compose,.tt-client-messages,.tt-client-thread-head{padding:18px}.tt-client-message{padding:16px}.tt-client-compose>div{align-items:stretch;flex-direction:column;gap:14px}.tt-client-thread{border-radius:16px}.tt-client p,.tt-client small,.tt-client h1,.tt-client h2{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){.tt-client .tt-client-button{transition:none;transform:none}}
.tt-client-brief{border:1px solid var(--client-line);border-radius:14px;background:#fff;padding:15px 20px;margin:0 0 25px}.tt-client-brief summary{cursor:pointer;font-weight:550;font-size:var(--tt-copy-compact-size,15px);color:var(--client-blue)}.tt-client-brief dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 4px}.tt-client-brief dt{font-size:var(--tt-copy-small-size,13px);color:var(--client-muted)}.tt-client-brief dd{font-size:var(--tt-copy-compact-size,15px);margin:3px 0 0;overflow-wrap:anywhere}@media(max-width:550px){.tt-client-brief dl{grid-template-columns:1fr}}.tt-client-login>*,.tt-client-layout>*{min-width:0}@media(max-width:700px){.tt-client-intro h1,.tt-client-intro>p:not(.tt-client-eyebrow){max-width:100%;overflow-wrap:anywhere}.tt-client-login-card{min-width:0}}
/* Keep conversations compact and readable on narrow screens. */
.tt-client-message.is-customer { border-top-right-radius: 5px; }
.tt-client-message.is-team { border-top-left-radius: 5px; }
.tt-client-inquiry strong, .tt-client-header p, .tt-client-thread h2 { overflow-wrap: anywhere; }
.tt-client-sidebar, .tt-client-thread { box-shadow: 0 14px 34px rgba(29, 58, 104, .035); }
.tt-client-message time { white-space: nowrap; }
@media (max-width: 700px) {
  .tt-client { padding: 38px 16px 86px; }
  .tt-client-login { gap: 26px; }
  .tt-client-intro h1 { margin-bottom: 18px; }
  .tt-client-benefits { gap: 8px 18px; margin-top: 22px; padding-top: 18px; }
  .tt-client-login-card { padding: 24px; }
  .tt-client-header { gap: 14px; margin-bottom: 22px; }
  .tt-client-header h1 { margin-bottom: 7px; }
  .tt-client-layout { gap: 16px; }
  .tt-client-sidebar { padding: 16px; }
  .tt-client-sidebar h2 { margin-bottom: 10px; }
  .tt-client .tt-client-inquiry { gap: 4px; padding: 12px; margin-bottom: 4px; }
  .tt-client-new { margin-top: 12px; padding-top: 12px; }
  .tt-client-thread-head, .tt-client-messages, .tt-client .tt-client-compose { padding: 18px; }
  .tt-client-message { margin-bottom: 14px; }
  .tt-client-message time { white-space: normal; }
}


/* Client inbox: a focused conversation workspace using the site type and blue accent. */
.tt-client:has(.tt-client-app) { padding: 34px 24px 82px; }
.tt-client-app {
  height: clamp(650px, calc(100dvh - 155px), 880px);
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #dce5f0;
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 24px 70px rgba(26, 52, 91, .07);
}
.tt-client-app-top {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 112px;
  padding: 21px 30px;
  border-bottom: 1px solid var(--client-line);
  background: linear-gradient(105deg, #fff 0%, #f7faff 64%, #fff8f2 100%);
}
.tt-client-app-top .tt-client-eyebrow { font-size: 12px; margin-bottom: 4px; }
.tt-client-app-top h1 {
  font-family: var(--tt-heading-family, Manrope, sans-serif);
  font-size: var(--tt-client-workspace-title-size, 34px);
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: -.05em;
  margin: 0 0 3px;
}
.tt-client-app-top p:not(.tt-client-eyebrow) { color: var(--client-muted); margin: 0; font-size: 14px; }
.tt-client-app-actions { display: flex; align-items: center; gap: 20px; flex: none; }
.tt-client-app-actions .tt-client-button { min-height: 42px; padding: 9px 16px; font-size: 14px; }
.tt-client-app-actions .tt-client-signout { margin: 0; font-size: 14px; }
.tt-client-app .tt-client-layout {
  display: grid;
  grid-template-columns: 330px minmax(0, 1fr);
  flex: 1;
  gap: 0;
  min-height: 0;
}
.tt-client-app .tt-client-sidebar,
.tt-client-app .tt-client-thread { border: 0; border-radius: 0; box-shadow: none; min-height: 0; }
.tt-client-app .tt-client-sidebar {
  display: flex;
  flex-direction: column;
  padding: 0;
  border-right: 1px solid var(--client-line);
}
.tt-client-sidebar-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
  padding: 22px 20px 18px;
  border-bottom: 1px solid var(--client-line);
}
.tt-client-app .tt-client-sidebar h2 { font-size: var(--tt-h5-size, 17px); margin: 0 0 4px; font-weight: 580; }
.tt-client-sidebar-head p { margin: 0; font-size: 12px; color: var(--client-muted); overflow-wrap: anywhere; }
.tt-client-count { display: grid; place-items: center; min-width: 25px; height: 25px; padding: 0 6px; border-radius: 999px; background: #edf4ff; color: var(--client-blue); font-size: 12px; font-weight: 600; }
.tt-client-sidebar nav { flex: 1; min-height: 0; overflow-y: auto; scrollbar-width: thin; }
.tt-client .tt-client-app a.tt-client-inquiry {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: start;
  gap: 12px;
  margin: 0;
  padding: 17px 20px;
  border: 0;
  border-bottom: 1px solid #edf1f6;
  border-radius: 0;
  color: var(--client-ink);
  text-decoration: none;
}
.tt-client .tt-client-app a.tt-client-inquiry:hover { background: #f7faff; text-decoration: none; }
.tt-client .tt-client-app a.tt-client-inquiry.is-active { background: #edf4ff; box-shadow: inset 3px 0 var(--client-blue); }
.tt-client-list-avatar, .tt-client-team-avatar, .tt-client-chat-avatar {
  display: grid;
  place-items: center;
  flex: none;
  border-radius: 50%;
  font-family: var(--tt-heading-family, Manrope, sans-serif);
  font-weight: 650;
}
.tt-client-list-avatar { width: 42px; height: 42px; background: linear-gradient(145deg, #e5efff, #eeeaff); color: var(--client-blue); font-size: 17px; }
.tt-client-list-copy { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.tt-client-list-copy strong { font-size: 14px; line-height: 1.4; font-weight: 600; }
.tt-client-list-sub, .tt-client-list-copy small { color: var(--client-muted); font-size: 12px; line-height: 1.45; }
.tt-client-list-copy small { margin-top: 4px; }
.tt-client-sidebar-foot { flex: none; display: flex; justify-content: space-between; align-items: center; gap: 8px; padding: 16px 20px; border-top: 1px solid var(--client-line); font-size: 13px; }
.tt-client-sidebar-foot > a { white-space: nowrap; }
.tt-client-sidebar-foot .page-numbers { margin-right: 5px; }
.tt-client-list-empty { padding: 26px 20px; }
.tt-client-list-empty p { color: var(--client-muted); margin: 0 0 8px; font-size: 14px; }
.tt-client-app .tt-client-thread { display: flex; flex-direction: column; }
.tt-client-app .tt-client-thread-head {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 84px;
  padding: 16px 24px;
}
.tt-client-thread-heading { display: flex; align-items: center; gap: 12px; min-width: 0; }
.tt-client-team-avatar { width: 43px; height: 43px; background: var(--client-ink); color: #fff; font-size: 21px; }
.tt-client .tt-client-app .tt-client-thread h2 { margin: 0; font-size: var(--tt-h5-size, 17px); font-weight: 600; letter-spacing: -.02em; }
.tt-client-thread-heading p { margin: 2px 0 0; color: var(--client-muted); font-size: 12px; }
.tt-client-thread-status { flex: none; padding: 6px 10px; border-radius: 999px; background: #e9f4ee; color: #27734d; font-size: 12px; line-height: 1.2; }
.tt-client-back { display: none; }
.tt-client-app .tt-client-messages { flex: 1; min-height: 0; max-height: none; overflow-y: auto; padding: 25px 28px 28px; background: #f8fafd; }
.tt-client-chat-intro { display: flex; flex-direction: column; align-items: center; gap: 2px; margin: 2px auto 18px; text-align: center; }
.tt-client-chat-intro strong { font-size: 14px; font-weight: 600; }
.tt-client-chat-intro span { color: var(--client-muted); font-size: 12px; }
.tt-client-app .tt-client-brief { max-width: 680px; padding: 11px 16px; margin: 0 auto 26px; background: #fff; }
.tt-client-app .tt-client-brief summary { font-size: 13px; }
.tt-client-message-row { display: flex; align-items: flex-end; gap: 9px; margin: 0 0 18px; }
.tt-client-message-row.is-customer { flex-direction: row-reverse; }
.tt-client-chat-avatar { width: 30px; height: 30px; background: #e7f0ff; color: var(--client-blue); font-size: 13px; }
.tt-client-message-row.is-team .tt-client-chat-avatar { background: #20242c; color: #fff; }
.tt-client-app .tt-client-message { max-width: min(75%, 690px); margin: 0; padding: 13px 17px; box-shadow: 0 4px 18px rgba(25, 57, 100, .035); }
.tt-client-app .tt-client-message.is-customer { background: #e8f1ff; }
.tt-client-app .tt-client-message > div { align-items: baseline; flex-wrap: wrap; }
.tt-client-app .tt-client-message strong { font-size: 12px; }
.tt-client-app .tt-client-message time { font-size: 11px; }
.tt-client-app .tt-client-message p { margin-top: 8px; font-size: 14px; line-height: 1.65; }
.tt-client-older { display: block; text-align: center; margin: 0 0 18px; font-size: 13px; }
.tt-client-app .tt-client-compose { flex: none; padding: 18px 24px 20px; background: #fff; }
.tt-client-app .tt-client-compose label { margin-bottom: 8px; font-size: 13px; font-weight: 600; }
.tt-client-app .tt-client-compose textarea { min-height: 82px; max-height: 200px; border-radius: 10px; background: #fbfcff; padding: 12px 14px; font-size: 14px; }
.tt-client-app .tt-client-compose > div { margin-top: 10px; }
.tt-client-app .tt-client-compose > div p { font-size: 12px; }
.tt-client-app .tt-client-compose .tt-client-button { min-height: 40px; padding: 8px 16px; font-size: 14px; }
.tt-client-thread-empty { display: flex; flex: 1; flex-direction: column; align-items: center; justify-content: center; padding: 35px; text-align: center; }
.tt-client-empty-icon { display: grid; place-items: center; width: 72px; height: 72px; border-radius: 22px; background: #eaf2ff; color: var(--client-blue); font-size: 32px; margin-bottom: 20px; }
.tt-client-thread-empty p { max-width: 370px; color: var(--client-muted); }
.tt-client-shell > .tt-client-card { max-width: 720px; margin: 0 auto; padding: 34px; background: linear-gradient(120deg, #f4f0ff, #fff 52%, #fff0e6); box-shadow: 0 20px 55px rgba(25, 57, 100, .055); }
.tt-client-shell > .tt-client-card h1 { font-size: var(--tt-h2-size, 48px); font-weight: 500; letter-spacing: -.05em; line-height: 1.1; margin: 0 0 18px; }
.tt-client-shell > .tt-client-card p:not(.tt-client-eyebrow) { max-width: 540px; }
@media (max-width: 900px) {
  .tt-client-app .tt-client-layout { grid-template-columns: 270px minmax(0, 1fr); }
  .tt-client-app .tt-client-message { max-width: 88%; }
  .tt-client-app .tt-client-messages { padding: 20px; }
  .tt-client-app .tt-client-thread-head, .tt-client-app .tt-client-compose { padding-left: 18px; padding-right: 18px; }
}
@media (max-width: 700px) {
  .tt-client:has(.tt-client-app) { padding: 0 0 64px; }
  .tt-client-app { height: auto; min-height: calc(100svh - 78px); border-radius: 0; border-left: 0; border-right: 0; box-shadow: none; }
  .tt-client-app-top { min-height: 105px; padding: 16px; gap: 12px; }
  .tt-client-app-top h1 { font-size: var(--tt-client-workspace-title-size-mobile, 29px); }
  .tt-client-app-top p:not(.tt-client-eyebrow) { font-size: 12px; max-width: 240px; line-height: 1.4; }
  .tt-client-app-actions { flex-direction: column; align-items: flex-end; gap: 5px; }
  .tt-client-app-actions .tt-client-button { min-height: 34px; padding: 6px 10px; font-size: 12px; }
  .tt-client-app-actions .tt-client-signout { font-size: 12px; }
  .tt-client-app .tt-client-layout { display: block; }
  .tt-client-app .tt-client-sidebar { border-right: 0; min-height: calc(100svh - 185px); }
  .tt-client-app .tt-client-sidebar nav { overflow: visible; }
  .tt-client-app .tt-client-thread { min-height: calc(100svh - 185px); }
  .tt-client-app:not(.is-thread-open) .tt-client-thread { display: none; }
  .tt-client-app.is-thread-open .tt-client-sidebar { display: none; }
  .tt-client-app .tt-client-thread-head { display: block; padding: 12px 16px 14px; }
  .tt-client-back { display: inline-flex; align-items: center; gap: 5px; margin-bottom: 11px; font-size: 13px; }
  .tt-client-thread-heading { padding-right: 90px; }
  .tt-client-thread-status { position: absolute; right: 16px; top: 185px; }
  .tt-client-app .tt-client-messages { min-height: 360px; max-height: 58svh; padding: 18px 12px; }
  .tt-client-app .tt-client-message { max-width: calc(100% - 42px); padding: 11px 13px; }
  .tt-client-app .tt-client-message > div { flex-direction: column; gap: 1px; }
  .tt-client-app .tt-client-compose { padding: 14px 16px 20px; }
  .tt-client-app .tt-client-compose textarea { min-height: 78px; }
  .tt-client-app .tt-client-compose > div { flex-direction: row; align-items: center; }
  .tt-client-app .tt-client-compose > div p { max-width: 52%; font-size: 11px; }
  .tt-client-app .tt-client-compose .tt-client-button { flex: none; }
  .tt-client-shell > .tt-client-card { margin: 24px 16px; padding: 25px; }
  .tt-client-shell > .tt-client-card h1 { font-size: var(--tt-h2-size, 39px); }
}
@media (max-width: 420px) {
  .tt-client-app-top p:not(.tt-client-eyebrow) { display: none; }
  .tt-client-app .tt-client-compose > div p { display: none; }
  .tt-client-app .tt-client-compose > div { justify-content: flex-end; }
}


@media (max-width: 700px) {
  .tt-client-app .tt-client-thread-head { position: relative; }
  .tt-client-app .tt-client-thread-status { top: 53px; }
}


/* The site-wide WhatsApp shortcut covers the inbox composer; the conversation itself is the contact channel here. */
body:has(.tt-client-app) .tt-whatsapp-float { display: none; }
.tt-client:has(.tt-client-team-card) { padding: clamp(44px, 7vw, 96px) 24px; }
.tt-client-team-card {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  max-width: 1080px;
  min-height: 390px;
  margin: 0 auto;
  border: 1px solid var(--client-line);
  border-radius: 24px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 24px 70px rgba(26, 52, 91, .06);
}
.tt-client-team-copy { padding: clamp(30px, 5vw, 58px); }
.tt-client-team-copy .tt-client-eyebrow { margin-bottom: 22px; }
.tt-client-team-copy h1 {
  font-family: var(--tt-heading-family, Manrope, sans-serif);
  font-size: var(--tt-h2-size, 50px);
  font-weight: 500;
  letter-spacing: -.055em;
  line-height: 1.08;
  margin: 0 0 18px;
}
.tt-client-team-copy > p:not(.tt-client-eyebrow) { max-width: 490px; color: var(--client-muted); font-size: var(--tt-copy-lead-size, 18px); }
.tt-client-team-actions { display: flex; align-items: center; gap: 22px; margin-top: 30px; }
.tt-client-team-actions > a:not(.tt-client-button) { font-size: 14px; }
.tt-client-team-art {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 16px;
  padding: 38px;
  background: radial-gradient(circle at 85% 15%, #ffe9de, transparent 45%), radial-gradient(circle at 15% 86%, #e9e3ff, transparent 55%), #f3f7ff;
}
.tt-client-team-art-label { color: #536681; font-size: 11px; letter-spacing: .12em; font-weight: 650; margin-bottom: 10px; }
.tt-client-team-art-chat, .tt-client-team-art-reply { display: block; width: fit-content; max-width: 100%; padding: 15px 20px; border-radius: 16px; font-size: 15px; box-shadow: 0 12px 26px rgba(26, 52, 91, .09); }
.tt-client-team-art-chat { align-self: flex-start; background: #fff; }
.tt-client-team-art-reply { align-self: flex-end; background: var(--client-blue); color: #fff; }
.tt-client-team-art-note { margin-top: 10px; color: var(--client-muted); font-size: 13px; text-align: right; }
@media (max-width: 700px) {
  .tt-client:has(.tt-client-team-card) { padding: 28px 16px 65px; }
  .tt-client-team-card { grid-template-columns: 1fr; min-height: 0; }
  .tt-client-team-copy { padding: 26px; }
  .tt-client-team-copy h1 { font-size: var(--tt-h2-size, 39px); }
  .tt-client-team-copy > p:not(.tt-client-eyebrow) { font-size: 16px; }
  .tt-client-team-actions { flex-wrap: wrap; gap: 14px; }
  .tt-client-team-art { display: none; }
}

body:has(.tt-client-app) .tt-footer-nav-floating { display: none; }


.tt-client-login-card input[type=text] {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: 15px 16px;
  border: 1px solid #cfdbeb;
  border-radius: 12px;
  background: #fff;
  color: var(--client-ink);
  font: inherit;
  font-size: 16px;
}
.tt-client-login-card label:not(:first-of-type) { margin-top: 17px; }
.tt-client-login-card .tt-client-switch { margin: 18px 0 12px; font-size: 14px; }


@media (max-width: 700px) {
  .tt-client-login-card { order: -1; }
}

.tt-client-login-card input[type=password] { display: block; width: 100%; max-width: 100%; min-width: 0; padding: 15px 16px; border: 1px solid #cfdbeb; border-radius: 12px; background: #fff; color: var(--client-ink); font: inherit; font-size: 16px; box-shadow: none; outline-offset: 4px; }
.tt-client-login-options { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 20px; margin-top: 16px; font-size: 14px; }
.tt-client-login-options label { display: inline-flex; align-items: center; gap: 7px; margin: 0; font-size: 14px; font-weight: 400; }
.tt-client-login-options input[type=checkbox] { accent-color: var(--client-blue); }
.tt-client-login-card label[for=tt-client-password] { margin-top: 18px; }

/* Separate registration form */
.tt-client-login-card input[type=text], .tt-client-login-card input[type=tel], .tt-client-login-card select { display:block; width:100%; max-width:100%; min-width:0; padding:15px 16px; border:1px solid #cfdbeb; border-radius:12px; background:#fff; color:var(--client-ink); font:inherit; font-size:16px; box-shadow:none; }
.tt-client-login-card form > label:not(:first-child), .tt-client-project-fields label { margin-top:16px; }
.tt-client-password-help { margin:7px 0 0; color:var(--client-muted); font-size:13px !important; }
.tt-client-project-fields { border-top:1px solid var(--client-line); margin-top:24px; padding-top:20px; }
.tt-client-project-fields h3 { font-size:18px; font-weight:550; margin:0 0 16px; }
.tt-client-project-fields small { color:var(--client-muted); font-weight:400; }
.tt-client-phone-row { display:grid; grid-template-columns:112px minmax(0,1fr); gap:10px; }
.tt-client-claim { margin-top:24px; padding:16px; border:1px solid var(--client-line); border-radius:12px; background:#f8fbff; }
.tt-client-claim span { display:block; color:var(--client-blue); font-size:11px; letter-spacing:.08em; margin-bottom:6px; }
.tt-client-claim strong { font-weight:600; }
.tt-client-claim p { margin:6px 0 0; color:var(--client-muted); font-size:14px; }
@media(max-width:480px){.tt-client-phone-row{grid-template-columns:90px minmax(0,1fr)}}

/* Compact login and registration fields while retaining 16px mobile inputs. */
.tt-client-login-card { padding:clamp(22px,3vw,34px); }
.tt-client-login-card .tt-client-icon { width:46px; height:46px; margin-bottom:16px; font-size:22px; }
.tt-client-login-card h2 { margin-bottom:7px!important; }
.tt-client-login-card>p:not(.tt-client-switch) { margin:0; }
.tt-client-login-card form { margin:18px 0 12px; }
.tt-client-login-card label { margin-bottom:5px; font-size:14px; }
.tt-client-login-card label:not(:first-of-type), .tt-client-login-card label[for=tt-client-password], .tt-client-login-card form>label:not(:first-child), .tt-client-project-fields label { margin-top:11px; }
.tt-client-login-card :is(input[type=email],input[type=text],input[type=tel],input[type=password],select,textarea) { min-height:44px; padding:10px 13px; border-radius:10px; font-size:16px; line-height:1.4; }
.tt-client-login-card textarea { min-height:94px; resize:vertical; }
.tt-client-login-options { margin-top:10px; }
.tt-client-login-card .tt-client-button { min-height:44px; margin-top:14px; padding:9px 16px; }
.tt-client-login-card .tt-client-switch { margin:13px 0 0; }
.tt-client-project-fields { margin-top:18px; padding-top:16px; }
.tt-client-project-fields h3 { margin-bottom:10px; }
.tt-client-register-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.tt-client-register-row>div { min-width:0; }
.tt-client-register-row label:not(:first-of-type) { margin-top:0; }
@media(max-width:700px){.tt-client-register-row{grid-template-columns:1fr;gap:0}.tt-client-register-row>div+div label{margin-top:11px}}

.tt-client-service-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:14px; }
.tt-client-service-row>div { min-width:0; }
@media(max-width:600px){.tt-client-service-row{grid-template-columns:1fr;gap:0}}

/* Client sidebar profile and navigation */
.tt-client-app .tt-client-sidebar { background:#fff; }
.tt-client-sidebar-profile { position:relative; flex:none; padding:0 18px 17px; text-align:center; border-bottom:1px solid var(--client-line); }
.tt-client-profile-cover { position:relative; height:92px; margin:0 -18px; overflow:hidden; background:radial-gradient(circle at 18% 22%,#26446e 0 3px,transparent 4px),radial-gradient(circle at 80% 55%,#26446e 0 4px,transparent 5px),linear-gradient(135deg,#0d1a32,#142745 60%,#101d36); }
.tt-client-profile-cover::before { content:''; position:absolute; inset:-25px; opacity:.18; background-image:linear-gradient(90deg,transparent 49%,#78a5df 50%,transparent 51%),linear-gradient(0deg,transparent 49%,#78a5df 50%,transparent 51%); background-size:54px 54px; transform:rotate(-12deg); }
.tt-client-profile-cover span { position:absolute; border:1px solid rgba(137,177,232,.34); border-radius:50%; }
.tt-client-profile-cover span:nth-child(1) { width:80px;height:80px;left:20px;top:-33px; }
.tt-client-profile-cover span:nth-child(2) { width:38px;height:38px;right:40px;top:24px; }
.tt-client-profile-cover span:nth-child(3) { width:125px;height:125px;right:88px;top:-80px; }
.tt-client-sidebar-profile .tt-client-profile-avatar { position:relative; display:grid;place-items:center; width:76px;height:76px; margin:-35px auto 10px; border:5px solid #fff; border-radius:50%; background:linear-gradient(145deg,#d8ebff,#e7e2ff); color:#006dfa; font-family:var(--tt-heading-family,Manrope,sans-serif); font-size:30px; font-weight:550; box-shadow:0 5px 18px rgba(22,48,86,.12); }
.tt-client-sidebar-profile h2 { margin:0 0 2px!important; color:var(--client-ink); font-size:18px!important; font-weight:600!important; line-height:1.25; letter-spacing:-.025em; overflow-wrap:anywhere; }
.tt-client-sidebar-profile p { margin:0!important; color:var(--client-muted); font-size:var(--tt-copy-label-size,14px)!important; line-height:1.45; }
.tt-client-sidebar-profile small { display:block; margin-top:3px; color:#425979; font-size:var(--tt-copy-label-size,14px); line-height:1.45; overflow-wrap:anywhere; }
.tt-client-app .tt-client-sidebar .tt-client-menu { flex:none; display:grid; gap:2px; padding:12px 12px 14px; overflow:visible; border-bottom:1px solid var(--client-line); }
.tt-client .tt-client-menu a { display:flex; align-items:center; gap:11px; min-height:39px; padding:8px 11px; border-radius:8px; color:#25405f; font-size:14px; font-weight:500; line-height:1.3; text-decoration:none; transition:background .2s,color .2s; }
.tt-client .tt-client-menu a:hover { background:#f0f5fc; color:var(--client-blue); text-decoration:none; }
.tt-client .tt-client-menu a.is-active,.tt-client .tt-client-menu a.is-active:hover { background:var(--client-blue); color:#fff; text-decoration:none; }
.tt-client-menu svg { display:block; flex:0 0 21px; width:21px; height:21px; stroke-width:1.9; }
.tt-client-menu-count { margin-left:auto; min-width:22px; padding:2px 5px; border-radius:999px; background:#edf4ff; color:var(--client-blue); font-size:11px; text-align:center; }
.tt-client .tt-client-menu a.is-active .tt-client-menu-count { background:rgba(255,255,255,.2); color:#fff; }
.tt-client-app .tt-client-sidebar .tt-client-conversations { flex:1; min-height:0; overflow-y:auto; }
.tt-client-app .tt-client-sidebar-head { padding:13px 18px 11px; }
.tt-client-app .tt-client-sidebar-head h2 { font-size:14px; margin:0 0 2px; }
.tt-client-app .tt-client-sidebar-head p { font-size:11px; }
.tt-client-app .tt-client-sidebar-foot { padding:10px 18px; }
.tt-client-profile-panel { flex:1; min-height:0; overflow-y:auto; padding:clamp(22px,4vw,42px); background:#f8fafd; }
.tt-client-profile-panel>.tt-client-eyebrow { margin-bottom:8px; }
.tt-client-profile-panel>h2 { font-size:clamp(26px,3vw,36px)!important; font-weight:500!important; margin:0 0 8px!important; }
.tt-client-profile-panel>p:not(.tt-client-eyebrow) { max-width:540px; margin:0 0 24px; color:var(--client-muted); }
.tt-client-profile-summary { display:flex; align-items:center; gap:14px; max-width:590px; padding:18px; border:1px solid var(--client-line); border-radius:16px; background:#fff; }
.tt-client-profile-summary .tt-client-profile-avatar { display:grid;place-items:center; flex:none; width:56px;height:56px; border-radius:50%; background:#e7f0ff; color:var(--client-blue); font-size:22px; }
.tt-client-profile-summary strong,.tt-client-profile-summary span:not(.tt-client-profile-avatar) { display:block; }
.tt-client-profile-summary strong { font-size:16px; font-weight:600; }
.tt-client-profile-summary div span { color:var(--client-muted); font-size:var(--tt-copy-label-size,14px); line-height:1.45; }
.tt-client-profile-form { max-width:590px; padding:22px; border:1px solid var(--client-line); border-radius:16px; background:#fff; }
.tt-client-profile-form label { margin:0 0 6px; font-size:14px; }
.tt-client-profile-form label:not(:first-of-type) { margin-top:16px; }
.tt-client-profile-form input[type=text] { display:block; width:100%; min-width:0; padding:12px 14px; border:1px solid #cfdbeb; border-radius:10px; background:#fff; color:var(--client-ink); font:inherit; font-size:16px; }
.tt-client-profile-form input[readonly] { background:#f7f9fc; color:#64758a; }
.tt-client-profile-note { margin:8px 0 14px; color:var(--client-muted); font-size:12px!important; }
@media(max-width:700px){.tt-client-sidebar-profile{padding-bottom:18px}.tt-client-profile-cover{height:105px}.tt-client-app .tt-client-sidebar .tt-client-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:12px}.tt-client .tt-client-menu a{min-width:0;font-size:13px}.tt-client .tt-client-menu a span:not(.tt-client-menu-count){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tt-client-app .tt-client-sidebar .tt-client-conversations{overflow:visible}.tt-client-profile-panel{padding:20px 16px 36px}.tt-client-profile-panel .tt-client-back{display:inline-flex;margin-bottom:18px}}
@media(max-width:380px){.tt-client-app .tt-client-sidebar .tt-client-menu{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.tt-client .tt-client-menu a{transition:none}}

.tt-client-profile-avatar img { display:block; width:100%; height:100%; border-radius:50%; object-fit:cover; }
.tt-client-profile-form input[type=file] { display:block; width:100%; max-width:100%; padding:10px; border:1px dashed #b8cce5; border-radius:10px; background:#f8fbff; color:var(--client-muted); font:inherit; font-size:13px; }
.tt-client-profile-form input[type=file]::file-selector-button { margin-right:12px; padding:7px 12px; border:1px solid #c8daef; border-radius:8px; background:#fff; color:var(--client-ink); font:inherit; cursor:pointer; }

/* Portal heading now belongs to the conversation pane. */
.tt-client-app .tt-client-thread .tt-client-app-top { flex:none; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px 20px; min-height:0; padding:15px 24px; background:linear-gradient(105deg,#fff 0%,#f8fbff 68%,#fff8f2 100%); }
.tt-client-workspace-title { min-width:0; }
.tt-client-app .tt-client-workspace-title .tt-client-eyebrow { margin:0 0 3px; font-size:11px; }
.tt-client-app .tt-client-workspace-title h1 { margin:0 0 2px; font-size:clamp(25px,2.3vw,31px); font-weight:500; line-height:1.1; }
.tt-client-app .tt-client-workspace-title>p:not(.tt-client-eyebrow) { margin:0; color:var(--client-muted); font-size:12px; line-height:1.4; }
.tt-client-app .tt-client-chat-context { grid-column:1 / -1; display:flex; align-items:center; gap:11px; min-width:0; margin:3px -24px -15px; padding:11px 24px; border-top:1px solid var(--client-line); background:rgba(255,255,255,.78); }
.tt-client-chat-context>div { display:flex; flex-direction:column; min-width:0; }
.tt-client-chat-context strong { color:var(--client-ink); font-size:14px; font-weight:600; line-height:1.3; }
.tt-client-chat-context>div>span { color:var(--client-muted); font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.tt-client-app .tt-client-chat-context .tt-client-thread-status { position:static; flex:none; margin-left:auto; }
@media(max-width:700px){.tt-client-app .tt-client-thread .tt-client-app-top{padding:13px 16px;gap:8px 12px}.tt-client-app .tt-client-chat-context{margin:2px -16px -13px;padding:10px 16px}.tt-client-chat-context .tt-client-team-avatar{width:36px;height:36px;font-size:17px}.tt-client-app .tt-client-workspace-title h1{font-size:26px}.tt-client-app .tt-client-workspace-title .tt-client-back{margin-bottom:6px}}
@media(max-width:420px){.tt-client-chat-context>div>span{max-width:170px}.tt-client-app .tt-client-app-actions .tt-client-button{font-size:11px;padding:5px 8px}}

@media(max-width:700px){.tt-client-app .tt-client-sidebar,.tt-client-app .tt-client-thread{min-height:calc(100svh - 78px)}}

/* Conversations belong to the dashboard content, not the navigation sidebar. */
.tt-client-dashboard-panel { flex:1; min-height:0; overflow-y:auto; padding:clamp(22px,3vw,36px); background:#f8fafd; }
.tt-client-dashboard-heading { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:20px; }
.tt-client-dashboard-heading .tt-client-eyebrow { margin:0 0 5px; font-size:11px; }
.tt-client-dashboard-heading h2 { margin:0 0 5px!important; font-size:clamp(23px,2.4vw,30px)!important; font-weight:500!important; letter-spacing:-.04em; }
.tt-client-dashboard-heading p:not(.tt-client-eyebrow) { margin:0; color:var(--client-muted); font-size:13px; }
.tt-client-dashboard-count { flex:none; padding:6px 11px; border-radius:999px; background:#eaf2ff; color:var(--client-blue); font-size:12px; font-weight:600; }
.tt-client-dashboard-list { display:grid; gap:10px; }
.tt-client .tt-client-dashboard-item { display:grid; grid-template-columns:48px minmax(0,1fr) auto; align-items:center; gap:15px; min-width:0; padding:18px; border:1px solid var(--client-line); border-radius:15px; background:#fff; color:var(--client-ink); text-decoration:none; box-shadow:0 8px 24px rgba(25,57,100,.025); transition:border-color .2s,box-shadow .2s,transform .2s; }
.tt-client .tt-client-dashboard-item:hover { border-color:#bad6fa; color:var(--client-ink); text-decoration:none; box-shadow:0 13px 29px rgba(25,57,100,.08); transform:translateY(-2px); }
.tt-client-dashboard-item .tt-client-list-avatar { width:48px;height:48px; }
.tt-client-dashboard-item-copy { display:flex; flex-direction:column; gap:3px; min-width:0; }
.tt-client-dashboard-item-copy strong { font-size:16px; font-weight:600; line-height:1.3; }
.tt-client-dashboard-item-copy small { color:var(--client-muted); font-size:12px; }
.tt-client-dashboard-item-copy>span { overflow:hidden; color:#52667f; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.tt-client-dashboard-item-end { display:flex; flex-direction:column; align-items:flex-end; justify-content:space-between; align-self:stretch; gap:12px; color:var(--client-blue); }
.tt-client-dashboard-item-end em { padding:5px 9px; border-radius:999px; background:#eff6ff; color:#3b6ba5; font-size:11px; font-style:normal; white-space:nowrap; }
.tt-client-dashboard-item-end>span { font-size:18px; line-height:1; }
.tt-client-dashboard-empty { display:flex; flex-direction:column; align-items:center; justify-content:center; min-height:300px; padding:30px; border:1px dashed #cbdbee; border-radius:16px; background:#fff; text-align:center; }
.tt-client-dashboard-empty>span { display:grid;place-items:center; width:58px;height:58px; border-radius:17px; background:#eaf2ff; color:var(--client-blue); font-size:27px; }
.tt-client-dashboard-empty h3 { margin:16px 0 5px; font-size:20px; font-weight:550; }
.tt-client-dashboard-empty p { max-width:320px; margin:0 0 18px; color:var(--client-muted); font-size:14px; }
.tt-client-dashboard-pages { display:flex; justify-content:center; gap:8px; margin-top:20px; font-size:14px; }
.tt-client-dashboard-pages .page-numbers { display:grid;place-items:center; min-width:32px;height:32px; padding:0 8px; border:1px solid var(--client-line); border-radius:8px; background:#fff; }
.tt-client-dashboard-pages .page-numbers.current { background:var(--client-blue); color:#fff; border-color:var(--client-blue); }
@media(max-width:700px){.tt-client-app:not(.is-thread-open) .tt-client-sidebar{min-height:0}.tt-client-app:not(.is-thread-open) .tt-client-thread{display:flex;min-height:0;border-top:1px solid var(--client-line)}.tt-client-dashboard-panel{padding:20px 16px 30px}.tt-client-dashboard-item{gap:10px!important;padding:14px!important}.tt-client-dashboard-item-copy strong{font-size:14px}.tt-client-dashboard-item-copy>span{font-size:12px}.tt-client-dashboard-heading{align-items:flex-start}.tt-client-dashboard-count{font-size:11px}}
@media(max-width:450px){.tt-client .tt-client-dashboard-item{grid-template-columns:40px minmax(0,1fr) auto}.tt-client-dashboard-item .tt-client-list-avatar{width:40px;height:40px}.tt-client-dashboard-item-end em{font-size:10px}.tt-client-dashboard-item-end>span{display:none}}
@media(prefers-reduced-motion:reduce){.tt-client .tt-client-dashboard-item{transition:none;transform:none}}

/* Fill the full dashboard sidebar and anchor Sign out at its bottom. */
@media(min-width:701px){.tt-client-app .tt-client-sidebar .tt-client-menu{flex:1;display:flex;flex-direction:column;min-height:0;border-bottom:0}.tt-client-app .tt-client-sidebar .tt-client-menu a:last-child{margin-top:auto}}

/* Keep the conversation inside the portal so the reply composer stays visible. */
@media (min-width: 701px) {
  .tt-client-app .tt-client-layout { align-items: stretch; grid-template-rows: minmax(0, 1fr); }
  .tt-client-app .tt-client-thread { height: 100%; min-height: 0; }
  .tt-client-app .tt-client-messages { min-height: 0; overflow-y: auto; }
}

/* Always-visible project overview within the conversation. */
.tt-client-app .tt-client-brief { width:100%; max-width:none; padding:0; margin:0 0 18px; overflow:hidden; border-color:#d9e5f3; box-shadow:0 8px 24px rgba(25,57,100,.035); }
.tt-client-brief-header { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 15px 10px; background:linear-gradient(105deg,#f0f6ff,#fff 68%,#fff8f2); border-bottom:1px solid #e4ebf5; }
.tt-client-brief-header>div { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:baseline; gap:1px 16px; flex:1; min-width:0; }
.tt-client-brief-kicker { display:block; grid-column:1/-1; margin-bottom:0; color:var(--client-blue); font-size:var(--tt-copy-small-size,13px); font-weight:600; line-height:1.3; letter-spacing:.08em; }
.tt-client .tt-client-app .tt-client-thread .tt-client-brief h2 { margin:0; font-size:var(--tt-h4-size,20px); font-weight:var(--tt-h3-weight,580)!important; line-height:1.2; letter-spacing:-.04em; }
.tt-client-brief-header p { margin:0; color:var(--client-muted); font-size:var(--tt-copy-small-size,13px); line-height:1.4; text-align:right; white-space:nowrap; }
.tt-client-brief-id { flex:none; padding:6px 10px; border:1px solid #d5e5fa; border-radius:999px; background:#fff; color:#456281; font-size:12px; line-height:1.3; white-space:nowrap; }
.tt-client-app .tt-client-brief dl { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:0; padding:9px 12px; }
.tt-client-app .tt-client-brief dl>div { min-width:0; padding:7px 10px; border-radius:9px; background:#f7f9fc; }
.tt-client-app .tt-client-brief dt { color:#667994; font-size:var(--tt-copy-small-size,13px); line-height:1.3; }
.tt-client-app .tt-client-brief dd { margin:2px 0 0; color:var(--client-ink); font-size:var(--tt-copy-compact-size,15px); font-weight:500; line-height:var(--tt-copy-card-line,1.6); overflow-wrap:anywhere; }
@media (max-width:900px) { .tt-client-brief-header>div { grid-template-columns:1fr; } .tt-client-brief-header p { text-align:left; white-space:normal; } }
@media (min-width:701px) and (max-width:1099px) { .tt-client-app .tt-client-brief dl { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (min-width:481px) and (max-width:700px) { .tt-client-app .tt-client-brief dl { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:480px) { .tt-client-brief-header { align-items:flex-start; padding:11px 12px; } .tt-client-app .tt-client-brief dl { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; padding:8px; } .tt-client-app .tt-client-brief dl>div { padding:7px 9px; } .tt-client-brief-id { font-size:12px; } }

/* Chat composer inspired by the compact message bar. */
.tt-client-app .tt-client-compose { position:relative; padding:12px 18px 14px; background:#f8fafd; }
.tt-client-app .tt-client-compose .tt-client-compose-label { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.tt-client-app .tt-client-compose .tt-client-compose-shell { display:flex; align-items:center; gap:8px; min-height:54px; margin:0; padding:5px 7px 5px 10px; border:1px solid #dce5f0; border-radius:29px; background:#fff; box-shadow:0 5px 18px rgba(25,57,100,.07); transition:border-color .2s,box-shadow .2s; }
.tt-client-app .tt-client-compose .tt-client-compose-shell:focus-within { border-color:#94bbf3; box-shadow:0 0 0 3px rgba(0,109,250,.1); }
.tt-client-app .tt-client-compose .tt-client-compose-shell :is(.tt-client-emoji-toggle,.tt-client-compose-send) { display:grid; place-items:center; flex:none; width:38px; height:38px; min-height:38px; padding:0; border:0; border-radius:50%; cursor:pointer; }
.tt-client-app .tt-client-compose .tt-client-emoji-toggle { background:transparent; color:#34445a; }
.tt-client-app .tt-client-compose .tt-client-emoji-toggle:hover { background:#eef4fc; }
.tt-client-app .tt-client-compose .tt-client-compose-send { background:var(--client-blue); color:#fff; }
.tt-client-app .tt-client-compose .tt-client-compose-send:hover { background:#005bd3; }
.tt-client-app .tt-client-compose .tt-client-compose-shell svg { width:22px; height:22px; }
.tt-client-app .tt-client-compose textarea { flex:1; width:100%; min-width:0; min-height:40px; max-height:128px; height:40px; padding:9px 2px; border:0; border-radius:0; background:transparent; box-shadow:none; color:var(--client-ink); font-size:var(--tt-copy-card-size,16px); line-height:1.4; resize:none; overflow-y:auto; outline:none; }
body main .tt-client-app .tt-client-compose textarea:is(:hover,:focus,:focus-visible) { border:0!important; outline:0!important; box-shadow:none!important; background:transparent!important; }
.tt-client-app .tt-client-compose textarea::placeholder { color:#748094; opacity:1; }
.tt-client-app .tt-client-compose .tt-client-compose-note { margin:7px 12px 0; color:var(--client-muted); font-size:var(--tt-copy-small-size,13px); line-height:1.35; }
.tt-client-app .tt-client-compose .tt-client-emoji-picker { position:absolute; z-index:3; bottom:calc(100% - 2px); left:18px; display:flex; flex-wrap:wrap; gap:4px; width:max-content; max-width:calc(100% - 36px); margin:0; padding:7px; border:1px solid var(--client-line); border-radius:14px; background:#fff; box-shadow:0 14px 32px rgba(25,57,100,.14); }
.tt-client-app .tt-client-compose .tt-client-emoji-picker[hidden] { display:none; }
.tt-client-app .tt-client-compose .tt-client-emoji-picker button { width:38px; height:38px; padding:0; border:0; border-radius:9px; background:transparent; font-size:23px; cursor:pointer; }
.tt-client-app .tt-client-compose .tt-client-emoji-picker button:hover { background:#eef4fc; }
@media(max-width:700px) { .tt-client-app .tt-client-compose { padding:10px 12px 12px; } .tt-client-app .tt-client-compose textarea { min-height:40px; } .tt-client-app .tt-client-compose .tt-client-compose-note { display:none; } .tt-client-app .tt-client-compose .tt-client-emoji-picker { left:12px; } }

/* Conversation project overview occupies the right rail on wide screens. */
@media (min-width:1200px) {
  .tt-client-app .tt-client-thread.has-conversation { display:grid; grid-template-columns:minmax(0,1fr) 225px; grid-template-rows:auto minmax(0,1fr) auto; }
  .tt-client-app .has-conversation>.tt-client-app-top { grid-column:1/-1; grid-row:1; }
  .tt-client-app .has-conversation>.tt-client-messages { grid-column:1; grid-row:2; min-width:0; }
  .tt-client-app .has-conversation>.tt-client-compose { grid-column:1; grid-row:3; min-width:0; }
  .tt-client-app .has-conversation>.tt-client-brief { grid-column:2; grid-row:2/4; width:100%; height:100%; max-width:none; min-height:0; margin:0; overflow-y:auto; border:0; border-left:1px solid var(--client-line); border-radius:0; background:#fff; box-shadow:none; }
  .tt-client-app .has-conversation .tt-client-brief-header { display:block; padding:18px 16px 15px; }
  .tt-client-app .has-conversation .tt-client-brief-header>div { display:block; }
  .tt-client-app .has-conversation .tt-client-brief-kicker { margin-bottom:7px; font-size:12px; }
  .tt-client .tt-client-app .has-conversation .tt-client-brief h2 { margin:0 0 7px; font-size:18px; line-height:1.3; }
  .tt-client-app .has-conversation .tt-client-brief-header p { font-size:12px; line-height:1.45; text-align:left; white-space:normal; }
  .tt-client-app .has-conversation .tt-client-brief-id { display:inline-block; margin-top:11px; }
  .tt-client-app .has-conversation .tt-client-brief dl { grid-template-columns:1fr; gap:0; margin:12px; padding:0 11px; border:1px solid #e6ecf4; border-radius:12px; background:#f7f9fc; }
  .tt-client-app .has-conversation .tt-client-brief dl>div { padding:10px 2px; border-bottom:1px solid #e1e8f1; border-radius:0; background:transparent; }
  .tt-client-app .has-conversation .tt-client-brief dl>div:last-child { border-bottom:0; }
  .tt-client-app .has-conversation .tt-client-brief dt { font-size:12px; }
  .tt-client-app .has-conversation .tt-client-brief dd { font-size:14px; line-height:1.45; }
}
@media (max-width:1199px) {
  .tt-client-app .has-conversation>.tt-client-brief { flex:none; width:auto; margin:14px 16px 0; }
}

/* Keep the customer dashboard breadcrumb consistent across views. */
.tt-client-app .tt-client-breadcrumb { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin:0 0 4px; color:var(--client-muted); font-size:12px; line-height:1.35; }
.tt-client-app .tt-client-breadcrumb a { color:var(--client-blue); text-decoration:none; }
.tt-client-app .tt-client-breadcrumb a:hover { text-decoration:underline; }
.tt-client-app .tt-client-breadcrumb [aria-current=page] { color:#405672; font-weight:600; }
