/* ConvoFin analysis services — shared editorial workspace skin. */
@import url('/css/theme.css');

body.analysis-service,
body.service-workspace {
  color: var(--svc-ink);
  background-color: var(--svc-paper);
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.018'/%3E%3C/svg%3E");
}

/* Header: same colored mark and black editorial navigation used on the landing. */
body.analysis-service .cf-top-bar,
body.cf-blog-page .cf-top-bar,
body.service-workspace .cf-top-bar {
  color: var(--svc-ink) !important;
  background: rgba(243, 238, 229, .96) !important;
  border-bottom: 1.5px solid var(--svc-line) !important;
  box-shadow: none !important;
}
body.analysis-service .cf-brand,
body.cf-blog-page .cf-brand,
body.service-workspace .cf-brand { background: transparent !important; box-shadow: none !important; }
body.analysis-service .cf-brand-mark,
body.cf-blog-page .cf-brand-mark,
body.service-workspace .cf-brand-mark {
  width: 40px !important;
  height: 40px !important;
  border: 1px solid var(--svc-ink) !important;
  border-radius: 10px !important;
  filter: none !important;
  box-shadow: 2px 2px 0 rgba(17, 16, 14, .22) !important;
}
body.analysis-service .cf-brand-text,
body.cf-blog-page .cf-brand-text,
body.service-workspace .cf-brand-text { filter: grayscale(1) brightness(0) !important; }
body.analysis-service :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn),
body.cf-blog-page :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn),
body.service-workspace :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn) {
  color: var(--svc-ink) !important;
  border-radius: 2px !important;
  font-size: 14px !important;
  font-weight: 800 !important;
}
body.analysis-service :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn):hover,
body.analysis-service .cf-nav-link.active,
body.cf-blog-page :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn):hover,
body.cf-blog-page .cf-nav-link.active,
body.service-workspace :where(.cf-nav-link, .cf-settings-btn, .cf-menu-btn):hover,
body.service-workspace .cf-nav-link.active { color: var(--svc-ink) !important; background: var(--svc-yellow) !important; }

/* Three-panel analysis tools. */
body.analysis-service .analysis-shell { background: var(--svc-paper); }
body.analysis-service .analysis-shell > .sidebar,
body.analysis-service .analysis-pane,
body.analysis-service .viewer-pane,
body.analysis-service .pane-left,
body.analysis-service .left-panel,
body.analysis-service .extracted-text-pane {
  color: var(--svc-ink);
  background: var(--svc-panel);
  border-color: rgba(17, 16, 14, .72);
}
body.analysis-service .analysis-shell > .sidebar { border-right: 1.5px solid var(--svc-line); }
body.analysis-service .analysis-pane { border-left: 1.5px solid var(--svc-line); }
body.analysis-service :where(.sidebar-tabs, .analysis-tabs) {
  gap: 0;
  padding: 0;
  background: var(--svc-paper);
  border-bottom: 1.5px solid var(--svc-line);
}
body.analysis-service :where(.sidebar-tab, .analysis-tab) {
  min-height: 44px;
  padding: 9px 8px;
  color: var(--svc-muted);
  background: transparent;
  border: 0;
  border-right: 1px solid rgba(17, 16, 14, .28);
  border-radius: 0;
  box-shadow: none;
  font-size: 14px;
}
html[lang="en"] body.analysis-service .analysis-tab {
  padding-inline: 2px;
  font-size: var(--fs-12);
}
body.analysis-service :where(.sidebar-tab, .analysis-tab):hover,
body.analysis-service :where(.sidebar-tab, .analysis-tab).active {
  color: var(--svc-ink);
  background: var(--svc-yellow);
  border-color: var(--svc-line);
  box-shadow: none;
}
body.analysis-service :where(.viewer-toolbar, .pane-header, .input-header, .extracted-text-toolbar, .scan-text-toolbar) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border-color: rgba(17, 16, 14, .45);
}
body.analysis-service :where(.viewer-body, #start-screen, .analysis-body, .canvas-wrap) {
  color: var(--svc-ink);
  background: var(--svc-paper);
}

/* Inputs, upload zones, cards and controls. */
body.analysis-service :where(.drop-zone, .viewer-empty-zone) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border: 2px dashed var(--svc-line);
  border-radius: 4px;
  box-shadow: 7px 7px 0 rgba(17, 16, 14, .12);
}
body.analysis-service :where(.drop-zone, .viewer-empty-zone):hover,
body.analysis-service :where(.drop-zone, .viewer-empty-zone).drag-over {
  color: var(--svc-ink);
  background: #fff3c4;
  border-color: var(--svc-line);
  box-shadow: 9px 9px 0 rgba(17, 16, 14, .18);
}
body.analysis-service :where(input, textarea, select, .url-input, .memo-editor) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border-color: rgba(17, 16, 14, .65);
  border-radius: 2px;
  box-shadow: none;
  font-size: 14px;
}
body.analysis-service :where(input, textarea, select):focus { border-color: var(--svc-line); box-shadow: 0 0 0 2px var(--svc-yellow); }
body.analysis-service :where(.example-btn, .filter-btn, .viewer-btn, .btn, .memo-btn, .memo-btn-sm, .extracted-text-copy, .scan-text-copy, .doc-type-btn, .calc-chip) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border: 1px solid var(--svc-line);
  border-radius: 2px;
  box-shadow: none;
  font-size: 14px;
}
body.analysis-service :where(.example-btn, .filter-btn, .viewer-btn, .btn, .memo-btn, .memo-btn-sm, .extracted-text-copy, .scan-text-copy, .doc-type-btn, .calc-chip):hover,
body.analysis-service :where(.filter-btn, .doc-type-btn, .calc-chip).active {
  color: var(--svc-ink);
  background: var(--svc-yellow);
  border-color: var(--svc-line);
}
body.analysis-service :where(.btn-url, .btn-start, .btn-capture, .btn-primary, .memo-btn-primary, .viewer-btn-primary) {
  color: #fff;
  background: var(--svc-ink);
  border: 1px solid var(--svc-ink);
  border-radius: 2px;
  box-shadow: none;
  font-size: 14px;
}
body.analysis-service :where(.btn-url, .btn-start, .btn-capture, .btn-primary, .memo-btn-primary, .viewer-btn-primary):hover {
  color: var(--svc-ink);
  background: var(--svc-yellow);
}
body.analysis-service :where(.page-list-item, .clause-item, .history-item, .thumb-list > *, .word-list > *) { border-color: rgba(17, 16, 14, .18); }
body.analysis-service :where(.page-list-item, .clause-item, .history-item):hover,
body.analysis-service :where(.page-list-item, .clause-item, .history-item).active { color: var(--svc-ink); background: #fff3c4; }
body.analysis-service :where(.memo-card, .metric-card, .settings-card, .float-card) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border-color: rgba(17, 16, 14, .55);
  border-radius: 3px;
  box-shadow: 4px 4px 0 rgba(17, 16, 14, .1);
}
body.analysis-service :where(.section-title, .toolbar-title, .scan-text-title, .extracted-text-title, .upload-title, #start-screen h2) { color: var(--svc-ink); }
body.analysis-service :where(.upload-desc, .sidebar-desc, .history-time, .hint-text, .status-text, .scan-text-content.empty, .analysis-empty) { color: var(--svc-muted); }
body.analysis-service :where(.progress-fill, .progress-mini-fill) { background: var(--svc-yellow); }
body.analysis-service :where(.chat-dock) { border-color: var(--svc-line); border-radius: 4px 4px 0 0; box-shadow: none; }
body.analysis-service :where(.chat-header) { color: var(--svc-ink); background: var(--svc-yellow); border-color: var(--svc-line); }
body.analysis-service .chat-msg.user .chat-bubble { background: var(--svc-ink); }

/* Financial calculators. */
body.service-workspace #main-screen { background: var(--svc-paper); }
body.service-workspace .sidebar {
  background: var(--svc-panel);
  border-right: 1.5px solid var(--svc-line);
}
body.service-workspace :where(.sidebar-tabs, .analysis-tabs) { gap: 0; padding: 0; background: var(--svc-paper); border-color: var(--svc-line); }
body.service-workspace :where(.sidebar-tab, .analysis-tab) { min-height: 44px; border: 0; border-radius: 0; color: var(--svc-muted); background: transparent; box-shadow: none; font-size: 14px; }
body.service-workspace :where(.sidebar-tab, .analysis-tab).active { color: var(--svc-ink); background: var(--svc-yellow); border-color: var(--svc-line); box-shadow: none; }
body.service-workspace :where(.calc-pane, .records-detail-panel) { background: transparent; }
body.service-workspace .calc-group-header { color: var(--svc-ink); background: #e6dfd4; border-color: rgba(17, 16, 14, .35); }
body.service-workspace .calc-item { color: var(--svc-ink); border-color: rgba(17, 16, 14, .18); }
body.service-workspace .calc-item:hover,
body.service-workspace .calc-item.active { color: var(--svc-ink); background: #fff3c4; }
body.service-workspace .calc-title { color: var(--svc-ink); font-size: clamp(32px, 4vw, 54px); line-height: 1.05; }
body.service-workspace :where(.calc-card, .result-card, .term-card, .section-card, .metric, .detail-hero) {
  color: var(--svc-ink);
  background: var(--svc-paper-light);
  border: 1px solid var(--svc-line);
  border-radius: 3px;
  box-shadow: 5px 5px 0 rgba(17, 16, 14, .11);
}
body.service-workspace :where(input, textarea, select) { min-height: 40px; color: var(--svc-ink); background: var(--svc-paper-light); border: 1px solid rgba(17, 16, 14, .65); border-radius: 2px; font-size: 14px; }
body.service-workspace :where(input, textarea, select):focus { border-color: var(--svc-line); box-shadow: 0 0 0 2px var(--svc-yellow); }
body.service-workspace :where(.btn-calc, .primary-btn) { color: #fff; background: var(--svc-ink) !important; border: 1px solid var(--svc-ink) !important; border-radius: 2px; box-shadow: none !important; }
body.service-workspace :where(.btn-calc, .primary-btn):hover { color: var(--svc-ink); background: var(--svc-yellow) !important; }
body.service-workspace :where(.calc-chip, .secondary-btn, .filter-chip) { color: var(--svc-ink); background: var(--svc-paper-light); border: 1px solid var(--svc-line); border-radius: 2px; font-size: 14px; }
body.service-workspace :where(.calc-chip, .filter-chip).active { color: var(--svc-ink); background: var(--svc-yellow); }

/* Runtime-injected ad and safety chrome follows the project-wide 14px floor. */
body.analysis-service .cf-ad-placeholder,
body.analysis-service .cf-ad-placeholder *,
body.cf-blog-page .cf-ad-placeholder,
body.cf-blog-page .cf-ad-placeholder *,
body.service-workspace .cf-ad-placeholder,
body.service-workspace .cf-ad-placeholder *,
body.analysis-service #cf-disclaimer-bar,
body.service-workspace #cf-disclaimer-bar {
  font-size: 14px !important;
}

/* Member-only financial records. */
body.service-workspace .records-shell { height: calc(100vh - var(--cf-header-h, 70px) - 58px); background: var(--svc-paper); }
body.service-workspace .records-list-panel { background: var(--svc-panel); border-right: 1.5px solid var(--svc-line); }
body.service-workspace :where(.panel-head, .filter-row, .filter-controls) { border-color: rgba(17, 16, 14, .4); }
body.service-workspace .privacy-note { color: var(--svc-ink); background: #fff3c4; border: 1px solid var(--svc-line); border-radius: 2px; }
body.service-workspace :where(.panel-title, .detail-title, .section-title, .empty-title, .record-card-title) { color: var(--svc-ink); }
body.service-workspace :where(.panel-subtitle, .detail-copy, .empty-copy, .metric-label) { color: var(--svc-muted); }
body.service-workspace .record-card { border-color: rgba(17, 16, 14, .28); border-radius: 0; }
body.service-workspace .record-card:hover,
body.service-workspace .record-card.active { background: #fff3c4; border-color: var(--svc-line); }
body.service-workspace .eyebrow { color: var(--svc-ink); background: var(--svc-yellow); border-radius: 1px; }

@media (max-width: 1280px) {
  body.analysis-service :where(.sidebar, .analysis-pane),
  body.service-workspace :where(.sidebar, .analysis-pane) { box-shadow: 8px 0 0 rgba(17, 16, 14, .18); }
  body.analysis-service #cf-tabbar,
  body.service-workspace #cf-tabbar { background: var(--svc-paper-light); border-color: var(--svc-line); }
  body.analysis-service #cf-tabbar :where(button, a),
  body.service-workspace #cf-tabbar :where(button, a) { color: var(--svc-ink); font-size: 14px; }
}

@media (max-width: 820px) {
  body.service-workspace { overflow: auto; }
  body.service-workspace .records-shell {
    height: auto;
    min-height: calc(100dvh - var(--cf-header-h, 56px) - 116px);
    overflow: visible;
  }
  body.service-workspace .records-list-panel,
  body.service-workspace .records-detail-panel { overflow: visible; }
}
