  /* ── Operator dashboard aesthetic refresh ── */
  :root {
    --canvas: #F7F4ED;
    --canvas-sidebar: #F1ECE0;
    --canvas-elevated: #FAF7F0;
    --ink: #1C1C1A;
    --ink-soft: #5A574F;
    --ink-faint: #8A8579;
    --rule: #D9D2C4;
    --rule-soft: #E8E2D5;
    --accent-drishti: #C26B4A;
    --accent-bot: #7A8B6F;
    --accent-neutral: #A8A399;
    --bg: var(--canvas);
    --bg-subtle: var(--canvas-sidebar);
    --card-bg: var(--canvas-elevated);
    --ink-muted: var(--ink-faint);
    --ink-light: var(--ink-soft);
    --border: var(--rule);
    --border-light: var(--rule-soft);
    /* --accent / --accent-bg intentionally NOT redefined here — inherit the canonical teal
       from styles.css :root. (--accent-bot below remains the distinct bot-persona color.) */
    --sidebar-w: 240px;
  }

  body, button, input, select, textarea {
    font-family: 'Inter', sans-serif !important;
  }

  body { background: var(--canvas); color: var(--ink); }
  .app {
    padding: 12px;
    background: var(--canvas);
    column-gap: 16px;
    border: 1px solid rgba(217, 210, 196, 0.70);
    border-radius: 16px;
    transition: grid-template-columns 0.22s ease;
  }
  .sidebar {
    background: var(--canvas-sidebar);
    border: 1px solid var(--rule);
    border-radius: 12px;
    box-shadow: 0 18px 48px rgba(28, 28, 26, 0.10);
    overflow: visible;
    position: relative;
    transition: width 0.22s ease, box-shadow 0.22s ease;
  }
  .sidebar-brand { height: 48px; padding: 12px 14px 4px; border: 0; position: relative; }
  .sidebar-logo { width: 24px; height: 24px; }
  .sidebar-brand-text {
    margin-left: 12px;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--ink-soft);
    white-space: nowrap;
  }
  .sidebar-label {
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: var(--ink-faint);
    padding: 0 16px;
    margin-top: 24px;
  }
  .sidebar-label:first-child { margin-top: 4px; }
  .nav-item { padding: 8px 16px; border-radius: 4px; color: var(--ink-soft); }
  .sidebar-add-project {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 16px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: var(--ink-faint);
    cursor: pointer;
    text-align: left;
  }
  .sidebar-add-project:hover { background: var(--canvas-elevated); color: var(--ink); }
  .sidebar-separator {
    height: 1px;
    margin: 14px 16px 10px;
    background: var(--rule);
  }
  .nav-label { font-size: 14px; font-weight: 400; }
  .nav-icon { width: 18px; height: 18px; color: var(--ink-soft); }
  .nav-icon svg, .bottom-nav-item svg { width: 18px; height: 18px; stroke-width: 1.5; }
  .nav-icon i, .bottom-nav-item i {
    font-size: 18px;
    line-height: 1;
    color: currentColor;
  }
  .nav-icon.drishti-owl-icon img {
    display: block;
    width: 18px;
    height: 18px;
    object-fit: contain;
    opacity: 0.62;
    transition: opacity 150ms ease, transform 150ms ease;
  }
  .nav-item:hover .drishti-owl-icon img,
  .nav-item.active .drishti-owl-icon img {
    opacity: 1;
  }
  .nav-item:hover, .nav-item.active { background: var(--canvas-elevated); color: var(--ink); }
  .nav-item.active .nav-icon { color: var(--ink); }
  .sidebar-collapse-btn {
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--ink-soft);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    padding: 0;
    box-shadow: none;
    opacity: 0.56;
    transition: background 0.15s ease, color 0.15s ease, opacity 0.15s ease;
  }
  .sidebar-collapse-btn svg { width: 18px; height: 18px; stroke: currentColor; stroke-width: 1.55; fill: none; }
  .sidebar-collapse-btn:hover { color: var(--ink); background: var(--canvas-elevated); opacity: 0.84; }
  .sidebar-collapse-btn .sidebar-icon-collapsed { display: none; }
  body.sidebar-collapsed { --sidebar-w: 76px; }
  body.sidebar-collapsed .sidebar { box-shadow: 0 16px 36px rgba(28, 28, 26, 0.09); }
  body.sidebar-collapsed .sidebar-brand { justify-content: center; padding: 0; }
  body.sidebar-collapsed .sidebar-collapse-btn .sidebar-icon-expanded { display: none; }
  body.sidebar-collapsed .sidebar-collapse-btn .sidebar-icon-collapsed { display: block; }
  body.sidebar-collapsed .sidebar-brand-text,
  body.sidebar-collapsed .sidebar-label,
  body.sidebar-collapsed .nav-label,
  body.sidebar-collapsed .nav-badge,
  body.sidebar-collapsed .sidebar-user > div:not(.user-avatar),
  body.sidebar-collapsed .bot-dot {
    display: none;
  }
  body.sidebar-collapsed .sidebar-nav { align-items: center; padding-left: 10px; padding-right: 10px; }
  body.sidebar-collapsed .nav-item,
  body.sidebar-collapsed .sidebar-add-project { justify-content: center; width: 44px; height: 44px; padding: 0; }
  body.sidebar-collapsed .sidebar-footer { padding: 16px 0; display: flex; justify-content: center; }
  body.sidebar-collapsed .sidebar-user { justify-content: center; }
  body.sidebar-collapsed .sidebar-collapse-btn { margin: 0 auto; }
  body.sidebar-collapsed .sidebar-separator { width: 28px; margin: 14px auto 10px; }
  .sidebar-footer { display: none; }

  .header {
    background: var(--canvas);
    border-color: var(--rule);
    border-radius: 12px 12px 0 0;
    padding: 0 64px;
  }
  .header-title { font-size: 28px; font-weight: 500; }
  .header-sub { font-size: 13px; color: var(--ink-faint); font-weight: 400; }
  .main { background: var(--canvas); border-radius: 0 0 12px 12px; padding: 64px; }

  .btn, .btn-primary, .btn-secondary, .btn-accent, .tpl-add-btn,
  .studio-save-btn, .studio-generate-btn, .cevt-create-btn {
    background: var(--canvas) !important;
    color: var(--ink) !important;
    border: 1px solid var(--rule) !important;
    border-radius: 24px !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 10px 20px;
  }
  .btn:hover, .tpl-add-btn:hover, .studio-save-btn:hover,
  .studio-generate-btn:hover, .cevt-create-btn:hover { background: var(--canvas-elevated) !important; opacity: 1; }
  #headerPrimaryBtn.header-action-strong {
    background: var(--ink) !important;
    color: var(--canvas) !important;
    border-color: var(--ink) !important;
    box-shadow: 0 2px 4px rgba(28, 28, 26, 0.16), 0 14px 30px rgba(28, 28, 26, 0.18) !important;
    transform: scale(1);
    transform-origin: center;
    transition:
      transform 260ms cubic-bezier(0.16, 1, 0.3, 1),
      box-shadow 260ms cubic-bezier(0.16, 1, 0.3, 1),
      background 180ms ease,
      color 180ms ease !important;
    will-change: transform;
  }
  #headerPrimaryBtn.header-action-strong:hover {
    background: #000 !important;
    color: var(--canvas) !important;
    opacity: 1;
    transform: scale(1.045);
    box-shadow: 0 4px 8px rgba(28, 28, 26, 0.18), 0 18px 38px rgba(28, 28, 26, 0.22) !important;
  }
  #headerPrimaryBtn.header-action-strong:active {
    transform: scale(1.018);
  }

  h1, h2, h3, .home-greeting, .home-section-title, .section-heading,
  .placeholder-title, .finance-chart-title, .tpl-header-left h2,
  .tpl-tags-header h3, .stat-value {
    font-family: 'Cormorant Garamond', serif !important;
    font-weight: 500 !important;
  }

  .home-greeting {
    font-size: 48px;
    line-height: 1.05;
    margin-bottom: 48px;
  }
  .home-stats-grid {
    grid-template-columns: repeat(6, 1fr);
    gap: 0;
    margin-bottom: 48px;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
  }
  .home-stats-grid .stat-card, .stats-row .stat-card {
    background: transparent;
    border: 0;
    border-right: 1px solid var(--rule);
    border-radius: 0;
    min-width: 0;
    padding: 32px 16px;
  }
  .home-stats-grid .stat-card:last-child, .stats-row .stat-card:last-child { border-right: 0; }
  .stat-value { font-size: 32px; line-height: 1; margin-bottom: 8px; overflow-wrap: anywhere; }
  #homeStatRevenue { font-size: 28px; overflow-wrap: normal; white-space: nowrap; }
  .stat-label {
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.08em;
    color: var(--ink-faint);
  }
  .stat-sub { font-size: 13px; font-weight: 400; color: var(--ink-faint); }
  .home-quick-actions { margin-bottom: 48px; }
  .home-section-title {
    font-size: 28px;
    padding-bottom: 12px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--rule);
  }
  .activity-feed { background: transparent; border: 0; border-radius: 0; }
  .activity-item { border: 0; padding: 8px 0; font-size: 14px; }
  .activity-time { margin-left: auto; color: var(--ink-faint); font-size: 13px; }
  .activity-dot { background: var(--accent-neutral); }
  .home-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; }
  .quiet-list { display: flex; flex-direction: column; gap: 16px; }
  .quiet-item { display: grid; grid-template-columns: 8px 1fr auto; align-items: center; gap: 12px; color: var(--ink-soft); font-size: 14px; line-height: 1.5; }
  .quiet-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--accent-neutral); }
  .quiet-dot.drishti { background: var(--accent-drishti); }
  .quiet-dot.bot { background: var(--accent-bot); }
  .quiet-time { color: var(--ink-faint); font-size: 13px; white-space: nowrap; }
  .home-command-grid { display: grid; grid-template-columns: minmax(360px, 1.25fr) minmax(320px, 0.85fr); gap: 48px; align-items: start; }
  .home-stack { display: grid; gap: 48px; }
  .home-section-sub {
    font-size: 13px;
    color: var(--ink-soft, #8a7e6b);
    margin-top: -8px;
    margin-bottom: 16px;
  }
  .home-notes-list { display: flex; flex-direction: column; gap: 14px; }
  .home-note {
    padding: 12px 14px;
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
  }
  .home-note:hover {
    border-color: #c4b9a8;
    box-shadow: 0 1px 6px rgba(26, 23, 18, 0.04);
  }
  .home-note-text {
    font: 400 14px/1.55 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
    white-space: pre-wrap;
    word-break: break-word;
  }
  .home-note-meta {
    margin-top: 8px;
    font-size: 11px;
    color: var(--ink-soft, #8a7e6b);
  }

  /* Self-learning: suggestion cards + theme cards on the Dṛṣṭi page. */
  .suggestions-pill-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 4px;
    min-width: 18px;
    padding: 0 6px;
    height: 18px;
    border-radius: 9px;
    background: var(--accent, #c77a9a);
    color: #fff;
    font: 600 10px/1 'Poppins', sans-serif;
  }
  .suggestion-card {
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    padding: 14px;
    margin-bottom: 12px;
  }
  .suggestion-card:last-child { margin-bottom: 0; }
  .suggestion-card-header {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 8px;
  }
  .suggestion-card-title {
    font: 500 14px/1.4 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .suggestion-card-meta {
    display: flex;
    gap: 8px;
    font-size: 11px;
    color: var(--ink-soft, #8a7e6b);
  }
  .suggestion-source {
    background: #f0ece4;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 10px;
  }
  .suggestion-confidence { color: var(--ink-soft, #8a7e6b); }
  .suggestion-body {
    font: 400 13px/1.55 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
    white-space: pre-wrap;
    margin-bottom: 10px;
  }
  .suggestion-evidence {
    background: #faf7f0;
    border: 1px solid #f0ece4;
    border-radius: 8px;
    padding: 10px 12px;
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
  }
  .suggestion-sample {
    font: 400 12px/1.5 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    padding-left: 8px;
    border-left: 2px solid var(--border, #e8e2da);
  }
  .suggestion-knowledge-editor {
    background: #fbfaf7;
    border: 1px solid #ece5db;
    border-radius: 8px;
    padding: 12px;
    margin: 10px 0;
  }
  .suggestion-knowledge-grid {
    display: grid;
    grid-template-columns: minmax(120px, 0.8fr) minmax(160px, 1.4fr) minmax(130px, 0.9fr);
    gap: 10px;
  }
  .suggestion-knowledge-editor label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
  }
  .suggestion-knowledge-editor span {
    font: 600 10px/1.2 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .suggestion-knowledge-editor input,
  .suggestion-knowledge-editor select,
  .suggestion-knowledge-editor textarea {
    width: 100%;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 7px;
    background: #fff;
    color: var(--ink, #1a1712);
    font: 400 12px/1.45 'Poppins', sans-serif;
    padding: 8px 9px;
    outline: 0;
  }
  .suggestion-knowledge-editor textarea {
    min-height: 112px;
    resize: vertical;
  }
  .suggestion-knowledge-target,
  .suggestion-knowledge-body {
    margin-top: 10px;
  }
  .suggestion-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    margin-top: 6px;
  }
  @media (max-width: 720px) {
    .suggestion-knowledge-grid { grid-template-columns: 1fr; }
  }
  .quality-signal-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 10px;
  }
  .quality-signal-card {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    background: #fbfaf7;
    padding: 12px;
  }
  .quality-signal-head {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    align-items: center;
    margin-bottom: 10px;
  }
  .quality-signal-audience {
    font: 600 11px/1.2 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .quality-signal-ok,
  .quality-signal-issue {
    border-radius: 999px;
    padding: 3px 8px;
    font: 600 10px/1.2 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .quality-signal-ok {
    background: #e8f1e3;
    color: #3d6c33;
  }
  .quality-signal-issue {
    background: #f8e3d8;
    color: #8a3f25;
  }
  .quality-signal-metrics {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(82px, 1fr));
    gap: 8px;
  }
  .quality-signal-metrics div {
    min-width: 0;
  }
  .quality-signal-metrics strong {
    display: block;
    font: 600 16px/1.15 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .quality-signal-metrics span {
    display: block;
    margin-top: 2px;
    font: 500 9px/1.2 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .quality-signal-note {
    margin-top: 10px;
    border-top: 1px solid var(--border, #e8e2da);
    padding-top: 9px;
    font: 400 12px/1.45 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
  }
  .quality-signal-sources {
    margin-top: 10px;
    font: 500 10px/1.4 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
  }
  .knowledge-entry-card {
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    padding: 14px;
    margin-bottom: 12px;
  }
  .knowledge-entry-card:last-child { margin-bottom: 0; }
  .knowledge-entry-stale,
  .knowledge-entry-expired {
    border-color: #d89b7a;
    box-shadow: inset 3px 0 0 #d89b7a;
  }
  .knowledge-entry-soon {
    border-color: #d6c090;
    box-shadow: inset 3px 0 0 #d6c090;
  }
  .knowledge-entry-head {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 12px;
  }
  .knowledge-entry-title {
    font: 500 14px/1.35 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .knowledge-entry-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 5px;
    font: 500 10px/1.2 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .knowledge-entry-meta span {
    background: #f0ece4;
    border-radius: 4px;
    padding: 3px 6px;
  }
  .knowledge-entry-meta .knowledge-review-stale,
  .knowledge-entry-meta .knowledge-review-expired {
    background: #f8e3d8;
    color: #8a3f25;
  }
  .knowledge-entry-meta .knowledge-review-soon {
    background: #f5edcf;
    color: #806426;
  }
  .knowledge-entry-grid {
    display: grid;
    grid-template-columns: minmax(120px, 0.8fr) minmax(160px, 1.2fr) minmax(160px, 1.2fr) minmax(130px, 0.8fr);
    gap: 10px;
  }
  .knowledge-entry-card label {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
  }
  .knowledge-entry-card label span {
    font: 600 10px/1.2 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .knowledge-entry-card input,
  .knowledge-entry-card select,
  .knowledge-entry-card textarea {
    width: 100%;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 7px;
    background: #fff;
    color: var(--ink, #1a1712);
    font: 400 12px/1.45 'Poppins', sans-serif;
    padding: 8px 9px;
    outline: 0;
  }
  .knowledge-entry-card textarea {
    min-height: 116px;
    resize: vertical;
  }
  .knowledge-entry-target,
  .knowledge-entry-body {
    margin-top: 10px;
  }
  .knowledge-entry-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
  }
  @media (max-width: 900px) {
    .knowledge-entry-grid { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 620px) {
    .knowledge-entry-grid { grid-template-columns: 1fr; }
    .knowledge-entry-head { flex-direction: column; }
  }
  .theme-card {
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    padding: 12px 14px;
    margin-bottom: 10px;
  }
  .theme-card:last-child { margin-bottom: 0; }
  .theme-card-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 8px;
    margin-bottom: 6px;
  }
  .theme-card-label {
    font: 500 13px/1.3 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .theme-card-meta {
    font-size: 11px;
    color: var(--ink-soft, #8a7e6b);
  }
  .theme-card-summary {
    font: 400 12px/1.5 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
  }
  .task-composer { display: flex; gap: 12px; margin-bottom: 20px; }
  .task-composer input {
    flex: 1;
    height: 42px;
    border: 1px solid var(--rule);
    border-radius: 8px;
    background: var(--canvas);
    color: var(--ink);
    padding: 0 14px;
    font-size: 14px;
    outline: 0;
  }
  .task-list { border-top: 1px solid var(--rule-soft); }
  .task-row { display: grid; grid-template-columns: 20px 1fr auto; gap: 12px; align-items: center; min-height: 48px; border-bottom: 1px solid var(--rule-soft); color: var(--ink); }
  .task-check {
    width: 18px;
    height: 18px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: transparent;
    cursor: pointer;
  }
  .task-row.done { color: var(--ink-faint); }
  .task-row.done .task-title { text-decoration: line-through; }
  .task-row.done .task-check { background: var(--ink-soft); border-color: var(--ink-soft); box-shadow: inset 0 0 0 4px var(--canvas); }
  .task-meta { color: var(--ink-faint); font-size: 12px; }
  .calendar-mini { border-top: 1px solid var(--rule); padding-top: 16px; }
  .calendar-head, .calendar-grid { display: grid; grid-template-columns: repeat(7, 1fr); gap: 6px; }
  .calendar-head span { color: var(--ink-faint); font-size: 11px; text-align: center; text-transform: uppercase; letter-spacing: 0.08em; }
  .calendar-day {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    color: var(--ink-soft);
    font-size: 13px;
    position: relative;
  }
  .calendar-day.muted { color: var(--rule); }
  .calendar-day.today { color: var(--ink); box-shadow: inset 0 0 0 1px var(--ink-soft); }
  .calendar-day.has-event::after {
    content: '';
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--accent-drishti);
    position: absolute;
    bottom: 6px;
  }
  .health-list { border-top: none; }
  #drishtiView .home-section-title { border-bottom: none; padding-bottom: 0; }


  .drishti-pulse-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    padding: 0 8px;
    margin-bottom: 20px;
  }
  @media (max-width: 600px) {
    .drishti-pulse-strip { grid-template-columns: 1fr; }
  }
  .pulse-card {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    background: var(--card-bg, #ffffff);
    padding: 16px 18px;
    display: flex;
    align-items: center;
    gap: 14px;
  }
  .pulse-card-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    flex-shrink: 0;
  }
  .pulse-card-icon.subscribers { background: #e8f0e6; color: #3a6b3a; }
  .pulse-card-icon.tasks       { background: #fef3e0; color: #b8860b; }
  .pulse-card-icon.system      { background: #f0ebe4; color: #6b6259; }
  .pulse-card-body { flex: 1; min-width: 0; }
  .pulse-card-value {
    font-family: 'Cormorant Garamond', serif;
    font-size: 26px;
    color: var(--ink);
    line-height: 1.1;
  }
  .pulse-card-label {
    font-family: 'Poppins', sans-serif;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--ink-faint, #8a8578);
    margin-top: 2px;
  }
  .pulse-dot {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 4px;
    vertical-align: middle;
  }
  .pulse-dot.green { background: #5a8a5e; }
  .pulse-dot.amber { background: #c4963a; }
  .pulse-dot.red { background: #b35454; }

  /* Dṛṣṭi channel grid */
  .drishti-channel-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    max-width: 1200px;
    padding: 0 8px;
    align-items: start;
  }
  .drishti-channel-stack {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
  @media (max-width: 800px) {
    .drishti-channel-grid { grid-template-columns: 1fr; }
  }
  .drishti-channel-card {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    background: var(--card-bg, #ffffff);
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }
  .drishti-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    border-bottom: 1px solid var(--border, #e8e2da);
  }
  .drishti-card-title {
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--ink-faint, #8a8578);
  }
  .drishti-card-filter {
    font-size: 10px;
    padding: 2px 8px;
    border: 1px solid var(--rule-soft, #f0ebe4);
    border-radius: 4px;
    background: transparent;
    color: var(--ink-faint);
    cursor: pointer;
  }
  .drishti-card-count {
    font-size: 11px;
    color: var(--ink-faint);
  }
  .drishti-card-body {
    flex: 1;
    padding: 0;
    min-height: 80px;
  }
  .drishti-card-body .drishti-row {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--rule-soft, #f0ebe4);
    font-size: 13px;
  }
  .drishti-card-body .drishti-row:last-child { border-bottom: none; }
  .drishti-row-time {
    font-family: 'JetBrains Mono', 'Geist Mono', monospace;
    font-size: 10px;
    color: var(--ink-faint);
    white-space: nowrap;
    min-width: 42px;
    text-align: right;
    padding-top: 2px;
  }
  .drishti-row-body { flex: 1; min-width: 0; }
  .drishti-row-title {
    font-size: 13px;
    font-weight: 500;
    color: var(--ink);
    line-height: 1.3;
  }
  .drishti-row-meta {
    font-size: 11px;
    color: var(--ink-faint);
    margin-top: 2px;
  }
  .drishti-chip {
    display: inline-block;
    font-family: 'Poppins', sans-serif;
    font-size: 8px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    padding: 1px 6px;
    border-radius: 3px;
    white-space: nowrap;
    vertical-align: middle;
    margin-right: 4px;
  }
  .drishti-chip.yoga-class   { background: #e8f0e6; color: #3a6b3a; }
  .drishti-chip.launch       { background: #fef3e0; color: #b8860b; }
  .drishti-chip.sequence     { background: #e6eef8; color: #3a5a8c; }
  .drishti-chip.retreat      { background: #f3e8f5; color: #7a3a8c; }
  .drishti-chip.newsletter   { background: #f0ebe4; color: #6b6259; }
  .drishti-chip.workshop     { background: #fce8e6; color: #a84432; }
  .drishti-chip.announcement { background: #e0f0f0; color: #2a6b6b; }
  .drishti-chip.pin          { background: #f5f0e0; color: #8a7a3a; }
  .drishti-chip.src-website    { background: #eef6ff; color: #306c9c; }
  .drishti-chip.src-roadmap    { background: #f8eeee; color: #9b4d4d; }
  .drishti-chip.src-immersion  { background: #ecf7f1; color: #1f7a4d; }
  .drishti-chip.src-manual     { background: #f1ecff; color: #6d4cc6; }
  .drishti-chip.src-iinb       { background: #fff3d8; color: #9a6a10; }
  .drishti-chip.src-drishti    { background: #eef5f3; color: #466d63; }
  .drishti-chip.src-telegram   { background: #eef5f3; color: #466d63; }
  .drishti-chip.btn-outline  {
    background: transparent;
    color: var(--ink);
    border: 1px solid var(--border, #e8e2da);
    font-size: 8px;
    padding: 2px 7px;
  }
  /* DM Blast */
  .blast-card .drishti-card-body { max-height: none; }
  .blast-count { font-size: 12px; color: var(--ink-faint, #a09788); font-weight: 400; }
  .blast-filter-row { display: flex; gap: 16px; margin-bottom: 10px; flex-wrap: wrap; }
  .blast-filter-group { flex: 1; min-width: 180px; }
  .blast-filter-label { display: block; font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: var(--ink-faint, #a09788); margin-bottom: 6px; }
  .blast-filter-label--exclude { color: #b45454; }
  .blast-chips { display: flex; flex-wrap: wrap; gap: 5px; }
  .blast-chip {
    display: inline-flex; align-items: center; gap: 4px;
    padding: 4px 10px; border-radius: 999px;
    border: 1.5px solid var(--border, #e8e2da);
    background: var(--card-bg, #fff);
    font-family: 'Poppins', sans-serif; font-size: 11px; font-weight: 500;
    color: #6b6259; cursor: pointer; transition: all .15s; user-select: none;
  }
  .blast-chip:hover { border-color: #c0b8ae; background: #f5f2ee; }
  .blast-chip.on { background: var(--ink, #1a1712); color: #fff; border-color: var(--ink, #1a1712); }
  .blast-chip.on.exclude { background: #b45454; border-color: #b45454; }
  .blast-chip .blast-chip-count { font-size: 10px; opacity: .6; }
  .blast-empty { font-size: 11px; color: var(--ink-faint, #a09788); font-style: italic; }
  .blast-dest-row { margin-bottom: 10px; }
  .blast-dest-pills { display: flex; gap: 6px; margin-top: 5px; }
  .blast-format-bar {
    display: flex; gap: 2px; margin-bottom: 4px;
    border: 1px solid var(--border, #e8e2da); border-bottom: none;
    border-radius: 6px 6px 0 0; padding: 4px 6px;
    background: var(--bg, #fdf9f4);
  }
  .blast-fmt {
    background: none; border: none; cursor: pointer;
    width: 28px; height: 26px; border-radius: 4px;
    display: flex; align-items: center; justify-content: center;
    color: var(--ink-faint, #a09788); font-size: 14px; transition: all .12s;
  }
  .blast-fmt:hover { background: var(--border, #e8e2da); color: var(--ink, #1a1712); }
  .blast-textarea {
    width: 100%; box-sizing: border-box; resize: vertical;
    font-size: 13px; line-height: 1.6; min-height: 80px;
    border-radius: 0 0 6px 6px !important; border-top: none !important;
    font-family: 'Poppins', sans-serif;
    padding: 10px 12px;
    color: var(--ink, #1a1712);
    background: #fff;
  }
  .blast-textarea:focus { outline: none; box-shadow: 0 0 0 2px rgba(26,23,18,.08) inset; }
  .blast-actions { display: flex; align-items: center; gap: 8px; margin-top: 8px; }
  .blast-silent-label { font-size: 12px; display: flex; align-items: center; gap: 4px; color: var(--ink-faint, #a09788); flex: 1; }
  .blast-extras { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 8px; padding: 6px 2px; }
  .blast-extras-toggle { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--ink-faint, #a09788); cursor: pointer; }
  .blast-extras-toggle input { width: 14px; height: 14px; cursor: pointer; }
  .blast-extras-row { display: flex; gap: 8px; margin-top: 6px; flex-wrap: wrap; }
  .blast-extras-row .field { flex: 1; min-width: 140px; }

  .drishti-row-expand {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, padding 0.3s ease;
    padding: 0 0;
  }
  .drishti-row.expanded .drishti-row-expand {
    max-height: 600px;
    padding: 10px 0 4px;
  }
  .drishti-expand-content {
    font-size: 13px;
    line-height: 1.5;
    color: var(--ink);
    white-space: pre-wrap;
    padding: 10px 12px;
    background: var(--bg, #fdf9f4);
    border-radius: 6px;
    border: 1px solid var(--rule-soft, #f0ebe4);
  }
  .drishti-expand-actions {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    justify-content: flex-end;
  }
  .drishti-expand-actions button {
    font-size: 11px;
    padding: 4px 12px;
    border-radius: 5px;
    cursor: pointer;
    font-family: 'Poppins', sans-serif;
  }
  .drishti-btn-edit {
    border: 1px solid var(--border);
    background: var(--card-bg);
    color: var(--ink);
  }
  .drishti-btn-cancel {
    border: 1px solid var(--border);
    background: transparent;
    color: var(--ink-faint);
  }
  .drishti-btn-save {
    border: none;
    background: var(--ink);
    color: var(--bg);
  }
  .drishti-source-label {
    display: inline-block;
    font-size: 9px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    padding: 1px 5px;
    border-radius: 3px;
    border: 1px solid var(--rule-soft, #f0ebe4);
    color: var(--ink-faint);
    vertical-align: middle;
  }
  .drishti-card-empty {
    color: var(--ink-faint);
    font-size: 12px;
    text-align: center;
    padding: 28px 16px;
  }
  .drishti-row-dim { opacity: 0.45; }
  .drishti-day-header {
    padding: 10px 16px 4px;
    font: 600 11px/1 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--ink-faint);
    border-bottom: 1px solid var(--rule-soft, #f0ebe4);
  }
  .drishti-rule-detail-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 16px;
    margin-bottom: 12px;
  }
  @media (max-width: 600px) {
    .drishti-rule-detail-grid { grid-template-columns: 1fr; }
  }
  .drishti-rule-detail-label {
    font: 500 10px/1 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--ink-faint);
    margin-bottom: 3px;
  }
  .drishti-rule-detail-value {
    font-size: 13px;
    color: var(--ink);
  }
  .drishti-rule-textarea {
    width: 100%;
    font: 13px/1.5 var(--font-mono, 'JetBrains Mono', monospace);
    padding: 10px 12px;
    border: 1px solid var(--rule-soft, #f0ebe4);
    border-radius: 6px;
    background: var(--bg, #fdf9f4);
    color: var(--ink);
    resize: vertical;
    box-sizing: border-box;
  }

  /* Roadmap module */
  /* Lane switch uses the canonical .pillbar; toolbar uses .surface-toolbar.
     Roadmap-specific blocks below: status chips, selects, cards. */
  .roadmap-chip {
    background: transparent;
    border: 1px solid transparent;
    padding: 5px 11px;
    border-radius: 8px;
    cursor: pointer;
    font: 400 12px/1 'Poppins', sans-serif;
    color: var(--ink-soft, #8a7e6b);
    transition: background 0.15s, color 0.15s, border-color 0.15s;
  }
  .roadmap-chip:hover {
    color: var(--ink, #1a1712);
    background: rgba(26, 23, 18, 0.03);
  }
  .roadmap-chip.active {
    color: var(--ink, #1a1712);
    background: var(--card-bg, #ffffff);
    border-color: var(--border, #e8e2da);
    font-weight: 500;
  }

  /* Custom select — parchment, subtle chevron. Used in the toolbar
     AND inside the card expand panel (.roadmap-card-field select). */
  .roadmap-select,
  .roadmap-card-field select.field {
    appearance: none;
    -webkit-appearance: none;
    background: var(--card-bg, #ffffff);
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path fill='none' stroke='%238a7e6b' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 10px;
    padding: 7px 28px 7px 11px;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    font: 400 12px/1.2 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
  }
  .roadmap-select:hover,
  .roadmap-card-field select.field:hover {
    border-color: #c4b9a8;
  }
  .roadmap-select:focus,
  .roadmap-card-field select.field:focus {
    border-color: var(--ink, #1a1712);
    box-shadow: 0 0 0 3px rgba(26, 23, 18, 0.06);
  }
  .roadmap-source, .roadmap-date, .roadmap-submitter {
    font-size: 11px;
    color: #b0a89e;
    margin-left: 4px;
  }
  .roadmap-source-chip {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    border: 1px solid rgba(26, 23, 18, 0.08);
    border-radius: 999px;
    padding: 3px 9px;
    font: 700 10px/1 var(--font-ui, 'Poppins', sans-serif);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: #f7f2eb;
    color: #6f6558;
  }
  .roadmap-source-chip.immersion {
    background: #ecf7f1;
    border-color: #cce8d9;
    color: #1f7a4d;
  }
  .roadmap-source-chip.manual {
    background: #f1ecff;
    border-color: #ddd0ff;
    color: #6d4cc6;
  }
  .roadmap-source-chip.iinb {
    background: #fff3d8;
    border-color: #f3d898;
    color: #9a6a10;
  }
  .roadmap-source-chip.website {
    background: #eef6ff;
    border-color: #cfe4f8;
    color: #306c9c;
  }
  .roadmap-source-chip.drishti,
  .roadmap-source-chip.telegram {
    background: #eef5f3;
    border-color: #cddfda;
    color: #466d63;
  }
  .roadmap-source-chip.roadmap {
    background: #f8eeee;
    border-color: #ead1d1;
    color: #9b4d4d;
  }
  .roadmap-submitter { font-style: italic; }

  /* Commands panel */
  .drishti-cmd-group { margin-bottom: 16px; }
  .drishti-cmd-group:last-child { margin-bottom: 0; }
  .drishti-cmd-group-header {
    font: 600 11px/1 var(--font-ui, 'Poppins', sans-serif);
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #b0a89e;
    padding: 10px 14px 6px;
  }
  .drishti-cmd-code {
    font: 13px/1.4 var(--font-mono, 'JetBrains Mono', monospace);
    background: #f5f0eb;
    padding: 2px 7px;
    border-radius: 4px;
    margin-right: 8px;
    white-space: nowrap;
  }

  /* Masonry-ish card grid. column-count gives natural variable-height
     packing without the row-alignment constraint of CSS grid. Cards
     keep break-inside: avoid so they never get split across columns. */
  .roadmap-grid {
    column-count: 3;
    column-gap: 16px;
  }
  @media (max-width: 1100px) { .roadmap-grid { column-count: 2; } }
  @media (max-width: 700px)  { .roadmap-grid { column-count: 1; } }

  .roadmap-card {
    display: block;
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    background: var(--card-bg, #ffffff);
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    padding: 16px;
    margin: 0 0 16px 0;
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
  }
  .roadmap-card:hover {
    border-color: #c4b9a8;
    box-shadow: 0 1px 6px rgba(26, 23, 18, 0.04);
  }
  .roadmap-card-text {
    font: 400 14px/1.55 var(--font-ui, 'Poppins', sans-serif);
    color: var(--ink, #1a1712);
    white-space: pre-wrap;
    word-break: break-word;
  }
  .roadmap-card-chips {
    display: flex;
    gap: 6px;
    margin-top: 12px;
    flex-wrap: wrap;
  }
  .roadmap-card-meta {
    margin-top: 10px;
    font-size: 11px;
    color: #b0a89e;
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
  }
  .roadmap-card-meta > * { margin-left: 0; }

  .roadmap-card-expand {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.25s ease;
    margin-top: 0;
  }
  .roadmap-card-expand.is-open {
    max-height: 600px;
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--border, #e8e2da);
  }
  .roadmap-card-expand-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
  }
  .roadmap-card-field { display: flex; flex-direction: column; gap: 4px; }
  .roadmap-card-field-label {
    font-size: 11px;
    color: #8a7e6b;
    text-transform: uppercase;
    letter-spacing: 0.04em;
  }
  .roadmap-card-field select.field { width: 100%; padding: 6px 8px; }
  .roadmap-card-field .drishti-rule-textarea { width: 100%; }
  .roadmap-card-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 10px;
  }

  /* JD tag hierarchy */
  .jd-decade-card {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 10px;
    background: var(--card-bg, #ffffff);
    margin-bottom: 12px;
    overflow: hidden;
  }
  .jd-decade-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    cursor: pointer;
    transition: background 0.15s;
    user-select: none;
  }
  .jd-decade-header:hover { background: var(--bg, #fdf9f4); }
  .jd-decade-range {
    font-family: 'JetBrains Mono', 'Geist Mono', monospace;
    font-size: 12px;
    font-weight: 600;
    color: var(--ink);
    margin-right: 6px;
  }
  .jd-decade-label {
    font-family: 'Poppins', sans-serif;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--ink-faint, #8a8578);
  }
  .jd-decade-total {
    font-family: 'Cormorant Garamond', serif;
    font-size: 22px;
    color: var(--ink);
    white-space: nowrap;
  }
  .jd-decade-body {
    border-top: 1px solid var(--border, #e8e2da);
  }
  .jd-decade-body.collapsed { display: none; }
  .jd-category-row {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    border-bottom: 1px solid var(--rule-soft, #f0ebe4);
    cursor: pointer;
    transition: background 0.15s;
  }
  .jd-category-row:last-child { border-bottom: none; }
  .jd-category-row:hover { background: var(--bg, #fdf9f4); }
  .jd-number {
    font-family: 'JetBrains Mono', 'Geist Mono', monospace;
    font-size: 14px;
    font-weight: 600;
    color: var(--ink);
    width: 28px;
    text-align: center;
    flex-shrink: 0;
  }
  .jd-tag-group {
    padding: 0 18px 0 58px;
    border-left: 2px solid var(--rule-soft, #f0ebe4);
    margin-left: 27px;
    background: var(--bg, #fdf9f4);
  }
  .jd-tag-row {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-bottom: 1px solid var(--rule-soft, #f0ebe4);
  }
  .jd-tag-row:last-child { border-bottom: none; }
  .jd-suffix-chip {
    display: inline-block;
    font-family: 'Poppins', sans-serif;
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    padding: 2px 7px;
    border-radius: 4px;
    background: color-mix(in srgb, var(--chip-color, #8a8578) 12%, transparent);
    color: var(--chip-color, #8a8578);
    white-space: nowrap;
    flex-shrink: 0;
  }

  .rules-surface {
    gap: 18px;
  }
  .rules-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 16px;
    padding: 0 4px;
  }
  .rules-eyebrow {
    font: 600 10px/1.2 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
    text-transform: uppercase;
    letter-spacing: 0.08em;
  }
  .rules-title {
    margin-top: 4px;
    font: 500 28px/1.05 'Cormorant Garamond', serif;
    color: var(--ink, #1a1712);
  }
  .rules-search {
    min-width: min(360px, 100%);
    display: flex;
    align-items: center;
    gap: 8px;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    background: var(--card-bg, #fff);
    padding: 8px 10px;
  }
  .rules-search input {
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--ink, #1a1712);
    font: 500 12px/1.3 'Poppins', sans-serif;
  }
  .rules-summary-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(96px, 1fr));
    gap: 8px;
  }
  .rules-summary-card {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    background: var(--card-bg, #fff);
    padding: 10px 12px;
  }
  .rules-summary-card strong {
    display: block;
    font: 500 22px/1 'Cormorant Garamond', serif;
    color: var(--ink, #1a1712);
  }
  .rules-summary-card span {
    display: block;
    margin-top: 4px;
    font: 600 9px/1.2 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .rules-group {
    margin-top: 14px;
  }
  .rules-diagnostics {
    margin-top: 4px;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    background: color-mix(in srgb, var(--card-bg, #fff) 88%, #f8efe2);
    padding: 12px;
  }
  .rules-diagnostics-ok {
    background: color-mix(in srgb, var(--card-bg, #fff) 92%, #eef4ea);
  }
  .rules-diagnostic-list {
    display: grid;
    gap: 8px;
  }
  .rules-diagnostic {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border: 1px solid var(--border, #e8e2da);
    border-left-width: 3px;
    border-radius: 8px;
    background: var(--card-bg, #fff);
    padding: 10px;
  }
  .rules-diagnostic-high { border-left-color: #a84b35; }
  .rules-diagnostic-medium { border-left-color: #b58a31; }
  .rules-diagnostic-low { border-left-color: #6f8b63; }
  .rules-diagnostic-title {
    font: 700 12px/1.3 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .rules-diagnostic-detail,
  .rules-diagnostic-source {
    margin-top: 3px;
    font: 500 11px/1.45 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
  }
  .rules-diagnostic-source {
    color: var(--ink-soft, #6f665b);
  }
  .rules-diagnostic > span {
    align-self: start;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 999px;
    padding: 2px 7px;
    font: 700 9px/1.2 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .rules-changes {
    margin-top: 14px;
  }
  .rules-change-list {
    display: grid;
    gap: 8px;
  }
  .rules-change {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 8px;
    background: var(--card-bg, #fff);
    padding: 10px 12px;
  }
  .rules-change-title {
    font: 700 12px/1.3 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
  }
  .rules-change-detail,
  .rules-change-reason {
    margin-top: 3px;
    font: 500 11px/1.45 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
  }
  .rules-change-reason {
    color: var(--ink-soft, #6f665b);
  }
  .rules-change > span {
    align-self: start;
    border: 1px solid var(--border, #e8e2da);
    border-radius: 999px;
    padding: 2px 7px;
    font: 700 9px/1.2 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .rules-group-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
    padding: 0 2px;
    color: var(--ink-soft, #6f665b);
    font: 600 11px/1.2 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.05em;
  }
  .rules-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 10px;
  }
  .rules-card {
    border: 1px solid var(--border, #e8e2da);
    border-left-width: 3px;
    border-radius: 8px;
    background: var(--card-bg, #fff);
    padding: 12px;
    min-width: 0;
  }
  .rules-risk-high { border-left-color: #a84b35; }
  .rules-risk-medium { border-left-color: #b58a31; }
  .rules-risk-low { border-left-color: #6f8b63; }
  .rules-card-head {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    align-items: center;
    margin-bottom: 8px;
  }
  .rules-kind,
  .rules-risk {
    font: 600 9px/1.2 'Poppins', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--ink-faint, #8a8578);
  }
  .rules-risk {
    border: 1px solid var(--border, #e8e2da);
    border-radius: 999px;
    padding: 2px 7px;
  }
  .rules-card-title {
    font: 600 13px/1.35 'Poppins', sans-serif;
    color: var(--ink, #1a1712);
    overflow-wrap: anywhere;
  }
  .rules-card-detail,
  .rules-card-count,
  .rules-no-edges,
  .rules-empty {
    margin-top: 6px;
    font: 500 11px/1.45 'Poppins', sans-serif;
    color: var(--ink-faint, #8a8578);
  }
  .rules-edges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
  }
  .rules-edge {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    max-width: 100%;
    border-radius: 6px;
    background: var(--bg, #fdf9f4);
    border: 1px solid var(--rule-soft, #f0ebe4);
    padding: 4px 6px;
    font: 600 10px/1.2 'Poppins', sans-serif;
    color: var(--ink-soft, #6f665b);
  }
  .rules-edge code {
    font: 600 10px/1.2 'JetBrains Mono', 'Geist Mono', monospace;
    color: var(--ink, #1a1712);
    overflow-wrap: anywhere;
  }
  .rules-edge-missing {
    border-color: #dfb5a6;
    background: #fff4ee;
    color: #8c3a25;
  }
  .rules-edge em {
    border-radius: 999px;
    background: #8c3a25;
    color: #fff;
    padding: 1px 5px;
    font-style: normal;
    font-size: 9px;
  }
  @media (max-width: 720px) {
    .rules-toolbar {
      align-items: stretch;
      flex-direction: column;
    }
    .rules-search {
      min-width: 0;
    }
  }

  .health-row { display: grid; grid-template-columns: 8px 1fr auto; gap: 12px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--rule-soft); }
  .health-label { font-size: 14px; color: var(--ink); }
  .health-note { font-size: 12px; color: var(--ink-faint); margin-top: 3px; }
  .health-value { font-family: 'Cormorant Garamond', serif; font-size: 28px; color: var(--ink); white-space: nowrap; }

  .client-card, .detail-header-card, .session-log, .homework-card,
  .broadcast-list, .subscriber-list, .sequence-list, .subscribers-chart,
  .finance-balance-card, .finance-chart-card, .studio-output, .studio-lib-card,
  .tpl-card, .etpl-card, .placeholder-card, .event-card {
    background: transparent;
    border: 1px solid var(--rule);
    border-radius: 8px;
    box-shadow: none;
  }
  .event-card { background: var(--canvas-elevated); }
  .card-cover.image-cover {
    position: relative;
    overflow: hidden;
    background: var(--canvas-sidebar);
    border: 1px solid var(--rule-soft);
  }
  .card-cover.image-cover img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
  }
  .card-cover.image-cover .cover-sub {
    position: absolute;
    left: 10px;
    bottom: 10px;
    color: var(--canvas);
    background: rgba(28, 28, 26, 0.58);
  }
  .client-card:hover, .event-card:hover, .tpl-card:hover, .studio-lib-card:hover {
    transform: none;
    box-shadow: none;
    background: var(--canvas-elevated);
  }
  .cevt-overlay, .confirm-modal-overlay, .drawer-overlay {
    background: rgba(28, 28, 26, 0.30);
    backdrop-filter: none;
  }
  .cevt-popup, .confirm-modal, .drawer {
    background: var(--canvas);
    border-radius: 12px;
    box-shadow: none;
  }
  .cevt-popup-close, .drawer-close { background: transparent; border: 0; border-radius: 0; }

  .operator-surface { display: grid; gap: 48px; max-width: 1120px; }
  .operator-page-title {
    font-family: 'Cormorant Garamond', serif;
    font-size: 48px;
    font-weight: 500;
    line-height: 1.05;
    color: var(--ink);
    margin-bottom: 16px;
  }
  .operator-intro { max-width: 640px; color: var(--ink-soft); font-size: 14px; line-height: 1.8; }
  .editorial-grid { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 48px; }
  .thin-list { border-right: 1px solid var(--rule); padding-right: 24px; }
  .thin-list-item { padding: 12px 0; border-bottom: 1px solid var(--rule-soft); color: var(--ink-soft); font-size: 13px; line-height: 1.5; }
  .writing-canvas { min-height: 520px; border: 1px solid var(--rule); border-radius: 8px; padding: 48px; background: var(--canvas-elevated); }
  .writing-title { width: 100%; border: 0; outline: 0; background: transparent; font-family: 'Cormorant Garamond', serif !important; font-size: 48px; font-weight: 500; color: var(--ink); margin-bottom: 24px; }
  .writing-body { width: 100%; min-height: 320px; border: 0; outline: 0; resize: vertical; background: transparent; color: var(--ink-soft); font-size: 16px; line-height: 1.9; }
  .dense-table { border-top: 1px solid var(--rule); }
  .dense-row { display: grid; grid-template-columns: 1.2fr 0.8fr 1fr auto; gap: 16px; align-items: center; padding: 14px 0; border-bottom: 1px solid var(--rule-soft); font-size: 13px; color: var(--ink-soft); }
  .status-dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; margin-right: 8px; background: var(--accent-neutral); }
  .status-dot.drishti { background: var(--accent-drishti); }
  .status-dot.bot { background: var(--accent-bot); }
  .flow-list { display: grid; gap: 12px; }
  .flow-node { display: grid; grid-template-columns: 32px 1fr auto; gap: 16px; align-items: center; padding: 16px 0; border-bottom: 1px solid var(--rule-soft); }
  .flow-node strong { display:block; color: var(--ink); font-weight: 500; margin-bottom: 4px; }
  .flow-node span { color: var(--ink-soft); font-size: 13px; }
  .flow-num { font-family: 'Cormorant Garamond', serif; font-size: 28px; color: var(--ink-faint); }
  .small-caps-label {
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink-faint);
    font-weight: 500;
  }
  .initiation-shell { position: relative; max-width: 1180px; }
  .initiation-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 32px;
  }
  .initiation-cohort-select {
    display: grid;
    gap: 8px;
    min-width: 220px;
  }
  .initiation-cohort-select select {
    appearance: none;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas);
    color: var(--ink);
    font: 500 14px/1.2 Inter, sans-serif;
    padding: 12px 36px 12px 16px;
    background-image: linear-gradient(45deg, transparent 50%, var(--ink-soft) 50%), linear-gradient(135deg, var(--ink-soft) 50%, transparent 50%);
    background-position: calc(100% - 18px) 51%, calc(100% - 12px) 51%;
    background-size: 6px 6px, 6px 6px;
    background-repeat: no-repeat;
  }
  .initiation-data-mode {
    display: grid;
    gap: 8px;
    margin: 0 0 18px;
    padding: 8px 10px;
    border: 1px solid var(--rule);
    border-radius: 12px;
    background: var(--canvas-elevated);
    color: var(--ink-soft);
    font-family: Inter, sans-serif;
  }
  .initiation-data-summary {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px;
    width: 100%;
    min-height: 32px;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    text-align: left;
    cursor: pointer;
  }
  .initiation-data-mode span,
  .initiation-data-summary span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--ink);
    font-size: 12px;
    font-weight: 600;
    white-space: nowrap;
  }
  .initiation-data-mode p,
  .initiation-data-summary p {
    margin: 0;
    color: var(--ink-faint);
    font-size: 12px;
    line-height: 1.4;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .initiation-data-summary > .ph-caret-down { transition: transform .2s ease; }
  .initiation-data-mode.expanded .initiation-data-summary > .ph-caret-down { transform: rotate(180deg); }
  .initiation-data-mode .initiation-inline-actions { display: none; }
  .initiation-data-mode.expanded .initiation-inline-actions { display: flex; }
  .initiation-data-mode.backend {
    border-color: rgba(122, 139, 111, .28);
    background: rgba(122, 139, 111, .07);
  }
  .initiation-data-mode.is-hidden {
    display: none;
  }
  .initiation-data-mode.local,
  .initiation-data-mode.seed {
    border-color: rgba(194, 107, 74, .3);
    background: rgba(194, 107, 74, .07);
  }
  .initiation-tabs {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    width: fit-content;
    max-width: 100%;
    overflow-x: auto;
    padding: 6px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas-sidebar);
  }
  .initiation-tabs::-webkit-scrollbar { display: none; }
  .initiation-tab {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 44px;
    padding: 0 18px;
    border: 1px solid transparent;
    border-radius: 999px;
    background: transparent;
    color: var(--ink-soft);
    font: 500 14px/1 Inter, sans-serif;
    white-space: nowrap;
    cursor: pointer;
    transition: background .16s ease, border-color .16s ease, color .16s ease, box-shadow .16s ease, transform .16s ease;
  }
  .initiation-tab i { font-size: 17px; color: currentColor; }
  .initiation-tab:hover { color: var(--ink); background: rgba(250, 247, 240, .55); }
  .initiation-tab.active {
    color: var(--ink);
    background: var(--canvas);
    border-color: var(--rule);
    box-shadow: 0 7px 18px rgba(28, 28, 26, .08), inset 0 1px 0 rgba(255,255,255,.8);
  }
  .initiation-panel { display: none; }
  .initiation-panel.active { display: block; }
  .initiation-stat-row {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
  }
  .initiation-stat {
    min-height: 112px;
    padding: 24px;
    border-right: 1px solid var(--rule);
  }
  .initiation-stat:last-child { border-right: 0; }
  .initiation-stat-value {
    font-family: 'Cormorant Garamond', serif;
    font-size: 38px;
    line-height: 1;
    font-weight: 500;
    color: var(--ink);
  }
  .initiation-stat-label {
    margin-top: 10px;
    font-size: 11px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--ink-faint);
  }
  .initiation-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 48px;
    margin-top: 48px;
  }
  .initiation-list { display: grid; gap: 16px; }
  .initiation-list-item {
    display: grid;
    grid-template-columns: 12px 1fr;
    gap: 12px;
    align-items: start;
    width: 100%;
    border: 0;
    background: transparent;
    color: var(--ink-soft);
    font-size: 14px;
    font-family: Inter, sans-serif;
    text-align: left;
  }
  .initiation-list-item.actionable { cursor: pointer; }
  .initiation-list-item.actionable:hover strong { color: var(--accent-drishti); }
  .initiation-list-item .status-dot { margin: 8px 0 0; }
  .initiation-list-item strong {
    display: block;
    color: var(--ink);
    font-weight: 500;
    line-height: 1.45;
  }
  .initiation-list-item span:not(.status-dot) {
    display: block;
    margin-top: 2px;
    color: var(--ink-faint);
    font-size: 12px;
  }
  .initiation-panel-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 20px;
  }
  .operator-intro.compact {
    max-width: 520px;
    margin: 6px 0 0;
    font-size: 13px;
  }
  .initiation-inline-action {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 16px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--ink);
    color: var(--canvas);
    font: 600 13px/1 Inter, sans-serif;
    box-shadow: 0 10px 26px rgba(28, 28, 26, .14);
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease;
  }
  .initiation-inline-action:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 32px rgba(28, 28, 26, .18);
  }
  .initiation-filter-pills {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--rule);
    border-radius: 999px;
  }
  .initiation-filter-pills button {
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--ink-soft);
    padding: 8px 14px;
    font: 500 13px/1 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-filter-pills button.active {
    background: var(--canvas-elevated);
    color: var(--ink);
    box-shadow: inset 0 0 0 1px var(--rule-soft);
  }
  .initiation-roster {
    border-top: 1px solid var(--rule);
  }
  .initiation-roster-row {
    width: 100%;
    display: grid;
    grid-template-columns: 1.2fr .55fr 1.35fr 120px auto;
    gap: 18px;
    align-items: center;
    padding: 18px 0;
    border: 0;
    border-bottom: 1px solid var(--rule-soft);
    background: transparent;
    color: var(--ink-soft);
    text-align: left;
    font: 400 14px/1.35 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-roster-row:hover { color: var(--ink); }
  .initiation-roster-name {
    display: flex;
    align-items: center;
    color: var(--ink);
    font-weight: 500;
  }
  .initiation-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    min-height: 26px;
    padding: 0 10px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    color: var(--ink-soft);
    font: 600 11px/1 Inter, sans-serif;
    text-transform: uppercase;
    letter-spacing: .06em;
  }
  .initiation-tag.flagged { color: var(--accent-drishti); border-color: rgba(194, 107, 74, .35); background: rgba(194, 107, 74, .08); }
  .initiation-tag.active,
  .initiation-tag.paid { color: var(--accent-bot); border-color: rgba(122, 139, 111, .35); background: rgba(122, 139, 111, .08); }
  .initiation-progress-mini {
    height: 5px;
    border-radius: 999px;
    background: var(--rule-soft);
    overflow: hidden;
  }
  .initiation-progress-mini i {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--accent-bot);
  }
  .initiation-path,
  .initiation-sessions {
    border-top: 1px solid var(--rule);
  }
  .initiation-session-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 24px;
    align-items: center;
    padding: 18px 0;
    border-bottom: 1px solid var(--rule-soft);
  }
  .initiation-session-row strong { display:block; font-weight: 500; color: var(--ink); }
  .initiation-session-main span { display:block; margin-top: 4px; color: var(--ink-faint); font-size: 13px; }
  .initiation-session-signals {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 8px;
  }
  .initiation-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    color: var(--ink-soft);
    font: 500 12px/1 Inter, sans-serif;
    white-space: nowrap;
  }
  .initiation-chip.good {
    border-color: rgba(122, 139, 111, .35);
    color: var(--accent-bot);
    background: rgba(122, 139, 111, .08);
  }
  .initiation-session-signals button {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 30px;
    padding: 0 11px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas);
    color: var(--ink);
    font: 500 12px/1 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-session-signals button:disabled {
    cursor: wait;
    opacity: .62;
  }
  .initiation-sessions-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .initiation-rsvp-counts {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 28px;
    padding: 2px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--card-bg);
  }
  .initiation-rsvp-counts span {
    display: inline-flex;
    align-items: center;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    color: var(--ink-soft);
    font: 600 11px/1 Inter, sans-serif;
    white-space: nowrap;
  }
  .initiation-rsvp-counts .yes {
    color: var(--accent-bot);
    background: rgba(122, 139, 111, .08);
  }
  .initiation-rsvp-counts .maybe {
    color: #92600A;
    background: rgba(194, 147, 74, .10);
  }
  .initiation-rsvp-counts .no {
    color: var(--accent-drishti);
    background: rgba(194, 107, 74, .08);
  }
  .initiation-session-rsvps {
    grid-column: 1 / -1;
    display: grid;
    gap: 0;
    margin-top: 2px;
    border: 1px solid var(--rule-soft);
    border-radius: 16px;
    overflow: hidden;
    background: var(--canvas);
  }
  .initiation-rsvp-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    gap: 12px;
    align-items: center;
    padding: 10px 12px;
    border-bottom: 1px solid var(--rule-soft);
  }
  .initiation-rsvp-row:last-child { border-bottom: 0; }
  .initiation-rsvp-row strong {
    display: block;
    color: var(--ink);
    font: 600 13px/1.25 Inter, sans-serif;
  }
  .initiation-rsvp-row em {
    display: block;
    margin-top: 3px;
    color: var(--ink-faint);
    font: 500 11px/1.35 Inter, sans-serif;
    font-style: normal;
  }
  .initiation-attendance-control {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--card-bg);
  }
  .initiation-attendance-control button {
    min-height: 24px;
    padding: 0 8px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--ink-faint);
    font: 600 11px/1 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-attendance-control button.active.attended {
    background: rgba(122, 139, 111, .12);
    color: var(--accent-bot);
  }
  .initiation-attendance-control button.active.missed {
    background: rgba(194, 107, 74, .10);
    color: var(--accent-drishti);
  }
  .initiation-attendance-control button:disabled {
    cursor: wait;
    opacity: .62;
  }
  .initiation-placeholder-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
  }
  .initiation-placeholder {
    min-height: 152px;
    padding: 24px;
    border-right: 1px solid var(--rule);
  }
  .initiation-placeholder:last-child { border-right: 0; }
  .initiation-placeholder strong {
    display: block;
    font-family: 'Cormorant Garamond', serif;
    font-size: 24px;
    font-weight: 500;
    color: var(--ink);
    margin-bottom: 8px;
  }
  .initiation-placeholder span,
  .initiation-empty {
    color: var(--ink-soft);
    font-size: 14px;
    line-height: 1.7;
    padding: 20px 18px 24px;
  }
  .initiation-detail-backdrop {
    position: fixed;
    inset: 0;
    z-index: 180;
    background: rgba(28, 28, 26, .22);
    opacity: 0;
    pointer-events: none;
    transition: opacity .18s ease;
  }
  .initiation-detail-backdrop.open { opacity: 1; pointer-events: auto; }
  .initiation-detail-drawer {
    position: fixed;
    top: 24px;
    right: 24px;
    bottom: 24px;
    z-index: 190;
    width: min(460px, calc(100vw - 48px));
    padding: 24px;
    border: 1px solid var(--rule);
    border-radius: 12px;
    background: var(--canvas);
    box-shadow: 0 28px 80px rgba(28, 28, 26, .18);
    transform: translateX(calc(100% + 48px));
    transition: transform .2s ease;
    overflow: auto;
  }
  .initiation-detail-drawer.open { transform: translateX(0); }
  .initiation-detail-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding-bottom: 18px;
    border-bottom: 1px solid var(--rule);
  }
  .initiation-detail-header h2 {
    margin: 6px 0 0;
    font-family: 'Cormorant Garamond', serif;
    font-size: 34px;
    font-weight: 500;
  }
  .initiation-detail-header button {
    border: 0;
    background: transparent;
    color: var(--ink-soft);
    font-size: 20px;
    cursor: pointer;
  }
  .initiation-detail-body { display: grid; gap: 24px; padding-top: 24px; }
  .initiation-detail-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
  }
  .initiation-detail-metrics div { padding: 14px 12px; border-right: 1px solid var(--rule); }
  .initiation-detail-metrics div:last-child { border-right: 0; }
  .initiation-detail-metrics strong { display:block; color: var(--ink); font-weight: 600; font-size: 14px; }
  .initiation-detail-metrics span { display:block; margin-top: 5px; color: var(--ink-faint); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
  .initiation-detail-section p {
    margin: 8px 0 0;
    color: var(--ink-soft);
    line-height: 1.7;
    font-size: 14px;
  }
  .initiation-copy-stack {
    display: grid;
    gap: 8px;
    margin-top: 10px;
  }
  .initiation-copy-stack button,
  .initiation-copy-stack a,
  .initiation-copy-stack span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    width: 100%;
    min-height: 38px;
    padding: 0 12px;
    border: 1px solid var(--rule-soft);
    border-radius: 8px;
    background: var(--canvas-elevated);
    color: var(--ink-soft);
    font: 500 13px/1.3 Inter, sans-serif;
    text-align: left;
    text-decoration: none;
    box-sizing: border-box;
  }
  .initiation-copy-stack button { cursor: pointer; }
  .initiation-mini-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 10px;
    border-top: 1px solid var(--rule);
    border-bottom: 1px solid var(--rule);
  }
  .initiation-mini-grid div { padding: 12px 10px; border-right: 1px solid var(--rule); }
  .initiation-mini-grid div:last-child { border-right: 0; }
  .initiation-mini-grid strong { display: block; color: var(--ink); font-size: 14px; font-weight: 600; }
  .initiation-mini-grid span { display: block; margin-top: 4px; color: var(--ink-faint); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
  .initiation-module-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 10px;
  }
  .initiation-module-pills span {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    color: var(--ink-soft);
    font: 500 12px/1 Inter, sans-serif;
  }
  .initiation-day-grid {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 6px;
    margin-top: 10px;
  }
  .initiation-day-grid span {
    display: grid;
    place-items: center;
    aspect-ratio: 1;
    border: 1px solid var(--rule-soft);
    border-radius: 6px;
    color: var(--ink-faint);
    font: 600 11px/1 Inter, sans-serif;
  }
  .initiation-day-grid span.done {
    border-color: rgba(122, 139, 111, .35);
    background: rgba(122, 139, 111, .12);
    color: var(--accent-bot);
  }
  .initiation-admin-actions {
    display: grid;
    gap: 10px;
    margin-top: 10px;
  }
  .initiation-admin-actions button,
  .initiation-admin-actions select {
    min-height: 38px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas);
    color: var(--ink);
    font: 600 13px/1 Inter, sans-serif;
    padding: 0 14px;
  }
  .initiation-admin-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    cursor: pointer;
  }
  .initiation-admin-actions button.primary {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--canvas);
  }
  .initiation-admin-actions label {
    display: grid;
    gap: 7px;
    color: var(--ink-faint);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .08em;
  }
  .initiation-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }
  .initiation-detail-actions button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas);
    color: var(--ink);
    font: 500 13px/1 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-form {
    display: grid;
    gap: 18px;
  }
  .initiation-form label {
    display: grid;
    gap: 8px;
  }
  .initiation-form input,
  .initiation-form select,
  .initiation-form textarea {
    width: 100%;
    border: 1px solid var(--rule);
    border-radius: 10px;
    background: var(--canvas-elevated);
    color: var(--ink);
    font: 500 14px/1.4 Inter, sans-serif;
    padding: 12px 14px;
    outline: none;
    box-sizing: border-box;
  }
  .initiation-form textarea {
    resize: vertical;
    min-height: 90px;
    line-height: 1.6;
  }
  .initiation-form input:focus,
  .initiation-form select:focus,
  .initiation-form textarea:focus {
    border-color: var(--ink-soft);
    background: var(--canvas);
  }
  .initiation-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }
  .initiation-form-actions {
    display: flex;
    justify-content: flex-end;
    gap: 8px;
    padding-top: 6px;
  }
  .initiation-form-actions button {
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid var(--rule);
    border-radius: 999px;
    background: var(--canvas);
    color: var(--ink);
    font: 600 13px/1 Inter, sans-serif;
    cursor: pointer;
  }
  .initiation-form-actions button.primary {
    background: var(--ink);
    border-color: var(--ink);
    color: var(--canvas);
    box-shadow: 0 10px 26px rgba(28, 28, 26, .16);
  }
  @media (max-width: 920px) {
    .initiation-hero,
    .initiation-panel-toolbar { flex-direction: column; align-items: stretch; }
    .initiation-stat-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .initiation-stat { border-bottom: 1px solid var(--rule); }
    .initiation-overview-grid,
    .initiation-placeholder-grid { grid-template-columns: 1fr; }
    .initiation-placeholder { border-right: 0; border-bottom: 1px solid var(--rule-soft); }
    .initiation-roster-row { grid-template-columns: 1fr; gap: 7px; }
    .initiation-session-row { grid-template-columns: 1fr; align-items: stretch; }
    .initiation-session-signals { justify-content: flex-start; }
    .initiation-form-grid { grid-template-columns: 1fr; }
  }

  /* Drishti conversation viewer */
  .conv-row { padding: 12px 14px; border: 1px solid var(--border, #e8e2da); border-radius: 10px; margin-bottom: 8px; cursor: pointer; transition: background 0.12s, border-color 0.12s; background: var(--card-bg, #fff); }
  .conv-row:hover { background: #fafaf7; border-color: var(--ink, #1a1712); }
  .conv-row-head { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 6px; }
  .conv-row-name { font-size: 14px; color: var(--ink, #1a1712); font-weight: 500; }
  .conv-row-meta { display: inline-flex; gap: 8px; align-items: baseline; font-size: 11px; color: #9e948a; }
  .conv-row-count { padding: 2px 8px; border-radius: 999px; background: #f5f2ee; }
  .conv-row-time { font-variant-numeric: tabular-nums; }
  .conv-row-snippet { font-size: 12px; color: #6b6259; line-height: 1.4; margin-top: 2px; }
  .conv-row-snippet b { color: var(--accent); font-weight: 600; }

  .conv-msg { padding: 10px 12px; border-radius: 10px; max-width: 85%; }
  .conv-msg.is-user { background: #f5f2ee; align-self: flex-start; }
  .conv-msg.is-dristi { background: var(--accent-bg); align-self: flex-end; }
  .conv-msg-meta { font-size: 10px; color: #9e948a; margin-bottom: 4px; }
  .conv-msg-meta b { color: var(--accent); }
  .conv-msg-body { font-size: 13px; line-height: 1.5; color: var(--ink, #1a1712); white-space: pre-wrap; }

  /* Confidence + leak badges in conversation viewer */
  .conv-badge { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 10px; font-weight: 500; letter-spacing: 0.04em; text-transform: uppercase; vertical-align: middle; }
  .conv-badge-conf-high   { background: #e8f5e8; color: #1f6b3d; border: 1px solid rgba(31, 107, 61, 0.2); }
  .conv-badge-conf-medium { background: #fff4e0; color: #8a5a1a; border: 1px solid rgba(138, 90, 26, 0.2); }
  .conv-badge-conf-low    { background: #fde8e8; color: #b04444; border: 1px solid rgba(176, 68, 68, 0.25); }
  .conv-badge-leak        { background: #fde8e8; color: #b04444; border: 1px solid rgba(176, 68, 68, 0.25); }
  .conv-msg .conv-badge   { font-size: 9px; padding: 1px 6px; }

  /* Signal-leak panel */
  .signal-leak-row { padding: 10px 12px; border: 1px solid var(--border, #e8e2da); border-radius: 8px; margin-bottom: 6px; background: #fdf6f6; }
  .signal-leak-meta { font-size: 12px; color: #6b6259; margin-bottom: 4px; }
  .signal-leak-meta b { color: #b04444; }
  .signal-leak-sample { font-size: 11px; color: #1a1712; }
  .signal-leak-sample code { background: #fff; padding: 4px 6px; border-radius: 4px; border: 1px solid #f0d4d4; font-family: 'Geist Mono', 'JetBrains Mono', monospace; word-break: break-all; }

  /* Suggestion filter pills */
  .suggestion-filter-pills { display: inline-flex; gap: 4px; background: #f5f2ee; padding: 3px; border-radius: 8px; }
  .suggestion-filter-pill { padding: 4px 10px; border: none; background: transparent; font-family: 'Poppins', sans-serif; font-size: 11px; font-weight: 500; cursor: pointer; border-radius: 6px; color: var(--ink-muted, #6b6259); transition: all 0.15s; display: inline-flex; align-items: center; gap: 4px; }
  .suggestion-filter-pill.is-active { background: #fff; color: var(--ink, #1a1712); box-shadow: 0 1px 3px rgba(0,0,0,0.08); }
  .suggestion-filter-pill span { font-size: 10px; padding: 1px 5px; border-radius: 999px; background: rgba(0,0,0,0.06); color: #9e948a; min-width: 14px; text-align: center; }
  .suggestion-filter-pill.is-active span { background: var(--accent); color: #fff; }

  @media (max-width: 767px) {
    .home-greeting {
      font-size: clamp(34px, 12vw, 44px);
      margin-bottom: 32px;
    }

    .home-stats-grid,
    .stats-row {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 0;
    }

    .home-stats-grid .stat-card,
    .stats-row .stat-card {
      border-bottom: 1px solid var(--rule);
      padding: 22px 14px;
    }

    .home-stats-grid .stat-card:nth-child(2n),
    .stats-row .stat-card:nth-child(2n) {
      border-right: 0;
    }

    .home-columns,
    .home-command-grid {
      grid-template-columns: minmax(0, 1fr);
      gap: 32px;
    }

    .task-composer,
    .drishti-card-header,
    .blast-actions,
    .initiation-form-actions {
      align-items: stretch;
      flex-direction: column;
    }

    .task-composer input,
    .task-composer .btn,
    .blast-actions .btn,
    .initiation-copy-stack button,
    .initiation-copy-stack a,
    .initiation-admin-actions button,
    .initiation-admin-actions select,
    .initiation-detail-actions button,
    .initiation-form-actions button,
    .drishti-card-filter {
      min-height: 44px;
      touch-action: manipulation;
    }

    .quiet-item,
    .health-row {
      grid-template-columns: 8px minmax(0, 1fr);
    }

    .quiet-time,
    .health-value {
      grid-column: 2;
      justify-self: start;
      white-space: normal;
    }

    .task-row {
      grid-template-columns: 24px minmax(0, 1fr);
      padding: 10px 0;
    }

    .task-meta {
      grid-column: 2;
    }

    .drishti-channel-grid {
      padding: 0;
    }

    .drishti-card-header {
      gap: 8px;
    }

    .drishti-card-body .drishti-row {
      padding: 12px 14px;
    }

    .drishti-row-time {
      min-width: 0;
      text-align: left;
    }

    .blast-chip,
    .blast-fmt,
    .suggestion-filter-pill {
      min-height: 36px;
      touch-action: manipulation;
    }

    .blast-fmt {
      width: 40px;
    }

    .blast-dest-pills,
    .suggestion-filter-pills {
      flex-wrap: nowrap;
      overflow-x: auto;
      scrollbar-width: none;
      -webkit-overflow-scrolling: touch;
    }

    .blast-dest-pills::-webkit-scrollbar,
    .suggestion-filter-pills::-webkit-scrollbar {
      display: none;
    }

    .roadmap-select {
      box-sizing: border-box;
      max-width: 100%;
      width: 100%;
    }

    .roadmap-chip,
    .roadmap-select {
      flex: 0 0 auto;
      min-height: 44px;
      touch-action: manipulation;
    }

    .initiation-detail-metrics,
    .initiation-mini-grid {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .initiation-detail-metrics div:nth-child(2n),
    .initiation-mini-grid div:nth-child(2n) {
      border-right: 0;
    }

    .initiation-day-grid {
      grid-template-columns: repeat(7, minmax(30px, 1fr));
    }

    .conv-msg {
      max-width: 100%;
    }
  }
