/* Shared workspace skin. Data, permissions, and task transitions stay in their modules. */
:root {
  --bg:#f6f7f8; --surface:#fff; --surface-2:#f1f4f4;
  --border:#e3e7e8; --border-2:#ccd4d5;
  --text:#202629; --muted:#5d686d; --muted-2:#697378;
  --ink:#222b2d; --ink-hover:#11191b; --ink-contrast:#fff;
  --accent:#087f70; --accent-hover:#066859; --accent-soft:#e9f4f0;
  --hi:#edf2f1; --ring:rgba(8,127,112,.4); --done:#087f70;
  --radius:8px; --radius-sm:6px; --radius-lg:8px;
  --font:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --font-display:var(--font); --font-mono:ui-monospace,SFMono-Regular,monospace;
  --shadow:0 1px 2px rgba(25,38,40,.025);
  --shadow-md:0 3px 12px rgba(25,38,40,.06);
  --shadow-lg:0 8px 24px rgba(25,38,40,.09);
  --shadow-pop:0 16px 48px rgba(25,38,40,.16);
}
@media (prefers-color-scheme:dark) {
  :root:not([data-theme]) {
    --bg:#15191a; --surface:#1d2223; --surface-2:#252c2d;
    --border:#30393b; --border-2:#465254;
    --text:#eef3f2; --muted:#b1bdbd; --muted-2:#a0aeae;
    --ink:#e8f0ee; --ink-hover:#fff; --ink-contrast:#172120;
    --accent:#77d4bd; --accent-hover:#a1e4d3; --accent-soft:#253e36;
    --hi:#2a3433; --ring:rgba(119,212,189,.5); --done:#77d4bd;
    --shadow:0 1px 2px #0002; --shadow-md:0 3px 12px #0003;
    --shadow-lg:0 8px 24px #0004; --shadow-pop:0 16px 48px #0006;
  }
}
:root[data-theme=dark] {
  --bg:#15191a; --surface:#1d2223; --surface-2:#252c2d;
  --border:#30393b; --border-2:#465254;
  --text:#eef3f2; --muted:#b1bdbd; --muted-2:#a0aeae;
  --ink:#e8f0ee; --ink-hover:#fff; --ink-contrast:#172120;
  --accent:#77d4bd; --accent-hover:#a1e4d3; --accent-soft:#253e36;
  --hi:#2a3433; --ring:rgba(119,212,189,.5); --done:#77d4bd;
  --shadow:0 1px 2px #0002; --shadow-md:0 3px 12px #0003;
  --shadow-lg:0 8px 24px #0004; --shadow-pop:0 16px 48px #0006;
}
body[data-workspace] {font-family:var(--font);line-height:1.5}
body[data-workspace] * {letter-spacing:0}
body[data-workspace] button,body[data-workspace] input,body[data-workspace] select,body[data-workspace] textarea {font-family:var(--font)}
body[data-workspace=crm] .main {min-width:0}
body[data-workspace=crm] .brand {padding:25px 18px 20px;gap:7px}
body[data-workspace=crm] .brand-dot {width:7px;height:7px;flex-basis:7px;box-shadow:none;order:1;align-self:flex-start;margin-top:20px}
body[data-workspace=crm] .brand-name {font-size:26px;line-height:1.15;text-transform:lowercase;font-weight:750}
body[data-workspace=crm] .brand>.brand-dot {display:none}
body[data-workspace=crm] .brand-name::after {content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-left:5px}
body[data-workspace=crm] .brand-sub {font-size:10px;text-transform:none;margin-top:8px;color:var(--muted)}
body[data-workspace=crm] .sb-collapse-btn {order:2}
body[data-workspace=crm] .nav {padding:5px 12px}
body[data-workspace=crm] .nav-section {font-size:11px;text-transform:none;font-weight:400;padding:23px 10px 9px}
body[data-workspace=crm] .nav-item {border-radius:6px;font-size:13px;min-height:38px;padding:9px 10px;gap:10px}
body[data-workspace=crm] .nav-item.active {color:var(--accent);background:var(--accent-soft)}
body[data-workspace=crm] .nav-item.active .ic {color:var(--accent)}
body[data-workspace=crm] .nav-item .count {font-family:var(--font);font-size:11px}
body[data-workspace=crm] .nav-item .swatch.mono {width:9px;height:9px;flex-basis:9px;border-radius:2px;font-size:0}
body[data-workspace=crm] .nav-item .swatch.has-img {border-radius:4px}
body[data-workspace=crm] .nav-item .proj-mv {opacity:.3;transition:opacity .15s}
body[data-workspace=crm] .nav-item:hover .proj-mv,body[data-workspace=crm] .nav-item:focus-within .proj-mv {opacity:1}
body[data-workspace=crm] .user-row {padding:12px 8px}
body[data-workspace=crm] .avatar {border-radius:50%;background:var(--hi);color:var(--text);font-size:11px}
body[data-workspace=crm] .topbar {padding:0 26px;gap:12px;min-height:64px}
body[data-workspace=crm] .topbar h1 {font-size:17px}
body[data-workspace=crm] .tabbtn {border-radius:0;border-bottom:2px solid transparent;padding:12px 9px;background:none;font-size:12px}
body[data-workspace=crm] .tabbtn.on {border-bottom-color:var(--accent);color:var(--accent);background:none}
body[data-workspace=crm] .tabbtn:hover {background:var(--surface-2)}
body[data-workspace=crm] .subtab {border-radius:0;border:0;border-bottom:2px solid transparent;background:none;font-size:12px;padding:10px 12px}
body[data-workspace=crm] .subtab.on {border-color:var(--accent);background:none;color:var(--accent)}
body[data-workspace=crm] .btn {font-weight:500;border-radius:6px;min-height:32px}
body[data-workspace=crm] .btn:active {transform:translateY(1px)}
body[data-workspace=crm] .moduleview {padding:28px 30px}
body[data-workspace=crm] .home-sec {margin-bottom:30px}
body[data-workspace=crm] .home-h {color:var(--text);font-size:15px;line-height:1.5;flex-wrap:wrap;gap:8px;margin:0 0 16px}
body[data-workspace=crm] .kpis {gap:0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:20px 0;margin-bottom:24px}
body[data-workspace=crm] .kpi {background:none;border:0;border-right:1px solid var(--border);border-radius:0;padding:0 20px;box-shadow:none;min-width:0;transform:none}
body[data-workspace=crm] .kpi:first-child {padding-left:0}
body[data-workspace=crm] .kpi:last-child {border-right:0}
body[data-workspace=crm] .kpi:hover {box-shadow:none;transform:none}
body[data-workspace=crm] .kpi .lab {text-transform:none;font-size:12px;font-weight:400;line-height:1.5;color:var(--muted)}
body[data-workspace=crm] .kpi .val {font-size:27px;font-weight:600;line-height:1.3;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
body[data-workspace=crm] .kpi .ksub {font-size:11px;line-height:1.6;color:var(--muted);margin-top:6px}
body[data-workspace=crm] .kpi-clk:hover {background:var(--accent-soft)}
body[data-workspace=crm] .tbl-wrap {border:1px solid var(--border-2);border-radius:6px;background:var(--surface)}
body[data-workspace=crm] .dtable th {background:var(--surface-2);text-transform:none;padding:11px 10px;font-weight:500;font-size:11px}
body[data-workspace=crm] .dtable td {padding:8px 7px;font-size:13px}
body[data-workspace=crm] .dtable tr:hover td {background:var(--surface)}
body[data-workspace=crm] .chartbox {border:0;border-radius:0;background:none;box-shadow:none;padding:16px 0}
body[data-workspace=crm] .zh-hero {background:none;border:0;box-shadow:none;border-radius:0;padding:0 0 24px;margin-bottom:8px;gap:14px}
body[data-workspace=crm] .zh-nm {font-size:24px;line-height:1.3}
body[data-workspace=crm] .zh-av {border-radius:50%;width:48px;height:48px;flex:0 0 48px}
body[data-workspace=crm] .zh-hero .disc-start {font-size:11px}
body[data-workspace=crm] .ctrl-block {border:0;border-radius:0;background:none;border-bottom:1px solid var(--border)}
body[data-workspace=crm] .ctrl-bhead {padding:14px 0;gap:9px;flex-wrap:wrap}
body[data-workspace=crm] .alert-list {gap:0}
body[data-workspace=crm] .alert-row {border:0;border-radius:0;background:none;box-shadow:none;padding:14px 0;border-bottom:1px solid var(--border)}
body[data-workspace=crm] .alert-row:hover {background:var(--surface)}
body[data-workspace=crm] .alert-t {font-size:13px;font-weight:500;line-height:1.5}
body[data-workspace=crm] .alert-sub {font-size:12px;line-height:1.6}
body[data-workspace=crm] .apr-col {border-radius:0;background:none;border:0;border-top:1px solid var(--border);padding:16px 0}
body[data-workspace=crm] .up-row,body[data-workspace=crm] .dec-row {border:0;border-bottom:1px solid var(--border);border-radius:0;background:none;padding:14px 0}
body[data-workspace=crm] .up-name {white-space:normal;overflow-wrap:anywhere}
body[data-workspace=crm] .board {padding:22px 26px;gap:18px}
body[data-workspace=crm] .col {background:color-mix(in srgb,var(--surface-2) 88%,transparent);border:1px solid var(--border-2);border-radius:8px;width:300px;flex:0 0 300px;min-width:0;overflow:hidden}
body[data-workspace=crm] .col-head {padding:12px 10px;min-height:48px;border-bottom:1px solid var(--border);gap:7px;flex-shrink:0}
body[data-workspace=crm] .col-label {min-width:0}
body[data-workspace=crm] .col-head .num {border:0;background:var(--hi);border-radius:4px;font-family:var(--font);padding:1px 6px}
body[data-workspace=crm] .col-body {padding:10px;overscroll-behavior-y:contain;scrollbar-gutter:stable}
body[data-workspace=crm] .col.collapsed {width:48px;flex:0 0 48px;height:240px;min-height:180px;align-self:flex-start;background:var(--surface-2);transition:background-color .16s,border-color .16s}
body[data-workspace=crm] .col.collapsed:hover {background:var(--surface);border-color:var(--accent)}
body[data-workspace=crm] .col.collapsed .col-head {writing-mode:horizontal-tb;transform:none;flex-direction:column;justify-content:flex-start;align-items:center;width:100%;height:100%;padding:14px 0;border:0;gap:12px}
body[data-workspace=crm] .col.collapsed .bar {width:18px;height:3px;flex:0 0 3px}
body[data-workspace=crm] .col.collapsed .col-label {writing-mode:vertical-rl;flex:0 1 auto;max-height:calc(100% - 70px);font-size:12px;font-weight:600}
body[data-workspace=crm] .col.collapsed .num {transform:none;margin:0;padding:2px 4px;min-width:26px;text-align:center;font-variant-numeric:tabular-nums}
body[data-workspace=crm] .col:focus-visible {outline:2px solid var(--accent);outline-offset:2px}
body[data-workspace=crm] .col-add {border:1px dashed var(--border-2);border-radius:6px;background:var(--surface)}
body[data-workspace=crm] .col-add:focus-within {border-style:solid;border-color:var(--accent)}
body[data-workspace=crm] .col-add input {min-width:0}
body[data-workspace=crm] .col-add input:focus {border-color:transparent;background:none;box-shadow:none}
body[data-workspace=crm] .col-add-tile {border:1px dashed var(--border-2);border-radius:6px;background:var(--surface-2);min-height:48px}
body[data-workspace=crm] .card {border-color:var(--border-2);border-radius:8px;box-shadow:var(--shadow);transition:border-color .16s,box-shadow .16s}
body[data-workspace=crm] .card:hover {transform:none;box-shadow:var(--shadow-md)}
body[data-workspace=crm] .cbody {padding:14px}
body[data-workspace=crm] .ctitle {font-size:13px;line-height:1.55}
body[data-workspace=crm] .cfoot {margin-top:12px;gap:8px;flex-wrap:wrap}
body[data-workspace=crm] .cstripe {width:2px;flex-basis:2px}
body[data-workspace=crm] .card.stale {opacity:1}
body[data-workspace=crm] .panel-head {padding:20px 24px}
body[data-workspace=crm] .panel-body {padding:24px}
body[data-workspace=crm] .panel-foot {padding:16px 24px}
body[data-workspace=crm] .overlay {animation-duration:160ms}
body[data-workspace=crm] .panel {animation-duration:240ms;animation-timing-function:cubic-bezier(.2,.8,.2,1);will-change:transform}
body[data-workspace=crm] .overlay.closing,body[data-workspace=crm] .overlay.closing .panel,body[data-workspace=crm] .overlay.closing .modal-card {animation-duration:180ms}
body[data-workspace=crm] .field label {text-transform:none;font-size:12px;line-height:1.5;color:var(--muted);font-weight:500}
body[data-workspace=crm] .field input,body[data-workspace=crm] .field select,body[data-workspace=crm] .field textarea {border-radius:6px;background:var(--surface-2);border-color:var(--border-2);padding:10px 12px}
body[data-workspace=crm] #dTitle {font-size:20px;line-height:1.4;font-weight:600}
body[data-workspace=crm] .day-view {max-width:1100px}
body[data-workspace=crm] .day-toolbar {padding-bottom:22px;margin-bottom:12px;border-bottom:1px solid var(--border)}
body[data-workspace=crm] .day-toolbar h2 {font-size:24px}
body[data-workspace=crm] .day-row {padding:17px 0}
body[data-workspace=crm] .day-task strong {font-size:14px;font-weight:500}
body[data-workspace=crm] .day-task small {font-size:12px;line-height:1.6}
body[data-workspace=crm] .auth-box {border-radius:8px;box-shadow:var(--shadow-md)}
.workspace-home-grid {display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:32px;align-items:start}
.workspace-home-main,.workspace-home-rail {min-width:0}
.workspace-home-rail {border-left:1px solid var(--border);padding-left:24px}
.workspace-home-rail .goal-row {padding:14px 0}
.workspace-agent-link {display:flex;align-items:center;gap:12px;width:100%;padding:14px 0;border-bottom:1px solid var(--border);text-align:left}
.workspace-agent-link:hover {background:var(--surface)}
.workspace-agent-link img {width:46px;height:46px;object-fit:cover;border-radius:50%;background:var(--surface-2);flex:0 0 46px}
.workspace-agent-link strong {font-size:13px;font-weight:500;display:block}
.workspace-agent-link small {font-size:11px;display:block;color:var(--muted);margin-top:3px}
.workspace-agent-link .ic {margin-left:auto;color:var(--muted)}
.workspace-home-main .dtable {min-width:550px}
.workspace-home-summary .kpis {grid-template-columns:repeat(5,minmax(0,1fr))}
.workspace-home-summary .kpi {padding-right:16px;padding-left:16px}
.workspace-nav-agents {margin-top:8px}
body[data-workspace=agents] {padding:28px 30px 50px}
body[data-workspace=agents] .h1 {font-size:24px;line-height:1.4}
body[data-workspace=agents] .grp {margin-top:30px;padding-top:18px;border-top:1px solid var(--border)}
body[data-workspace=agents] .grp-h b {font-size:15px;font-weight:600}
body[data-workspace=agents] .grid {gap:12px}
body[data-workspace=agents] .card {border-radius:8px;padding:18px;box-shadow:none;min-height:100px}
body[data-workspace=agents] .card:hover {transform:none;box-shadow:var(--shadow-md)}
body[data-workspace=agents] .card .av {border-radius:50%;border:0}
body[data-workspace=agents] .card .rl {font-size:12px}
body[data-workspace=agents] .portrait {background:var(--surface-2);border:0;box-shadow:none}
body[data-workspace=agents] .info {background:none;border:0;box-shadow:none;border-radius:0;border-top:1px solid var(--border);padding:20px 0}
body[data-workspace=agents] .info h3 {font-size:13px;text-transform:none;color:var(--text)}
body[data-workspace=agents] .panel {border-radius:8px;box-shadow:none}
body[data-workspace=agents] .bubble {border-radius:8px;overflow-wrap:anywhere}
body[data-workspace=agents] .bubble.me {background:var(--ink);color:var(--ink-contrast)}
body[data-workspace=agents] .chat-input button,body[data-workspace=agents] .ap-yes {background:var(--ink);color:var(--ink-contrast)}
body[data-workspace=agents] .chat-input input {min-width:0;border-radius:6px}
body[data-workspace=agents] .chat-input button {border-radius:6px}
body[data-workspace=agents].task-compact {padding:0}
body[data-workspace=agents].task-compact .chat {border-radius:0}
@media(min-width:761px) {
  body[data-workspace=crm] .sidebar {width:232px;flex-basis:232px}
}
@media(max-width:1200px) {
  .workspace-home-grid {grid-template-columns:1fr}
  .workspace-home-rail {border-left:0;padding-left:0;border-top:1px solid var(--border);padding-top:24px;display:grid;grid-template-columns:1fr 1fr;gap:28px}
  body[data-workspace=crm] .topbar {padding-left:18px;padding-right:18px;gap:8px}
  body[data-workspace=crm] .tabbtn {padding-left:8px;padding-right:8px}
}
@media(max-width:760px) {
  body[data-workspace=crm] .brand {padding:20px 18px}
  body[data-workspace=crm] .nav-item {font-size:14px;min-height:46px;padding:12px}
  body[data-workspace=crm] .nav-item .swatch.mono {width:12px;height:12px;flex-basis:12px}
  body[data-workspace=crm] .topbar {padding:10px 12px;min-height:58px}
  body[data-workspace=crm] .moduleview {padding:22px 16px}
  body[data-workspace=crm] .board {padding:16px 12px;gap:12px;scroll-snap-type:x proximity}
  body[data-workspace=crm] .col:not(.collapsed) {width:84vw;flex-basis:84vw}
  body[data-workspace=crm] .kpis {grid-template-columns:repeat(2,minmax(0,1fr));row-gap:22px;padding:18px 0}
  body[data-workspace=crm] .kpi {padding:0 12px;border-right:0}
  body[data-workspace=crm] .kpi:nth-child(odd) {padding-left:0;border-right:1px solid var(--border)}
  body[data-workspace=crm] .kpi:last-child {border-right:0}
  body[data-workspace=crm] .kpi .val {font-size:24px}
  body[data-workspace=crm] .zh-nm {font-size:21px}
  body[data-workspace=crm] .panel-head,body[data-workspace=crm] .panel-body,body[data-workspace=crm] .panel-foot {padding:16px}
  body[data-workspace=crm] .field input,body[data-workspace=crm] .field textarea,body[data-workspace=crm] .field select {font-size:16px}
  body[data-workspace=crm] .up-row {flex-wrap:wrap}
  body[data-workspace=crm] .up-name {flex-basis:100%}
  .workspace-home-rail {display:block}
  body[data-workspace=agents] {padding:22px 16px}
  body[data-workspace=agents] .info-grid {grid-template-columns:minmax(0,1fr)}
  body[data-workspace=agents] .chat-input input {font-size:16px}
}
@media(prefers-reduced-motion:reduce) {
  body[data-workspace] *,body[data-workspace] *::before,body[data-workspace] *::after {animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
