:root {
  --ink: #eef5f2;
  --muted: #8b9a96;
  --muted-2: #63716e;
  --line: rgba(255,255,255,.09);
  --panel: #111a19;
  --panel-2: #0d1413;
  --canvas: #09100f;
  --mint: #9ce5bb;
  --mint-strong: #54d28d;
  --orange: #f0ae73;
  --red: #ff8c8c;
  --shadow: 0 20px 70px rgba(0,0,0,.26);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--canvas);
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: var(--canvas); color: var(--ink); }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.hidden { display: none !important; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.eyebrow { color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; }
.brand-lockup { display: flex; align-items: center; gap: 8px; font-weight: 750; font-size: 18px; letter-spacing: -.04em; }
.brand-muted { color: var(--muted); font-weight: 450; }
.brand-mark { display: grid; width: 28px; height: 28px; place-items: center; border: 1px solid rgba(156,229,187,.45); border-radius: 9px; color: var(--mint); font-size: 17px; transform: rotate(-8deg); }
.language-switcher { display: inline-flex; align-items: center; gap: 2px; padding: 3px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.035); }
.language-switcher button { min-width: 30px; border: 1px solid transparent; border-radius: 5px; padding: 4px 7px; color: var(--muted); background: transparent; font-size: 10px; font-weight: 750; line-height: 1; cursor: pointer; }
.language-switcher button:hover { color: var(--ink); border-color: rgba(156,229,187,.3); }
.language-switcher button.is-active { color: #07130e; background: var(--mint); border-color: var(--mint); box-shadow: 0 0 0 1px rgba(156,229,187,.18); }
.login-view { min-height: 100svh; height: 100svh; display: grid; grid-template-columns: minmax(0, 1fr) minmax(520px, 1fr); overflow: hidden; }
.login-art { position: relative; overflow: hidden; min-height: 100svh; padding: clamp(112px, 20vh, 190px) clamp(32px, 6vw, 96px) 40px; background: #0b1614; display: flex; align-items: flex-start; }
.art-grid { position: absolute; inset: 0; opacity: .32; background-image: linear-gradient(rgba(156,229,187,.08) 1px, transparent 1px), linear-gradient(90deg, rgba(156,229,187,.08) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to bottom, transparent, black 35%, black 80%, transparent); }
.orb { position: absolute; border-radius: 50%; filter: blur(2px); opacity: .55; pointer-events: none; }
.orb-one { width: 48vw; height: 48vw; right: -15%; top: 7%; background: radial-gradient(circle at 35% 35%, rgba(156,229,187,.3), transparent 63%); }
.orb-two { width: 30vw; height: 30vw; left: -15%; bottom: -10%; background: radial-gradient(circle, rgba(240,174,115,.16), transparent 68%); }
.art-copy { position: relative; max-width: 600px; }
.art-copy h1 { max-width: 560px; margin: 18px 0 16px; font-size: clamp(46px, 5.5vw, 78px); line-height: .95; letter-spacing: -.075em; font-weight: 570; }
.art-copy h1 em { color: var(--mint); font-style: normal; }
.art-copy p { max-width: 410px; color: var(--muted); font-size: 17px; line-height: 1.6; }
.signal-row { display: inline-flex; gap: 9px; align-items: center; margin-top: 46px; color: var(--muted); font-size: 12px; letter-spacing: .02em; }
.signal-dot, .context-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--mint-strong); box-shadow: 0 0 0 5px rgba(84,210,141,.12); }
.login-panel { position: relative; align-self: stretch; width: min(100%, 680px); margin: 0 auto; padding: 32px clamp(30px, 4vw, 72px) 24px; display: flex; flex-direction: column; justify-content: center; }
.login-panel > .language-switcher { position: absolute; top: 26px; right: clamp(30px, 4vw, 72px); }
.login-heading { margin: 32px 0 18px; }
.login-heading h2 { margin: 10px 0 7px; font-size: clamp(31px, 3vw, 40px); letter-spacing: -.06em; font-weight: 600; }
.login-heading p, .login-footnote { color: var(--muted); font-size: 14px; }
.stack-form { display: grid; gap: 13px; }
.stack-form label { display: grid; gap: 8px; color: #b8c4c0; font-size: 12px; font-weight: 650; }
.stack-form input, .search-field, .advanced-filters select { width: 100%; border: 1px solid var(--line); border-radius: 9px; background: rgba(255,255,255,.035); color: var(--ink); outline: none; }
.stack-form input { padding: 11px 13px; font-size: 13px; }
.stack-form input:focus, .search-field:focus-within, .advanced-filters select:focus { border-color: rgba(156,229,187,.6); box-shadow: 0 0 0 3px rgba(156,229,187,.08); }
.password-wrap { position: relative; }
.password-wrap input { padding-right: 58px; }
.plain-button { border: 0; padding: 0; background: none; color: var(--muted); font-size: 12px; }
.password-wrap .plain-button { position: absolute; top: 50%; right: 14px; transform: translateY(-50%); }
.primary-button, .secondary-button, .small-button { border: 0; border-radius: 9px; font-weight: 750; transition: .18s ease; }
.primary-button { padding: 12px 16px; color: #07130e; background: var(--mint); }
.primary-button:hover { background: #b9f4d0; transform: translateY(-1px); }
.secondary-button { padding: 9px 12px; color: var(--mint); background: rgba(156,229,187,.1); border: 1px solid rgba(156,229,187,.18); }
.danger-button { color: var(--red); background: rgba(255,140,140,.08); border-color: rgba(255,140,140,.24); }
.danger-button:hover { background: rgba(255,140,140,.15); border-color: rgba(255,140,140,.4); }
.danger-button:disabled { opacity: .55; cursor: wait; }
.small-button { padding: 5px 10px; color: var(--mint); background: rgba(156,229,187,.1); font-size: 11px; }
.full-width { width: 100%; display: flex; justify-content: space-between; align-items: center; margin-top: 6px; }
.form-error { min-height: 17px; margin: 0; color: var(--red); font-size: 12px; }
.auth-provider-row { display: grid; }
.oauth-button { display: flex; align-items: center; justify-content: center; gap: 9px; width: 100%; min-height: 40px; border: 1px solid var(--line); border-radius: 9px; color: var(--ink); background: rgba(255,255,255,.035); font-size: 12px; font-weight: 700; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.oauth-button:hover:not(:disabled) { border-color: rgba(156,229,187,.42); background: rgba(156,229,187,.08); transform: translateY(-1px); }
.oauth-button:disabled { cursor: not-allowed; opacity: .52; }
.oauth-button.is-loading { cursor: wait; }
.oauth-button.is-loading .oauth-icon { animation: oauth-pulse .8s ease-in-out infinite alternate; }
.oauth-icon { display: grid; width: 20px; height: 20px; place-items: center; border-radius: 50%; color: #17231f; background: var(--mint); font-size: 11px; font-weight: 850; }
@keyframes oauth-pulse { from { opacity: .45; } to { opacity: 1; } }
.auth-divider { display: flex; align-items: center; gap: 10px; margin: 13px 0 1px; color: var(--muted-2); font-size: 10px; text-transform: uppercase; letter-spacing: .12em; }
.auth-divider::before, .auth-divider::after { content: ''; height: 1px; flex: 1; background: var(--line); }
.auth-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.auth-switch { display: flex; align-items: center; justify-content: center; gap: 6px; margin-top: 16px; color: var(--muted); font-size: 12px; }
.auth-switch .plain-button { color: var(--mint); font-weight: 750; }
.auth-switch .plain-button:hover { color: #c1f5d3; }
.login-footnote { margin-top: 24px; line-height: 1.6; }
.verification-view { display: grid; gap: 12px; padding: 20px 0 4px; }
.verification-icon { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid rgba(156,229,187,.35); border-radius: 12px; color: var(--mint); background: rgba(156,229,187,.09); font-size: 21px; font-weight: 800; }
.verification-view h3 { margin: 3px 0 0; color: var(--ink); font-size: 21px; letter-spacing: -.04em; }
.verification-view p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.verification-view strong { color: var(--ink); font-weight: 650; overflow-wrap: anywhere; }
.verification-actions { display: flex; align-items: center; gap: 14px; margin-top: 4px; }
.form-message { min-height: 17px; color: var(--mint) !important; }
.desk-view { min-height: 100vh; background: var(--canvas); }
.topbar { height: 68px; display: grid; grid-template-columns: 230px minmax(0, 1fr) auto auto; align-items: center; padding: 0 22px; border-bottom: 1px solid var(--line); background: rgba(9,16,15,.86); }
.topbar-context { display: flex; align-items: center; gap: 12px; color: #b7c6c1; font-size: 12px; }
.slash { color: var(--muted-2); }
.topbar-actions, .user-chip { display: flex; align-items: center; gap: 14px; }
.icon-button, .round-button { display: grid; place-items: center; border: 1px solid var(--line); border-radius: 9px; width: 34px; height: 34px; background: transparent; color: var(--muted); }
.icon-button:hover, .round-button:hover { color: var(--ink); border-color: rgba(156,229,187,.35); }
.avatar { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 50%; background: #33584d; color: var(--mint); font-size: 11px; font-weight: 800; }
.user-chip { padding: 5px 5px 5px 7px; border: 1px solid var(--line); border-radius: 10px; color: #b4c0bd; font-size: 12px; }
.desk-grid { display: grid; grid-template-columns: 330px minmax(420px, 1fr) 280px; height: calc(100vh - 68px); }
.inbox-panel, .profile-panel { background: var(--panel-2); }
.inbox-panel { display: flex; min-height: 0; flex-direction: column; border-right: 1px solid var(--line); }
.inbox-heading { display: flex; justify-content: space-between; padding: 26px 20px 16px; }
.inbox-heading h1 { margin: 8px 0 0; font-size: 22px; letter-spacing: -.04em; font-weight: 600; }
.queue-tabs { display: flex; gap: 17px; padding: 0 20px; border-bottom: 1px solid var(--line); }
.queue-tab { border: 0; padding: 10px 0 13px; color: var(--muted); background: none; font-size: 12px; font-weight: 700; border-bottom: 2px solid transparent; }
.queue-tab span { margin-left: 4px; color: var(--muted-2); }
.queue-tab.is-active { color: var(--mint); border-color: var(--mint); }
.filter-row { display: flex; gap: 8px; padding: 16px 14px 11px; }
.search-field { display: flex; gap: 8px; align-items: center; padding: 0 11px; }
.search-field span { color: var(--muted); font-size: 20px; }
.search-field input { min-width: 0; flex: 1; padding: 10px 0; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 12px; }
.filter-button { width: 39px; border: 1px solid var(--line); border-radius: 10px; color: var(--muted); background: transparent; }
.advanced-filters { display: flex; gap: 7px; padding: 0 14px 12px; }
.advanced-filters select { padding: 8px; font-size: 11px; }
.conversation-list { width: 100%; min-width: 0; min-height: 0; flex: 1; overflow: auto; }
.conversation-card { display: grid; width: 100%; min-width: 0; max-width: 100%; margin: 0; grid-template-columns: 36px minmax(0, 1fr) auto; align-items: start; gap: 10px; padding: 15px 18px; border: 0; border-left: 2px solid transparent; border-bottom: 1px solid rgba(255,255,255,.045); border-radius: 0; color: inherit; background: transparent; text-align: left; appearance: none; -webkit-appearance: none; transition: background .18s, border-color .18s; }
.conversation-card:hover { background: rgba(255,255,255,.04); }
.conversation-card.is-selected { border-left-color: var(--mint); background: rgba(156,229,187,.08); }
.conversation-card:focus-visible { outline: 2px solid rgba(156,229,187,.72); outline-offset: -2px; }
.conversation-card > * { min-width: 0; }
.conversation-avatar { display: grid; width: 34px; height: 34px; place-items: center; border-radius: 50%; color: var(--mint); background: #1b3932; font-size: 12px; font-weight: 750; }
.card-main { min-width: 0; }
.card-line { display: flex; min-width: 0; align-items: baseline; justify-content: space-between; gap: 8px; }
.card-name { min-width: 0; overflow: hidden; color: #dce7e3; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 700; }
.card-time { flex: none; color: var(--muted-2); font-size: 10px; }
.card-preview { min-width: 0; overflow: hidden; margin: 5px 0 7px; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.card-foot { display: flex; min-width: 0; align-items: center; gap: 7px; overflow: hidden; }
.card-channel, .priority-dot { color: var(--muted-2); font-size: 9px; letter-spacing: .08em; text-transform: uppercase; }
.priority-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--muted-2); }
.priority-dot.urgent, .priority-dot.high { background: var(--orange); }
.unread-dot { width: 6px; height: 6px; margin-top: 5px; border-radius: 50%; background: var(--mint); }
.inbox-footer { display: flex; justify-content: space-between; padding: 13px 18px; border-top: 1px solid var(--line); color: var(--muted-2); font-size: 10px; }
.conversation-panel { position: relative; display: flex; min-width: 0; min-height: 0; flex-direction: column; background: #0d1514; }
.empty-detail { align-self: center; margin: auto; max-width: 270px; color: var(--muted); text-align: center; }
.empty-icon { display: grid; width: 50px; height: 50px; margin: 0 auto 22px; place-items: center; border: 1px solid rgba(156,229,187,.2); border-radius: 16px; color: var(--mint); background: rgba(156,229,187,.05); font-size: 23px; }
.empty-detail h2 { margin: 0 0 10px; color: var(--ink); font-size: 18px; letter-spacing: -.04em; }
.empty-detail p { margin: 0; font-size: 12px; line-height: 1.6; }
.conversation-detail { display: flex; min-height: 0; flex: 1; flex-direction: column; overflow: hidden; }
.detail-header { display: flex; flex: 0 0 auto; min-height: 0; justify-content: space-between; padding: 16px 28px 12px; border-bottom: 1px solid var(--line); }
.detail-title { display: flex; align-items: center; gap: 13px; }
.channel-badge { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 11px; color: var(--mint); background: rgba(156,229,187,.1); font-size: 9px; font-weight: 800; }
.detail-header h2 { margin: 6px 0 4px; color: #eef5f2; font-size: 20px; letter-spacing: -.045em; font-weight: 600; }
.detail-meta { display: flex; gap: 8px; color: var(--muted); font-size: 11px; }
.meta-separator { color: var(--muted-2); }
.status-strip { display: flex; flex: 0 0 auto; justify-content: space-between; align-items: center; padding: 8px 28px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.018); }
.status-pill { display: inline-block; padding: 4px 7px; border-radius: 5px; color: var(--mint); background: rgba(156,229,187,.11); font-size: 9px; font-weight: 800; letter-spacing: .1em; }
.mode-label { margin-left: 8px; color: var(--muted); font-size: 11px; }
.assignment { display: flex; align-items: center; gap: 8px; color: var(--ink); font-size: 11px; }
.assignment-label { color: var(--muted); }
.message-scroller { min-height: 0; flex: 1 1 auto; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; padding: 18px 28px 22px; }
.message-row { display: flex; gap: 10px; margin: 13px 0; }
.message-row > div { width: fit-content; max-width: min(78%, 640px); min-width: 0; }
.message-row.customer { justify-content: flex-start; }
.message-row.agent, .message-row.assistant { justify-content: flex-end; }
.message-row.note { justify-content: center; }
.message-bubble { max-width: 100%; min-width: 88px; padding: 10px 13px; border-radius: 13px; color: #dce7e3; background: #172321; font-size: 12px; line-height: 1.55; white-space: pre-wrap; overflow-wrap: anywhere; }
.message-row.agent .message-bubble, .message-row.assistant .message-bubble { border-bottom-right-radius: 4px; color: #102017; background: var(--mint); }
.message-row.note > div { max-width: min(84%, 700px); }
.message-row.note .message-bubble { max-width: 100%; border: 1px dashed rgba(240,174,115,.35); border-radius: 9px; color: #f0c8a0; background: rgba(240,174,115,.07); }
.message-meta { margin: 0 4px 5px; color: var(--muted-2); font-size: 9px; }
.message-row.agent .message-meta, .message-row.assistant .message-meta { text-align: right; }
.message-actions { display: flex; margin: 7px 4px 0; }
.message-row.agent .message-actions, .message-row.assistant .message-actions { justify-content: flex-end; }
.message-retry-button { border: 1px solid rgba(240,174,115,.42); border-radius: 7px; padding: 5px 8px; color: #f5c797; background: rgba(240,174,115,.1); font-size: 10px; font-weight: 750; }
.message-retry-button:hover { border-color: rgba(240,174,115,.72); background: rgba(240,174,115,.18); }
.message-retry-button:disabled { opacity: .58; cursor: wait; }
.composer-wrap { flex: 0 0 auto; padding: 11px 28px 16px; border-top: 1px solid var(--line); background: #0c1413; }
.composer-mode { display: flex; align-items: center; gap: 15px; margin-bottom: 9px; }
.composer-tab { border: 0; padding: 0; color: var(--muted); background: transparent; font-size: 11px; font-weight: 750; }
.composer-tab.is-active { color: var(--mint); }
.composer-hint { margin-left: auto; color: var(--muted-2); font-size: 10px; }
.composer { padding: 12px 13px 9px; border: 1px solid var(--line); border-radius: 11px; background: #111c1a; }
.composer:focus-within { border-color: rgba(156,229,187,.4); }
.composer-tools { display: flex; justify-content: flex-end; margin-bottom: 8px; }
.quick-reply-select { max-width: 260px; border: 1px solid var(--line); border-radius: 7px; padding: 7px 9px; color: var(--muted); background: #16221f; font: inherit; font-size: 10px; }
.quick-reply-select:focus { outline: 0; border-color: rgba(156,229,187,.5); color: var(--ink); }
.ai-draft-status { margin: 8px 0 2px; color: var(--mint); font-size: 10px; line-height: 1.4; }
.ai-draft-status.needs-review { color: #f1c68b; }
.ai-draft-button { margin-right: 6px; }
.composer textarea { width: 100%; min-height: 66px; max-height: 150px; resize: vertical; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 12px; line-height: 1.5; }
.composer-bottom { display: flex; align-items: center; justify-content: space-between; color: var(--muted-2); font-size: 10px; }
.profile-panel { min-height: 0; overflow: auto; padding: 27px 22px; border-left: 1px solid var(--line); }
.profile-heading { display: flex; justify-content: space-between; }
.profile-content { padding-top: 25px; }
.profile-identity { display: flex; align-items: center; gap: 11px; padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.profile-avatar { display: grid; width: 46px; height: 46px; place-items: center; border-radius: 14px; color: var(--mint); background: #23463b; font-size: 16px; font-weight: 750; }
.profile-name { color: var(--ink); font-size: 15px; font-weight: 700; }
.profile-sub { margin-top: 5px; color: var(--muted); font-size: 11px; }
.profile-block { padding: 19px 0; border-bottom: 1px solid var(--line); }
.profile-block h3 { margin: 0 0 13px; color: var(--muted); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.profile-field { display: flex; justify-content: space-between; gap: 10px; margin: 10px 0; color: var(--muted); font-size: 11px; }
.profile-field strong { max-width: 150px; overflow: hidden; color: #cbd7d3; text-align: right; text-overflow: ellipsis; white-space: nowrap; font-weight: 550; }
.profile-tags { display: flex; flex-wrap: wrap; gap: 5px; }
.profile-tag { display: inline-flex; align-items: center; gap: 5px; padding: 5px 7px; border: 1px solid transparent; border-radius: 6px; color: var(--mint); background: rgba(156,229,187,.09); font-size: 10px; }
.profile-tag:hover { border-color: rgba(156,229,187,.22); background: rgba(156,229,187,.14); }
.profile-tag span { color: var(--muted-2); font-size: 12px; }
.profile-tag-form { display: grid; grid-template-columns: minmax(0, 1fr) 30px; gap: 6px; margin-top: 10px; }
.profile-tag-form input { min-width: 0; padding: 8px 9px; border: 1px solid var(--line); border-radius: 7px; outline: 0; color: var(--ink); background: rgba(255,255,255,.03); font-size: 11px; }
.profile-tag-form input:focus { border-color: rgba(156,229,187,.5); }
.profile-tag-form button { border: 1px solid rgba(156,229,187,.2); border-radius: 7px; color: var(--mint); background: rgba(156,229,187,.09); font-size: 16px; }
.profile-placeholder { padding: 17px 0; color: var(--muted-2); font-size: 12px; line-height: 1.6; }
.loading-state { padding: 38px 20px; color: var(--muted); text-align: center; font-size: 12px; }
.loading-dots { color: var(--mint); }
.toast-region { position: fixed; right: 20px; bottom: 20px; z-index: 10; display: grid; gap: 8px; }
.toast { max-width: 320px; padding: 12px 14px; border: 1px solid rgba(156,229,187,.25); border-radius: 9px; color: var(--ink); background: #16231f; box-shadow: var(--shadow); font-size: 12px; }
.toast.error { border-color: rgba(255,140,140,.3); color: #ffd1d1; }
.mobile-only { display: none; }
@media (max-width: 1120px) { .desk-grid { grid-template-columns: 300px minmax(420px, 1fr); } .profile-panel { display: none; } }
@media (max-width: 760px) { .login-view { height: auto; min-height: 100svh; display: block; overflow: visible; } .login-art { min-height: 148px; padding: 16px 24px 14px; align-items: flex-end; } .art-copy h1 { margin: 7px 0 6px; font-size: 30px; line-height: .94; } .art-copy p { margin: 5px 0 0; font-size: 11px; line-height: 1.3; } .signal-row { margin-top: 8px; font-size: 10px; } .login-panel { width: auto; min-height: auto; padding: 16px 24px 12px; display: block; } .login-panel > .language-switcher { top: 16px; right: 24px; } .login-heading { margin: 23px 0 10px; } .login-heading h2 { font-size: 25px; } .login-heading p, .login-footnote { font-size: 12px; } .auth-form-grid { grid-template-columns: 1fr; gap: 6px; } .stack-form { gap: 6px; } .stack-form label { gap: 3px; font-size: 10px; } .stack-form input { padding: 6px 10px; font-size: 12px; } .primary-button { padding: 9px 13px; } .auth-divider { margin-top: 7px; margin-bottom: 0; } .oauth-button { min-height: 34px; } .auth-switch { margin-top: 8px; } .login-footnote { margin-top: 10px; } .verification-view { gap: 8px; padding-top: 10px; } .verification-actions { align-items: flex-start; flex-direction: column; gap: 8px; } .topbar { grid-template-columns: 1fr auto; padding: 0 14px; } .topbar-context { display: none; } .topbar-actions { gap: 5px; } .topbar-actions .icon-button { display: none; } .topbar-actions .language-switcher { display: inline-flex; } .language-switcher button { padding-left: 5px; padding-right: 5px; } .user-chip { gap: 7px; } .user-chip > span:not(.avatar) { display: none; } .desk-grid { display: block; height: calc(100vh - 68px); } .inbox-panel { height: 100%; } .conversation-panel { position: fixed; inset: 68px 0 0; z-index: 3; } .profile-panel { display: none; } .detail-header, .status-strip, .message-scroller, .composer-wrap { padding-left: 18px; padding-right: 18px; } .detail-header { padding-top: 12px; padding-bottom: 10px; } .status-strip { padding-top: 7px; padding-bottom: 7px; } .message-scroller { padding-top: 14px; padding-bottom: 16px; } .message-row > div { max-width: 86%; } .composer-wrap { padding-top: 9px; padding-bottom: 12px; } .composer textarea { min-height: 58px; max-height: 120px; } .ai-summary-panel { margin-left: 18px; margin-right: 18px; } .mobile-only { display: grid; } }
@media (max-width: 760px) and (max-height: 760px) { .login-art { min-height: 122px; padding-top: 12px; padding-bottom: 10px; } .art-copy h1 { margin: 5px 0 4px; font-size: 27px; } .art-copy p { margin-top: 3px; font-size: 10px; line-height: 1.2; } .signal-row { margin-top: 6px; font-size: 9px; } .login-panel { padding-top: 12px; padding-bottom: 8px; } .login-panel > .language-switcher { top: 12px; } .login-heading { margin-top: 18px; margin-bottom: 7px; } .login-heading h2 { font-size: 23px; margin-top: 7px; margin-bottom: 5px; } .login-heading p, .login-footnote { font-size: 11px; } .auth-form-grid, .stack-form { gap: 4px; } .stack-form label { gap: 2px; } .stack-form input { padding-top: 5px; padding-bottom: 5px; } .primary-button { padding-top: 8px; padding-bottom: 8px; } .auth-divider { margin-top: 5px; } .oauth-button { min-height: 32px; } .auth-switch { margin-top: 6px; } .login-footnote { margin-top: 7px; } }

/* Conversation actions and assignment dialog */
.detail-actions { display: flex; align-items: center; gap: 8px; position: relative; }
.summary-button { padding: 7px 10px; font-size: 10px; }
.ai-summary-panel { margin: 12px 28px 0; padding: 12px 14px; border: 1px solid rgba(156,229,187,.18); border-radius: 10px; background: rgba(156,229,187,.05); }
.ai-summary-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.ai-summary-heading > span { display: grid; gap: 3px; }
.ai-summary-heading strong { color: var(--ink); font-size: 11px; }
.ai-summary-content, #ai-summary-content { color: #cbd7d3; font-size: 11px; line-height: 1.55; white-space: pre-wrap; }
#ai-summary-content { margin-top: 10px; }
.ai-summary-history { margin-top: 11px; border-top: 1px solid rgba(156,229,187,.12); padding-top: 9px; }
.ai-summary-history summary { cursor: pointer; color: var(--muted); font-size: 10px; }
.ai-summary-history-item { margin-top: 9px; padding: 8px 9px; border: 1px solid rgba(156,229,187,.1); border-radius: 7px; color: #aebcb7; font-size: 10px; line-height: 1.5; white-space: pre-wrap; }
.ai-summary-history-meta { margin-bottom: 4px; color: var(--muted-2); font-size: 9px; letter-spacing: .04em; text-transform: uppercase; }
.action-menu { position: absolute; top: 41px; right: 0; z-index: 4; min-width: 190px; padding: 6px; border: 1px solid var(--line); border-radius: 10px; background: #15211e; box-shadow: var(--shadow); }
.action-menu button { display: block; width: 100%; padding: 9px 10px; border: 0; border-radius: 6px; color: #cbd7d3; background: transparent; text-align: left; font-size: 11px; }
.action-menu button:hover { color: var(--mint); background: rgba(156,229,187,.09); }
.action-menu button.is-danger:hover { color: var(--red); background: rgba(255,140,140,.08); }
.card-assignee { max-width: 92px; overflow: hidden; color: var(--muted-2); text-overflow: ellipsis; white-space: nowrap; font-size: 9px; }
.modal-backdrop { position: fixed; inset: 0; z-index: 20; display: grid; place-items: center; padding: 20px; background: rgba(3,8,7,.72); backdrop-filter: blur(8px); }
.modal-card { width: min(100%, 430px); padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: #111c1a; box-shadow: var(--shadow); }
.modal-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.modal-heading h2 { margin: 8px 0 0; color: var(--ink); font-size: 20px; letter-spacing: -.04em; }
.modal-copy { margin: 14px 0 20px; color: var(--muted); font-size: 12px; line-height: 1.55; }
.modal-label { display: grid; gap: 8px; color: #b8c4c0; font-size: 12px; font-weight: 650; }
.modal-label select { width: 100%; padding: 12px; border: 1px solid var(--line); border-radius: 9px; outline: 0; color: var(--ink); background: rgba(255,255,255,.035); font-size: 13px; }
.modal-label select:focus { border-color: rgba(156,229,187,.6); box-shadow: 0 0 0 3px rgba(156,229,187,.08); }
.modal-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 18px; }
@media (max-width: 760px) { .action-menu { right: -2px; } .modal-backdrop { align-items: end; padding: 12px; } .modal-card { border-radius: 14px 14px 10px 10px; } }
@media (max-width: 760px) {
  .conversation-panel { display: none; }
  .conversation-panel.mobile-open { display: flex; }
  .detail-title { min-width: 0; }
  .detail-title .mobile-only { flex: none; }
}

/* Management workspace */
.product-nav { display: flex; align-items: center; gap: 4px; margin-left: auto; margin-right: 18px; }
.nav-button { border: 1px solid transparent; border-radius: 7px; padding: 7px 11px; color: var(--muted); background: transparent; font-size: 11px; font-weight: 750; }
.nav-button:hover, .nav-button.is-active { border-color: var(--line); color: var(--ink); background: rgba(255,255,255,.045); }
.admin-view { display: grid; height: calc(100vh - 68px); min-height: 0; grid-template-columns: 252px minmax(0, 1fr); background: #0c1413; }
.admin-sidebar { min-width: 0; padding: 27px 16px 22px; border-right: 1px solid var(--line); background: linear-gradient(180deg, rgba(255,255,255,.018), transparent 45%); }
.admin-sidebar-heading { padding: 0 10px; }
.admin-sidebar-heading h2 { margin: 8px 0 8px; color: var(--ink); font-size: 22px; letter-spacing: -.05em; }
.admin-sidebar-heading p { max-width: 195px; margin: 0 0 25px; color: var(--muted-2); font-size: 10px; line-height: 1.55; }
.admin-nav { display: grid; gap: 18px; }
.admin-nav-group { min-width: 0; }
.admin-nav-group-label { margin: 0 10px 7px; color: var(--muted-2); font-size: 9px; font-weight: 800; letter-spacing: .14em; line-height: 1.2; text-transform: uppercase; }
.admin-nav-group-items { display: grid; gap: 3px; }
.admin-nav button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 38px; border: 1px solid transparent; border-radius: 8px; padding: 8px 10px; color: var(--muted); background: transparent; text-align: left; font-size: 11px; font-weight: 700; transition: border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease; }
.admin-nav button:hover { border-color: rgba(156,229,187,.16); color: var(--ink); background: rgba(255,255,255,.045); transform: translateX(2px); }
.admin-nav button.is-active { border-color: rgba(156,229,187,.28); color: var(--mint); background: rgba(156,229,187,.1); box-shadow: inset 3px 0 0 var(--mint); }
.admin-nav .nav-icon { display: grid; width: 19px; height: 19px; flex: 0 0 19px; place-items: center; color: var(--muted-2); }
.admin-nav .nav-icon-svg { display: block; width: 17px; height: 17px; }
.admin-nav button:hover .nav-icon, .admin-nav button.is-active .nav-icon { color: var(--mint); }
.admin-nav .nav-label { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-sidebar-note { margin: 31px 10px 0; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.07); color: var(--muted-2); font-size: 10px; line-height: 1.6; }
.admin-main { min-width: 0; min-height: 0; overflow: auto; }
.admin-content { width: 100%; max-width: 1180px; min-width: 0; margin: 0 auto; padding: 32px 38px 48px; }
.admin-page-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 26px; }
.admin-page-heading h1 { margin: 7px 0 5px; color: var(--ink); font-size: 25px; letter-spacing: -.055em; }
.admin-page-heading p { margin: 0; color: var(--muted); font-size: 12px; }
.admin-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.admin-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(245px, 1fr)); gap: 13px; }
.admin-card { border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }
.admin-card-interactive { cursor: pointer; }
.admin-card-interactive:hover { border-color: rgba(156,229,187,.3); background: rgba(156,229,187,.04); }
.admin-card-body { padding: 17px; }
.admin-card h3 { margin: 0 0 7px; color: var(--ink); font-size: 14px; letter-spacing: -.02em; }
.admin-card p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.55; }
.admin-card-meta { display: flex; align-items: center; gap: 7px; margin-top: 15px; color: var(--muted-2); font-size: 10px; }
.admin-card-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 17px; border-top: 1px solid var(--line); }
.admin-table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: 12px; }
.admin-table { width: 100%; border-collapse: collapse; min-width: 680px; }
.admin-table th { padding: 11px 14px; color: var(--muted-2); background: rgba(255,255,255,.025); font-size: 9px; letter-spacing: .1em; text-align: left; text-transform: uppercase; }
.admin-table td { padding: 13px 14px; border-top: 1px solid var(--line); color: #cbd7d3; font-size: 11px; vertical-align: middle; }
.admin-table td strong { color: var(--ink); font-weight: 650; }
.admin-table-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.admin-empty { padding: 44px 20px; border: 1px dashed var(--line); border-radius: 12px; color: var(--muted); text-align: center; font-size: 12px; }
.admin-section { margin-top: 22px; }
.admin-section-heading { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 11px; }
.admin-section-heading h2 { margin: 0; color: var(--ink); font-size: 14px; }
.status-badge { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border-radius: 5px; color: var(--muted); background: rgba(255,255,255,.06); font-size: 9px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; }
.status-badge.active, .status-badge.published { color: var(--mint); background: rgba(156,229,187,.11); }
.status-badge.paused, .status-badge.draft { color: var(--orange); background: rgba(240,174,115,.1); }
.status-badge.disabled, .status-badge.error { color: #f39a9a; background: rgba(243,154,154,.1); }
.status-badge.passed { color: var(--mint); background: rgba(156,229,187,.11); }
.status-badge.failed, .status-badge.not-tested { color: var(--orange); background: rgba(240,174,115,.1); }
.status-badge.healthy { color: var(--mint); background: rgba(156,229,187,.11); }
.status-badge.degraded { color: var(--orange); background: rgba(240,174,115,.1); }
.status-badge.critical { color: #f39a9a; background: rgba(243,154,154,.1); }
.inline-form { display: grid; gap: 11px; margin-bottom: 18px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.02); }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.inline-form label, .admin-modal-card label { display: grid; gap: 6px; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.inline-form input, .inline-form textarea, .inline-form select, .admin-modal-card input, .admin-modal-card textarea, .admin-modal-card select { width: 100%; border: 1px solid var(--line); border-radius: 7px; padding: 10px 11px; outline: 0; color: var(--ink); background: #111c1a; font: inherit; font-size: 12px; letter-spacing: normal; text-transform: none; }
.inline-form textarea, .admin-modal-card textarea { min-height: 105px; resize: vertical; line-height: 1.5; }
.inline-form input:focus, .inline-form textarea:focus, .inline-form select:focus, .admin-modal-card input:focus, .admin-modal-card textarea:focus, .admin-modal-card select:focus { border-color: rgba(156,229,187,.45); }
.checkbox-row { display: flex !important; grid-template-columns: none; align-items: center; gap: 8px !important; color: var(--muted) !important; text-transform: none !important; letter-spacing: normal !important; }
.checkbox-row input { width: auto; accent-color: var(--mint); }
.modal-card.admin-modal-card { width: min(620px, calc(100vw - 30px)); max-height: calc(100vh - 40px); overflow: auto; }
.admin-modal-card .modal-heading { margin-bottom: 19px; }
.admin-modal-card .modal-form-grid { display: grid; gap: 12px; }
.admin-modal-card .modal-copy { margin: -8px 0 16px; }
.config-help { margin: 10px 0 0; color: var(--muted-2); font-size: 10px; line-height: 1.5; }
.config-help code { color: var(--mint); }
.muted-value { color: var(--muted-2); }
.role-pills { display: flex; flex-wrap: wrap; gap: 4px; }
.team-member-picker { display: grid; gap: 7px; max-height: 220px; overflow: auto; padding: 10px; border: 1px solid var(--line); border-radius: 10px; }
.team-member-picker .checkbox-row { align-items: flex-start; }
.role-pill { padding: 4px 6px; border-radius: 4px; color: var(--mint); background: rgba(156,229,187,.09); font-size: 9px; }
.quick-reply-preview { max-width: 330px; overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.kb-back { margin-bottom: 12px; }
.result-list { display: grid; gap: 8px; margin-top: 12px; }
.result-item { padding: 11px 12px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.02); }
.result-item strong { display: block; margin-bottom: 5px; color: var(--ink); font-size: 11px; }
.result-item p { margin: 0; color: var(--muted); font-size: 11px; line-height: 1.5; white-space: pre-wrap; }
.workspace-settings-form { max-width: 820px; }
.workspace-settings-form .form-grid { align-items: start; }
.assignment-settings-card { margin: 4px 0 0; }
.ai-test-form { margin-bottom: 22px; }
.ai-test-form .form-grid label:nth-child(2) { grid-column: span 1; }
.ai-test-summary { display: grid; grid-template-columns: minmax(180px, .6fr) minmax(0, 1.4fr); gap: 13px; }
.ai-reply { white-space: pre-wrap; color: var(--ink) !important; font-size: 13px !important; }
.ai-test-columns { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr); gap: 26px; }
.debug-block { max-height: 300px; overflow: auto; margin: 10px 0 0; padding: 12px; border: 1px solid var(--line); border-radius: 8px; color: #b9d7ca; background: rgba(0,0,0,.2); font: 10px/1.55 ui-monospace, SFMono-Regular, Menlo, monospace; white-space: pre-wrap; }
.debug-details summary { cursor: pointer; color: var(--muted); font-size: 11px; }
@media (max-width: 760px) { .ai-test-summary, .ai-test-columns { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .admin-view { height: auto; min-height: calc(100vh - 68px); grid-template-columns: minmax(0, 1fr); } .admin-sidebar { width: 100%; max-width: 100%; padding: 17px 18px 15px; border-right: 0; border-bottom: 1px solid var(--line); } .admin-sidebar-heading { padding: 0; } .admin-sidebar-heading h2 { margin-bottom: 5px; } .admin-sidebar-heading p { max-width: 560px; margin-bottom: 17px; } .admin-nav { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 15px 18px; } .admin-nav-group-label { margin-left: 0; } .admin-nav button { min-height: 36px; padding: 7px 9px; } .admin-sidebar-note { display: none; } .admin-content { width: 100%; max-width: 100%; padding: 24px 18px 40px; } }
@media (max-width: 640px) { .topbar { display: flex; height: auto; align-items: center; flex-wrap: wrap; gap: 10px; padding: 12px 14px 0; } .topbar-context { flex: 1 1 auto; } .topbar-actions { margin-left: auto; } .product-nav { order: 4; width: 100%; margin: 0; padding: 0 14px 10px; } .topbar { flex-wrap: wrap; height: auto; padding-bottom: 0; } .topbar-context { margin-right: auto; } .form-grid { grid-template-columns: 1fr; } .admin-page-heading { align-items: flex-start; flex-direction: column; } .admin-table { min-width: 600px; } }
@media (max-width: 520px) { .admin-nav { grid-template-columns: 1fr; gap: 13px; } .admin-sidebar-heading p { font-size: 11px; } }
.audit-table { min-width: 760px; }
.audit-table td { vertical-align: top; }
.audit-table .debug-details { min-width: 190px; }
.audit-table .debug-block { max-width: 320px; max-height: 180px; margin-top: 8px; }

/* Contact directory */
.contacts-view { display: grid; grid-template-columns: 360px minmax(0, 1fr); height: calc(100vh - 68px); min-height: 0; background: #0c1413; }
.contacts-directory { display: flex; min-height: 0; flex-direction: column; border-right: 1px solid var(--line); background: var(--panel-2); }
.contacts-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 26px 22px 18px; }
.contacts-heading h1 { margin: 8px 0 0; color: var(--ink); font-size: 25px; letter-spacing: -.055em; }
.contacts-filters { display: grid; gap: 8px; padding: 0 18px 16px; }
.contacts-filters .search-field { min-width: 0; }
.contacts-tag-filter { width: 100%; border: 1px solid var(--line); border-radius: 9px; padding: 10px 12px; outline: 0; color: var(--ink); background: rgba(255,255,255,.035); font-size: 12px; }
.contacts-tag-filter:focus { border-color: rgba(156,229,187,.6); box-shadow: 0 0 0 3px rgba(156,229,187,.08); }
.contact-list { min-height: 0; flex: 1; overflow: auto; padding: 0 10px 14px; }
.contact-card { display: flex; width: 100%; gap: 11px; align-items: flex-start; border: 1px solid transparent; border-radius: 10px; padding: 12px 11px; color: var(--ink); background: transparent; text-align: left; }
.contact-card:hover { border-color: var(--line); background: rgba(255,255,255,.035); }
.contact-card.is-selected { border-color: rgba(156,229,187,.28); background: rgba(156,229,187,.09); }
.contact-card-avatar { display: grid; width: 34px; height: 34px; flex: 0 0 34px; place-items: center; border-radius: 10px; color: var(--mint); background: rgba(156,229,187,.12); font-size: 11px; font-weight: 800; }
.contact-card-main { min-width: 0; flex: 1; }
.contact-card-line { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.contact-card-line strong { overflow: hidden; color: var(--ink); font-size: 12px; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.contact-card-count { color: var(--muted-2); font-size: 10px; }
.contact-card-secondary { display: block; overflow: hidden; margin-top: 4px; color: var(--muted); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.contact-card-tags { display: flex; gap: 5px; margin-top: 8px; overflow: hidden; }
.contact-card-tags span { max-width: 110px; overflow: hidden; padding: 3px 5px; border-radius: 4px; color: var(--mint); background: rgba(156,229,187,.08); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.contacts-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 12px 18px 16px; border-top: 1px solid var(--line); color: var(--muted-2); font-size: 10px; }
.contact-detail-view { min-width: 0; min-height: 0; overflow: auto; background: #0d1514; }
.contact-detail { max-width: 1120px; margin: 0 auto; padding: 32px 42px 54px; }
.contact-detail-header { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.contact-detail-title { display: flex; min-width: 0; align-items: center; gap: 14px; }
.contact-detail-title .profile-avatar { width: 52px; height: 52px; flex-basis: 52px; font-size: 15px; }
.contact-detail-title h2 { margin: 7px 0 4px; color: var(--ink); font-size: 27px; letter-spacing: -.055em; }
.contact-detail-subtitle { margin: 0; color: var(--muted); font-size: 12px; }
.contact-detail-actions { display: flex; gap: 8px; }
.contact-detail-content { display: grid; gap: 18px; }
.contact-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.contact-stat-grid > div { padding: 15px 16px; border: 1px solid var(--line); border-radius: 11px; background: rgba(255,255,255,.025); }
.contact-stat-grid span { display: block; color: var(--muted-2); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.contact-stat-grid strong { display: block; margin-top: 8px; color: var(--ink); font-size: 20px; letter-spacing: -.04em; }
.contact-detail-columns { display: grid; grid-template-columns: minmax(270px, .82fr) minmax(380px, 1.18fr); gap: 18px; align-items: start; }
.contact-detail-column { display: grid; gap: 18px; }
.contact-info-block { padding: 17px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }
.contact-info-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 10px; margin-bottom: 14px; }
.contact-info-heading h3 { margin: 0; color: var(--ink); font-size: 13px; }
.contact-info-heading .eyebrow { font-size: 8px; }
.static-tag { cursor: default; }
.contact-detail-row { display: grid; grid-template-columns: 78px minmax(0, 1fr); gap: 4px 10px; padding: 10px 0; border-top: 1px solid rgba(255,255,255,.06); }
.contact-detail-row:first-of-type { border-top: 0; padding-top: 0; }
.contact-detail-row span { color: var(--muted-2); font-size: 10px; text-transform: uppercase; }
.contact-detail-row strong { overflow: hidden; color: var(--ink); font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.contact-detail-row small { grid-column: 2; overflow: hidden; color: var(--muted-2); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.contact-empty-line { color: var(--muted-2); font-size: 11px; }
.contact-conversation-list { display: grid; gap: 4px; }
.contact-conversation-row { display: flex; width: 100%; align-items: center; gap: 11px; border: 1px solid transparent; border-radius: 8px; padding: 11px 9px; color: var(--ink); background: transparent; text-align: left; }
.contact-conversation-row:hover { border-color: var(--line); background: rgba(255,255,255,.035); }
.contact-conversation-icon { display: grid; width: 28px; height: 28px; flex: 0 0 28px; place-items: center; border-radius: 8px; color: var(--mint); background: rgba(156,229,187,.1); font-size: 10px; font-weight: 800; }
.contact-conversation-row > span:nth-child(2) { min-width: 0; flex: 1; }
.contact-conversation-row strong, .contact-conversation-row small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.contact-conversation-row strong { color: var(--ink); font-size: 11px; }
.contact-conversation-row small { margin-top: 4px; color: var(--muted); font-size: 10px; }
.contact-conversation-arrow { color: var(--muted-2); font-size: 16px; }
@media (max-width: 900px) { .contacts-view { grid-template-columns: 310px minmax(0, 1fr); } .contact-detail { padding: 26px 24px 42px; } .contact-detail-columns { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .contacts-view { display: block; height: calc(100vh - 112px); } .contacts-directory { height: 100%; border-right: 0; } .contacts-view.has-detail .contacts-directory { display: none; } .contact-detail-view { height: 100%; } .contact-detail { padding: 24px 18px 38px; } .contact-detail-header { align-items: flex-start; flex-direction: column; } .contact-detail-actions { width: 100%; } .contact-detail-actions button { width: 100%; } .contact-stat-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .contact-stat-grid > div { padding: 12px 10px; } .contact-stat-grid strong { font-size: 17px; } }
.admin-kpi-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-bottom: 18px; }
.admin-kpi { display: grid; gap: 6px; min-height: 94px; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.025); }
.admin-kpi span, .admin-kpi small { color: var(--muted-2); font-size: 10px; }
.admin-kpi strong { color: var(--ink); font-size: 22px; letter-spacing: -.04em; }
.admin-two-column { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 14px; margin-bottom: 14px; }
.admin-section-card { padding: 18px; border: 1px solid var(--line); border-radius: 12px; background: rgba(255,255,255,.02); }
.section-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 15px; }
.section-heading h2 { margin: 5px 0 0; color: var(--ink); font-size: 15px; letter-spacing: -.03em; }
.detail-list { display: grid; gap: 0; margin: 0; }
.detail-list div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.detail-list div:last-child { border-bottom: 0; }
.detail-list dt { color: var(--muted-2); font-size: 11px; }
.detail-list dd { margin: 0; color: var(--ink); font-size: 11px; text-align: right; }
.report-period-card { margin-top: 14px; }
.service-status-card { margin-bottom: 14px; }
.service-status-card .section-heading { align-items: center; }
.service-status-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 0 8px; }
.service-status-meta { margin-bottom: 12px; }
.service-status-table { min-width: 620px; }
.service-status-card .config-help { display: block; margin-top: 12px; }
.report-metric-list, .report-decision-list { display: grid; gap: 0; }
.report-metric-list > div, .report-decision { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.report-metric-list > div:last-child, .report-decision:last-child { border-bottom: 0; }
.report-metric-list span, .report-decision span { color: var(--muted-2); font-size: 11px; }
.report-metric-list strong, .report-decision strong { color: var(--ink); font-size: 13px; }
.report-negative { color: var(--red) !important; }
.report-decision > span { display: flex; align-items: center; gap: 7px; color: var(--ink); text-transform: capitalize; }
.decision-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--muted-2); }
.decision-dot.published { background: var(--mint); }
.decision-dot.disabled { background: var(--red); }
.decision-dot.draft { background: #e9c46a; }
.usage-events-card { margin-top: 14px; }
.usage-events { display: grid; gap: 0; }
.usage-event { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 12px 0; border-top: 1px solid rgba(255,255,255,.06); }
.usage-event strong { display: block; color: var(--ink); font-size: 11px; }
.usage-event span { color: var(--muted-2); font-size: 10px; }
.usage-event-metrics { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; text-align: right; }
@media (max-width: 900px) { .admin-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .admin-two-column { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .usage-event { align-items: flex-start; flex-direction: column; } .usage-event-metrics { justify-content: flex-start; text-align: left; } }

@media (max-width: 980px) {
  .admin-view { grid-template-columns: 214px minmax(0, 1fr); }
  .admin-content { padding-left: 24px; padding-right: 24px; }
  .admin-page-heading { align-items: flex-start; }
}

@media (max-width: 760px) {
  .admin-view { display: block; height: calc(100vh - 68px); overflow: auto; }
  .admin-sidebar { padding: 18px 16px 14px; border-right: 0; border-bottom: 1px solid var(--line); }
  .admin-sidebar-heading { padding: 0 4px; }
  .admin-sidebar-heading h2 { margin-top: 5px; font-size: 19px; }
  .admin-sidebar-heading p { max-width: none; margin-bottom: 16px; }
  .admin-nav { display: flex; gap: 16px; overflow-x: auto; padding: 0 4px 3px; }
  .admin-nav-group { flex: 0 0 auto; }
  .admin-nav-group-label { margin-left: 0; margin-right: 0; }
  .admin-nav-group-items { display: flex; gap: 4px; }
  .admin-nav button { width: auto; min-width: max-content; min-height: 36px; padding: 7px 9px; }
  .admin-nav button:hover { transform: none; }
  .admin-sidebar-note { display: none; }
  .admin-main { overflow: visible; }
  .admin-content { padding: 22px 16px 36px; }
  .admin-page-heading { flex-direction: column; gap: 13px; margin-bottom: 20px; }
  .admin-page-heading > .admin-actions, .admin-page-heading > .small-button, .admin-page-heading > .primary-button, .admin-page-heading > .secondary-button { width: 100%; }
  .admin-page-heading > .admin-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .admin-page-heading > .admin-actions > button { width: 100%; }
  .admin-table-wrap { max-width: 100%; }
  .admin-section-card { padding: 15px; }
}

/* Controlled WhatsApp rich-message composer */
.rich-message-options {
  margin: 0 0 10px;
  padding: 12px;
  border: 1px solid var(--line, #dbe5df);
  border-radius: 12px;
  background: color-mix(in srgb, var(--surface, #fff) 92%, var(--accent, #9ce5bb));
}
.rich-message-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.rich-message-options label {
  display: grid;
  gap: 5px;
  margin-top: 8px;
  font-size: 12px;
  color: var(--muted, #68756f);
}
.rich-message-options input,
.rich-message-options select,
.rich-message-options textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line, #dbe5df);
  border-radius: 8px;
  padding: 8px 10px;
  background: var(--surface-raised, #fff);
  color: var(--ink, #16221d);
  font: inherit;
}
.rich-message-options textarea { resize: vertical; }
.rich-field-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.rich-fields { margin-top: 4px; }
@media (max-width: 700px) {
  .rich-field-grid { grid-template-columns: 1fr; gap: 0; }
  .rich-message-heading { align-items: flex-start; flex-direction: column; gap: 3px; }
}
.quota-list { display: grid; gap: 17px; }
.quota-row { display: grid; gap: 8px; }
.quota-row-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; color: var(--muted); font-size: 11px; }
.quota-row-heading strong { color: var(--ink); font-size: 12px; }
.quota-row-heading small { color: var(--muted-2); font-size: 10px; font-weight: 500; }
.quota-track { height: 6px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.quota-track span { display: block; height: 100%; border-radius: inherit; background: var(--mint); }
.quota-track span.report-warning { background: #e9c46a; }
.quota-track span.report-negative { background: var(--red); }
.quota-track-unlimited span { width: 22%; opacity: .55; }
.plan-footnote { display: block; margin-top: 14px; }
.report-warning { color: #e9c46a !important; }

/* Workspace dashboard */
.dashboard-heading { margin-bottom: 20px; }
.dashboard-kpis { margin-bottom: 14px; }
.dashboard-kpis .admin-kpi { min-height: 108px; }
.dashboard-kpis .admin-kpi strong { font-size: 24px; }
.dashboard-plan-kpi small { display: flex; align-items: center; min-height: 18px; }
.dashboard-setup-card { margin-bottom: 14px; }
.dashboard-setup-percent { color: var(--mint); font-size: 24px; }
.dashboard-next-step { display: flex; align-items: center; gap: 11px; margin: 14px 0 2px; padding: 12px 13px; border: 1px solid rgba(240,174,115,.26); border-radius: 9px; background: rgba(240,174,115,.07); }
.dashboard-next-step-ready { border-color: rgba(156,229,187,.26); background: rgba(156,229,187,.06); }
.dashboard-next-step-icon { display: grid; width: 24px; height: 24px; flex: 0 0 24px; place-items: center; border-radius: 7px; color: var(--orange); background: rgba(240,174,115,.12); font-size: 14px; font-weight: 800; }
.dashboard-next-step-ready .dashboard-next-step-icon { color: var(--mint); background: rgba(156,229,187,.12); }
.dashboard-next-step > div { display: grid; min-width: 0; flex: 1; gap: 3px; }
.dashboard-next-step strong { color: var(--ink); font-size: 11px; }
.dashboard-next-step span:not(.dashboard-next-step-icon) { color: var(--muted-2); font-size: 10px; line-height: 1.45; }
.dashboard-setup-track { height: 6px; margin: 12px 0 15px; overflow: hidden; border-radius: 999px; background: rgba(255,255,255,.08); }
.dashboard-setup-track span { display: block; height: 100%; border-radius: inherit; background: var(--mint-strong); transition: width .2s ease; }
.dashboard-setup-list { display: grid; gap: 8px; }
.dashboard-setup-item { display: grid; grid-template-columns: 24px minmax(0,1fr) auto auto; align-items: center; gap: 10px; min-height: 52px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 8px; background: rgba(255,255,255,.018); }
.dashboard-setup-status { display: grid; width: 22px; height: 22px; place-items: center; border-radius: 50%; font-size: 12px; font-weight: 800; }
.setup-ready .dashboard-setup-status { color: var(--mint); background: rgba(156,229,187,.12); }
.setup-action .dashboard-setup-status { color: var(--orange); background: rgba(240,174,115,.12); }
.dashboard-setup-copy { display: grid; gap: 3px; min-width: 0; }
.dashboard-setup-copy strong { color: var(--ink); font-size: 12px; }
.dashboard-setup-copy span { color: var(--muted-2); font-size: 10px; line-height: 1.45; }
.dashboard-setup-state { color: var(--muted-2); font-size: 10px; white-space: nowrap; }
.setup-ready .dashboard-setup-state { color: var(--mint); }
.setup-action .dashboard-setup-state { color: var(--orange); }
.dashboard-main-grid { grid-template-columns: minmax(0, 1.35fr) minmax(290px, .65fr); margin-bottom: 14px; }
.dashboard-quota-card .section-heading { align-items: center; }
.dashboard-quota-card .section-heading p { margin: 6px 0 0; color: var(--muted-2); font-size: 10px; }
.dashboard-period-card { display: flex; min-width: 0; flex-direction: column; }
.dashboard-period-card .detail-list { flex: 1; }
.dashboard-card-action { width: 100%; margin-top: 14px; }
.dashboard-lower-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 14px; margin-bottom: 14px; }
.dashboard-budget-value { display: flex; align-items: baseline; gap: 8px; margin: 18px 0 12px; }
.dashboard-budget-value strong { color: var(--ink); font-size: 27px; letter-spacing: -.045em; }
.dashboard-budget-value span { color: var(--muted-2); font-size: 10px; }
.dashboard-health-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px; }
.dashboard-health-list div { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid rgba(255,255,255,.06); }
.dashboard-health-list span { color: var(--muted-2); font-size: 11px; }
.dashboard-health-list strong { color: var(--ink); font-size: 14px; }
.dashboard-health-card .config-help, .dashboard-shortcuts .config-help { display: block; margin-top: 12px; }
.dashboard-shortcuts { margin-bottom: 0; }
.dashboard-shortcut-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.dashboard-shortcut-grid button { display: grid; min-width: 0; min-height: 104px; align-content: start; gap: 6px; border: 1px solid var(--line); border-radius: 9px; padding: 13px; color: var(--ink); background: rgba(255,255,255,.018); text-align: left; transition: border-color .18s ease, background .18s ease, transform .18s ease; }
.dashboard-shortcut-grid button:hover { border-color: rgba(156,229,187,.34); background: rgba(156,229,187,.06); transform: translateY(-1px); }
.shortcut-icon { display: grid; width: 24px; height: 24px; margin-bottom: 4px; place-items: center; border: 1px solid rgba(156,229,187,.25); border-radius: 7px; color: var(--mint); background: rgba(156,229,187,.08); font-size: 14px; }
.dashboard-shortcut-grid strong { overflow: hidden; font-size: 11px; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-shortcut-grid small { color: var(--muted-2); font-size: 10px; line-height: 1.45; }
@media (max-width: 1080px) { .dashboard-shortcut-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) { .dashboard-main-grid, .dashboard-lower-grid { grid-template-columns: 1fr; } }
@media (max-width: 600px) { .dashboard-heading .small-button { width: 100%; } .dashboard-kpis .admin-kpi strong { font-size: 20px; } .dashboard-health-list { grid-template-columns: 1fr; } .dashboard-shortcut-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dashboard-shortcut-grid button { min-height: 98px; padding: 11px; } .dashboard-setup-item { grid-template-columns: 24px minmax(0,1fr) auto; } .dashboard-setup-item .small-button { grid-column: 2 / -1; justify-self: start; } .dashboard-next-step { align-items: flex-start; flex-wrap: wrap; } .dashboard-next-step .small-button { margin-left: 35px; } }
