/* ============================================================================
   CW3 Admin design-system kit — formal tokens + component base classes.
   Loads AFTER cw3-admin.css. Scoped to .cw3-admin (the admin shell wrapper).
   Colour/font tokens come from .cw3 (cw3.css); this file adds the
   spacing/radius/shadow tokens the visual spec formalised, then the kit.
============================================================================ */

/* Formalised layout tokens — augment the .cw3 token block. */
.cw3, .cw3-admin {
    --sp-1: 4px;  --sp-2: 8px;  --sp-3: 12px; --sp-4: 16px;
    --sp-5: 20px; --sp-6: 24px; --sp-7: 36px;
    --r-sm: 8px;  --r-md: 10px; --r-lg: 12px; --r-pill: 100px;
    --shadow-card: 0 1px 0 rgba(255,255,255,.04), 0 30px 80px -20px rgba(0,0,0,.6);
}

/* ── StatusBadge pills (accent text on accent@12%) ───────────────────── */
.cwk-badge {
    font-family: var(--cw3-mono);
    font-size: 8.5px; letter-spacing: .06em;
    border-radius: var(--r-pill); padding: 2px 8px;
    display: inline-flex; align-items: center; gap: 5px; white-space: nowrap;
}
.cwk-badge--mech    { color: var(--cw3-mech);    background: rgba(34,211,238,.12); }
.cwk-badge--plumb   { color: var(--cw3-plumb);   background: rgba(167,139,250,.12); }
.cwk-badge--struct  { color: var(--cw3-struct);  background: rgba(255,138,76,.12); }
.cwk-badge--elec    { color: var(--cw3-elec);    background: rgba(250,204,21,.12); }
.cwk-badge--success { color: var(--cw3-success); background: rgba(74,222,128,.12); }
.cwk-badge--clash   { color: var(--cw3-clash);   background: rgba(244,63,94,.12); }
.cwk-badge--muted   { color: var(--cw3-text-3);  background: rgba(168,174,183,.10); }
.cwk-badge .cwk-dot { width: 5px; height: 5px; border-radius: var(--r-pill); }

/* ── Page header ─────────────────────────────────────────────────────── */
.cwk-pageheader { display:flex; align-items:flex-start; gap:var(--sp-3); margin-bottom:var(--sp-4); }
.cwk-pageheader__grow { flex:1; min-width:0; }
.cwk-pageheader__title { margin:0; font-size:19px; font-weight:600; letter-spacing:-.01em; color:var(--cw3-text); }
.cwk-pageheader__desc { margin:3px 0 0; font-size:11px; color:var(--cw3-text-3); }

/* ── Buttons ─────────────────────────────────────────────────────────── */
.cwk-btn { font-size:11px; font-weight:600; border-radius:var(--r-sm); padding:7px 12px; border:0; cursor:pointer;
           background:var(--cw3-text); color:#0b0c0f; }
.cwk-btn--ghost { background:transparent; color:var(--cw3-text-2); border:1px solid var(--cw3-line-2); }
.cwk-btn--cyan  { background:transparent; color:var(--cw3-mech); border:1px solid rgba(34,211,238,.4); }

/* ── Toolbar ─────────────────────────────────────────────────────────── */
/* The filter bar is deliberately two-tiered: search and actions stay easy to find, while filters get a calm, even control rail. */
.cwk-toolbar { display:grid; grid-template-columns:minmax(280px,1fr) auto; grid-template-areas:"search actions" "filters filters"; align-items:center; gap:10px;
               margin:0 var(--sp-1) var(--sp-3); padding:10px 12px;
               background:var(--cw3-panel); border:1px solid var(--cw3-line); border-radius:var(--r-md); }
.cwk-toolbar--no-search { grid-template-columns:1fr auto; grid-template-areas:"filters actions"; }
.cwk-toolbar--no-search .cwk-toolbar__filters { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding-top:0; }
.cwk-toolbar--no-search .cwk-toolbar__filters > * { width:auto !important; }
.cwk-toolbar--no-filters { grid-template-columns:1fr auto; grid-template-areas:"search actions"; }
.cwk-toolbar__search { grid-area:search; width:100%; min-width:0; box-sizing:border-box; background:var(--cw3-bg); border:1px solid var(--cw3-line-2);
                       border-radius:var(--r-sm); padding:7px 10px; font-size:11px; color:var(--cw3-text); }
.cwk-toolbar__filters { grid-area:filters; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:center; gap:8px; min-width:0; padding-top:1px; }
.cwk-toolbar__filters > * { width:100% !important; min-width:0 !important; box-sizing:border-box; }
.cwk-toolbar__filters .cw3-dlg-select, .cwk-toolbar__filters .cwk-toolbar__search { height:38px; padding-top:0; padding-bottom:0; }
.cwk-toolbar__actions { grid-area:actions; display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.cwk-toolbar__actions .cwk-btn { white-space:nowrap; }

/* ?? Summary strip ??????????????????????????????????????????????????????? */
.cwk-summary { display:grid; grid-template-columns:repeat(auto-fit, minmax(150px, 1fr)); gap:var(--sp-2); margin:0 0 var(--sp-3); }
.cwk-summary__card { --cwk-summary-accent:var(--cw3-mech); position:relative; min-width:0; overflow:hidden;
                     padding:var(--sp-3) var(--sp-3) var(--sp-3) calc(var(--sp-3) + 3px); background:var(--cw3-panel-2);
                     border:1px solid var(--cw3-line); border-radius:var(--r-md); }
.cwk-summary__card::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:var(--cwk-summary-accent); }
.cwk-summary__card--attention { border-color:var(--cwk-summary-accent); }
.cwk-summary__label { margin:0; font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--cw3-text-3); }
.cwk-summary__value { margin:5px 0 0; font-size:22px; font-weight:600; line-height:1; letter-spacing:-.01em; color:var(--cw3-text); font-feature-settings:"tnum"; }
.cwk-summary__card--attention .cwk-summary__value { color:var(--cwk-summary-accent); }
.cwk-summary__support { margin:var(--sp-1) 0 0; font-size:9.5px; line-height:1.35; color:var(--cw3-text-3); }

/* ?? Inline expansion row ???????????????????????????????????????????????? */
.cwk-expand-row { background:var(--cw3-panel); border:1px solid var(--cw3-line); border-radius:var(--r-md); overflow:hidden; }
.cwk-expand-row--expanded { border-color:var(--cw3-line-2); }
.cwk-expand-row__main { display:flex; align-items:stretch; min-width:0; }
.cwk-expand-row__trigger { width:38px; flex:none; border:0; border-right:1px solid var(--cw3-line); background:var(--cw3-panel-2); color:var(--cw3-text-2); cursor:pointer; }
.cwk-expand-row__trigger:hover { color:var(--cw3-mech); background:rgba(34,211,238,.08); }
.cwk-expand-row__trigger:focus-visible { position:relative; z-index:1; outline:2px solid var(--cw3-mech); outline-offset:-2px; }
.cwk-expand-row__content { flex:1; min-width:0; padding:var(--sp-3); }
.cwk-expand-row__detail { padding:var(--sp-3); border-top:1px solid var(--cw3-line); border-left:2px solid var(--cw3-mech); background:var(--cw3-panel-2); }

/* ── StatCard ────────────────────────────────────────────────────────── */
.cwk-stat { background:var(--cw3-panel-2); border:1px solid var(--cw3-line); border-radius:var(--r-md); padding:var(--sp-3); }
.cwk-stat__k { font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--cw3-text-3); }
.cwk-stat__v { font-size:22px; font-weight:600; margin-top:5px; letter-spacing:-.01em; color:var(--cw3-text); }
.cwk-stat__d { font-size:9.5px; color:var(--cw3-text-3); margin-top:2px; }
.cwk-stat--soon { opacity:.55; }
.cwk-stat__soon { font-family:var(--cw3-mono); font-size:9px; letter-spacing:.1em; color:var(--cw3-text-3);
                  border:1px dashed var(--cw3-line-2); border-radius:var(--r-pill); padding:2px 8px; margin-top:6px; display:inline-block; }

/* ── Activity feed row ───────────────────────────────────────────────── */
.cwk-feed { display:flex; gap:var(--sp-3); padding:9px 13px; border-bottom:1px solid var(--cw3-line); font-size:11.5px; align-items:flex-start; }
.cwk-feed:last-child { border-bottom:0; }
.cwk-feed__ico { width:22px; height:22px; border-radius:7px; background:var(--cw3-panel-2); border:1px solid var(--cw3-line-2);
                 flex:none; display:flex; align-items:center; justify-content:center; font-size:11px; }
.cwk-feed__txt { color:var(--cw3-text-2); flex:1; min-width:0; }
.cwk-feed__txt b { color:var(--cw3-text); font-weight:600; }
.cwk-feed__time { font-family:var(--cw3-mono); font-size:9px; color:var(--cw3-text-3); white-space:nowrap; }

/* ── States ──────────────────────────────────────────────────────────── */
.cwk-state { text-align:center; padding:var(--sp-6); color:var(--cw3-text-3); font-size:12px; }
.cwk-state--error { color:var(--cw3-clash); }
.cwk-state__ref { font-family:var(--cw3-mono); font-size:9px; color:var(--cw3-text-3); }
.cwk-skel { height:34px; border-bottom:1px solid var(--cw3-line);
            background:linear-gradient(90deg, var(--cw3-panel) 0%, var(--cw3-panel-2) 50%, var(--cw3-panel) 100%);
            background-size:200% 100%; animation:cwk-shimmer 1.2s infinite; }
@keyframes cwk-shimmer { 0%{background-position:200% 0} 100%{background-position:-200% 0} }

/* ── DetailDrawer (right-side) ───────────────────────────────────────── */
.cwk-drawer-overlay { position:fixed; inset:0; background:rgba(0,0,0,.45); z-index:1400; display:flex; justify-content:flex-end; }
.cwk-drawer { min-width:min(560px,92vw); max-width:92vw; height:100%; background:var(--cw3-panel); border-left:1px solid var(--cw3-line-2);
              box-shadow:var(--shadow-card); display:flex; flex-direction:column; animation:cwk-slidein .16s ease-out; }
@keyframes cwk-slidein { from{transform:translateX(24px); opacity:.6} to{transform:translateX(0); opacity:1} }
.cwk-drawer__head { padding:11px 13px; border-bottom:1px solid var(--cw3-line); display:flex; align-items:center; gap:9px; }
.cwk-drawer__body { padding:11px 13px; overflow:auto; flex:1; }
.cwk-drawer__kv { display:flex; justify-content:space-between; padding:5px 0; font-size:10.5px; border-bottom:1px solid var(--cw3-line); }
.cwk-drawer__kv .k { color:var(--cw3-text-3); font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.1em; text-transform:uppercase; }
.cwk-drawer__lbl { font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.14em; text-transform:uppercase; color:var(--cw3-text-3); margin:12px 0 6px; }
.cwk-drawer__footer { padding:11px 13px; border-top:1px solid var(--cw3-line); display:flex; gap:var(--sp-2); }

/* ── Admin shell (sidebar + topbar) ──────────────────────────────────── */
html:has(.cw3-admin), body:has(.cw3-admin), #app:has(.cw3-admin) { min-height:100vh; background:var(--cw3-bg, #0E1014); }
.cw3-admin.cwk-shell { min-height:100vh; background:var(--cw3-bg); }
.cwk-shell { display:flex; min-height:100vh; background:var(--cw3-bg); }
.cwk-side { width:220px; flex:none; border-right:1px solid var(--cw3-line); background:var(--cw3-panel); padding:var(--sp-3) 0; overflow:auto; transition:width .18s ease; }
.cwk-side__grp { font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--cw3-text-3); padding:10px 16px 4px; }
.cwk-side__link { display:block; font-size:12px; color:var(--cw3-text-2); padding:7px 16px; text-decoration:none; white-space:nowrap; }
.cwk-side__link:hover { color:var(--cw3-text); background:rgba(255,255,255,.02); }
.cwk-side__link.active { color:var(--cw3-text); border-left:2px solid var(--cw3-mech); background:linear-gradient(90deg, rgba(34,211,238,.10), transparent); }
.cwk-side__link--soon { opacity:.5; pointer-events:none; }
.cwk-topbar { display:flex; align-items:center; gap:var(--sp-2); padding:10px 16px; border-bottom:1px solid var(--cw3-line); background:var(--cw3-panel); }
.cwk-sidebar-toggle { width:28px; height:28px; flex:none; border:1px solid var(--cw3-line-2); border-radius:6px; background:transparent; color:var(--cw3-text-2); font:20px/1 var(--cw3-mono); cursor:pointer; }
.cwk-sidebar-toggle:hover { color:var(--cw3-mech); border-color:var(--cw3-mech); background:rgba(34,211,238,.06); }
.cwk-sidebar-toggle:focus-visible, .cwk-side__link:focus-visible { outline:2px solid var(--cw3-mech); outline-offset:-2px; }
.cwk-topbar__brand { font-family:var(--cw3-mono); font-size:10px; letter-spacing:.16em; text-transform:uppercase; color:var(--cw3-text-2); }
.cwk-topbar__brand b { color:var(--cw3-text); }
.cwk-topbar__env { margin-left:auto; font-family:var(--cw3-mono); font-size:9px; letter-spacing:.12em; color:var(--cw3-mech); border:1px solid var(--cw3-mech); border-radius:var(--r-pill); padding:2px 9px; }
.cwk-main { flex:1; min-width:0; padding:var(--sp-5) var(--sp-5); overflow:auto; }
.cwk-shell--sidebar-collapsed .cwk-side { width:58px; }
.cwk-shell--sidebar-collapsed .cwk-side > div:first-child { padding-left:0 !important; padding-right:0 !important; }
.cwk-shell--sidebar-collapsed .cwk-side > div:first-child .cwk-side__link { font-size:0; padding:8px 0; text-align:center; }
.cwk-shell--sidebar-collapsed .cwk-side > div:first-child .cwk-side__link::after { content:"←"; font-size:16px; }
.cwk-shell--sidebar-collapsed .cwk-side__grp { height:10px; padding:0; overflow:hidden; color:transparent; }
.cwk-shell--sidebar-collapsed .cwk-side__link { display:flex; align-items:center; justify-content:center; padding:8px 0; border-left:2px solid transparent; font-size:0; }
.cwk-shell--sidebar-collapsed .cwk-side__link::after { content:attr(data-cue); font:11px var(--cw3-mono); color:var(--cw3-text-2); }
.cwk-shell--sidebar-collapsed .cwk-side__link.active { border-left-color:var(--cw3-mech); }
.cwk-shell--sidebar-collapsed .cwk-side__link.active::after { color:var(--cw3-text); }
@media (prefers-reduced-motion: reduce) { .cwk-side { transition:none; } }
@media (max-width:760px) {
    .cwk-shell--sidebar-collapsed .cwk-side { width:220px; }
    .cwk-shell--sidebar-collapsed .cwk-side__grp { height:auto; padding:10px 16px 4px; color:var(--cw3-text-3); }
    .cwk-shell--sidebar-collapsed .cwk-side__link { display:block; padding:7px 16px; border-left:0; font-size:12px; text-align:left; }
    .cwk-shell--sidebar-collapsed .cwk-side__link::after { content:none; }
}

/* ── AdminGrid (dense Telerik) — rides on cw3-admin.css grid overrides ─ */
.cwk-grid .k-grid-header .k-cell-inner > .k-link { font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.13em; text-transform:uppercase; color:var(--cw3-text-3); }
.cwk-grid .k-table-td { font-size:11.5px; padding:7px 13px; }
.cwk-grid .k-table-row.k-selected > .k-table-td { background:linear-gradient(90deg, rgba(34,211,238,.08), transparent); }

/* ── ActivityLog rows (audit/errors column table) ────────────────────── */
.cwk-actlog__row { display:flex; gap:12px; padding:8px 13px; border-bottom:1px solid var(--cw3-line); font-size:11.5px; color:var(--cw3-text-2); align-items:center; cursor:pointer; }
.cwk-actlog__row:hover { background:rgba(255,255,255,.02); }
.cwk-actlog__row:last-child { border-bottom:0; }
.cwk-actlog__head { display:flex; gap:12px; padding:8px 13px; border-bottom:1px solid var(--cw3-line); font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.13em; text-transform:uppercase; color:var(--cw3-text-3); }
.cwk-actlog .cwk-actlog__c-time { width:120px; flex:none; font-family:var(--cw3-mono); font-size:10px; color:var(--cw3-text-3); }
.cwk-actlog .cwk-actlog__c-actor { flex:1.4; min-width:0; color:var(--cw3-text); }
.cwk-actlog .cwk-actlog__c-action { flex:1.4; min-width:0; font-family:var(--cw3-mono); font-size:10px; }
.cwk-actlog .cwk-actlog__c-target { flex:1.4; min-width:0; }
.cwk-actlog .cwk-actlog__c-sev { width:90px; flex:none; }
.cwk-actlog .cwk-actlog__c-ref { width:90px; flex:none; font-family:var(--cw3-mono); font-size:9px; color:var(--cw3-text-3); }

@media (max-width:900px) {
    .cwk-toolbar__filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:640px) {
    .cwk-summary { grid-template-columns:repeat(2, minmax(0, 1fr)); }
    .cwk-toolbar { margin-left:0; margin-right:0; }
    .cwk-toolbar { grid-template-columns:1fr; grid-template-areas:"search" "filters" "actions"; }
    .cwk-toolbar__filters { grid-template-columns:1fr; }
    .cwk-toolbar__actions { justify-content:stretch; }
    .cwk-toolbar__actions .cwk-btn { flex:1 1 auto; }
}

/* Task 3: Activity feeds keep operational context visible before expansion. */
.cwk-actlog > .cwk-summary { margin:var(--sp-3); }
.cwk-actlog > .cwk-expand-row { border-width:0 0 1px; border-radius:0; }
.cwk-actlog > .cwk-expand-row:last-of-type { border-bottom:0; }
/* Every row is its own grid, so content-sized (auto) tracks would compute per row and the
   columns would drift between rows with/without a badge or ref — the trailing tracks are
   therefore FIXED so all rows align. */
.cwk-feed { display:grid; grid-template-columns:22px minmax(200px,1.8fr) 58px minmax(120px,1fr) minmax(120px,1fr) 78px 158px 72px; gap:var(--sp-2); padding:2px 0; font-size:11px; align-items:center; }
.cwk-feed__actor, .cwk-feed__action, .cwk-feed__target { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cwk-feed__ico { grid-column: 1; }
.cwk-feed__actor { grid-column: 2; color:var(--cw3-text); font-weight:600; display:inline-flex; align-items:center; gap:4px; }
.cwk-feed__family { grid-column: 3; font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--cw3-text-3); }
.cwk-feed__action { grid-column: 4; font-family:var(--cw3-mono); font-size:10px; color:var(--cw3-text-2); }
.cwk-feed__target { grid-column: 5; color:var(--cw3-text-2); }
.cwk-feed__badge-cell { grid-column: 6; display: flex; align-items: center; }
.cwk-feed__ref { grid-column: 7; min-width:0; overflow:hidden; display:flex; align-items:center; gap:4px; padding-right:6px; font-family:var(--cw3-mono); font-size:9px; color:var(--cw3-clash); white-space:nowrap; }
.cwk-feed__ref .cwk-copy-id { flex:1 1 auto; overflow:hidden; }
.cwk-feed__time { grid-column: 8; justify-self:end; }
.cwk-feed__user-link { color:var(--cw3-text); text-decoration:none; font-weight:600; transition:color .15s ease; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cwk-feed__user-link:hover { color:var(--cw3-mech); text-decoration:underline; }
.cwk-feed__target-user-link { color:var(--cw3-text-2); text-decoration:none; transition:color .15s ease; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cwk-feed__target-user-link:hover { color:var(--cw3-mech); text-decoration:underline; }
.cwk-feed__impersonated { font-size:9.5px; color:var(--cw3-warn); font-weight:500; margin-left:2px; display:inline-flex; align-items:center; gap:3px; }
.cwk-feed__impersonated .cwk-feed__user-link { color:var(--cw3-warn); font-weight:500; }
.cwk-activity-detail { display:grid; max-width:820px; }
.cwk-activity-detail__users { margin-bottom:var(--sp-3); padding:10px 12px; background:var(--cw3-panel-2); border:1px solid var(--cw3-line); border-radius:var(--r-sm); display:flex; flex-direction:column; gap:8px; }
.cwk-activity-detail__users-title { font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.1em; text-transform:uppercase; color:var(--cw3-text-3); margin-bottom:2px; }
.cwk-activity-detail__user-chips { display:flex; flex-wrap:wrap; gap:8px; }
.cwk-activity-detail__user-chip { display:inline-flex; align-items:center; gap:6px; padding:4px 8px; background:var(--cw3-panel); border:1px solid var(--cw3-line-2); border-radius:var(--r-pill); font-size:10.5px; }
.cwk-activity-detail__user-role { font-family:var(--cw3-mono); font-size:8px; text-transform:uppercase; letter-spacing:.06em; color:var(--cw3-text-3); font-weight:600; }
.cwk-activity-detail__link-btn { color:var(--cw3-text-2); text-decoration:none; font-size:9.5px; font-family:var(--cw3-mono); padding:1px 6px; border-radius:4px; background:var(--cw3-panel-2); border:1px solid var(--cw3-line-2); transition:all .15s ease; }
.cwk-activity-detail__link-btn:hover { color:var(--cw3-mech); border-color:var(--cw3-mech); }
.cwk-activity-detail__kv { display:flex; justify-content:space-between; gap:var(--sp-4); padding:5px 0; font-size:10.5px; border-bottom:1px solid var(--cw3-line); overflow-wrap:anywhere; }
.cwk-activity-detail__kv .k, .cwk-activity-detail__label { color:var(--cw3-text-3); font-family:var(--cw3-mono); font-size:8.5px; letter-spacing:.1em; text-transform:uppercase; }
.cwk-activity-detail__raw { margin-top:var(--sp-3); }
.cwk-activity-detail__raw summary { color:var(--cw3-mech); cursor:pointer; font-size:10.5px; }
.cwk-activity-detail__raw pre { margin:var(--sp-2) 0 0; white-space:pre-wrap; overflow-wrap:anywhere; font-family:var(--cw3-mono); font-size:10px; color:var(--cw3-text-2); }
.cwk-activity-detail__label { margin-top:var(--sp-3); }
@media (max-width:800px) {
    .cwk-feed { grid-template-columns:22px minmax(0,1fr) auto; align-items:start; }
    .cwk-feed__family, .cwk-feed__action, .cwk-feed__target, .cwk-feed__ref, .cwk-feed .cwk-badge, .cwk-feed__badge-cell { grid-column:2; }
    .cwk-feed__time { grid-column:3; grid-row:1; }
}
/* Conversations */
.cw3-conversation-list { display:flex; flex-direction:column; gap:8px; }
.cw3-conversation-row { min-width:0; display:grid; grid-template-columns:minmax(280px,1.8fr) minmax(130px,1fr) minmax(150px,1fr) 88px 140px; gap:14px; align-items:center; }
.cw3-conversation-row__titlecell, .cw3-conversation-row__cell { min-width:0; }
.cw3-conversation-row__main { display:flex; align-items:center; gap:8px; min-width:0; }
.cw3-conversation-row__title { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--cw3-text); font-size:12px; font-weight:600; }
.cw3-conversation-row__cell { display:flex; flex-direction:column; gap:4px; overflow:hidden; color:var(--cw3-text-2); font-family:var(--cw3-mono); font-size:10px; }
.cw3-conversation-row__cell--number { text-align:right; align-items:flex-end; }
.cw3-conversation-row__cell--date { text-align:right; align-items:flex-end; white-space:nowrap; }
.cw3-conversation-row__label { color:var(--cw3-text-3); font-size:8px; letter-spacing:.12em; text-transform:uppercase; }
.cw3-conversation-row__context { margin-top:6px; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--cw3-text-2); font-family:var(--cw3-mono); font-size:9px; }
.cw3-conversation-detail__head { display:flex; flex-wrap:wrap; gap:18px; padding-bottom:10px; color:var(--cw3-text-3); font-size:10px; }
.cw3-conversation-detail__head b { color:var(--cw3-text); font-family:var(--cw3-mono); font-weight:400; }
.cw3-conversation-messages { display:flex; flex-direction:column; gap:8px; max-height:480px; overflow:auto; }
.cw3-conversation-message { padding:9px 11px; border:1px solid var(--cw3-line); border-left:2px solid var(--cw3-text-3); border-radius:var(--r-sm); background:var(--cw3-panel); }
.cw3-conversation-message--user { border-left-color:var(--cw3-mech); }
.cw3-conversation-message__meta { display:flex; gap:10px; color:var(--cw3-text-3); font-family:var(--cw3-mono); font-size:8.5px; text-transform:uppercase; letter-spacing:.06em; }
.cw3-conversation-message__meta b { color:var(--cw3-text-2); }
.cw3-conversation-message__body { margin-top:5px; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--cw3-text); font-size:11px; line-height:1.45; }
.cw3-conversation-more { display:flex; justify-content:center; padding:16px 0; }
.cwk-filter { height:38px; box-sizing:border-box; width:100%; min-width:0; padding:0 10px; border:1px solid var(--cw3-line-2); border-radius:var(--r-sm); background:var(--cw3-bg); color:var(--cw3-text); font-size:11px; }
@media (max-width:900px) { .cw3-conversation-row { grid-template-columns:minmax(220px,1.5fr) minmax(130px,1fr) 88px 140px; } .cw3-conversation-row__cell:nth-child(3) { display:none; } }
@media (max-width:700px) { .cw3-conversation-row { grid-template-columns:1fr 1fr; gap:10px; } .cw3-conversation-row__titlecell { grid-column:1/-1; } .cw3-conversation-row__cell--date, .cw3-conversation-row__cell--number { text-align:left; align-items:flex-start; } }
/* Copyable identifiers */
.cwk-copy-id { display:inline-flex; align-items:center; gap:4px; min-width:0; vertical-align:middle; }
.cwk-copy-id__value { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cwk-copy-id__button { display:inline-flex; align-items:center; justify-content:center; flex:none; width:20px; height:20px; padding:3px; border:1px solid transparent; border-radius:5px; background:transparent; color:var(--cw3-text-3); cursor:pointer; }
.cwk-copy-id__button:hover { color:var(--cw3-mech); border-color:var(--cw3-line-2); background:rgba(34,211,238,.08); }
.cwk-copy-id__button:focus-visible { outline:2px solid var(--cw3-mech); outline-offset:1px; }
.cwk-copy-id__button svg { width:13px; height:13px; }
.cw3-aiu-user, .cw3-admin-id-link { display:inline-flex; align-items:center; gap:5px; min-width:0; }
/* Admin analytics charts */
.cw3-admin-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:0 0 14px; }
.cw3-admin-chart-card { min-width:0; padding:14px; background:var(--cw3-panel); border:1px solid var(--cw3-line); border-radius:var(--r-md); }
.cw3-admin-chart-card__head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }
.cw3-admin-chart-card__head h2 { margin:0; color:var(--cw3-text); font-size:12px; font-weight:600; }
.cw3-admin-chart-card__head p { margin:4px 0 0; color:var(--cw3-text-3); font-size:9.5px; }
.cw3-admin-chart-range { display:flex; gap:3px; padding:2px; background:var(--cw3-bg); border:1px solid var(--cw3-line); border-radius:6px; }
.cw3-admin-chart-range button { border:0; border-radius:4px; padding:4px 7px; background:transparent; color:var(--cw3-text-3); font:10px var(--cw3-mono); cursor:pointer; }
.cw3-admin-chart-range button.is-active, .cw3-admin-chart-range button:hover { background:var(--cw3-mech); color:#071014; }
.cw3-admin-chart-series { height:135px; display:flex; align-items:flex-end; gap:3px; padding:8px 2px 0; border-bottom:1px solid var(--cw3-line); }
.cw3-admin-chart-series__item { position:relative; display:flex; flex:1; min-width:2px; height:100%; align-items:flex-end; justify-content:center; }
.cw3-admin-chart-series__bar { width:100%; max-width:14px; min-height:3px; border-radius:3px 3px 0 0; background:linear-gradient(180deg,var(--cw3-mech),rgba(34,211,238,.35)); }
.cw3-admin-chart-series__item span { position:absolute; top:calc(100% + 4px); font:8px var(--cw3-mono); color:var(--cw3-text-3); }
.cw3-admin-chart-series__axis { display:flex; justify-content:space-between; padding-top:8px; color:var(--cw3-text-3); font:8px var(--cw3-mono); }
.cw3-admin-chart-categories { display:flex; flex-direction:column; gap:10px; min-height:135px; justify-content:center; }
.cw3-admin-chart-categories__row { display:grid; grid-template-columns:minmax(70px,.8fr) minmax(80px,2fr) 42px; gap:8px; align-items:center; color:var(--cw3-text-2); font:9.5px var(--cw3-mono); }
.cw3-admin-chart-categories__row > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cw3-admin-chart-categories__row > div { height:7px; overflow:hidden; border-radius:4px; background:var(--cw3-bg); }
.cw3-admin-chart-categories__row i { display:block; height:100%; border-radius:4px; background:var(--cw3-plumb); }
.cw3-admin-chart-categories__row b { color:var(--cw3-text); text-align:right; font-weight:500; }
.cw3-admin-chart-card__loading { opacity:.7; }
.cw3-admin-coordination-entry { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 14px; padding:13px 15px; border:1px solid color-mix(in srgb,var(--cw3-mech) 38%,var(--cw3-line)); border-radius:var(--r-md); background:linear-gradient(110deg,rgba(34,211,238,.08),transparent 65%); color:var(--cw3-text); text-decoration:none; }
.cw3-admin-coordination-entry:hover { border-color:var(--cw3-mech); }
.cw3-admin-coordination-entry span:first-child { display:flex; flex-direction:column; gap:3px; }
.cw3-admin-coordination-entry strong { font-size:12px; }
.cw3-admin-coordination-entry small { color:var(--cw3-text-3); font-size:9.5px; }
.cw3-coordination-filters { display:flex; flex-wrap:wrap; align-items:flex-end; gap:10px; margin-bottom:14px; padding:12px; background:var(--cw3-panel); border:1px solid var(--cw3-line); border-radius:var(--r-md); }
.cw3-coordination-filters label { display:flex; flex-direction:column; gap:4px; color:var(--cw3-text-3); font:9px var(--cw3-mono); text-transform:uppercase; }
.cw3-coordination-filters select,.cw3-coordination-filters input { min-height:30px; border:1px solid var(--cw3-line); border-radius:5px; background:var(--cw3-bg); color:var(--cw3-text); padding:4px 8px; }
.cw3-coordination-filters button { min-height:30px; border:0; border-radius:5px; padding:5px 12px; background:var(--cw3-mech); color:#071014; font-weight:600; cursor:pointer; }
.cw3-coordination-health { display:flex; flex-wrap:wrap; gap:8px 16px; margin-bottom:10px; color:var(--cw3-text-3); font:9.5px var(--cw3-mono); }
.cw3-coordination-health.is-warning,.cw3-coordination-health strong { color:var(--cw3-warn); }
.cw3-coordination-unavailable { margin-bottom:14px; padding:18px; border:1px solid color-mix(in srgb,var(--cw3-warn) 45%,var(--cw3-line));
border-radius:var(--r-md); background:color-mix(in srgb,var(--cw3-warn) 7%,var(--cw3-panel)); }
.cw3-coordination-unavailable h2 { margin:0; color:var(--cw3-text); font-size:13px; font-weight:600; }
.cw3-coordination-unavailable p { margin:6px 0 0; color:var(--cw3-text-2); font-size:10.5px; line-height:1.5; }
.cw3-coordination-pressure { display:grid; gap:10px; margin:0; }
.cw3-coordination-pressure div { display:flex; justify-content:space-between; gap:12px; padding-bottom:8px; border-bottom:1px solid var(--cw3-line); }
.cw3-coordination-pressure dt { color:var(--cw3-text-2); font-size:10px; }
.cw3-coordination-pressure dd { margin:0; color:var(--cw3-text); font:600 12px var(--cw3-mono); }
.cw3-coordination-table { margin-top:14px; overflow:hidden; border:1px solid var(--cw3-line); border-radius:var(--r-md); background:var(--cw3-panel); }
.cw3-coordination-table h2 { margin:0; padding:11px 13px; border-bottom:1px solid var(--cw3-line); font-size:12px; }
.cw3-table-scroll { overflow-x:auto; }
.cw3-coordination-table table { width:100%; border-collapse:collapse; font-size:10px; }
.cw3-coordination-table th,.cw3-coordination-table td { padding:9px 11px; border-bottom:1px solid var(--cw3-line); text-align:left; white-space:nowrap; }
.cw3-coordination-table th { color:var(--cw3-text-3); font:8.5px var(--cw3-mono); text-transform:uppercase; }
.cw3-coordination-table td { color:var(--cw3-text-2); }
.cw3-coordination-table td strong,.cw3-coordination-table td small { display:block; }
.cw3-coordination-table td small { margin-top:2px; color:var(--cw3-text-3); font:8px var(--cw3-mono); }
.cw3-coordination-session button { border:0; padding:0; background:transparent; color:var(--cw3-mech); font:9px var(--cw3-mono); cursor:pointer; }
.cw3-coordination-detail { margin-top:14px; padding:14px; border:1px solid var(--cw3-line); border-radius:var(--r-md); background:var(--cw3-panel); }
.cw3-coordination-detail header { display:flex; justify-content:space-between; align-items:center; }
.cw3-coordination-detail header h2 { margin:0; font-size:12px; }
.cw3-coordination-detail header button { border:0; background:transparent; color:var(--cw3-text-2); font-size:18px; cursor:pointer; }
.cw3-coordination-detail dl { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; }
.cw3-coordination-detail dt { color:var(--cw3-text-3); font:8px var(--cw3-mono); text-transform:uppercase; }
.cw3-coordination-detail dd { margin:3px 0 0; color:var(--cw3-text); font-size:10px; }
.cw3-sr-table { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
@media(max-width:760px){.cw3-admin-chart-grid{grid-template-columns:1fr}.cw3-admin-chart-card__head{flex-direction:column}.cw3-admin-chart-range{align-self:flex-start}}
