:root {
  font-family:
    Inter,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  color: #192c30;
  background: #f4f6f5;
  font-synthesis: none;
  --ink: #192c30;
  --muted: #637276;
  --border: #e1e7e5;
  --green: #11624e;
  --soft: #e9f3ee;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
  display: flex;
  height: 100dvh;
  font-size: 14px;
}
button,
input,
textarea,
select {
  font: inherit;
}
button,
a,
select {
  touch-action: manipulation;
}
button,
a {
  cursor: pointer;
}
button:disabled {
  cursor: wait;
  opacity: 0.5;
}
button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 3px solid #79bca5;
  outline-offset: 3px;
}
button {
  transition:
    background 0.16s,
    color 0.16s;
}
button:hover {
  filter: brightness(0.97);
}
[hidden] {
  display: none !important;
}
.rail {
  width: 76px;
  flex-shrink: 0;
  background: #183630;
  color: #ecf5ef;
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 28px 0;
}
.brand {
  color: inherit;
  font-weight: 800;
  font-size: 22px;
  letter-spacing: -4px;
  text-decoration: none;
  margin-left: -4px;
}
.brand span {
  color: #8bbaaa;
}
.rail-label {
  font-size: 9px;
  letter-spacing: 1px;
  margin-top: 36px;
  writing-mode: vertical-rl;
}
.rail-bottom {
  margin-top: auto;
  font-size: 9px;
  line-height: 1.7;
  letter-spacing: 1px;
}
.workspace {
  width: calc(100% - 76px);
  padding: 0 26px 24px;
  display: flex;
  flex-direction: column;
}
.topbar {
  height: 111px;
  flex-shrink: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.eyebrow {
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.65px;
  color: var(--muted);
}
h1 {
  font-size: 30px;
  font-weight: 600;
  letter-spacing: -1px;
  margin: 7px 0 0;
}
h2 {
  font-size: 17px;
  line-height: 1.4;
  font-weight: 650;
  margin: 0;
}
h3 {
  font-size: 11px;
  letter-spacing: 0.7px;
  text-transform: uppercase;
  color: var(--muted);
  margin: 0 0 12px;
}
.health {
  font-size: 12px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.health:before {
  content: "";
  width: 7px;
  height: 7px;
  background: var(--green);
  border-radius: 50%;
}
.health.off:before {
  background: #bd7045;
}
.desk {
  display: grid;
  grid-template-columns: 290px minmax(350px, 1fr) 295px;
  flex: 1;
  min-height: 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  background: white;
}
.inbox {
  border-right: 1px solid var(--border);
  display: flex;
  flex-direction: column;
  min-height: 0;
}
.inbox-top {
  padding: 23px 18px 0;
}
.section-title {
  font-size: 17px;
  font-weight: 650;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.section-title span {
  background: #eff2f1;
  padding: 3px 8px;
  border-radius: 5px;
  font-size: 11px;
  color: var(--muted);
}
.search-label {
  position: absolute;
  clip-path: inset(50%);
  height: 1px;
  width: 1px;
  overflow: hidden;
}
#search {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fafbf9;
  padding: 11px 12px;
  margin-top: 22px;
  font-size: 13px;
}
.filters {
  display: flex;
  gap: 4px;
  margin: 15px 0 12px;
}
.filters button {
  min-height: 40px;
  flex: 1;
  background: none;
  border: 0;
  border-radius: 6px;
  color: var(--muted);
  font-size: 12px;
}
.filters .selected {
  background: var(--soft);
  color: var(--green);
  font-weight: 650;
}
.filters span {
  font-size: 10px;
  margin-left: 4px;
}
.clients {
  overflow: auto;
  flex: 1;
  padding: 0 9px;
}
.client {
  width: 100%;
  text-align: left;
  display: block;
  padding: 16px 11px;
  margin: 3px 0;
  border: 1px solid transparent;
  border-radius: 7px;
  background: white;
  color: var(--ink);
}
.client.active {
  background: #edf5f1;
  border-color: #d8e8df;
}
.client-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.client-name {
  font-size: 14px;
  font-weight: 650;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.client time {
  font-size: 10px;
  color: var(--muted);
  flex-shrink: 0;
}
.client-preview {
  margin: 8px 0 11px;
  font-size: 12px;
  line-height: 1.55;
  color: var(--muted);
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  overflow-wrap: anywhere;
}
.tag {
  font-size: 10px;
  display: inline-block;
  border-radius: 4px;
  padding: 4px 6px;
  background: #f0f2f1;
  color: #566764;
}
.tag.pending {
  background: #fff0d7;
  color: #865716;
}
.tag.human {
  background: #e9edf9;
  color: #3f5690;
}
.inbox-footer {
  border-top: 1px solid var(--border);
  padding: 15px 18px;
  font-size: 11px;
  color: #3c6255;
  line-height: 1.5;
}
.inbox-footer span {
  display: block;
  color: var(--muted);
  font-size: 10px;
  margin-top: 4px;
}
.thread {
  min-width: 0;
  min-height: 0;
  background: #fcfdfb;
}
.empty {
  display: grid;
  place-content: center;
  text-align: center;
  height: 100%;
  padding: 40px;
  color: var(--muted);
}
.empty-symbol {
  font-size: 32px;
  margin-bottom: 20px;
  color: var(--green);
}
.empty p {
  max-width: 320px;
  line-height: 1.7;
  font-size: 13px;
}
.thread #conversation {
  height: 100%;
  display: flex;
  flex-direction: column;
}
.thread-top {
  display: flex;
  align-items: center;
  padding: 20px 22px;
  border-bottom: 1px solid var(--border);
  gap: 12px;
  background: white;
  min-height: 86px;
}
.avatar {
  width: 38px;
  height: 38px;
  display: grid;
  place-items: center;
  flex-shrink: 0;
  border-radius: 50%;
  background: #e6eee9;
  color: #456956;
  font-size: 14px;
  font-weight: 650;
}
.client-heading {
  min-width: 0;
  flex: 1;
}
.client-heading h2 {
  overflow-wrap: anywhere;
}
.muted {
  color: var(--muted);
  font-size: 11px;
  margin-top: 4px;
}
.button {
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: 6px;
  padding: 10px 13px;
  font-size: 12px;
  line-height: 1.3;
  white-space: nowrap;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
}
.primary {
  background: var(--green);
  color: white;
}
.secondary {
  color: #38574c;
  background: white;
  border-color: #d8e2dc;
}
.ownership {
  padding: 12px 22px;
  display: flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--border);
  background: #f5f8f5;
  font-size: 11px;
}
.ownership span {
  margin-right: auto;
  color: #4d655b;
  line-height: 1.5;
}
.ownership .button {
  min-height: 36px;
  font-size: 11px;
  padding: 8px 10px;
}
.messages {
  flex: 1;
  min-height: 100px;
  overflow: auto;
  padding: 24px 22px;
  display: flex;
  flex-direction: column;
  gap: 17px;
}
.message {
  max-width: 87%;
  align-self: flex-start;
}
.message.assistant {
  align-self: flex-end;
}
.message-meta {
  color: var(--muted);
  font-size: 10px;
  margin: 0 3px 7px;
}
.message.assistant .message-meta {
  text-align: right;
}
.bubble {
  background: white;
  border: 1px solid var(--border);
  border-radius: 2px 12px 12px;
  padding: 13px 15px;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  font-size: 14px;
  line-height: 1.65;
}
.assistant .bubble {
  background: #eaf3ee;
  border-color: #dfece4;
  border-radius: 12px 2px 12px 12px;
}
.message.human .bubble {
  background: #eaf0fa;
  border-color: #dce5f5;
}
.composer {
  padding: 17px 22px 19px;
  background: white;
  border-top: 1px solid var(--border);
}
.composer label {
  font-size: 11px;
  font-weight: 600;
  color: #51655b;
  display: block;
  margin-bottom: 9px;
}
textarea {
  width: 100%;
  resize: vertical;
  max-height: 180px;
  min-height: 80px;
  border: 1px solid #d8e1da;
  border-radius: 7px;
  padding: 12px;
  line-height: 1.6;
  font-size: 14px;
  color: var(--ink);
  background: #fbfcfa;
}
.composer-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: 11px;
}
.composer-footer span {
  font-size: 10px;
  color: var(--muted);
  line-height: 1.5;
}
.brief {
  border-left: 1px solid var(--border);
  padding: 26px 23px;
  overflow: auto;
  background: white;
}
.brief-heading h2 {
  font-size: 19px;
  margin-top: 8px;
  letter-spacing: -0.3px;
}
.summary {
  font-size: 13px;
  line-height: 1.75;
  margin: 20px 0;
  color: #40544c;
}
.brief dl {
  margin: 0;
}
.brief dt {
  font-size: 10px;
  color: var(--muted);
  margin-top: 14px;
}
.brief dd {
  margin: 4px 0 0;
  font-size: 13px;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
.brief-section {
  padding-top: 20px;
  margin-top: 21px;
  border-top: 1px solid var(--border);
}
.brief ul {
  padding-left: 17px;
  margin: 0;
  font-size: 12px;
  line-height: 1.7;
}
.brief li + li {
  margin-top: 8px;
}
.brief p {
  overflow-wrap: anywhere;
}
.next p {
  font-size: 13px;
  line-height: 1.7;
  margin: 0;
}
.brief-note {
  font-size: 10px;
  line-height: 1.7;
  color: var(--muted);
  margin-top: 25px;
}
.brief label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 10px;
}
.brief select {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--border);
  border-radius: 6px;
  background: #fcfdfb;
  color: var(--ink);
  padding: 9px;
  font-size: 12px;
}
.hint {
  font-size: 10px;
  line-height: 1.6;
  color: var(--muted);
}
.file {
  background: none;
  border: 0;
  display: block;
  text-align: left;
  text-decoration: underline;
  color: var(--green);
  font-size: 12px;
  padding: 10px 0;
  overflow-wrap: anywhere;
}
.icon-button {
  border: 1px solid var(--border);
  background: white;
  width: 40px;
  height: 40px;
  border-radius: 6px;
  flex-shrink: 0;
}
#back {
  display: none;
}
#notice {
  position: fixed;
  bottom: 22px;
  left: 50%;
  transform: translateX(-50%);
  background: #203c33;
  color: white;
  padding: 14px 20px;
  border-radius: 8px;
  max-width: calc(100vw - 32px);
  font-size: 13px;
  z-index: 5;
  box-shadow: 0 4px 25px #0002;
}
.list-empty {
  padding: 30px 12px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}
.send-error {
  color: #a33b29 !important;
}
@media (min-width: 1600px) {
  .desk {
    grid-template-columns: 315px minmax(400px, 1fr) 340px;
  }
  .workspace {
    padding: 0 40px 30px;
  }
  .messages {
    padding: 30px 40px;
  }
  .thread-top,
  .ownership,
  .composer {
    padding-left: 30px;
    padding-right: 30px;
  }
  .brief {
    padding: 30px;
  }
  .bubble {
    font-size: 15px;
  }
}
@media (max-width: 1200px) {
  .workspace {
    padding: 0 16px 16px;
  }
  .desk {
    grid-template-columns: 225px minmax(270px, 1fr) 245px;
  }
  .brief {
    padding: 22px 16px;
  }
  .thread-top {
    flex-wrap: wrap;
  }
  #telegram {
    margin-left: 50px;
    padding: 4px 0;
    min-height: 26px;
    border: 0;
  }
  .topbar {
    height: 95px;
  }
  .rail {
    width: 62px;
  }
  .workspace {
    width: calc(100% - 62px);
  }
}
@media (max-width: 960px) {
  body {
    height: auto;
    min-height: 100dvh;
  }
  .rail {
    display: none;
  }
  .workspace {
    width: 100%;
    padding: 0;
    height: 100dvh;
  }
  .topbar {
    height: 86px;
    padding: 15px 18px;
  }
  .topbar h1 {
    font-size: 25px;
  }
  .eyebrow {
    font-size: 8px;
  }
  .health {
    font-size: 10px;
    max-width: 120px;
    line-height: 1.5;
  }
  .desk {
    display: flex;
    border-radius: 0;
    border-right: 0;
    border-left: 0;
    flex-direction: column;
  }
  .inbox {
    flex: 1;
    border-right: 0;
  }
  .thread {
    display: none;
    flex: 1;
    overflow: hidden;
  }
  .workspace.has-selection .inbox {
    display: none;
  }
  .workspace.has-selection .thread {
    display: block;
  }
  .workspace.has-selection .brief {
    display: block;
    border: 0;
    padding: 20px;
    border-top: 1px solid var(--border);
    max-height: 38vh;
    flex-shrink: 0;
  }
  .workspace.has-selection .desk {
    overflow: auto;
  }
  .workspace.has-selection .thread {
    flex: none;
    min-height: 600px;
    height: calc(100dvh - 88px);
  }
  #back {
    display: block;
  }
  .thread-top {
    padding: 12px 16px;
    gap: 9px;
  }
  #telegram {
    margin-left: 50px;
  }
  .ownership {
    padding: 10px 16px;
  }
  .messages {
    padding: 20px 16px;
  }
  .composer {
    padding: 14px 16px;
  }
  .message {
    max-width: 94%;
  }
  .composer-footer span {
    font-size: 10px;
  }
  .brief #facts {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px 16px;
  }
  .brief dt {
    grid-column: 1;
  }
  .brief dd {
    grid-column: 2;
    margin-top: 12px;
  }
  .brief-heading h2 {
    font-size: 17px;
  }
  .brief p {
    margin: 12px 0;
  }
  .brief-section {
    margin-top: 15px;
    padding-top: 15px;
  }
}
@media (prefers-reduced-motion: reduce) {
  * {
    transition: none !important;
    scroll-behavior: auto !important;
  }
}
.top-actions {
  display: flex;
  align-items: center;
  gap: 24px;
}
.task-workspace {
  display: grid;
  grid-template-columns: minmax(320px, 430px) minmax(380px, 1fr);
  flex: 1;
  min-height: 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  overflow: hidden;
  background: white;
}
.task-new {
  overflow: auto;
  padding: 30px;
  border-right: 1px solid var(--border);
}
.task-new h2 {
  font-size: 24px;
  letter-spacing: -0.7px;
  margin: 9px 0 24px;
}
.task-new label {
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin: 19px 0 9px;
}
.task-new input,
.task-new select {
  width: 100%;
  min-height: 44px;
  padding: 11px;
  border: 1px solid var(--border);
  background: #fbfcfa;
  border-radius: 6px;
  font-size: 13px;
  color: var(--ink);
}
.task-new textarea {
  font-size: 13px;
}
.task-new .hint {
  margin: 7px 0 0;
}
.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.private-mark {
  color: var(--muted);
  font-size: 10px;
  font-weight: 400;
  margin-left: 6px;
}
.task-save {
  margin-top: 25px;
}
.task-save .button {
  width: 100%;
  min-height: 44px;
}
.task-results {
  overflow: auto;
  background: #fcfdfb;
  padding: 30px 40px;
}
.task-banner {
  background: #eaf3ee;
  border: 1px solid #dbe7de;
  border-radius: 8px;
  padding: 18px 22px;
  max-width: 850px;
  margin: 0 auto 26px;
  font-size: 13px;
  line-height: 1.7;
}
.task-banner strong {
  font-weight: 650;
}
.task-banner p {
  margin: 5px 0 0;
  color: #476455;
}
.task-card {
  border: 1px solid var(--border);
  background: white;
  border-radius: 9px;
  padding: 26px;
  max-width: 850px;
  margin: 0 auto 22px;
  line-height: 1.7;
}
.task-card-top {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: center;
  margin-bottom: 20px;
}
.task-card-top time {
  font-size: 10px;
  color: var(--muted);
}
.task-card h2 {
  font-size: 18px;
  line-height: 1.5;
  overflow-wrap: anywhere;
}
.task-meta {
  font-size: 12px;
  color: var(--muted);
  margin-top: 8px;
}
.private-budget {
  font-size: 12px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
  color: #685336;
}
.private-budget span {
  font-size: 10px;
  color: var(--muted);
  display: block;
}
.task-card p,
.task-card li {
  font-size: 13px;
}
.task-card h3 {
  margin: 25px 0 10px;
}
.task-card blockquote {
  margin: 0;
  padding: 16px 20px;
  background: #f2f6f2;
  border-left: 2px solid var(--green);
  font-size: 14px;
}
.task-card footer {
  color: var(--muted);
  font-size: 11px;
  border-top: 1px solid var(--border);
  padding-top: 16px;
  margin-top: 24px;
}
.task-card ol,
.task-card ul {
  padding-left: 20px;
}
.task-card li + li {
  margin-top: 7px;
}
#task-error {
  font-size: 12px;
  color: #963d2c;
  line-height: 1.6;
}
@media (max-width: 1100px) {
  .top-actions {
    gap: 12px;
  }
  .health {
    max-width: 140px;
  }
  .task-new {
    padding: 22px;
  }
  .task-results {
    padding: 22px;
  }
  .task-workspace {
    grid-template-columns: 350px minmax(300px, 1fr);
  }
}
@media (max-width: 960px) {
  .top-actions .health {
    display: none;
  }
  .top-actions .button {
    font-size: 11px;
  }
  .task-workspace {
    display: block;
    overflow: auto;
    border-radius: 0;
  }
  .task-new {
    border-right: 0;
    border-bottom: 1px solid var(--border);
  }
  .task-results {
    overflow: visible;
    padding: 22px 16px;
  }
  .task-new input,
  .task-new textarea,
  .task-new select {
    font-size: 16px;
  }
  .task-card {
    padding: 21px;
  }
  .task-card-top {
    flex-wrap: wrap;
  }
  .task-save {
    padding-bottom: 10px;
  }
  .button,
  .filters button {
    min-height: 44px;
  }
  .ownership .button {
    min-height: 40px;
  }
  .bubble {
    font-size: 15px;
  }
}
@media(max-width:960px){.client-heading{min-width:150px}#telegram{flex-basis:100%;justify-content:flex-start;margin-left:98px}.thread-top{gap:8px}.task-new .form-row{grid-template-columns:1fr}}
/* Shared access and team screens keep the existing West Auto Hub palette. */
[hidden]{display:none!important}
.tag.available{background:#fff2d9;color:#78561e}.tag.working{background:#e4eee8;color:#285b45}.tag.done{background:#eaf0fa;color:#3c5876}
.ownership{flex-wrap:wrap}.ownership span{flex:1;min-width:180px}.ownership .button{min-height:44px}
.topbar .muted{font-size:11px}.top-actions{gap:10px}.topbar{min-height:110px}
.login-page{min-height:100dvh;height:auto;display:grid;place-items:center;padding:30px 20px;background:#f2f5ef}
.login-card{width:min(100%,460px);padding:38px;background:white;border:1px solid var(--border);border-radius:14px}
.login-card .brand{margin:0 0 40px;width:54px;height:54px;background:var(--green);color:white;border-radius:8px}
.login-card .eyebrow{display:block;margin-bottom:13px}.login-card h1{font-size:32px;letter-spacing:-1px}
.login-card p{font-size:14px;line-height:1.75;color:var(--muted)}.login-card .button{width:100%;margin:18px 0 8px;min-height:48px}
.login-note{margin-top:30px;padding-top:22px;border-top:1px solid var(--border);font-size:13px;line-height:1.6}.login-note p{font-size:12px;color:var(--muted);line-height:1.7}
#login-status{font-size:12px;overflow-wrap:anywhere}
.team-workspace{display:grid;grid-template-columns:minmax(440px,1fr) 340px;min-height:0;flex:1;overflow:hidden;border:1px solid var(--border);border-radius:12px;background:white}
.team-main{padding:32px;overflow:auto}.team-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}
.team-intro h2{font-size:20px;line-height:1.4;letter-spacing:-.4px}.team-intro .muted{margin-top:8px}.team-section{margin-top:42px}.team-section h2{font-size:16px}
.member-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:20px 0;border-bottom:1px solid var(--border)}.member-person{flex:1;min-width:145px}.member-person strong{font-size:14px;display:block;overflow-wrap:anywhere}.member-person span{display:block;font-size:11px;color:var(--muted);margin-top:6px}.member-actions{display:flex;gap:8px;flex-wrap:wrap}.member-actions .button{min-height:44px;font-size:11px}
.team-aside{border-left:1px solid var(--border);padding:30px;background:#f9fbf7;overflow:auto}.team-aside h2{font-size:21px;line-height:1.4;margin:10px 0 25px}
.team-aside label{display:block;font-size:12px;font-weight:600;margin:18px 0 9px}.team-aside input,.team-aside select{width:100%;min-height:44px;border:1px solid #ccd9cf;background:white;border-radius:6px;padding:12px;font:inherit;font-size:14px;color:var(--ink)}
.team-aside .hint{font-size:12px;line-height:1.7;margin:10px 0 20px}.team-aside .button{min-height:44px;width:100%}.invite-result{margin-top:25px;padding:20px;border:1px solid #c9dccf;background:#eaf3ee;border-radius:9px}.invite-result p{font-size:12px;line-height:1.7;color:#486252}.invite-result input{font-size:11px;margin-bottom:14px}.invite-result label{font-size:11px}
.invitation-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid var(--border);font-size:13px}.invitation-row p{font-size:11px;color:var(--muted);margin:6px 0 0}.audit-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid #edf1ec;font-size:12px;line-height:1.6}.audit-row time{font-size:10px;white-space:nowrap;color:var(--muted)}
#team-error{color:#963d2c;font-size:13px;line-height:1.6}.team-aside .eyebrow{font-size:10px}
@media(max-width:1200px){.team-workspace{grid-template-columns:minmax(340px,1fr) 300px}.team-main,.team-aside{padding:24px}.team-intro{align-items:flex-start}.member-row>.tag{margin-left:52px}.member-actions{width:100%;padding-left:52px}.top-actions .button{font-size:11px}.top-actions .health{display:none}}
@media(max-width:960px){.team-workspace{display:flex;flex-direction:column;overflow:auto;border-radius:0}.team-aside{order:-1;border-left:0;border-bottom:1px solid var(--border);overflow:visible}.team-main{overflow:visible}.team-intro{flex-wrap:wrap}.team-aside input,.team-aside select{font-size:16px}.team-aside .login-note{display:none}.member-row>.tag{margin-left:0}.member-actions{padding-left:0}.topbar{height:auto;min-height:114px;gap:10px;flex-wrap:wrap}.topbar .top-actions{flex-wrap:wrap}.topbar .eyebrow{letter-spacing:1px}.topbar h1{font-size:24px}.ownership{gap:8px}.ownership span{flex-basis:100%}.login-card{padding:28px}.audit-row{align-items:flex-start}.login-card h1{font-size:28px}}
.composer-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.composer-tools .button{min-height:44px;font-size:12px}.composer-tools #record-status{font-size:12px;color:#a44d34}
.attachment-preview{padding:14px;background:#edf4ee;border:1px solid #d0e0d3;border-radius:8px;margin-bottom:16px;display:flex;flex-direction:column;gap:12px;font-size:13px}.attachment-preview>div{display:flex;gap:8px;justify-content:flex-end}.attachment-preview audio{width:100%;height:40px}
.bubble audio{max-width:100%;width:280px;height:44px}.bubble img{max-width:100%;max-height:280px;object-fit:contain;display:block;border-radius:7px}.composer textarea{min-height:66px}.composer label{font-size:12px}.composer-footer span{font-size:11px}
.client{padding-top:20px;padding-bottom:20px}.client-preview{line-height:1.65}.inbox-footer{font-size:11px}.client-name{font-size:14px}.filters{gap:4px}.filters button{padding-left:8px;padding-right:8px}.tag{line-height:1.6;white-space:normal}.health{font-size:11px}
#call{font-size:11px;color:var(--muted);background:#f4f7f4;border:1px solid var(--border)}#call:disabled{cursor:default;opacity:1}
@media(max-width:960px){.composer-tools .button{font-size:12px}.composer{padding-bottom:max(18px,env(safe-area-inset-bottom))}.ownership .button{font-size:11px}#call{margin-left:auto}.workspace.has-selection .thread{min-height:790px;height:calc(100dvh - 114px)}.topbar .top-actions{gap:6px}.topbar .button{padding:9px;font-size:11px}}
.login-card label,dialog label{display:block;font-size:12px;font-weight:600;margin:18px 0 9px}.login-card input,dialog input{width:100%;min-height:46px;border:1px solid #ccd9cf;border-radius:6px;background:#fbfdfa;padding:12px;font:inherit;font-size:15px;color:var(--ink)}
.setup-banner{background:#edf5ee;border:1px solid #d1e3d6;border-radius:9px;padding:20px;margin-bottom:24px;font-size:14px;line-height:1.6}.setup-banner p{font-size:13px;color:var(--muted)}
dialog{width:min(460px,calc(100vw - 32px));border:1px solid var(--border);border-radius:12px;padding:28px;color:var(--ink);box-shadow:0 20px 80px #102c2930}dialog::backdrop{background:#122d3266}dialog h2{font-size:21px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}#credentials-error{font-size:12px;color:#963d2c}.member-person span{overflow-wrap:anywhere}
@media(max-width:960px){.login-card input,dialog input{font-size:16px}}
.account-card{border:1px solid var(--border);border-radius:10px;padding:24px;margin-bottom:20px;background:#fff}.account-top{display:flex;gap:15px;align-items:flex-start;justify-content:space-between}.account-top h2{font-size:19px;margin:8px 0}.account-card p{font-size:14px;line-height:1.7;color:var(--muted)}.account-card .button{min-height:44px}.account-card img{display:block;width:240px;height:240px;max-width:100%;object-fit:contain;background:white;margin:20px auto}.account-card label{display:block;margin:16px 0 9px;font-size:14px}.account-card input,.outreach-reply textarea{width:100%;border:1px solid #b8c9c0;border-radius:6px;padding:12px;font:inherit;background:white}.account-card input{margin-bottom:14px}.task-alert{font-size:14px;color:#973e2f!important;line-height:1.6}.task-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.task-actions .button{min-height:44px}.task-card details{margin-top:18px}.task-card summary{cursor:pointer;font-size:14px;font-weight:600;padding:12px 0}.task-card .outreach-message p{white-space:pre-wrap;margin:8px 0;font-size:14px;line-height:1.65}.outreach-thread{display:flex;flex-direction:column;gap:14px;max-height:500px;overflow:auto;padding:12px 2px}.outreach-message{max-width:93%;padding:14px 17px;border:1px solid var(--border);border-radius:10px;overflow-wrap:anywhere}.outreach-message.incoming{background:#f6f8f5;align-self:flex-start}.outreach-message.outgoing{background:#eaf2ec;align-self:flex-end}.outreach-message-top{display:flex;flex-wrap:wrap;gap:10px;font-size:11px;color:var(--muted)}.outreach-reply{margin-top:18px}.outreach-reply label{display:block;font-size:13px;margin-bottom:10px}.outreach-reply .button{margin-top:10px;min-height:44px}.outreach-result{border-left:3px solid #397558;padding-left:16px}.task-card .outreach-result h3{margin-top:18px}#start-preview{font-size:15px;line-height:1.75;white-space:pre-wrap;background:#f0f5ef;padding:18px;margin:20px 0;border-radius:8px}#start-dialog{width:min(580px,calc(100vw - 32px))}.task-card h2{overflow-wrap:anywhere}.task-card .button:disabled{opacity:.5;cursor:not-allowed}.task-card details summary:focus-visible{outline:2px solid #397558;outline-offset:3px}@media(max-width:960px){.account-card{padding:20px}.account-top{flex-wrap:wrap}.account-card input,.outreach-reply textarea{font-size:16px}.task-actions .button{width:100%}.outreach-message{max-width:100%}.dialog-actions{flex-wrap:wrap}.dialog-actions .button{flex:1}}
.owner-decision{margin:20px 0;padding:18px;border:1px solid #ccb979;border-radius:8px;background:#fffaf0}.owner-decision h3{margin-top:0}.owner-decision p{overflow-wrap:anywhere}.outreach-guidance label{display:block;font-size:14px;margin-bottom:10px}.outreach-guidance textarea{display:block;width:100%;box-sizing:border-box;resize:vertical;border:1px solid #a99458;border-radius:6px;padding:12px;font:inherit;background:#fff}.outreach-guidance .button{min-height:44px}.outreach-guidance textarea:focus-visible{outline:2px solid #397558;outline-offset:2px}@media(max-width:960px){.outreach-guidance textarea{font-size:16px}.outreach-guidance .button{width:100%}}
.task-top-actions{display:flex;gap:8px;align-items:center}.task-top-actions .button{min-height:44px}#toggle-task-form{display:none}.task-workspace:has(.owner-chat){grid-template-columns:290px minmax(340px,1fr) 330px}.owner-chat{display:flex;flex-direction:column;min-height:0;overflow:hidden;border-left:1px solid var(--border);background:#f6f8f5}.owner-chat-heading{display:flex;align-items:center;justify-content:space-between;padding:23px 20px 16px;border-bottom:1px solid var(--border)}.owner-chat-heading h2{font-size:20px;margin:5px 0 0}.owner-chat-heading button{display:none;background:none;border:0;font-size:25px;min-width:44px;min-height:44px}.owner-chat-context{padding:14px 20px;border-bottom:1px solid var(--border)}.owner-chat-context label,.owner-chat-form label,.owner-budget-form label{display:block;font-size:12px;margin-bottom:7px}.owner-chat select,.owner-chat textarea,.owner-chat input{font:inherit;font-size:13px;border:1px solid #b8c9c0;border-radius:6px;padding:10px;background:#fff;width:100%;min-width:0;box-sizing:border-box}.owner-chat select{min-height:42px}.owner-chat-context p{font-size:12px;line-height:1.5;margin:10px 0 0;overflow-wrap:anywhere}#owner-task-limit{color:#746142}.owner-chat-messages{flex:1;min-height:90px;overflow-y:auto;padding:18px 16px;display:flex;flex-direction:column;gap:14px}.owner-chat-message{padding:12px 14px;border:1px solid #dde5dc;border-radius:10px;max-width:95%;font-size:13px;overflow-wrap:anywhere}.owner-chat-message p{white-space:pre-wrap;line-height:1.65;margin:6px 0}.owner-chat-message strong{font-size:11px}.owner-chat-message time{font-size:10px;opacity:.65;display:block;text-align:right}.from-owner{background:#e2eee5;align-self:flex-end}.from-agent{background:#fff;align-self:flex-start}.owner-chat-intro{font-size:13px;line-height:1.7;color:var(--muted);padding:5px}.owner-chat-intro strong{color:var(--ink)}.owner-chat-form{padding:14px 16px 18px;border-top:1px solid var(--border);background:#fff}.owner-chat-form textarea{resize:vertical;max-height:140px;min-height:78px}.owner-chat-compose{display:flex;align-items:center;gap:10px;margin-top:10px}.owner-chat-compose small{font-size:10px;line-height:1.5;color:var(--muted);flex:1}.owner-chat-compose .button{min-height:44px;padding:10px 14px}.owner-budget-form{padding:14px 16px;background:#fff9e9;border-top:1px solid #ded1a4}.owner-budget-form[hidden]{display:none}.owner-budget-form strong{font-size:13px}.owner-budget-form p{font-size:12px;line-height:1.5}.owner-budget-fields{display:grid;grid-template-columns:1fr 105px;gap:10px;margin:12px 0}.owner-budget-form .button{width:100%;min-height:44px;font-size:12px}.owner-typing{font-size:12px;color:var(--muted)}.owner-chat :is(textarea,input,select,button):focus-visible{outline:2px solid #397558;outline-offset:2px}.owner-chat button:disabled{opacity:.5;cursor:wait}@media(min-width:1251px){.task-workspace:has(.owner-chat) .task-new{padding:22px}.task-workspace:has(.owner-chat) .task-results{padding:24px}.task-workspace:has(.owner-chat) .form-row{grid-template-columns:1fr;gap:0}}@media(min-width:961px) and (max-width:1250px){.task-workspace:has(.owner-chat){grid-template-columns:minmax(0,1fr) 320px}.task-workspace:has(.owner-chat) .task-new{display:none}.task-workspace.form-open:has(.owner-chat) .task-new{display:block;grid-column:1;max-height:40vh;overflow:auto}.task-workspace:has(.owner-chat) .task-results{grid-column:1;min-height:0}.owner-chat{grid-column:2;grid-row:1/span 2}#toggle-task-form{display:block}}@media(max-width:960px){.task-top-actions{gap:6px;flex-wrap:wrap;justify-content:flex-end}.task-top-actions .button{font-size:11px;padding:8px 10px}.owner-chat{display:none;position:fixed;z-index:40;inset:80px 12px 12px;border:1px solid var(--border);border-radius:12px;box-shadow:0 15px 70px #142a2833}.coach-open .owner-chat{display:flex}.owner-chat-heading button{display:block}.owner-chat select,.owner-chat textarea,.owner-chat input{font-size:16px}.owner-chat-heading{padding:12px 16px}.owner-chat-context{padding:10px 16px}.owner-chat-messages{min-height:50px}}
.owner-clock{margin-top:12px;padding-top:10px;border-top:1px solid var(--border);display:grid;grid-template-columns:minmax(0,1fr) 125px;align-items:center;gap:5px 8px}.owner-clock strong{font-size:12px;grid-column:1/-1;font-weight:500}.owner-clock label{font-size:10px;margin:0}.owner-clock select{min-height:36px;padding:6px;font-size:12px}.owner-chat-heading,.owner-chat-context,.owner-chat-form,.owner-budget-form{flex-shrink:0}.owner-chat{overflow-y:auto}
.outreach-thread,.owner-chat-messages,.task-results{overflow-anchor:none}.owner-chat-context details{margin-top:10px;font-size:12px}.owner-chat-context details summary{cursor:pointer;padding:6px 0;min-height:32px}.owner-chat-context details form{padding:10px 0}.owner-chat-context details .button{min-height:44px;font-size:12px;width:100%;margin-top:10px}.owner-chat-context .check-label{display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;margin:8px 0}.owner-chat-context .check-label input{width:18px;height:18px;flex:none}.owner-chat-context .check-label small{display:block;font-size:10px;color:var(--muted)}.task-observer .task-new,.task-observer .owner-chat,.task-observer .account-card,.task-observer .task-banner,.task-observer #open-owner-chat,.task-observer #toggle-task-form{display:none!important}.task-observer .task-workspace:has(.owner-chat){grid-template-columns:minmax(0,1fr)}.task-observer .task-results{grid-column:1}.owner-chat-context{max-height:48vh;overflow-y:auto}

/* Section access stays inside the existing team card. */
.member-access { grid-column: 2 / -1; width: 100%; border-top: 1px solid var(--line, #dee4df); padding-top: 16px; }
.member-access fieldset,.access-options { border: 0; padding: 0; margin: 0 0 12px; min-width: 0; }
.member-access legend,.access-options legend { font-size: 13px; font-weight: 700; margin-bottom: 8px; }
.check-label { display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.check-label input[type=checkbox] { width: 18px; height: 18px; flex: 0 0 18px; padding: 0; margin: 0; accent-color: #255c3c; }
.member-access [data-access-status] { display: inline-block; margin-left: 8px; }
@media(max-width:700px) { .member-access { grid-column: 1 / -1; } }
.team-aside .check-label{display:flex;align-items:center;gap:10px;min-height:44px;margin:6px 0;font-weight:400;line-height:1.5}
.team-aside .check-label input{min-height:18px;width:18px;padding:0}
