/* Request Desk (admin). Builds on site.css + updates.css. */

.page-admin { background: var(--bg); }
.ad-top { position: sticky; top: 0; z-index: 30; height: 64px; display: flex; align-items: center; background: color-mix(in srgb, var(--bg) 85%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid var(--line); }
.ad-top__in { width: min(1480px, 100% - 2 * var(--gutter)); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.ad-top__r { display: flex; align-items: center; gap: 16px; }
.ad-top__r[hidden] { display: none; }
.ad-user { color: var(--mute); font-size: 11px; text-transform: none; }
.ad-live { display: inline-flex; align-items: center; gap: 8px; color: #3DDC97; font-size: 11px; }
.ad-live .dot { width: 7px; height: 7px; border-radius: 50%; background: #3DDC97; box-shadow: 0 0 10px #3DDC97; animation: blink 1.8s infinite; }
.ad-main { width: min(1480px, 100% - 2 * var(--gutter)); margin-inline: auto; padding: clamp(28px, 5vh, 56px) 0 100px; }
.ad-main [hidden] { display: none !important; }
.ad-h1 { font-size: clamp(36px, 4.6vw, 68px); font-weight: 620; letter-spacing: -.045em; line-height: .98; }
.ad-muted { color: var(--mute); }
.ad-link { background: none; border: 0; padding: 8px 0; color: var(--signal-text); font: inherit; font-size: 14px; text-align: left; cursor: pointer; text-decoration: underline; text-underline-offset: 3px; }
.ad-loading { color: var(--mute); padding: 40px 0; }
.ad-empty { color: var(--mute); padding: 48px 0; text-align: center; }

/* login */
.ad-login { min-height: 70vh; display: grid; place-items: center; }
.ad-login__card { width: min(460px, 100%); background: var(--card); border: 1px solid var(--line); border-radius: 12px; padding: clamp(28px, 4vw, 44px); display: grid; gap: 14px; }
.ad-login__card .ad-h1 { font-size: clamp(34px, 4vw, 48px); }
.ad-login__form { display: grid; gap: 16px; margin-top: 10px; }
.ad-login__form .btn { width: 100%; }

/* list header + stats */
.ad-head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 20px; margin-bottom: 28px; }
.ad-head__tools { display: flex; gap: 10px; align-items: center; }
.ad-search input { width: min(360px, 70vw); min-height: 46px; padding: 10px 16px; border-radius: 999px; border: 1px solid var(--line); background: var(--card); color: var(--ink); font: inherit; font-size: 15px; }
.ad-search input:focus { outline: none; border-color: var(--signal); }
.ad-stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-bottom: 22px; }
.ad-stat { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 18px 20px; display: grid; gap: 4px; }
.ad-stat b { font-size: clamp(32px, 3.4vw, 48px); font-weight: 600; letter-spacing: -.04em; line-height: 1; font-variant-numeric: tabular-nums; }
.ad-stat .mono { color: var(--mute); font-size: 11px; }
.ad-stat.signal b { color: var(--signal-text); }
.ad-stat.hot { border-color: color-mix(in srgb, #FF5A5A 55%, transparent); }
.ad-stat.hot b { color: #FF7A7A; }
.ad-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 16px; }
.ad-chip { min-height: 38px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line); background: transparent; color: var(--ink-2); font-size: 14px; cursor: pointer; transition: background-color .2s, color .2s, border-color .2s; }
.ad-chip span { color: var(--mute); margin-left: 4px; font-family: var(--f-mono); font-size: 12px; }
.ad-chip:hover { border-color: var(--ink); }
.ad-chip.is-on { background: var(--ink); color: var(--bg); border-color: var(--ink); }
.ad-chip.is-on span { color: var(--bg); opacity: .6; }

/* table */
.ad-table { border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: var(--card); }
.ad-row { display: grid; grid-template-columns: 188px 1.3fr 1.3fr 60px 120px 1.1fr; gap: 16px; align-items: center; padding: 16px 20px; border-top: 1px solid var(--line); text-decoration: none; position: relative; transition: background-color .2s; }
.ad-row--head { border-top: 0; color: var(--mute); font-size: 11px; padding-block: 12px; background: var(--bg-2); }
a.ad-row:hover { background: color-mix(in srgb, var(--ink) 5%, transparent); }
a.ad-row:focus-visible { outline-offset: -2px; }
.ad-row span { min-width: 0; display: grid; gap: 2px; }
.ad-row b { font-weight: 560; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-row b.mono { font-size: 13px; letter-spacing: .04em; }
.ad-row small { color: var(--mute); font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-row.is-urgent::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 3px; background: #FF5A5A; }
.ad-row > span:last-child { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }

/* status badges */
.st { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; font-size: 12px; font-weight: 560; white-space: nowrap; background: color-mix(in srgb, var(--c, #8F8A97) 18%, transparent); color: var(--c, #8F8A97); border: 1px solid color-mix(in srgb, var(--c, #8F8A97) 35%, transparent); }
.st::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.st--new { --c: #FF6B40; }
.st--under_review { --c: #7B9CFF; }
.st--waiting_for_client { --c: #F2B33D; }
.st--estimate_required { --c: #F2B33D; }
.st--approved { --c: #5CC8FF; }
.st--scheduled { --c: #A88BFF; }
.st--in_progress { --c: #3DA9FF; }
.st--ready_for_review { --c: #E07BFF; }
.st--completed { --c: #3DDC97; }
.st--cancelled { --c: #8F8A97; }
.pri { font-size: 11px; font-family: var(--f-mono); letter-spacing: .06em; text-transform: uppercase; color: #FF7A7A; border: 1px solid color-mix(in srgb, #FF5A5A 45%, transparent); padding: 3px 8px; border-radius: 999px; }
.pri--soft { color: #F2B33D; border-color: color-mix(in srgb, #F2B33D 45%, transparent); }
.due { display: grid; font-size: 14px; }
.due small { font-size: 12px; }
.due--soon { color: #F2B33D; }
.due--late { color: #FF7A7A; }
.dt-sub .due { display: inline; }

/* detail */
.ad-back { display: inline-block; color: var(--mute); text-decoration: none; padding: 8px 0; margin-bottom: 14px; }
.ad-back:hover { color: var(--ink); }
.dt-head { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 26px; }
.dt-num { color: var(--mute); margin-bottom: 10px; }
.dt-sub { display: flex; flex-wrap: wrap; gap: 8px 12px; align-items: center; margin-top: 14px; }
.dt-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.pipe { display: grid; grid-template-columns: repeat(9, 1fr); margin-bottom: 30px; font-size: 11px; color: var(--mute); font-family: var(--f-mono); letter-spacing: .04em; text-transform: uppercase; }
.pipe li { position: relative; padding-top: 18px; border-top: 2px solid var(--line); padding-right: 8px; }
.pipe li span { position: absolute; top: -7px; left: 0; width: 12px; height: 12px; border-radius: 50%; background: var(--bg); border: 2px solid var(--line); }
.pipe li.is-done { border-color: var(--signal); color: var(--ink-2); }
.pipe li.is-done span { background: var(--signal); border-color: var(--signal); }
.pipe li.is-now { color: var(--signal-text); border-color: var(--signal); }
.pipe li.is-now span { border-color: var(--signal); box-shadow: 0 0 0 4px color-mix(in srgb, var(--signal) 25%, transparent); }
.dt-grid { display: grid; grid-template-columns: 1fr 380px; gap: 24px; align-items: start; }
.dt-main { display: grid; gap: 16px; }
.dt-progress { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; color: var(--ink-2); }
.dt-progress .bar { flex: 1; min-width: 160px; height: 4px; border-radius: 4px; background: var(--line); overflow: hidden; }
.dt-progress .bar span { display: block; height: 100%; background: #3DDC97; transform-origin: left; transform: scaleX(var(--p)); transition: transform .5s var(--ease); }
.dt-item { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 22px; display: grid; gap: 14px; transition: border-color .3s, opacity .3s; }
.dt-item.is-done { border-color: color-mix(in srgb, #3DDC97 45%, transparent); }
.dt-item.is-done .item__n { text-decoration: line-through; text-decoration-color: color-mix(in srgb, var(--ink) 40%, transparent); }
.dt-item__top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; }
.dt-item__tools { display: flex; gap: 8px; }
.dt-kv { display: grid; grid-template-columns: 130px 1fr; gap: 6px 16px; font-size: 15px; }
.dt-kv:empty { display: none; }
.dt-kv dt { color: var(--mute); }
.dt-kv dd { overflow-wrap: anywhere; }
.dt-kv a { color: var(--signal-text); }
.dt-kv--tight { grid-template-columns: 110px 1fr; font-size: 14px; }
.dt-diff { border-radius: 8px; padding: 14px 16px; background: var(--bg); border: 1px solid var(--line); }
.dt-diff .mono { color: var(--mute); font-size: 11px; margin-bottom: 8px; }
.dt-diff pre { margin: 0; white-space: pre-wrap; font: inherit; font-size: 16px; line-height: 1.5; overflow-wrap: anywhere; }
.dt-diff--new { border-color: color-mix(in srgb, var(--signal) 45%, transparent); background: color-mix(in srgb, var(--signal) 6%, var(--bg)); }
.dt-diff--new .mono { color: var(--signal-text); }
.dt-files { display: flex; flex-wrap: wrap; gap: 12px; }
.dt-files li { display: grid; gap: 2px; width: 150px; }
.dt-file { background: none; border: 0; padding: 0; color: inherit; text-align: left; cursor: pointer; display: grid; gap: 6px; }
.dt-file__thumb { aspect-ratio: 4 / 3; border-radius: 6px; border: 1px solid var(--line); background: var(--bg) center / cover no-repeat; display: grid; place-items: center; font-family: var(--f-mono); font-size: 13px; color: var(--mute); transition: border-color .2s; }
.dt-file:hover .dt-file__thumb { border-color: var(--signal); }
.dt-file__name { font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dt-files .ad-link { font-size: 12px; padding: 0; }
.dt-side { display: grid; gap: 16px; position: sticky; top: 84px; }
.dt-card { background: var(--card); border: 1px solid var(--line); border-radius: 10px; padding: 20px; display: grid; gap: 12px; }
.dt-card__t { color: var(--signal-text); font-size: 11px; }
.dt-small { font-size: 14px; }
.dt-card textarea { min-height: 80px; }
.dt-next { width: 100%; }
.dt-card .btn--sm { justify-self: start; }
.tl { display: grid; gap: 0; max-height: 360px; overflow: auto; }
.tl li { position: relative; padding: 0 0 16px 20px; border-left: 1px solid var(--line); display: grid; gap: 2px; font-size: 14px; }
.tl li::before { content: ""; position: absolute; left: -5px; top: 4px; width: 9px; height: 9px; border-radius: 50%; background: var(--signal); }
.tl li.is-note::before { background: var(--mute); }
.tl q { color: var(--ink-2); font-style: italic; }
.tl small { color: var(--mute); font-size: 12px; }

/* toast */
.ad-toast { position: fixed; left: 50%; bottom: 24px; z-index: 100; transform: translate(-50%, calc(100% + 40px)); visibility: hidden; background: var(--ink); color: var(--bg); padding: 14px 22px; border-radius: 999px; font-size: 15px; font-weight: 560; transition: transform .45s var(--ease), visibility .45s; max-width: calc(100% - 32px); box-shadow: 0 20px 50px rgba(0, 0, 0, .5); }
.ad-toast.is-on { transform: translate(-50%, 0); visibility: visible; }
.ad-toast.is-bad { background: #FF5A5A; color: #fff; }

@media (max-width: 1100px) {
  .dt-grid { grid-template-columns: 1fr; }
  .dt-side { position: static; }
  .pipe { grid-template-columns: repeat(3, 1fr); row-gap: 14px; }
}
@media (max-width: 860px) {
  .ad-stats { grid-template-columns: repeat(2, 1fr); }
  .ad-stats .ad-stat:first-child { grid-column: 1 / -1; }
  .ad-row--head { display: none; }
  .ad-row { grid-template-columns: 1fr auto; gap: 6px 12px; }
  .ad-row > span:nth-child(1) { order: 1; }
  .ad-row > span:nth-child(6) { order: 2; justify-content: flex-end; }
  .ad-row > span:nth-child(2) { order: 3; grid-column: 1 / -1; }
  .ad-row > span:nth-child(3) { order: 4; }
  .ad-row > span:nth-child(5) { order: 5; text-align: right; }
  .ad-row > span:nth-child(4) { display: none; }
  .ad-user { display: none; }
  .dt-kv, .dt-kv--tight { grid-template-columns: 1fr; gap: 0; }
  .dt-kv dt { margin-top: 8px; }
}

/* ===================== Studio Desk v2: sidebar, cards, AI prompt, leads, customers, audit ===================== */
.ad-shell { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: clamp(20px, 3vw, 40px); align-items: start; }
.ad-nav { position: sticky; top: 84px; display: grid; gap: 2px; padding: 16px 12px; border: 1px solid var(--line); border-radius: 14px; background: var(--card); }
.ad-nav__t { color: var(--mute); font-size: 10px; padding: 10px 10px 6px; }
.ad-nav a { display: flex; align-items: center; gap: 10px; min-height: 42px; padding: 0 10px; border-radius: 8px; color: var(--ink-2); text-decoration: none; font-size: 15px; transition: background-color .2s, color .2s; }
.ad-nav a svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.ad-nav a span { margin-left: auto; font-family: var(--f-mono); font-size: 11px; color: var(--signal-text); }
.ad-nav a:hover { background: color-mix(in srgb, var(--ink) 6%, transparent); color: var(--ink); }
.ad-nav a[aria-current="page"] { background: color-mix(in srgb, var(--ink) 9%, transparent); color: var(--ink); }
.ad-nav__mode { margin-top: 12px; padding: 8px 10px 0; border-top: 1px solid var(--line); color: var(--mute); font-size: 10px; }
.ad-content { min-width: 0; }
.ad-content .ad-h1 { font-size: clamp(32px, 3.6vw, 54px); }
.ad-note { margin: -12px 0 18px; font-size: 14px; }

.ad-cards { display: grid; grid-template-columns: repeat(auto-fill, minmax(118px, 1fr)); gap: 10px; margin-bottom: 18px; }
.ad-card { display: grid; gap: 6px; align-content: start; text-align: left; min-height: 92px; padding: 14px; border-radius: 12px; border: 1px solid var(--line); background: var(--card); color: var(--ink); cursor: pointer; transition: border-color .2s, transform .2s var(--ease); }
.ad-card .mono { font-size: 10px; color: var(--c, var(--mute)); line-height: 1.3; }
.ad-card b { font-size: 30px; font-weight: 600; letter-spacing: -.04em; line-height: 1; font-variant-numeric: tabular-nums; }
.ad-card small { color: #FF7A7A; font-size: 11px; }
.ad-card:hover { border-color: var(--c, var(--ink)); transform: translateY(-2px); }
.ad-card.is-on { border-color: var(--c, var(--signal)); box-shadow: inset 0 0 0 1px var(--c, var(--signal)); }
.ad-tools { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.ad-tools .ad-search { flex: 1 1 260px; }
.ad-tools .ad-search input { width: 100%; }
.ad-select { min-height: 46px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--line); background: var(--card); color: var(--ink); font: inherit; font-size: 14px; }
.ad-select:focus { outline: none; border-color: var(--signal); }

.dt-ai { border: 1px solid color-mix(in srgb, #8A7BFF 60%, transparent); background: color-mix(in srgb, #8A7BFF 7%, var(--card)); border-radius: 12px; padding: 18px; display: grid; gap: 12px; }
.dt-ai .dt-card__t { color: #A99CFF; }
.dt-ai__top { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: start; gap: 10px; }
.dt-ai__text { width: 100%; min-height: 180px; resize: vertical; padding: 14px; border-radius: 8px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); font-family: var(--f-mono); font-size: 13px; line-height: 1.55; }
.dt-notify { font-size: 14px; }
.ad-danger { color: #FF7A7A; justify-self: start; font-size: 13px; }
.ad-pw { display: grid; gap: 12px; }
.ad-pw[open] { gap: 14px; }
.ad-pw summary { list-style: none; }
.ad-pw summary::-webkit-details-marker { display: none; }

/* leads */
.ad-leads { display: grid; gap: 8px; }
.ad-lead { border: 1px solid var(--line); border-radius: 10px; background: var(--card); }
.ad-lead[open] { border-color: color-mix(in srgb, var(--signal) 40%, var(--line)); }
.ad-lead summary { list-style: none; cursor: pointer; display: grid; grid-template-columns: 1.2fr 1.3fr 1.3fr 120px 110px; gap: 14px; align-items: center; padding: 14px 18px; }
.ad-lead summary::-webkit-details-marker { display: none; }
.ad-lead summary > span { display: grid; gap: 2px; min-width: 0; }
.ad-lead summary b { font-weight: 560; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-lead summary small { color: var(--mute); font-size: 13px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-lead__svc { display: flex !important; flex-wrap: wrap; gap: 4px; }
.ad-lead__svc i { font-style: normal; font-size: 11px; padding: 3px 8px; border-radius: 999px; border: 1px solid var(--line); color: var(--ink-2); }
.ld-st { justify-self: start; font-size: 12px; font-weight: 560; padding: 4px 10px; border-radius: 999px; background: color-mix(in srgb, var(--c, #8F8A97) 18%, transparent); color: var(--c, #8F8A97); }
.ld-st--new { --c: #FF6B40; } .ld-st--contacted { --c: #7B9CFF; } .ld-st--qualified { --c: #A88BFF; } .ld-st--won { --c: #3DDC97; } .ld-st--lost { --c: #8F8A97; }
.ad-lead__body { padding: 4px 18px 18px; display: grid; gap: 14px; border-top: 1px solid var(--line); padding-top: 16px; }
.ad-lead__act { display: grid; grid-template-columns: 180px 1fr auto; gap: 12px; align-items: end; }
.ad-lead__btns { display: flex; gap: 8px; flex-wrap: wrap; }

/* customers */
.ad-table--cust .ad-row { grid-template-columns: 1.2fr 1.5fr 1fr 130px 110px 110px; }
.ad-table--cust .ad-row a { color: var(--ink); }

/* audit */
.ad-audit { border: 1px solid var(--line); border-radius: 10px; background: var(--card); overflow: hidden; }
.ad-audit li { display: grid; grid-template-columns: 150px 190px 1fr 200px 110px; gap: 14px; align-items: center; padding: 12px 18px; border-top: 1px solid var(--line); font-size: 14px; }
.ad-audit li:first-child { border-top: 0; }
.ad-audit .mono { color: var(--mute); font-size: 11px; text-transform: none; }
.ad-audit small { color: var(--mute); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ad-audit span { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--ink-2); }
.ad-audit a { color: var(--signal-text); font-size: 13px; }

@media (max-width: 1020px) {
  .ad-shell { grid-template-columns: 1fr; }
  .ad-nav { position: static; display: flex; flex-wrap: wrap; gap: 6px; padding: 8px; }
  .ad-nav__t, .ad-nav__mode { display: none; }
  .ad-nav a { min-height: 40px; border: 1px solid var(--line); border-radius: 999px; padding: 0 14px; font-size: 14px; }
  .ad-lead summary { grid-template-columns: 1fr auto; }
  .ad-lead summary > span:nth-child(2), .ad-lead summary > span:nth-child(3) { grid-column: 1 / -1; }
  .ad-lead summary > span:nth-child(4) { display: none; }
  .ad-lead summary > span:nth-child(5) { grid-row: 1; grid-column: 2; }
  .ad-lead__act { grid-template-columns: 1fr; }
  .ad-table--cust .ad-row--head { display: none; }
  .ad-table--cust .ad-row { grid-template-columns: 1fr auto; }
  .ad-table--cust .ad-row > span:nth-child(n+3) { grid-column: auto; }
  .ad-audit li { grid-template-columns: 1fr; gap: 2px; }
}

/* ===================== Client portal ===================== */
.ac-stats { grid-template-columns: repeat(3, 1fr); }
.ac-list { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 14px; }
.ac-req { display: grid; gap: 8px; padding: 20px; border: 1px solid var(--line); border-radius: 12px; background: var(--card); text-decoration: none; color: var(--ink); transition: border-color .2s, transform .2s var(--ease); }
.ac-req:hover { border-color: var(--signal); transform: translateY(-2px); }
.ac-req__top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.ac-req__top .mono { color: var(--mute); font-size: 11px; }
.ac-req b { font-size: 20px; font-weight: 600; letter-spacing: -.02em; }
.ac-req .ad-muted { font-size: 14px; }
.ac-bar { height: 4px; border-radius: 4px; background: var(--line); overflow: hidden; margin: 4px 0; }
.ac-bar span { display: block; height: 100%; background: var(--signal); transform-origin: left; transform: scaleX(var(--p)); }
.ac-pipe { grid-template-columns: repeat(6, 1fr); }
.ac-profile { max-width: 520px; display: grid; gap: 18px; }
@media (max-width: 860px) {
  .ac-stats { grid-template-columns: repeat(3, 1fr); }
  .ac-stats .ad-stat:first-child { grid-column: auto; }
  .ac-pipe { grid-template-columns: repeat(3, 1fr); row-gap: 14px; }
}
@media (max-width: 600px) {
  .ad-cards { grid-template-columns: repeat(3, 1fr); gap: 8px; }
  .ad-card { min-height: 0; padding: 10px; gap: 4px; }
  .ad-card b { font-size: 22px; }
  .ad-card .mono { font-size: 9px; }
}

/* ===================== Messages (portal + desk) ===================== */
.thread { gap: 14px; }
.thread__list { display: grid; gap: 10px; max-height: 380px; overflow: auto; padding-right: 2px; }
.msg { max-width: 88%; display: grid; gap: 4px; }
.msg p { margin: 0; padding: 10px 14px; border-radius: 16px; font-size: 15px; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; }
.msg small { font-size: 11px; color: var(--mute); padding: 0 6px; }
.msg--them { justify-self: start; }
.msg--them p { background: color-mix(in srgb, var(--ink) 8%, var(--bg)); border-bottom-left-radius: 4px; }
.msg--me { justify-self: end; text-align: right; }
.msg--me p { background: var(--signal); color: var(--signal-ink); border-bottom-right-radius: 4px; text-align: left; }
.thread__empty { margin: 0; color: var(--mute); font-size: 14px; }
.thread__form { display: grid; gap: 10px; }
.thread__form textarea { width: 100%; min-height: 84px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--line); background: var(--bg); color: var(--ink); font: inherit; font-size: 15px; resize: vertical; }
.thread__form textarea:focus { outline: none; border-color: var(--signal); box-shadow: 0 0 0 4px color-mix(in srgb, var(--signal) 16%, transparent); }
.thread__row { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.thread__hint { color: var(--mute); font-size: 10px; text-transform: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
