
    :root {
      --bg: #ffffff;
      --panel: #ffffff;
      --panel-strong: #ffffff;
      --ink: #171717;
      --muted: #6b7280;
      --accent: #2563eb;
      --accent-dark: #1d4ed8;
      --line: #e5e7eb;
      --good: #1b6b4a;
      --warn: #8a5b12;
      --shadow: 0 10px 30px rgba(17, 24, 39, 0.08);
    }

    * { box-sizing: border-box; }

    body {
      margin: 0;
      min-height: 100vh;
      font-family: Georgia, "Iowan Old Style", "Palatino Linotype", serif;
      color: var(--ink);
      background: var(--bg);
    }

    .shell {
      width: min(1180px, calc(100% - 32px));
      margin: 32px auto;
      display: grid;
      gap: 24px;
      position: relative;
      z-index: 0;
    }

    .hero, .results, .scheduler-panel {
      background: var(--panel);
      border: 1px solid var(--line);
      border-radius: 28px;
      box-shadow: var(--shadow);
      backdrop-filter: blur(12px);
    }

    .hero {
      position: relative;
      overflow: visible;
      z-index: 2;
    }

    .hero::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        linear-gradient(120deg, rgba(37, 99, 235, 0.04), transparent 42%),
        linear-gradient(330deg, rgba(17, 24, 39, 0.03), transparent 60%);
      pointer-events: none;
    }

    .hero-grid {
      position: relative;
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      gap: 20px;
      padding: 28px;
      align-items: start;
    }

    .hero-grid.is-collapsed {
      grid-template-columns: minmax(0, 1fr);
    }

    .eyebrow {
      display: inline-flex;
      align-self: flex-start;
      align-items: center;
      gap: 8px;
      padding: 7px 11px;
      border-radius: 999px;
      background: rgba(255, 255, 255, 0.72);
      color: var(--accent-dark);
      font-size: 12px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .hero-copy-column {
      position: relative;
      display: grid;
      gap: 18px;
      align-content: start;
      min-width: 0;
    }

    .hero-copy-panel {
      position: relative;
      display: grid;
      gap: 18px;
      padding: 28px;
      border-radius: 24px;
      background: rgba(255, 255, 255, 0.92);
      border: 1px solid var(--line);
      box-shadow: var(--shadow);
    }

    .hero-copy-panel.is-collapsed {
      gap: 0;
      padding: 0;
      border: 1px solid transparent;
      background: transparent;
      box-shadow: none;
      min-height: 0;
      width: 64px;
      overflow: visible;
    }

    .hero-copy-head {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      align-items: flex-start;
    }

    .hero-copy-title {
      display: grid;
      gap: 12px;
      min-width: 0;
    }

    .hero-copy-body {
      display: grid;
      gap: 10px;
    }

    .hero-copy-panel.is-collapsed .hero-copy-body {
      display: none;
    }

    .hero-copy-panel.is-collapsed .hero-copy-head {
      display: none;
    }

    h1 {
      margin: 0;
      font-size: clamp(34px, 5.6vw, 60px);
      line-height: 0.95;
      letter-spacing: -0.05em;
      font-weight: 600;
      max-width: 9ch;
    }

    .hero p {
      margin: 0;
      max-width: 58ch;
      font-size: 17px;
      line-height: 1.55;
      color: var(--muted);
    }

    .hero-copy-toggle {
      appearance: none;
      border: 0;
      border-radius: 0 999px 999px 0;
      padding: 0;
      width: 28px;
      height: 64px;
      background: rgba(255, 255, 255, 0.98);
      color: var(--accent-dark);
      font: inherit;
      font-size: 16px;
      font-weight: 800;
      cursor: pointer;
      white-space: nowrap;
      align-self: start;
      box-shadow: none;
      position: absolute;
      top: 28px;
      right: -14px;
      transform: none;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      z-index: 3;
      border: 1px solid var(--line);
    }

    .hero-copy-toggle:hover {
      transform: none;
    }

    .hero-form-column {
      display: grid;
      gap: 18px;
      align-content: start;
      min-width: 0;
      width: min(100%, 920px);
      justify-self: center;
    }

    .search-workflow {
      display: grid;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
      gap: 16px;
      align-items: start;
    }

    .workflow-card {
      display: grid;
      gap: 14px;
      padding: 16px;
      border-radius: 24px;
      background: #ffffff;
      border: 1px solid var(--line);
    }

    .workflow-card-head {
      display: grid;
      gap: 6px;
    }

    .workflow-card-title {
      margin: 0;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--accent-dark);
    }

    .workflow-card-copy {
      margin: 0;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 13px;
      line-height: 1.45;
      color: var(--muted);
    }

    .workflow-card .form-section {
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
    }

    .workflow-card .search-mode-panel {
      min-height: 0;
    }

    .hero-scheduler-dock {
      display: grid;
    }

    .hero-scheduler-dock[hidden] {
      display: none;
    }

    .tips {
      display: grid;
      gap: 10px;
      margin-top: 18px;
      padding-top: 8px;
    }

    .tip {
      padding: 13px 15px;
      border-radius: 15px;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid rgba(255, 255, 255, 0.9);
      color: var(--muted);
      font-size: 14px;
      line-height: 1.5;
    }

    form {
      display: grid;
      gap: 16px;
      padding: 0;
      background: transparent;
      border-radius: 0;
      border: 0;
      align-self: start;
    }

    .form-section {
      display: grid;
      gap: 12px;
      padding: 16px;
      border-radius: 20px;
      background: #ffffff;
      border: 1px solid var(--line);
    }

    .search-mode-switch {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
      padding: 6px;
      border-radius: 18px;
      background: #ffffff;
      border: 1px solid var(--line);
    }

    .search-kind-switch {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 8px;
      padding: 5px;
      border-radius: 18px;
      background: rgba(255, 255, 255, 0.72);
      border: 1px solid var(--line);
    }

    .search-kind-button {
      appearance: none;
      border: 0;
      border-radius: 14px;
      padding: 13px 16px;
      background: transparent;
      color: var(--muted);
      font: inherit;
      font-size: 14px;
      font-weight: 800;
      cursor: pointer;
    }

    .search-kind-button.is-active {
      color: #fff;
      background: var(--accent-dark);
    }

    .search-kind-panel[hidden] {
      display: none;
    }

    .search-kind-panel {
      animation: reveal 180ms ease both;
    }

    .semantic-query-card {
      min-height: 310px;
      display: grid;
      align-content: center;
      gap: 14px;
      padding: clamp(22px, 5vw, 54px);
      border-radius: 24px;
      border: 1px solid var(--line);
      background: #fff;
    }

    .semantic-query-card label {
      font-size: 13px;
      font-weight: 800;
    }

    .semantic-query-input-wrap {
      position: relative;
    }

    .semantic-query-card textarea {
      width: 100%;
      min-height: 150px;
      padding-right: 66px;
      resize: vertical;
      font-size: 18px;
      line-height: 1.5;
      white-space: pre-wrap;
      overflow-wrap: anywhere;
      word-break: normal;
      overflow-x: hidden;
    }

    .semantic-voice-button {
      position: absolute;
      right: 14px;
      bottom: 14px;
      width: 42px;
      height: 42px;
      display: inline-grid;
      place-items: center;
      padding: 0;
      border: 0;
      border-radius: 50%;
      color: #fff;
      background: var(--accent-dark);
      cursor: pointer;
      box-shadow: 0 8px 20px rgba(17, 17, 17, 0.18);
      transition: transform 140ms ease, background 140ms ease, box-shadow 140ms ease;
    }

    .semantic-voice-button[hidden] {
      display: none;
    }

    .semantic-voice-button:hover {
      transform: translateY(-1px);
      box-shadow: 0 10px 24px rgba(17, 17, 17, 0.24);
    }

    .semantic-voice-button:focus-visible {
      outline: 3px solid rgba(41, 98, 255, 0.28);
      outline-offset: 3px;
    }

    .semantic-voice-button.is-listening {
      background: #b42318;
    }

    .semantic-voice-start-icon,
    .semantic-voice-stop-icon {
      display: inline-grid;
      place-items: center;
    }

    .semantic-voice-start-icon svg {
      width: 23px;
      height: 23px;
    }

    .semantic-voice-stop-icon {
      display: none;
      font-size: 30px;
      font-weight: 300;
      line-height: 1;
      transform: translateY(-1px);
    }

    .semantic-voice-button.is-listening .semantic-voice-start-icon {
      display: none;
    }

    .semantic-voice-button.is-listening .semantic-voice-stop-icon {
      display: inline-grid;
    }

    .semantic-voice-status {
      min-height: 18px;
      color: var(--muted);
      font-size: 12px;
      font-weight: 650;
    }

    .semantic-voice-status:empty {
      min-height: 0;
    }

    .search-mode-button {
      appearance: none;
      border: 0;
      border-radius: 14px;
      padding: 12px 14px;
      background: transparent;
      color: var(--muted);
      font: inherit;
      font-size: 13px;
      font-weight: 800;
      cursor: pointer;
      transition: background 140ms ease, color 140ms ease, box-shadow 140ms ease;
    }

    .search-mode-button.is-active {
      background: #111111;
      color: #fff;
      box-shadow: 0 10px 24px rgba(17, 17, 17, 0.16);
    }

    .search-mode-panel[hidden] {
      display: none;
    }

    .search-mode-panel {
      min-height: 390px;
    }

    .search-mode-panel.is-revealing {
      animation: reveal 180ms ease both;
    }

    .search-intro {
      margin: 0;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0.01em;
      color: var(--muted);
      text-transform: none;
    }

    .form-section-title {
      margin: 0;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      color: var(--accent-dark);
    }

    .form-two-up {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .form-three-up {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 12px;
    }

    .role-criteria-grid {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
    }

    .role-criteria-grid .role-field--wide {
      grid-column: 1 / -1;
    }

    .company-search-picker {
      position: relative;
      display: grid;
      gap: 8px;
      min-width: 0;
      z-index: 30;
    }

    .company-search-input {
      width: 100%;
      border: 1px solid var(--line);
      background: #ffffff;
      border-radius: 13px;
      padding: 7px 11px;
      color: var(--ink);
      font: inherit;
      font-size: 12px;
      resize: none;
      min-height: 28px;
      box-sizing: border-box;
    }

    .company-search-results {
      position: absolute;
      top: calc(100% + 8px);
      left: 0;
      right: 0;
      z-index: 80;
      display: grid;
      gap: 6px;
      max-height: 152px;
      overflow: auto;
      padding: 8px;
      border: 1px solid rgba(23, 32, 39, 0.12);
      border-radius: 16px;
      background: rgba(255, 255, 255, 0.98);
      box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
    }

    .company-search-results:empty {
      display: none;
      padding: 0;
      border: 0;
      box-shadow: none;
    }

    .company-search-result {
      display: grid;
      gap: 2px;
      padding: 7px 9px;
      border-radius: 11px;
      border: 1px solid var(--line);
      background: #ffffff;
      text-align: left;
      color: var(--ink);
      cursor: pointer;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    }

    .company-search-result[disabled] {
      cursor: default;
      opacity: 0.55;
      color: var(--muted);
    }

    .company-search-result-name {
      font-size: 12px;
      font-weight: 700;
      line-height: 1.2;
    }

    .filter-two-up {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      align-items: start;
    }

    .filter-field {
      position: relative;
      display: grid;
      gap: 8px;
      overflow: visible;
    }

    .filter-label {
      font-size: 14px;
      font-weight: 400;
      letter-spacing: 0.02em;
    }

    .filter-note {
      margin: 0;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 12px;
      line-height: 1.5;
      color: var(--muted);
    }

    .multi-select {
      position: relative;
      border: 1px solid var(--line);
      background: #ffffff;
      border-radius: 16px;
      overflow: visible;
    }

    .multi-select[open] {
      z-index: 120;
      border-color: rgba(30, 27, 75, 0.28);
      box-shadow: 0 0 0 2px rgba(30, 27, 75, 0.12);
    }

    .multi-select summary {
      list-style: none;
      cursor: pointer;
      padding: 14px 16px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 11px;
      font-weight: 400;
      color: var(--ink);
    }

    .multi-select summary::-webkit-details-marker {
      display: none;
    }

    .multi-select-summary {
      min-width: 0;
      flex: 1;
    }

    .multi-select-summary.empty {
      color: var(--muted);
    }

    .multi-select-chevron {
      color: var(--muted);
      transition: transform 140ms ease;
    }

    .multi-select[open] .multi-select-chevron {
      transform: none;
    }

    .multi-select-panel {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(100% + 8px);
      z-index: 140;
      border: 1px solid var(--line);
      border-radius: 16px;
      padding: 12px;
      display: grid;
      gap: 10px;
      background: rgba(255, 255, 255, 0.98);
      box-shadow: 0 20px 40px rgba(15, 23, 42, 0.12);
    }

    .multi-select-search {
      width: 100%;
      border: 1px solid rgba(23, 32, 39, 0.1);
      border-radius: 12px;
      padding: 10px 12px;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 12px;
      background: rgba(244, 239, 230, 0.45);
      resize: none;
    }

    .multi-select-actions {
      display: flex;
      gap: 10px;
      flex-wrap: nowrap;
      white-space: nowrap;
      overflow-x: auto;
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 11px;
    }

    .filter-action {
      appearance: none;
      border: 0;
      background: none;
      padding: 0;
      border-radius: 0;
      color: var(--accent-dark);
      font: inherit;
      font-weight: 700;
      cursor: pointer;
    }

    .filter-action[disabled] {
      color: var(--muted);
      cursor: default;
      opacity: 0.65;
    }

    .multi-select-options {
      max-height: 220px;
      overflow: auto;
      display: grid;
      gap: 6px;
      padding-right: 4px;
    }

    .multi-select-option {
      display: flex;
      align-items: center;
      gap: 10px;
      padding: 8px 10px;
      border-radius: 12px;
      background: rgba(244, 239, 230, 0.55);
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 13px;
      font-weight: 400;
      color: var(--ink);
    }

    .multi-select-option.is-hidden {
      display: none;
    }

    .multi-select-option input {
      width: 16px;
      height: 16px;
      margin: 0;
      accent-color: var(--accent);
      flex: 0 0 auto;
    }

    .tri-state-filter-option {
      width: 100%;
      border: 0;
      text-align: left;
      cursor: pointer;
      box-shadow: none;
    }

    .tri-state-filter-option:hover {
      background: rgba(30, 27, 75, 0.09);
    }

    .tri-state-filter-option:focus-visible {
      outline: 2px solid var(--accent);
      outline-offset: -2px;
    }

    .filter-cycle-indicator {
      display: grid;
      place-items: center;
      width: 16px;
      height: 16px;
      border: 1px solid var(--line);
      border-radius: 3px;
      background: #fff;
      font-size: 14px;
      font-weight: 800;
      line-height: 1;
      flex: 0 0 auto;
    }

    .tri-state-filter-option[data-state="included"] .filter-cycle-indicator {
      border-color: var(--accent);
      background: var(--accent);
      color: #fff;
    }

    .tri-state-filter-option[data-state="excluded"] .filter-cycle-indicator {
      border-color: #a12c2c;
      background: #a12c2c;
      color: #fff;
    }

    .catalog-meta {
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 12px;
      line-height: 1.5;
      color: var(--muted);
    }

    label {
      display: grid;
      gap: 8px;
      font-size: 14px;
      font-weight: 700;
      letter-spacing: 0.02em;
    }

    textarea, input, select {
      width: 100%;
      border: 1px solid rgba(23, 32, 39, 0.13);
      background: rgba(255, 255, 255, 0.94);
      border-radius: 16px;
      padding: 14px 16px;
      color: var(--ink);
      font: inherit;
      font-size: 13px;
      resize: vertical;
    }

    .search-workflow textarea,
    .search-workflow input,
    .search-workflow select,
    .search-workflow .preset-toggle {
      font-weight: 400;
    }

    .search-workflow .filter-label {
      font-weight: 700;
    }

    .search-workflow .search-presets-label,
    .search-workflow .multi-select summary,
    .search-workflow .multi-select-option {
      font-weight: 400;
    }

    textarea {
      min-height: 132px;
      white-space: pre;
      overflow-wrap: normal;
      word-break: normal;
      overflow-x: auto;
    }

    #titles,
    #keywords,
    #location {
      min-height: 80px;
    }

    #date-posted {
      height: 80px;
      min-height: 80px;
    }

    #companies,
    #company-homepages {
      min-height: 84px;
    }

    input:focus, textarea:focus, select:focus {
      outline: 2px solid rgba(37, 99, 235, 0.22);
      border-color: rgba(37, 99, 235, 0.45);
    }

    .actions {
      display: flex;
      gap: 12px;
      align-items: center;
      flex-wrap: wrap;
    }

    .checkbox-row {
      display: flex;
      align-items: center;
      gap: 10px;
      font-size: 14px;
      font-weight: 600;
      color: var(--muted);
    }

    .checkbox-row[hidden] {
      display: none !important;
    }

    .checkbox-row input {
      width: 18px;
      height: 18px;
      margin: 0;
      accent-color: var(--accent);
    }

    .search-presets {
      display: flex;
      align-items: center;
      gap: 12px;
      flex-wrap: wrap;
      padding-top: 2px;
    }

    .search-presets[hidden] {
      display: none !important;
    }

    .search-presets-label {
      font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      font-size: 12px;
      font-weight: 400;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .preset-toggle-group {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }

    .preset-toggle {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 0;
      border: 0;
      background: transparent;
      color: var(--ink);
      font-size: 13px;
      font-weight: 700;
      cursor: pointer;
    }

    .preset-toggle input {
      position: absolute;
      opacity: 0;
      pointer-events: none;
    }

    .preset-toggle-pill {
      position: relative;
      width: 34px;
      height: 20px;
      border-radius: 999px;
      background: rgba(23, 32, 39, 0.18);
      box-shadow: inset 0 0 0 1px rgba(23, 32, 39, 0.08);
      transition: background 140ms ease;
      flex: 0 0 auto;
    }

    .preset-toggle-pill::after {
      content: "";
      position: absolute;
      top: 2px;
      left: 2px;
      width: 16px;
      height: 16px;
      border-radius: 50%;
      background: white;
      box-shadow: 0 1px 4px rgba(23, 32, 39, 0.2);
      transition: transform 140ms ease;
    }

    .preset-toggle input:checked + .preset-toggle-pill {
      background: var(--accent);
    }

    .preset-toggle input:checked + .preset-toggle-pill::after {
      transform: translateX(14px);
    }

    .preset-toggle-name {
      line-height: 1.2;
    }

    .workflow-card .actions {
      padding-top: 2px;
    }

    button, .download-link {
      appearance: none;
      border: 0;
      border-radius: 999px;
      padding: 14px 20px;
      font: inherit;
      font-weight: 700;
      cursor: pointer;
      text-decoration: none;
      transition: transform 120ms ease, opacity 120ms ease, background 120ms ease;
    }

    button:hover, .download-link:hover {
      transform: translateY(-1px);
    }

    button[type="submit"] {
      background: var(--accent);
      color: white;
      box-shadow: 0 16px 36px rgba(37, 99, 235, 0.22);
    }

    button[disabled] {
      opacity: 0.8;
      transform: none;
    }

    .download-link {
      background: #f3f4f6;
      color: var(--ink);
    }

    .results {
      padding: 24px;
      display: grid;
      gap: 18px;
      background: #ffffff;
      border: 1px solid var(--line);
    }

    .results.is-searching {
      border: 0;
    }

    .hero-side-module {
      margin-top: 18px;
      padding: 16px;
      border-radius: 22px;
      background: #ffffff;
      border: 1px solid var(--line);
      display: grid;
      gap: 14px;
    }

    .hero-side-head {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 12px;
      align-items: start;
    }

    .hero-side-copy {
      display: grid;
      gap: 6px;
    }

    .hero-side-copy h2 {
      margin: 0;
      font-size: 18px;
      letter-spacing: -0.03em;
    }

    .hero-side-copy p {
      margin: 0;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.5;
    }

    .hero-side-summary {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px;
    }

    .hero-side-summary[hidden] {
      display: none;
    }

    .hero-side-stat {
      padding: 10px 11px;
      border-radius: 14px;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid rgba(23, 32, 39, 0.08);
    }

    .hero-side-stat-label {
      display: block;
      margin-bottom: 5px;
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
    }

    .hero-side-stat-value {
      font-size: 18px;
      line-height: 1.1;
      letter-spacing: -0.03em;
      font-weight: 700;
    }

    .hero-side-status {
      font-size: 13px;
      line-height: 1.5;
      color: var(--muted);
    }

    .hero-side-status[hidden] {
      display: none;
    }

    .hero-side-toggle {
      appearance: none;
      border: 0;
      background: transparent;
      padding: 0;
      color: var(--accent-dark);
      font: inherit;
      font-size: 13px;
      font-weight: 700;
      cursor: pointer;
      justify-self: end;
    }

    .scheduler-panel {
      padding: 24px;
      display: grid;
      gap: 18px;
    }

    .scheduler-head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }

    .scheduler-head-title {
      display: grid;
      gap: 4px;
    }

    .scheduler-head h2,
    .scheduler-subhead h3 {
      margin: 0;
      letter-spacing: -0.04em;
    }

    .scheduler-head h2 {
      font-size: clamp(26px, 3vw, 38px);
      font-weight: 700;
      line-height: 1;
      letter-spacing: -0.05em;
    }

    .scheduler-subhead h3 {
      font-size: 19px;
    }

    .scheduler-head-actions {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
    }

    .scheduler-head-actions a.button-link {
      text-decoration: none;
      background: #f3f4f6;
      color: var(--ink);
      box-shadow: none;
      padding: 11px 16px;
      border-radius: 999px;
      font-weight: 700;
      line-height: 1;
    }

    .scheduler-head-actions a.button-link:hover {
      background: #e5e7eb;
    }

    .scheduler-head-actions button {
      padding: 11px 16px;
    }

    .scheduler-head-actions button.primary-action {
      background: var(--accent);
      color: #fff;
      box-shadow: 0 16px 36px rgba(30, 27, 75, 0.18);
    }

    .scheduler-meta {
      color: var(--muted);
      font-size: 14px;
    }

    .scheduler-grid {
      display: grid;
      grid-template-columns: minmax(0, 1.3fr) minmax(320px, 0.9fr);
      gap: 16px;
      align-items: start;
    }

    .scheduler-card {
      padding: 18px;
      border-radius: 20px;
      background: rgba(255, 255, 255, 0.82);
      border: 1px solid rgba(23, 32, 39, 0.08);
      display: grid;
      gap: 14px;
    }

    .scheduler-status-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 12px;
    }

    .scheduler-stat {
      padding: 14px;
      border-radius: 16px;
      background: var(--panel-strong);
      border: 1px solid var(--line);
    }

    .scheduler-stat-label {
      display: block;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: var(--muted);
      margin-bottom: 8px;
    }

    .scheduler-stat-value {
      font-size: 22px;
      line-height: 1.1;
      letter-spacing: -0.04em;
      font-weight: 700;
      word-break: break-word;
    }

    .scheduler-actions {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
    }

    .scheduler-actions button {
      background: rgba(23, 32, 39, 0.08);
      color: var(--ink);
      box-shadow: none;
    }

    .scheduler-actions button.primary-action {
      background: var(--accent);
      color: #fff;
      box-shadow: 0 16px 36px rgba(30, 27, 75, 0.18);
    }

    .scheduler-refresh-form {
      display: grid;
      gap: 12px;
    }

    .scheduler-refresh-actions {
      display: flex;
      gap: 10px;
      flex-wrap: wrap;
      align-items: center;
    }

    .scheduler-log {
      margin: 0;
      padding: 16px;
      border-radius: 16px;
      background: #161b20;
      color: #f5ead7;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
      font-size: 12px;
      line-height: 1.55;
      overflow: auto;
      min-height: 220px;
      white-space: pre-wrap;
      word-break: break-word;
    }

    .scheduler-note {
      margin: 0;
      font-size: 13px;
      line-height: 1.5;
      color: var(--muted);
    }

    .saved-section {
      display: grid;
      gap: 16px;
      padding-top: 32px;
      margin-top: 48px;
    }

    .saved-section-head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }

    .saved-filters {
      display: flex;
      flex-wrap: wrap;
      gap: 12px;
      margin-left: auto;
      align-items: end;
    }

    .saved-filter-field {
      position: relative;
      min-width: 176px;
    }

    .saved-filter-dropdown {
      position: relative;
      min-width: 168px;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: #ffffff;
      box-shadow: none;
    }

    .saved-filter-dropdown[open] {
      border-color: var(--line);
      box-shadow: none;
    }

    .saved-filter-dropdown summary {
      list-style: none;
      cursor: pointer;
      padding: 10px 12px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--ink);
    }

    .saved-filter-dropdown summary::-webkit-details-marker {
      display: none;
    }

    .saved-filter-dropdown .saved-filter-chevron {
      color: var(--muted);
      transition: transform 140ms ease;
      flex: 0 0 auto;
    }

    .saved-filter-dropdown[open] .saved-filter-chevron {
      transform: none;
    }

    .saved-filter-menu {
      position: absolute;
      z-index: 40;
      left: 0;
      right: 0;
      top: calc(100% + 8px);
      display: grid;
      gap: 6px;
      padding: 8px;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: rgba(255, 255, 255, 0.98);
      box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
    }

    .saved-filter-option {
      border: 0;
      background: #fff;
      border-radius: 4px;
      padding: 8px 10px;
      text-align: left;
      font: inherit;
      font-size: 12px;
      font-weight: 700;
      color: var(--ink);
      cursor: pointer;
    }

    .saved-filter-option:hover {
      background: #f8fafc;
      color: var(--ink);
    }

    .saved-filter-dropdown:focus-within {
      outline: 2px solid rgba(30, 27, 75, 0.2);
      outline-offset: 2px;
    }

    .saved-section-head h3 {
      margin: 0;
      font-size: 24px;
      font-weight: 800;
      letter-spacing: -0.03em;
    }

    .saved-meta {
      color: var(--muted);
      font-size: 12px;
    }

    .save-cell {
      width: 54px;
      position: relative;
      text-align: center;
      vertical-align: middle;
    }

    button.save-toggle {
      display: inline-grid;
      place-items: center;
      width: 34px;
      height: 34px;
      margin: 0;
      padding: 0;
      border: 1px solid transparent;
      border-radius: 7px;
      background: transparent;
      color: #76848a;
      box-shadow: none;
      vertical-align: middle;
    }

    button.save-toggle:hover { background: #f1f4f5; color: var(--accent); }
    button.save-toggle[aria-pressed="true"] { color: var(--accent); }
    button.save-toggle svg { width: 19px; height: 19px; overflow: visible; }
    button.save-toggle path { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linejoin: round; }
    button.save-toggle[aria-pressed="true"] path { fill: currentColor; }

    .saved-job-cell {
      width: 70px;
      position: relative;
      text-align: center;
      vertical-align: middle;
    }

    .note-badge {
      position: absolute;
      bottom: 6px;
      left: 50%;
      transform: translateX(-50%);
      min-width: 38px;
      padding: 1px 5px;
      border-radius: 999px;
      border: 1px solid rgba(30, 27, 75, 0.18);
      background: rgba(30, 27, 75, 0.08);
      color: var(--accent-dark);
      font-size: 7px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      white-space: nowrap;
      pointer-events: none;
      box-shadow: none;
    }

    .complete-toggle {
      width: 16px;
      height: 16px;
      margin: 0;
      accent-color: var(--good);
    }

    .results-head {
      display: flex;
      align-items: end;
      justify-content: space-between;
      gap: 12px;
      flex-wrap: wrap;
    }

    .results-head h2 {
      margin: 0;
      font-size: 24px;
      letter-spacing: -0.03em;
      font-weight: 800;
    }

    .meta {
      color: var(--muted);
      font-size: 15px;
    }

    .meta-toggle {
      border: 0;
      background: transparent;
      padding: 0;
      font: inherit;
      cursor: pointer;
      color: var(--accent-dark);
      font-weight: 700;
    }

    .meta-toggle:hover {
      color: var(--accent);
    }

    .meta-collapse {
      border: 0;
      background: transparent;
      padding: 0;
      font: inherit;
      cursor: pointer;
      color: var(--ink);
      font-weight: 700;
    }

    .meta-collapse:hover {
      color: var(--accent-dark);
    }

    .status {
      padding: 0;
      border-radius: 0;
      background: transparent;
      border: 0;
      color: var(--muted);
    }

    .status strong { color: var(--ink); }

    .status.warning {
      background: rgba(255, 245, 228, 0.92);
      color: var(--warn);
    }

    .status.loading {
      position: relative;
      padding-left: 48px;
    }

    .status.loading::before {
      content: "";
      position: absolute;
      left: 18px;
      top: 50%;
      width: 16px;
      height: 16px;
      margin-top: -8px;
      border-radius: 50%;
      border: 2px solid rgba(30, 27, 75, 0.22);
      border-top-color: var(--accent);
      animation: spin 0.9s linear infinite;
    }

    .summary {
      display: grid;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      gap: 0;
      border: 1px solid var(--line);
      border-bottom: 0;
      border-radius: 8px 8px 0 0;
      margin: 0 0 24px;
      overflow: hidden;
      background: #fff;
    }

    .summary-card {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      padding: 24px;
      border-radius: 0;
      background: #fff;
      border: 0;
      border-bottom: 1px solid var(--line);
      border-right: 1px solid var(--line);
    }

    .summary-card .label {
      color: var(--muted);
      font-size: 10px;
      text-transform: uppercase;
      letter-spacing: 0.14em;
      margin-bottom: 8px;
    }

    .summary-card .value {
      font-size: 24px;
      line-height: 1;
      letter-spacing: -0.04em;
      font-weight: 800;
    }

    .jobs {
      display: grid;
      gap: 14px;
    }

    .job {
      display: grid;
      gap: 10px;
      padding: 20px;
      border-radius: 22px;
      background: rgba(255, 255, 255, 0.85);
      border: 1px solid rgba(23, 32, 39, 0.08);
      animation: reveal 240ms ease both;
    }

    .job-head {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
      align-items: start;
    }

    .job h3 {
      margin: 0;
      font-size: 24px;
      line-height: 1.12;
      letter-spacing: -0.04em;
    }

    .job .company {
      color: var(--accent-dark);
      font-weight: 700;
    }

    .pill-row {
      display: flex;
      flex-wrap: wrap;
      gap: 8px;
    }

    .pill {
      padding: 7px 10px;
      border-radius: 999px;
      background: rgba(23, 32, 39, 0.06);
      color: var(--muted);
      font-size: 13px;
    }

    .job a {
      justify-self: start;
      color: var(--good);
      font-weight: 700;
    }

    #table-wrap {
      overflow: auto;
      border: 1px solid var(--line);
      border-top: 1px solid var(--line);
      border-radius: 0 0 8px 8px;
      background: #ffffff;
    }

    .results-table {
      width: 100%;
      border-collapse: collapse;
      min-width: 900px;
    }

    .results-table th,
    .results-table td {
      padding: 16px 18px;
      text-align: left;
      border-bottom: 1px solid var(--line);
      vertical-align: top;
    }

    .results-table td {
      overflow-wrap: anywhere;
    }

    .results-table th {
      background: #f8fafc;
    }

    #saved-table-wrap .results-table th {
      position: static;
      top: auto;
    }

    .results-load-more {
      padding: 14px 16px;
      color: var(--muted);
      font-size: 12px;
      text-align: center;
      border-top: 1px solid var(--line);
      background: #ffffff;
    }

    .results-load-more[hidden] {
      display: none;
    }

    .results-table th,
    .results-table th button {
      color: var(--muted);
      font-size: 10px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .sort-button {
      width: 100%;
      display: inline-flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      padding: 0;
      border: 0;
      background: transparent;
      color: inherit;
      font: inherit;
      cursor: pointer;
      box-shadow: none;
    }

    .sort-button:hover {
      transform: none;
      color: var(--ink);
    }

    .sort-indicator {
      color: var(--accent-dark);
      font-size: 12px;
      line-height: 1;
    }

    .results-table tbody tr:hover {
      background: #f8fafc;
    }

    .results-table a {
      color: var(--ink);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .company-group-row td {
      padding: 0;
      background: #fbf4ea;
      border-bottom: 1px solid rgba(23, 32, 39, 0.08);
    }

    .company-toggle {
      width: 100%;
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 16px;
      padding: 16px;
      border: 0;
      border-radius: 0;
      background: transparent;
      color: var(--ink);
      font: inherit;
      font-weight: 700;
      cursor: pointer;
      text-align: left;
      box-shadow: none;
    }

    .company-heading {
      display: grid;
      gap: 4px;
      min-width: 0;
    }

    .company-group-identity {
      display: flex;
      align-items: center;
      gap: 10px;
      min-width: 0;
    }

    .company-group-logo-wrap {
      width: 28px;
      height: 28px;
      flex: 0 0 28px;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
      border: 1px solid #e5eaf0;
      border-radius: 5px;
      background: #fff;
    }

    .company-group-logo {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }

    .company-group-logo.is-hidden {
      display: none;
    }

    .company-toggle:hover {
      transform: none;
      background: rgba(30, 27, 75, 0.05);
    }

    .company-toggle .company-name {
      font-size: 16px;
      letter-spacing: -0.02em;
    }

    .company-description {
      color: var(--muted);
      font-size: 13px;
      font-weight: 500;
      line-height: 1.4;
    }

    .company-toggle-meta {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      margin-left: auto;
      color: var(--muted);
      font-size: 14px;
      font-weight: 600;
    }

    .company-toggle .chevron {
      color: var(--accent-dark);
      font-size: 14px;
      transition: transform 120ms ease;
    }

    .company-toggle[aria-expanded="true"] .chevron {
      transform: rotate(90deg);
    }

    .job-row[hidden] {
      display: none;
    }

    .job-row-main {
      cursor: pointer;
    }

    .job-row-main.expanded {
      background: rgba(30, 27, 75, 0.06);
    }

    .job-description-row td {
      padding-top: 0;
      background: rgba(248, 250, 252, 0.9);
    }

    .job-description-panel {
      padding: 12px 14px 14px;
      border-radius: 12px;
      border: 1px solid rgba(23, 32, 39, 0.08);
      background: rgba(255, 255, 255, 0.82);
      color: var(--ink);
      font-size: 14px;
      line-height: 1.5;
      white-space: pre-wrap;
      overflow-wrap: anywhere;
    }

    .job-detail-layout {
      display: grid;
      gap: 14px;
      align-items: start;
    }

    .job-detail-layout.has-note-panel {
      grid-template-columns: minmax(0, 1fr) minmax(220px, 300px);
    }

    .job-note-panel {
      display: grid;
      gap: 4px;
      padding: 10px 12px 12px;
      border-radius: 11px;
      border: 1px solid rgba(30, 27, 75, 0.12);
      background: rgba(248, 250, 252, 0.92);
      align-self: start;
      position: sticky;
      top: 12px;
    }

    .job-note-panel-head {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 8px;
    }

    .job-note-panel-label {
      font-size: 9px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-transform: uppercase;
      color: var(--accent-dark);
    }

    .job-note-input {
      width: 100%;
      min-height: 58px;
      resize: vertical;
      border-radius: 9px;
      border: 1px solid rgba(23, 32, 39, 0.14);
      background: rgba(255, 255, 255, 0.96);
      padding: 7px 9px;
      font: inherit;
      font-size: 12px;
      line-height: 1.35;
      color: var(--ink);
      white-space: pre-wrap;
      overflow-wrap: anywhere;
      word-break: break-word;
      overflow-x: hidden;
    }

    .job-note-input:focus {
      outline: 2px solid rgba(30, 27, 75, 0.18);
      outline-offset: 1px;
      border-color: rgba(30, 27, 75, 0.22);
    }

    @media (max-width: 940px) {
      .job-detail-layout {
        grid-template-columns: minmax(0, 1fr);
      }

      .job-note-panel {
        position: static;
      }
    }

    .status-sublist {
      margin: 10px 0 0;
      padding-left: 20px;
      color: var(--warn);
    }

    .status-sublist li + li {
      margin-top: 6px;
    }

    .status-details {
      margin-top: 12px;
      color: var(--warn);
    }

    .status-details summary {
      cursor: pointer;
      font-weight: 700;
      color: var(--warn);
    }

    .status-details summary:hover {
      color: var(--accent-dark);
    }

    .triage-list {
      display: grid;
      gap: 12px;
      margin-top: 12px;
    }

    .triage-card {
      padding: 12px 14px;
      border: 1px solid rgba(30, 27, 75, 0.14);
      border-radius: 16px;
      background: rgba(248, 250, 252, 0.92);
    }

    .triage-card-head {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      align-items: baseline;
      margin-bottom: 8px;
    }

    .triage-company {
      font-weight: 700;
      color: var(--ink);
    }

    .triage-homepage {
      font-size: 13px;
      color: var(--muted);
      word-break: break-word;
    }

    .triage-fields {
      display: grid;
      gap: 8px;
      grid-template-columns: minmax(220px, 1.55fr) minmax(110px, 0.62fr) minmax(150px, 0.9fr) minmax(150px, 0.9fr) auto;
      align-items: end;
    }

    .triage-field {
      display: grid;
      gap: 4px;
      min-width: 0;
    }

    .triage-field span {
      font-size: 11px;
      font-weight: 700;
      color: var(--muted);
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .triage-field input,
    .triage-field select,
    .triage-field textarea {
      width: 100%;
      border-radius: 10px;
      border: 1px solid rgba(23, 32, 39, 0.16);
      padding: 8px 10px;
      font: inherit;
      font-size: 13px;
      color: var(--ink);
      background: #ffffff;
    }

    .triage-note-input {
      height: 42px;
      min-height: 42px;
      resize: none;
    }

    .triage-save {
      border: none;
      border-radius: 999px;
      padding: 8px 12px;
      font: inherit;
      font-size: 13px;
      font-weight: 700;
      color: #fff;
      background: var(--accent);
      cursor: pointer;
    }

    .triage-save:disabled {
      cursor: wait;
      opacity: 0.7;
    }

    .triage-save-status {
      min-height: 18px;
      font-size: 12px;
      color: var(--muted);
    }

    .scheduler-triage-actions {
      align-items: center;
      flex-wrap: wrap;
    }

    .triage-note {
      margin-top: 8px;
      font-size: 13px;
      color: var(--muted);
    }

    .triage-feedback {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      padding: 12px 14px;
      border: 1px solid rgba(27, 107, 74, 0.2);
      border-radius: 16px;
      background: rgba(244, 255, 248, 0.9);
      margin-top: 12px;
    }

    .triage-feedback-text {
      font-size: 13px;
      color: var(--ink);
      line-height: 1.45;
    }

    .triage-undo {
      border: none;
      border-radius: 999px;
      padding: 8px 12px;
      font: inherit;
      font-size: 13px;
      font-weight: 700;
      color: var(--ink);
      background: rgba(23, 32, 39, 0.08);
      cursor: pointer;
      white-space: nowrap;
    }

    @keyframes reveal {
      from {
        opacity: 0;
        transform: translateY(8px);
      }
      to {
        opacity: 1;
        transform: translateY(0);
      }
    }

    @keyframes spin {
      from {
        transform: rotate(0deg);
      }
      to {
        transform: rotate(360deg);
      }
    }

    @media (max-width: 900px) {
      .hero-grid {
        grid-template-columns: 1fr;
      }

      .hero-grid.is-collapsed {
        grid-template-columns: 1fr;
      }

      .hero-copy-panel,
      form {
        padding: 22px;
      }

      .hero-copy-panel.is-collapsed {
        width: auto;
      }

      .hero-copy-toggle {
        width: 24px;
        height: 52px;
        right: -13px;
        top: 22px;
      }

      .hero-side-summary {
        grid-template-columns: 1fr 1fr;
      }

      .scheduler-grid {
        grid-template-columns: 1fr;
      }

      .form-two-up {
        grid-template-columns: 1fr;
      }

      .search-mode-switch {
        grid-template-columns: 1fr;
      }

      .form-three-up {
        grid-template-columns: 1fr;
      }

      .role-criteria-grid {
        grid-template-columns: 1fr;
      }

      .role-criteria-grid .role-field--wide {
        grid-column: auto;
      }

      .search-workflow {
        grid-template-columns: 1fr;
      }

      .triage-fields {
        grid-template-columns: 1fr;
      }

    }

    /* Stitch-inspired overrides */
    :root {
      --bg: #ffffff;
      --panel: #ffffff;
      --panel-strong: #ffffff;
      --ink: #1e1b4b;
      --muted: #64748b;
      --accent: #1e1b4b;
      --accent-dark: #111827;
      --line: #cbd5e1;
      --good: #1e1b4b;
      --warn: #8a5b12;
      --shadow: none;
      --surface-variant: #f8fafc;
    }

    body {
      font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--ink);
      background: var(--bg);
      letter-spacing: 0;
    }

    .app-topbar {
      position: sticky;
      top: 0;
      z-index: 50;
      background: rgba(255, 255, 255, 0.96);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid var(--line);
    }

    .app-topbar-inner {
      width: min(1440px, calc(100% - 32px));
      margin: 0 auto;
    }

    .app-topbar-inner {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 24px;
      padding: 20px 0;
    }

    .app-branding {
      display: flex;
      align-items: center;
      gap: 48px;
      min-width: 0;
    }

    .app-brand {
      color: var(--ink);
      font-size: 24px;
      font-weight: 900;
      letter-spacing: -0.04em;
      text-decoration: none;
    }

    .app-nav {
      display: flex;
      align-items: center;
      gap: 32px;
    }

    .app-nav-link {
      color: var(--muted);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-decoration: none;
      text-transform: uppercase;
    }

    .app-nav-link:hover,
    .app-nav-link.is-active {
      color: var(--ink);
    }

    .shell {
      width: min(1440px, calc(100% - 32px));
      margin: 48px auto;
      display: grid;
      gap: 48px;
    }

    .hero,
    .results,
    .scheduler-panel {
      background: transparent;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      backdrop-filter: none;
    }

    .hero-grid {
      grid-template-columns: 1fr;
      gap: 0;
      padding: 0;
    }

    .hero-form-column {
      width: 100%;
      justify-self: stretch;
      gap: 20px;
    }

    .hero-copy {
      display: grid;
      gap: 12px;
      max-width: 760px;
      margin-bottom: 4px;
    }

    .hero-copy h1 {
      margin: 0;
      color: var(--ink);
      font-size: 48px;
      font-weight: 800;
      line-height: 1.1;
      letter-spacing: -0.02em;
      max-width: 12ch;
    }

    .hero-copy p {
      margin: 0;
      max-width: 42rem;
      color: var(--muted);
      font-size: 16px;
      line-height: 1.5;
    }

    .search-intro {
      display: none;
    }

    .search-workflow {
      grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
      gap: 0;
      border: 1px solid var(--line);
      border-radius: 8px;
      overflow: visible;
      background: #fff;
      position: relative;
      z-index: 2;
    }

    .workflow-card {
      padding: 28px 32px 30px;
      gap: 18px;
      border: 0;
      border-radius: 0;
      background: #fff;
      position: relative;
      z-index: 2;
    }

    .workflow-card:first-child {
      border-right: 1px solid var(--line);
      border-top-left-radius: 8px;
      border-bottom-left-radius: 8px;
    }

    .workflow-card:last-child {
      background: var(--surface-variant);
      border-top-right-radius: 8px;
      border-bottom-right-radius: 8px;
    }

    .workflow-card-head {
      gap: 4px;
    }

    .workflow-card-title {
      color: var(--muted);
      font-size: 10px;
      letter-spacing: 0.14em;
    }

    .workflow-card-copy {
      color: var(--ink);
      font-size: 14px;
      line-height: 1.45;
    }

    .form-section {
      padding: 0;
      border: 0;
      background: transparent;
      gap: 14px;
    }

    .search-mode-switch {
      gap: 0;
      padding: 0;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: #f8fafc;
      max-width: 200px;
    }

    .search-mode-button {
      border-radius: 0;
      color: var(--muted);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.1em;
      padding: 6px 12px;
      text-transform: uppercase;
    }

    .search-mode-button + .search-mode-button {
      border-left: 1px solid var(--line);
    }

    .search-mode-button.is-active {
      background: var(--ink);
      box-shadow: none;
      color: #fff;
    }

    .filter-two-up,
    .form-two-up,
    .role-criteria-grid {
      gap: 14px;
    }

    .filter-label,
    label {
      color: var(--muted);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    textarea,
    input,
    select,
    .company-search-input,
    .job-note-input,
    .triage-field input,
    .triage-field select {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      color: var(--ink);
      font-size: 13px;
      padding: 10px 12px;
    }

    textarea {
      min-height: 112px;
    }

    #titles,
    #keywords,
    #location,
    #companies,
    #company-homepages,
    #date-posted {
      min-height: 92px;
      height: 92px;
    }

    .multi-select {
      border: 1px solid var(--line);
      border-radius: 4px;
      overflow: visible;
      position: relative;
    }

    .multi-select summary {
      padding: 11px 12px;
      color: var(--ink);
      font-size: 12px;
      font-weight: 700;
    }

    .multi-select-panel {
      position: absolute;
      left: 0;
      right: 0;
      top: calc(100% + 8px);
      z-index: 30;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: #fff;
      padding: 12px;
      box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
    }

    .filter-two-up .multi-select-panel {
      min-width: 230px;
    }

    .filter-two-up .filter-field:nth-child(even) .multi-select-panel {
      left: auto;
      right: 0;
    }

    .multi-select-search {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      font-size: 12px;
      padding: 9px 11px;
    }

    .multi-select-actions {
      gap: 6px;
      justify-content: space-between;
      overflow-x: visible;
      white-space: nowrap;
    }

    .filter-action {
      color: var(--ink);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .multi-select-option {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      font-size: 12px;
      padding: 7px 9px;
    }

    .actions {
      justify-content: flex-end;
    }

    button,
    .download-link {
      border-radius: 4px;
      box-shadow: none;
      transform: none;
    }

    button:hover,
    .download-link:hover {
      transform: none;
    }

    button[type="submit"] {
      background: var(--ink);
      border: 1px solid var(--ink);
      color: #fff;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      padding: 12px 18px;
      text-transform: uppercase;
    }

    .checkbox-row {
      color: var(--muted);
      font-size: 12px;
    }

    .checkbox-row input {
      accent-color: var(--ink);
    }

    .results {
      gap: 20px;
      padding: 0;
    }

    .results-head,
    .saved-section-head {
      align-items: end;
      padding-bottom: 0;
    }

    .results-head h2 {
      color: var(--ink);
      font-size: 24px;
    }

    .meta,
    .saved-meta {
      color: var(--muted);
      font-size: 12px;
    }

    .download-link {
      background: #fff;
      border: 1px solid var(--line);
      color: var(--muted);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      padding: 10px 14px;
      text-transform: uppercase;
    }

    .summary {
      border: 1px solid var(--line);
      border-radius: 8px;
      gap: 0;
      grid-template-columns: repeat(4, minmax(0, 1fr));
      margin: 0 0 24px;
      overflow: hidden;
      background: #fff;
    }

    .summary-card {
      border: 0;
      border-bottom: 1px solid var(--line);
      border-right: 1px solid var(--line);
      padding: 24px;
    }

    .summary-card:nth-child(4n) {
      border-right: 0;
    }

    .summary-card .label {
      color: var(--muted);
      font-size: 10px;
      letter-spacing: 0.14em;
      margin-bottom: 8px;
    }

    .summary-card .value {
      color: var(--ink);
      font-size: 24px;
      line-height: 1;
    }

    .status {
      background: transparent;
      border: 0;
      border-radius: 0;
      color: var(--muted);
      padding: 0;
    }

    #table-wrap,
    #saved-table-wrap {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 8px;
      overflow: auto;
    }

    .results-table {
      min-width: 900px;
      width: 100%;
    }

    .results-table th,
    .results-table td {
      border-bottom: 1px solid var(--line);
      padding: 12px 14px;
      text-align: left;
      vertical-align: top;
    }

    .results-table th {
      background: var(--surface-variant);
    }

    .results-table th,
    .results-table th button {
      color: var(--muted);
      font-size: 10px;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .results-table tbody tr:hover {
      background: #f1f5f9;
    }

    .save-cell {
      width: 48px;
    }

    .saved-job-cell {
      width: 64px;
    }

    .complete-toggle {
      accent-color: var(--ink);
    }

    .note-badge {
      bottom: 4px;
      font-size: 7px;
    }

    .company-cell {
      padding-left: 14px;
    }

    .company-identity {
      display: flex;
      align-items: center;
      gap: 8px;
      min-width: 0;
    }

    .company-logo-wrap {
      width: 28px;
      height: 28px;
      flex: 0 0 28px;
      border-radius: 4px;
      background: transparent;
      display: flex;
      align-items: center;
      justify-content: center;
      overflow: hidden;
    }

    .company-logo {
      width: 100%;
      height: 100%;
      flex: 0 0 100%;
      object-fit: contain;
      background: transparent;
      border: 0;
      border-radius: 0;
      box-shadow: none;
    }

    .company-logo.is-hidden {
      display: none;
    }

    .company-name {
      color: var(--ink);
      font-size: 13px;
      font-weight: 600;
      letter-spacing: 0;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .job-title {
      color: var(--ink);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0;
      line-height: 1.2;
    }

    .job-row-main {
      cursor: pointer;
    }

    .job-row-main.expanded {
      background: #eef2ff;
    }

    .job-description-row td {
      background: #fff;
    }

    .job-description-panel {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      font-size: 13px;
      line-height: 1.5;
    }

    .job-note-panel {
      background: var(--surface-variant);
      border: 1px solid var(--line);
      border-radius: 4px;
    }

    .job-note-input {
      border-radius: 4px;
      border: 1px solid var(--line);
      font-size: 12px;
    }

    .saved-section {
      gap: 12px;
      padding-top: 0;
      margin-top: 40px;
    }

    .saved-section-head h3 {
      color: var(--ink);
      font-size: 24px;
      font-weight: 800;
      letter-spacing: -0.03em;
    }

    .saved-filters {
      gap: 8px;
    }

    .saved-filter-dropdown {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      min-width: 164px;
    }

    .saved-filter-dropdown summary {
      color: var(--ink);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.1em;
      padding: 10px 12px;
      text-transform: uppercase;
    }

    .saved-filter-menu {
      border: 1px solid var(--line);
      border-radius: 4px;
      box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
    }

    .saved-filter-option {
      background: #fff;
      border: 1px solid var(--line);
      border-radius: 4px;
      color: var(--ink);
      font-size: 12px;
      font-weight: 700;
      text-transform: none;
    }

    .saved-filter-option:hover {
      background: #f8fafc;
      color: var(--ink);
    }

    .company-group-row td {
      background: #fff;
    }

    .company-toggle {
      background: #fff;
      padding: 14px 16px;
    }

    .company-toggle:hover {
      background: #f8fafc;
    }

    .company-toggle .company-name {
      font-size: 16px;
    }

    .company-description,
    .company-toggle-meta {
      color: var(--muted);
      font-size: 13px;
    }

    .search-presets {
      display: none !important;
    }

    .search-presets[hidden],
    .checkbox-row[hidden] {
      display: none !important;
    }

    .hero-scheduler-dock {
      display: none;
    }

    input:focus,
    textarea:focus,
    select:focus,
    .multi-select:focus-within,
    .saved-filter-dropdown:focus-within {
      outline-color: rgba(30, 27, 75, 0.2);
      border-color: var(--ink);
      box-shadow: 0 0 0 2px rgba(30, 27, 75, 0.08);
    }

    ::selection {
      background: var(--ink);
      color: #fff;
    }

    @media (max-width: 900px) {
      .app-topbar-inner {
        width: min(100% - 32px, 1440px);
      }

      .app-topbar-inner {
        flex-wrap: wrap;
      }

      .app-branding {
        gap: 24px;
        flex-wrap: wrap;
      }

      .app-nav {
        gap: 18px;
        flex-wrap: wrap;
      }

      .shell {
        width: min(100% - 32px, 1440px);
        margin-top: 20px;
      }

      .hero-copy h1 {
        font-size: 44px;
      }

      .search-workflow {
        grid-template-columns: 1fr;
      }

      .search-mode-switch {
        width: 190px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .workflow-card:first-child {
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .summary {
        grid-template-columns: 1fr 1fr;
      }

      .summary-card:nth-child(2n) {
        border-right: 0;
      }

      .form-two-up,
      .filter-two-up,
      .role-criteria-grid {
        grid-template-columns: 1fr;
      }

      .hero-copy-panel,
      form {
        padding: 0;
      }

    .results-table {
        min-width: 760px;
      }
    }

    /* Stitch visual override block */
    :root {
      --bg: #ffffff;
      --panel: #ffffff;
      --panel-strong: #ffffff;
      --ink: #0f172a;
      --muted: #475569;
      --accent: #0f172a;
      --accent-dark: #0f172a;
      --line: #cbd5e1;
      --good: #0f172a;
      --warn: #475569;
      --shadow: none;
    }

    body {
      font-family: Inter, sans-serif;
      letter-spacing: 0;
      color: var(--ink);
    }

    .shell {
      width: min(1440px, calc(100% - 32px));
      margin: 0 auto;
      padding: 32px 0 0;
      gap: 0;
    }

    .hero,
    .results,
    .scheduler-panel {
      background: transparent;
      border: 0;
      border-radius: 0;
      box-shadow: none;
      backdrop-filter: none;
    }

    .hero::before {
      display: none;
    }

    .hero-grid {
      gap: 0;
      padding: 0;
    }

    .hero-form-column {
      width: 100%;
      gap: 0;
    }

    .hero-copy-column,
    .hero-copy-panel,
    .hero-copy-head,
    .hero-copy-body {
      padding: 0;
      gap: 0;
    }

    .hero p {
      max-width: 640px;
      font-size: 16px;
      line-height: 1.5;
      color: var(--muted);
    }

    h1 {
      font-family: Inter, sans-serif;
      font-size: clamp(40px, 3vw, 52px);
      line-height: 1.08;
      letter-spacing: -0.03em;
      font-weight: 800;
      max-width: 10ch;
    }

    .search-workflow {
      gap: 0;
      border: 1px solid var(--line);
      border-radius: 8px;
      overflow: visible;
      background: #ffffff;
      grid-template-columns: minmax(0, 1.35fr) minmax(0, 0.9fr);
      position: relative;
      z-index: 20;
    }

    .workflow-card {
      border: 0;
      border-radius: 0;
      box-shadow: none;
      padding: 32px;
      gap: 18px;
      position: relative;
      z-index: 20;
    }

    .workflow-card:first-child {
      border-right: 1px solid var(--line);
      border-top-left-radius: 8px;
      border-bottom-left-radius: 8px;
      z-index: 21;
    }

    .workflow-card:last-child {
      background: #f8fafc;
      border-top-right-radius: 8px;
      border-bottom-right-radius: 8px;
      z-index: 20;
    }

    .workflow-card-title,
    .form-section-title,
    .results-head h2,
    .saved-section-head h3 {
      color: var(--ink);
      letter-spacing: 0.14em;
      text-transform: uppercase;
      font-weight: 800;
    }

    .workflow-card-title {
      font-size: 24px;
      margin-bottom: 0;
    }

    .workflow-card-copy,
    .meta,
    .saved-meta,
    .status,
    .results-table td,
    .results-table a,
    .company-name,
    .job .company {
      color: var(--muted);
    }

    .search-mode-switch {
      width: fit-content;
      padding: 0;
      gap: 0;
      border-radius: 6px;
      border: 1px solid var(--line);
      overflow: hidden;
      background: #ffffff;
    }

    .search-mode-button {
      border-radius: 0;
      padding: 10px 18px;
      font-size: 11px;
      letter-spacing: 0.12em;
    }

    .search-mode-button + .search-mode-button {
      border-left: 1px solid var(--line);
    }

    .search-mode-button.is-active {
      background: var(--ink);
      color: #ffffff;
      box-shadow: none;
    }

    .form-section,
    .workflow-card .form-section {
      padding: 0;
      border: 0;
      background: transparent;
      border-radius: 0;
    }

    .filter-two-up,
    .role-criteria-grid,
    .form-two-up,
    .form-three-up {
      gap: 16px;
    }

    .filter-label,
    .results-table th,
    .saved-filter-dropdown summary,
    .app-nav-link,
    .checkbox-row span {
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .multi-select summary,
    .company-search-input,
    .multi-select-search,
    .company-search-result,
    .filter-action,
    .saved-filter-option,
    .saved-filter-dropdown summary,
    .results-table,
    .results-table td,
    .results-table th,
    .summary-card .label,
    .summary-card .value,
    .job-title,
    .company-name {
      font-family: Inter, sans-serif;
    }

    .multi-select summary,
    .company-search-input,
    .multi-select-search,
    textarea,
    select,
    input[type="text"],
    input[type="search"] {
      border-color: var(--line);
      border-radius: 4px;
      box-shadow: none;
      background: #ffffff;
      color: var(--ink);
    }

    .multi-select summary,
    .company-search-input,
    .multi-select-search,
    textarea,
    select,
    input[type="text"],
    input[type="search"] {
      padding: 10px 12px;
      font-size: 14px;
      line-height: 1.4;
    }

    .multi-select-summary.empty,
    .multi-select-summary,
    .company-search-input::placeholder,
    .multi-select-search::placeholder,
    textarea::placeholder,
    input::placeholder {
      color: #64748b;
    }

    .results {
      margin-top: 28px;
      position: relative;
      z-index: 1;
    }

    .results-panel {
      display: grid;
      gap: 18px;
    }

    .results.is-empty .results-panel {
      display: none;
    }

    .results-head {
      display: flex;
      align-items: end;
      justify-content: flex-start;
      gap: 12px;
      flex-wrap: wrap;
      padding-bottom: 0;
      margin-bottom: 18px;
    }

    .results-head-copy {
      display: grid;
      gap: 2px;
      min-width: 0;
    }

    .results-head h2 {
      font-size: 24px;
      margin: 0;
      font-weight: 800;
      letter-spacing: -0.03em;
    }

    .results-toolbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      min-height: 42px;
    }

    .results-toolbar[hidden] {
      display: none;
    }

    .results-view-control {
      display: inline-flex;
      align-items: center;
      gap: 10px;
    }

    .results-view-label {
      color: var(--muted);
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.14em;
      text-transform: uppercase;
      white-space: nowrap;
    }

    .results-group-toggle {
      display: inline-grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      padding: 3px;
      border: 1px solid var(--line);
      border-radius: 5px;
      background: var(--surface-variant);
      cursor: pointer;
    }

    .results-group-toggle input {
      position: absolute;
      width: 1px;
      height: 1px;
      overflow: hidden;
      clip: rect(0 0 0 0);
      clip-path: inset(50%);
      white-space: nowrap;
    }

    .results-view-option {
      min-width: 96px;
      padding: 7px 12px;
      border: 0;
      border-radius: 3px;
      background: transparent;
      color: var(--muted);
      box-shadow: none;
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.1em;
      text-align: center;
      text-transform: uppercase;
      transition: background-color 120ms ease, color 120ms ease, box-shadow 120ms ease;
    }

    .results-view-option:hover {
      transform: none;
    }

    .results-group-toggle input:not(:checked) ~ .results-view-option--roles,
    .results-group-toggle input:checked ~ .results-view-option--company {
      background: #ffffff;
      color: var(--ink);
      box-shadow: 0 1px 3px rgba(15, 23, 42, 0.12);
    }

    .results-toolbar .download-link {
      border-color: var(--line);
      color: var(--ink);
      border-radius: 4px;
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      box-shadow: none;
    }

    .results-panel .summary {
      margin-bottom: 0;
    }

    .jobs:empty {
      display: none;
    }

    .summary {
      gap: 0;
      border: 1px solid var(--line);
      border-bottom: 0;
      border-radius: 8px 8px 0 0;
      overflow: hidden;
    }

    .summary-card {
      border: 0;
      border-right: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      border-radius: 0;
      box-shadow: none;
      padding: 24px;
    }

    .summary-card .label {
      color: var(--muted);
      font-size: 10px;
      letter-spacing: 0.14em;
    }

    .summary-card .value {
      color: var(--ink);
      font-size: 30px;
      letter-spacing: -0.04em;
      font-weight: 800;
    }

    #table-wrap,
    #saved-table-wrap {
      border: 1px solid var(--line);
      border-top: 1px solid var(--line);
      border-radius: 0 0 8px 8px;
      box-shadow: none;
      background: #ffffff;
    }

    .results-table {
      min-width: 900px;
    }

    .results-table th,
    .results-table td {
      padding: 16px 18px;
      border-bottom: 1px solid var(--line);
    }

    .results-table thead tr {
      background: #f8fafc;
    }

    .results-table tbody tr:hover {
      background: #f8fafc;
    }

    .job-title {
      font-size: 13px;
      font-weight: 800;
      letter-spacing: 0;
      color: var(--ink);
    }

    .company-logo-wrap {
      width: 28px;
      height: 28px;
      flex-basis: 28px;
      border-radius: 4px;
      background: transparent;
    }

    .company-logo {
      width: 100%;
      height: 100%;
      flex-basis: 100%;
    }

    .results-table a {
      color: var(--ink);
      font-size: 11px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    #table-wrap .results-table,
    #saved-table-wrap .results-table {
      font-family: Inter, sans-serif;
      font-size: 13px;
      line-height: 1.4;
    }

    #table-wrap .results-table td,
    #table-wrap .results-table th,
    #saved-table-wrap .results-table td,
    #saved-table-wrap .results-table th {
      font: inherit;
    }

    #table-wrap .results-table a,
    #saved-table-wrap .results-table a,
    #table-wrap .results-table .job-title,
    #saved-table-wrap .results-table .job-title,
    #table-wrap .results-table .company-name,
    #saved-table-wrap .results-table .company-name,
    #table-wrap .results-table .company-description,
    #saved-table-wrap .results-table .company-description,
    #table-wrap .results-table .company-toggle-meta,
    #saved-table-wrap .results-table .company-toggle-meta,
    #table-wrap .results-table .company-toggle .company-name,
    #saved-table-wrap .results-table .company-toggle .company-name {
      font: inherit;
      letter-spacing: 0;
      text-transform: none;
    }

    #table-wrap .results-table .company-description {
      font-weight: 400;
    }

    .saved-section {
      margin-top: 48px;
      padding-top: 32px;
      border-top: 0;
      gap: 16px;
    }

    .hero,
    .saved-section {
      scroll-margin-top: 24px;
    }

    .saved-section-head h3 {
      font-size: 24px;
      margin: 0;
      font-weight: 800;
      letter-spacing: -0.03em;
      text-transform: uppercase;
    }

    .saved-filters {
      gap: 12px;
    }

    .saved-filter-dropdown {
      min-width: 168px;
      border-radius: 4px;
      border: 1px solid var(--line);
      background: #ffffff;
      box-shadow: none;
    }

    .saved-filter-dropdown summary {
      padding: 10px 12px;
      color: var(--ink);
    }

    .saved-filter-menu {
      border-radius: 4px;
      box-shadow: 0 14px 30px rgba(15, 23, 42, 0.12);
    }

    .saved-filter-option {
      background: #f8fafc;
      border-radius: 4px;
      color: var(--ink);
      font-size: 13px;
      font-weight: 700;
      letter-spacing: 0;
      text-transform: none;
    }

    .saved-filter-option:hover {
      background: #e2e8f0;
    }

    .status {
      border-radius: 0;
      background: transparent;
      color: var(--muted);
      border: 0;
      padding: 0;
    }

    .checkbox-row {
      display: none;
    }

    @media (max-width: 900px) {
      .shell {
        width: min(100% - 32px, 1440px);
        padding-top: 24px;
      }

      .search-workflow {
        grid-template-columns: 1fr;
      }

      .workflow-card:first-child {
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }

      .summary {
        border-radius: 8px 8px 0 0;
      }

      .results-table {
        min-width: 760px;
      }
    }

    /* Visual uplift */
    :root {
      --bg: #f6f8fb;
      --panel: #ffffff;
      --ink: #111827;
      --muted: #526071;
      --line: #d7dee8;
      --line-strong: #aeb9c8;
      --surface-variant: #f1f5f9;
      --signal: #0f766e;
      --shadow-soft: 0 18px 50px rgba(15, 23, 42, 0.08);
    }

    body {
      background: var(--bg);
      color: var(--ink);
    }

    .app-topbar {
      background: rgba(255, 255, 255, 0.92);
      border-bottom-color: rgba(174, 185, 200, 0.72);
      box-shadow: 0 1px 0 rgba(15, 23, 42, 0.02);
    }

    .app-topbar-inner,
    .shell {
      width: min(1240px, calc(100% - 48px));
    }

    .app-topbar-inner {
      min-height: 68px;
      padding: 0;
    }

    .app-brand {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-size: 21px;
      letter-spacing: 0;
    }

    .app-brand::before {
      content: "";
      width: 9px;
      height: 22px;
      background: var(--signal);
      border-radius: 2px;
    }

    .app-nav-link {
      position: relative;
      padding: 25px 0 23px;
      letter-spacing: 0.12em;
    }

    .app-nav-link::after {
      content: "";
      position: absolute;
      right: 0;
      bottom: 0;
      left: 0;
      height: 2px;
      background: transparent;
    }

    .app-nav-link:hover::after,
    .app-nav-link.is-active::after {
      background: var(--signal);
    }

    .shell {
      padding: 52px 0 56px;
    }

    .hero-copy {
      gap: 14px;
      max-width: 780px;
      margin-bottom: 28px;
    }

    .hero-copy h1 {
      max-width: 14ch;
      font-size: 52px;
      line-height: 1.02;
      letter-spacing: 0;
    }

    .hero-copy p {
      max-width: 700px;
      font-size: 17px;
      line-height: 1.6;
    }

    .search-workflow {
      grid-template-columns: repeat(2, minmax(0, 1fr));
      border-color: var(--line-strong);
      border-radius: 8px;
      box-shadow: var(--shadow-soft);
    }

    .workflow-card {
      min-width: 0;
      padding: 30px;
      gap: 22px;
    }

    .workflow-card:first-child {
      border-right-color: var(--line);
    }

    .workflow-card:last-child {
      background: var(--surface-variant);
    }

    .workflow-card-head {
      gap: 6px;
    }

    .workflow-card-title {
      font-size: 12px;
      letter-spacing: 0.12em;
    }

    .workflow-card-copy {
      color: var(--muted);
      font-size: 14px;
      line-height: 1.5;
    }

    .role-criteria-grid .role-field--wide {
      grid-column: auto;
    }

    .filter-label,
    label {
      color: #465569;
      line-height: 1.25;
    }

    .multi-select,
    textarea,
    select,
    input[type="text"],
    input[type="search"],
    .company-search-input,
    .saved-filter-dropdown {
      border-color: var(--line);
      border-radius: 6px;
      transition: border-color 140ms ease, box-shadow 140ms ease, background-color 140ms ease;
    }

    .multi-select:hover,
    textarea:hover,
    select:hover,
    input[type="text"]:hover,
    input[type="search"]:hover,
    .saved-filter-dropdown:hover {
      border-color: var(--line-strong);
    }

    input:focus,
    textarea:focus,
    select:focus,
    .multi-select:focus-within,
    .saved-filter-dropdown:focus-within {
      outline: 0;
      border-color: var(--signal);
      box-shadow: 0 0 0 3px rgba(15, 118, 110, 0.11);
    }

    #titles,
    #keywords,
    #location,
    #date-posted {
      min-height: 96px;
      height: 96px;
    }

    .search-mode-switch {
      border-radius: 6px;
    }

    .search-mode-button {
      min-width: 92px;
      padding: 10px 16px;
    }

    .actions {
      margin-top: 2px;
    }

    button[type="submit"] {
      min-height: 46px;
      padding: 13px 22px;
      border-radius: 6px;
      transition: background-color 140ms ease, box-shadow 140ms ease, transform 140ms ease;
    }

    button[type="submit"]:hover {
      background: #1f2937;
      box-shadow: 0 10px 24px rgba(15, 23, 42, 0.18);
      transform: translateY(-1px);
    }

    .results {
      margin-top: 40px;
    }

    .results-head h2,
    .saved-section-head h3 {
      font-size: 27px;
      letter-spacing: 0;
      text-transform: none;
    }

    .saved-section {
      margin-top: 34px;
      padding-top: 0;
      gap: 18px;
    }

    .results.is-empty .saved-section {
      margin-top: 30px;
    }

    .saved-page {
      padding: 58px 0 72px;
    }

    .saved-page-hero {
      max-width: 720px;
      margin-bottom: 36px;
    }

    .saved-page-hero h1 {
      margin: 0 0 14px;
      color: var(--ink);
      font-size: clamp(44px, 6vw, 72px);
      line-height: 0.95;
      letter-spacing: -0.055em;
    }

    .saved-page-hero p {
      max-width: 610px;
      margin: 0;
      color: var(--muted);
      font-size: 17px;
      line-height: 1.65;
    }

    .saved-page .saved-section {
      margin-top: 0;
    }

    [data-page-view][hidden] {
      display: none !important;
    }

    #table-wrap,
    #saved-table-wrap {
      border-color: var(--line);
      box-shadow: 0 10px 32px rgba(15, 23, 42, 0.05);
    }

    #saved-table-wrap {
      border-radius: 8px;
    }

    .results-table th {
      background: var(--surface-variant);
      color: #465569;
    }

    #table-wrap .results-table th,
    #table-wrap .results-table th button,
    #saved-table-wrap .results-table th,
    #saved-table-wrap .results-table th button {
      font-family: Inter, sans-serif;
      font-size: 10px;
      font-weight: 800;
      line-height: 1.4;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .results-table tbody tr {
      transition: background-color 120ms ease;
    }

    .results-table tbody tr:hover {
      background: #eef6f5;
    }

    .company-logo-wrap {
      border: 1px solid #e5eaf0;
      background: #ffffff;
    }

    .summary-card .value {
      color: var(--ink);
      letter-spacing: 0;
    }

    .search-presets {
      display: grid !important;
      align-items: stretch;
      gap: 7px;
      padding-top: 0;
    }

    .search-presets[hidden] {
      display: none !important;
    }

    .search-presets-label {
      color: #465569;
      font-family: Inter, sans-serif;
      font-size: 10px;
      font-weight: 800;
      letter-spacing: 0.12em;
      text-transform: uppercase;
    }

    .preset-multi-select {
      width: 100%;
      background: #ffffff;
    }

    .preset-multi-select .multi-select-panel {
      z-index: 160;
    }

    .preset-toggle-group {
      display: grid;
      align-items: stretch;
      gap: 6px;
      max-height: none;
      padding-right: 0;
    }

    .preset-multi-select .preset-toggle {
      display: flex;
      padding: 9px 10px;
      color: var(--ink);
      font-size: 13px;
      font-weight: 650;
      letter-spacing: 0;
      text-transform: none;
    }

    .preset-multi-select .preset-toggle input {
      position: static;
      width: 16px;
      height: 16px;
      margin: 0;
      opacity: 1;
      pointer-events: auto;
      accent-color: var(--signal);
    }

    .preset-toggle-name {
      line-height: 1.25;
    }

    @media (max-width: 900px) {
      .app-topbar-inner,
      .shell {
        width: min(100% - 32px, 1240px);
      }

      .shell {
        padding-top: 36px;
      }

      .hero-copy h1 {
        font-size: 44px;
      }

      .search-workflow {
        grid-template-columns: 1fr;
      }

      .workflow-card:first-child {
        border-right: 0;
        border-bottom: 1px solid var(--line);
      }
    }

    @media (max-width: 640px) {
      .app-topbar-inner,
      .shell {
        width: min(100% - 24px, 1240px);
      }

      .app-branding {
        width: 100%;
        justify-content: space-between;
        gap: 18px;
      }

      .app-brand {
        font-size: 18px;
      }

      .results-toolbar {
        align-items: stretch;
        flex-direction: column;
      }

      .results-view-control,
      .results-group-toggle,
      .results-toolbar .download-link {
        width: 100%;
      }

      .results-view-control {
        align-items: stretch;
        flex-direction: column;
      }

      .results-toolbar .download-link {
        text-align: center;
      }

      .app-nav {
        gap: 18px;
      }

      .hero-copy h1 {
        font-size: 39px;
      }

      .hero-copy p {
        font-size: 15px;
      }

      .workflow-card {
        padding: 24px 20px;
      }

      .search-mode-switch {
        width: 190px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .role-criteria-grid {
        grid-template-columns: 1fr;
      }

      .saved-section-head {
        align-items: stretch;
      }

      .saved-filters {
        width: 100%;
        margin-left: 0;
      }

      .saved-filter-dropdown {
        min-width: 0;
        flex: 1 1 140px;
      }
    }
  
/* Main UI: a quiet, tool-first interface. */
.main-app .d-search-benefits { width:min(100%,820px); margin:0 auto; padding:32px 0 56px; border:0; }
.main-app .d-search-benefits-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:30px 40px; }
.main-app .d-search-benefits article { display:grid; grid-template-columns:18px minmax(0,1fr); align-content:start; align-items:center; gap:8px; min-width:0; padding:12px; border:1px solid #dfe4e1; border-radius:8px; background:#fff; }
.main-app .d-search-benefits article > div { display:contents; }
.main-app .d-search-benefits article p { grid-column:1 / -1; }
.main-app .d-search-benefits p strong { color:var(--d-text-primary); font-weight:600; }
.main-app .d-search-benefits article > svg { flex:none; width:18px; height:18px; margin-top:0; color:var(--d-text-secondary); stroke-width:1.7; }
.main-app .d-search-benefits h3 { margin:0; color:var(--d-text-primary); font:600 12px/16px var(--d-type-sans); letter-spacing:-.015em; text-wrap:balance; }
.main-app .d-search-benefits p { margin:0; color:var(--d-text-secondary); font:400 11.5px/17px var(--d-type-sans); }
.main-app.d-has-results .d-search-benefits { display:none; }
@media(max-width:1240px) {
  .main-app .d-search-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:760px) {
  .main-app .d-search-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:570px) {
  .main-app .d-search-benefits { margin-top:12px; padding:12px 0 32px; }
  .main-app .d-search-benefits-grid { grid-template-columns:1fr; gap:26px; }
}
/* Match Manus's soft gray page canvas; keep cards and inputs white. */
:root:has(body.main-app), body.main-app {
  --d-bg-page:#f3f3f3;
  --d-bg-original-gray:#f8f9f7;
  --d-bg-original-header:rgba(248,249,247,.88);
  --d-bg-original-footer:#f5f5f1;
  --d-bg-logo-ivory:#f7f4ef;
  --d-bg-cooler-ivory:#f6f4f0;
  --d-bg-header:rgba(243,243,243,.88);
  --d-bg-footer:#ededed;
}
:root:has(body.main-app) { background:var(--d-bg-page); }
body.main-app { --d-ink:#172027; --d-muted:#69737b; --d-line:#dce1e3; --d-blue:#3654e7; --d-bg:var(--d-bg-page); --d-white:#fff; margin:0; background:var(--d-bg); color:var(--d-ink); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
body.main-app { min-height:100svh; background-image:linear-gradient(180deg,#f3f3f3 0%,#ededed 100%); background-attachment:fixed; }
.main-app * { box-sizing:border-box; }
.main-app [hidden] { display:none !important; }
.main-app button,.main-app input,.main-app textarea,.main-app select { font-family:inherit; }
.main-app button:focus-visible,.main-app a:focus-visible,.main-app summary:focus-visible,.main-app input:focus-visible,.main-app textarea:focus-visible,.main-app select:focus-visible { outline:2px solid var(--d-blue); outline-offset:3px; }
.main-app .app-topbar { position:relative; z-index:10; border-bottom:1px solid var(--d-line); background:var(--d-bg-header); -webkit-backdrop-filter:blur(22px); backdrop-filter:blur(22px); box-shadow:none; }
.main-app .app-topbar-inner { width:min(100% - 64px,1400px); min-height:68px; padding:0; }
.main-app .app-branding { width:100%; align-items:center; gap:22px; }
.main-app .app-brand { gap:0; color:var(--d-ink); font-size:21px; font-weight:760; letter-spacing:-1.2px; text-transform:none; }
.main-app .app-brand::before { display:none; }
.main-app .app-brand::after { content:'.'; color:var(--d-blue); }
.main-app .app-nav { margin-left:auto; gap:28px; }
.main-app .app-nav-link { padding:24px 1px 22px; border:0; border-bottom:2px solid transparent; border-radius:0; color:#68727a; font-size:12px; font-weight:620; letter-spacing:0; text-transform:none; }
.main-app .app-nav-link.is-active { border-bottom-color:var(--d-ink); color:var(--d-ink); }
.main-app .app-nav-link:hover::after,.main-app .app-nav-link.is-active::after { background:var(--d-ink); }
.main-app .d-index-status { display:flex; gap:5px; align-items:center; margin-left:22px; color:#849097; font:700 9px/1 ui-monospace,SFMono-Regular,monospace; letter-spacing:1px; white-space:nowrap; }
.main-app .d-index-status time { color:#53616a; }
.main-app .shell { display:grid; gap:0; width:min(100% - 64px,1400px); margin:0 auto; padding:0 0 100px; }
.main-app .hero,.main-app .results { border:0; border-radius:0; background:transparent; box-shadow:none; backdrop-filter:none; }
.main-app .hero::before { display:none; }
/* Fade across the full landing page, or stop at results after searching. */
body.main-app[data-page='search'] {
  position:relative;
  isolation:isolate;
}
body.main-app[data-page='search']::before {
  content:'';
  position:absolute;
  inset:var(--d-dot-origin-y,71px) 0 auto;
  height:var(--d-dot-fade-height,600px);
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(circle at 8px 4px,rgba(26,28,31,.10) .8px,transparent .8px) 0 0 / 16px 16px;
  -webkit-mask-image:linear-gradient(#000 0%,#000 85%,rgba(0,0,0,.8) 93%,transparent 100%);
  mask-image:linear-gradient(#000 0%,#000 85%,rgba(0,0,0,.8) 93%,transparent 100%);
}
body.main-app[data-page='search'] .d-site-footer { background:transparent; }

.main-app .hero { display:flex; align-items:center; min-height:calc(100svh - 68px); padding:30px 0 72px; }
.main-app .hero-grid { display:block; width:100%; padding:0; }
.main-app .hero-form-column { display:flex; flex-direction:column; align-items:center; width:min(100%,820px); margin:0 auto; }
.main-app .hero-copy { display:block; max-width:none; width:100%; margin:0; padding:0; text-align:center; }
.main-app .hero-copy h1 { max-width:none; margin:0; color:var(--d-ink); font:680 clamp(45px,5.5vw,76px)/1.07 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:-.066em; }
.main-app .hero-copy p { max-width:590px; margin:21px auto 0; color:#5c6870; font-size:15px; line-height:1.6; }
.main-app .d-mode-switch { display:flex; justify-content:center; gap:28px; width:100%; margin:40px 0 15px; border-bottom:1px solid var(--d-line); }
.main-app .d-mode-switch button { min-height:37px; padding:0 2px 13px; border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; color:#818b90; font-size:12px; font-weight:650; letter-spacing:0; box-shadow:none; }
.main-app .d-mode-switch button:hover { color:var(--d-ink); }
.main-app .d-mode-switch button.is-active { color:var(--d-ink); border-bottom-color:var(--d-blue); }
.main-app #search-form { display:block; width:100%; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.main-app .search-kind-switch,.main-app .search-mode-switch { display:none !important; }
.main-app #semantic-search-panel { width:100%; padding:20px; border:1px solid #cbd4d8; border-radius:12px; background:#fff; box-shadow:0 16px 45px #1720270d; }
.main-app .semantic-query-card { display:block; min-height:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.main-app .semantic-query-card label { display:block; margin:0 0 11px; color:#76818a; font:750 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:1.1px; text-transform:uppercase; }
.main-app .semantic-query-input-wrap { position:relative; min-height:100px; border:0; background:transparent; }
.main-app #semantic-query { display:block; width:100%; min-height:118px; resize:none; appearance:none; padding:3px 45px 8px 1px; border:0 !important; border-radius:0; background:transparent; color:var(--d-ink); font-size:19px; font-weight:420; line-height:1.5; box-shadow:none !important; outline:none !important; }
.main-app #semantic-query::placeholder { color:#a5adb2; }
.main-app #semantic-query:hover,
.main-app #semantic-query:focus,
.main-app #semantic-query:focus-visible { border:0 !important; box-shadow:none !important; outline:none !important; }
.main-app .semantic-voice-button { top:0; right:1px; width:35px; height:35px; border:1px solid var(--d-line); border-radius:6px; color:#73818b; background:#fff; box-shadow:none; }
.main-app .semantic-voice-status { color:var(--d-muted); font-size:11px; }
.main-app .d-input-hint { display:flex; justify-content:space-between; gap:15px; margin:7px 0 0; color:#839099; font-size:10px; line-height:1.4; }
.main-app .d-input-hint span:last-child { font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.4px; white-space:nowrap; }
.main-app #semantic-search-panel .actions { display:flex; justify-content:flex-end; margin-top:20px; padding-top:16px; border-top:1px solid #e6e9ea; }
.main-app .actions button[type='submit'] { min-height:43px; padding:10px 18px; border:1px solid var(--d-ink); border-radius:6px; background:var(--d-ink); color:#fff; font-size:12px; font-weight:700; letter-spacing:0; text-transform:none; box-shadow:none; }
.main-app .actions button[type='submit']:hover { background:var(--d-blue); border-color:var(--d-blue); }
.main-app .d-examples { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:8px; margin:23px 0 0; }
.main-app .d-examples>span { margin-right:7px; color:#89939a; font:750 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:1px; }
.main-app .d-examples button { padding:7px 10px; border:1px solid #e0e5e5; border-radius:5px; background:#fff; color:#5d6972; font-size:10px; font-weight:550; box-shadow:none; }
.main-app .d-examples button:hover { border-color:var(--d-blue); color:var(--d-blue); }
.main-app[data-d-mode='ai'] #standard-search-panel { display:none !important; }
.main-app[data-d-mode='filters'] #semantic-search-panel,.main-app[data-d-mode='companies'] #semantic-search-panel { display:none !important; }
.main-app[data-d-mode='filters'] .d-examples,.main-app[data-d-mode='companies'] .d-examples { display:none; }
.main-app[data-d-mode='filters'] .hero,.main-app[data-d-mode='companies'] .hero { display:block; min-height:0; padding:49px 0 65px; }
.main-app[data-d-mode='filters'] .hero-copy h1 br,.main-app[data-d-mode='companies'] .hero-copy h1 br { display:none; }
.main-app[data-d-mode='filters'] .hero-copy p,.main-app[data-d-mode='companies'] .hero-copy p { margin-top:12px; font-size:13px; }
.main-app[data-d-mode='filters'] .d-mode-switch,.main-app[data-d-mode='companies'] .d-mode-switch { margin-top:30px; }
.main-app .search-workflow { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:14px; padding:0; border:0; background:transparent; }
.main-app .workflow-card { display:flex; flex-direction:column; gap:15px; min-width:0; padding:21px; border:1px solid var(--d-line) !important; border-radius:9px !important; background:#fff !important; box-shadow:none; }
.main-app .workflow-card { order:initial; }
.main-app .workflow-card-head { padding-bottom:15px; border-bottom:1px solid #e8ebec; }
.main-app .workflow-card-title { color:var(--d-ink); font-size:16px; font-weight:700; letter-spacing:-.4px; text-transform:none; }
.main-app .workflow-card-copy { color:var(--d-muted); font-size:11px; line-height:1.5; }
.main-app .filter-label,.main-app .role-criteria-grid label,.main-app .form-two-up label { color:#687780; font:730 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:.65px; text-transform:uppercase; }
.main-app .multi-select>summary,.main-app .role-criteria-grid textarea,.main-app .role-criteria-grid select,.main-app .form-two-up textarea { min-height:42px; border:1px solid #d6dfe0; border-radius:5px; background:#fff; color:var(--d-ink); font-size:12px; }
.main-app .multi-select-panel { border:1px solid #cdd6d8; border-radius:6px; background:#fff; box-shadow:0 16px 35px #1720271d; }
.main-app .form-section { padding:0; border:0; }
.main-app .filter-two-up,.main-app .role-criteria-grid { gap:13px; }
.main-app .catalog-meta { color:var(--d-muted); font-size:10px; }
body.main-app .search-presets { display:none !important; }
body.main-app[data-d-mode='filters'] .search-presets,
body.main-app[data-d-mode='companies'] .search-presets { display:flex !important; align-items:center; margin:0 0 0 auto; }
body.main-app .search-presets-label { display:none; }
body.main-app .preset-multi-select { width:136px; min-width:0; }
body.main-app .preset-multi-select>summary { min-height:30px; height:30px; padding:5px 8px; font-size:10px; }
body.main-app .preset-multi-select .multi-select-panel { right:0; left:auto; width:320px; max-height:min(520px,70vh); overflow-y:auto; }
body.main-app .preset-toggle { justify-content:space-between; gap:8px; }
body.main-app .preset-toggle label { display:flex; min-width:0; flex:1; align-items:center; gap:8px; cursor:pointer; }
body.main-app .preset-edit { flex:none; padding:2px 0; border:0; background:transparent; color:#6b7773; font-size:9px; font-weight:700; cursor:pointer; }
body.main-app .preset-row-actions { display:flex; align-items:center; flex:none; gap:10px; }
body.main-app .preset-row-actions .preset-delete { color:#a34840; }
body.main-app .preset-save-current { width:100%; margin-top:2px; padding:9px 8px; border:1px dashed #ccd7d2; border-radius:5px; background:#f9fbfa; color:#53635f; font-size:10px; font-weight:700; text-align:left; cursor:pointer; }
body.main-app .preset-save-current:hover { border-color:var(--d-accent); color:var(--d-accent-ink); }
body.main-app .preset-editor { display:grid; gap:8px; padding-top:2px; }
body.main-app .preset-editor[hidden] { display:none; }
body.main-app .preset-editor [hidden] { display:none !important; }
body.main-app .preset-editor-field { margin:3px 0 -4px; color:var(--d-muted); font-size:10px; font-weight:700; }
body.main-app .preset-editor-company { min-width:0; margin:3px 0; padding:9px; border:1px solid #e2e8e5; border-radius:5px; }
body.main-app .preset-editor-company legend { padding:0 4px; color:var(--d-ink); font-size:10px; font-weight:700; }
body.main-app .preset-editor-company>div { display:grid; gap:8px; }
body.main-app .preset-editor-help { margin:0 0 8px; color:var(--d-muted); font-size:10px; line-height:1.45; }
body.main-app .preset-editor select[multiple] { min-height:76px; resize:vertical; }
body.main-app .preset-multi-select.is-editing .multi-select-actions { display:none; }
body.main-app .preset-editor input,
body.main-app .preset-editor textarea,
body.main-app .preset-editor select { width:100%; min-height:34px; margin:0; padding:7px 8px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-ink); font-size:10.5px; line-height:1.35; resize:vertical; }
body.main-app .preset-editor textarea { height:52px; }
body.main-app .preset-editor-actions { display:flex; justify-content:flex-end; gap:6px; padding-top:3px; }
body.main-app .preset-editor-actions button { padding:7px 9px; border:1px solid #d8dfdc; border-radius:5px; background:#fff; color:#53635f; font-size:9.5px; font-weight:700; cursor:pointer; }
body.main-app .preset-editor-actions .preset-editor-delete { margin-right:auto; border-color:#ead4d1; color:#a34840; }
body.main-app .preset-editor-actions .preset-editor-submit { border-color:var(--d-ink); background:var(--d-ink); color:#fff; }
body.main-app .preset-quick-save { display:grid; gap:8px; padding:4px 2px; }
body.main-app .preset-quick-save [hidden],
body.main-app .preset-quick-save[hidden],
body.main-app .preset-multi-select.is-saving .multi-select-actions { display:none !important; }
body.main-app .preset-quick-save h3 { margin:0; color:var(--d-ink); font-size:12px; font-weight:700; }
body.main-app .preset-quick-save p { margin:0; color:var(--d-muted); font-size:10.5px; line-height:1.45; }
body.main-app .preset-quick-save label { margin:3px 0 -3px; color:var(--d-muted); font-size:10px; font-weight:700; }
body.main-app .preset-quick-save input { width:100%; min-height:36px; padding:8px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-ink); font-size:11px; }
body.main-app .preset-quick-save input:focus-visible { outline:2px solid var(--d-accent); outline-offset:1px; }
body.main-app .preset-quick-save input[aria-invalid='true'] { border-color:#a34840; }
body.main-app .preset-quick-save .preset-quick-save-error { color:#a34840; }
@media(max-width:600px) {
  .main-app .d-form-header { position:relative; }
  body.main-app .preset-multi-select { position:static; }
  body.main-app .preset-multi-select .multi-select-panel { left:8px; right:8px; width:auto; }
}
.main-app .d-custom-intro { padding:14px 16px; border:1px solid #e2e7e7; border-radius:6px; background:#f9fbfa; }
.main-app .d-custom-intro strong { color:var(--d-ink); font-size:12px; }
.main-app .d-custom-intro p { margin:5px 0 0; color:var(--d-muted); font-size:11px; line-height:1.5; }
.main-app .form-two-up { gap:12px; }
.main-app .actions { display:flex; justify-content:flex-end; margin:20px 0 0; }
.main-app .results.is-empty { display:none !important; }
.main-app .results { width:min(100%,1140px); margin:0 auto; padding:35px 0 0; scroll-margin-top:28px; }
.main-app .results-panel { padding:0; border:0; background:transparent; box-shadow:none; }
.main-app .results-head { padding-bottom:17px; border-bottom:1px solid var(--d-line); }
.main-app .results-head h2 { color:var(--d-ink); font-size:28px; font-weight:700; letter-spacing:-1.2px; }
.main-app .status { margin:16px 0 0; padding:0; border:0; background:transparent; color:var(--d-muted); font-size:12px; line-height:1.5; }
.main-app .status.warning { padding:12px 14px; border:1px solid #ead6cc; border-radius:5px; background:#fff8f4; color:#99543c; }
.main-app .summary { display:block; margin:0; padding:0; border:0; background:transparent; }
.main-app .d-result-facts { display:flex; flex-wrap:wrap; gap:8px 20px; margin:12px 0 19px; color:#65747d; font-size:10px; }
.main-app .d-result-facts span { position:relative; }
.main-app .d-result-facts span+span::before { content:'·'; position:absolute; left:-12px; color:#aeb8bc; }
.main-app .results-toolbar { display:flex; align-items:center; gap:14px; margin:0 0 9px; padding:8px 0; border:0; border-bottom:1px solid var(--d-line); border-radius:0; background:transparent; }
.main-app .results-view-label { color:#89949a; font:720 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:1px; }
.main-app .results-view-option { border:0; border-radius:5px; background:transparent; color:#7b8790; font-size:11px; font-weight:650; letter-spacing:0; text-transform:none; }
.main-app .results-view-option.is-active { background:#e8ecf0; color:var(--d-ink); }
.main-app .d-sort { display:flex; align-items:center; gap:8px; margin-left:auto; color:#89949a; font:720 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:1px; }
.main-app .d-company-sort[hidden] { display:none; }
.main-app .results-toolbar.d-company-sorting .d-sort { margin-left:0; }
.main-app .results-toolbar.d-company-sorting .d-company-sort { margin-left:auto; }
.main-app .d-sort select { height:32px; padding:5px 23px 5px 8px; border:1px solid var(--d-line); border-radius:5px; background:#fff; color:var(--d-ink); font-size:11px; letter-spacing:0; }
.main-app .download-link { margin-left:0; padding:6px 0; border:0; border-bottom:1px solid #aab5bb; border-radius:0; background:transparent; color:var(--d-ink); font-size:11px; font-weight:650; letter-spacing:0; text-transform:none; }
.main-app #table-wrap,.main-app #saved-table-wrap { border:0; border-radius:0; background:transparent; box-shadow:none; }
.main-app .results-table { width:100%; min-width:850px; table-layout:auto; font-size:11px; }
.main-app .results-table th { padding:11px; border-top:1px solid var(--d-line); border-bottom:1px solid var(--d-line); background:#f1f4f3; color:#6c7981; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.8px; }
.main-app .results-table td { padding:15px 11px; border-bottom:1px solid #e4e9e9; background:transparent; color:#687780; vertical-align:middle; }
.main-app .results-table .job-title { color:var(--d-ink); font-size:13px; font-weight:670; line-height:1.35; }
.main-app .results-table .company-name { color:#53636c; font-size:11px; font-weight:600; }
.main-app .results-table a { color:var(--d-blue); font-size:11px; font-weight:650; text-decoration:none; white-space:nowrap; }
.main-app .results-table a:hover { text-decoration:underline; }
.main-app #table-wrap.d-row-view { overflow:visible; }
.main-app .d-column-labels { display:none; }
.main-app #table-wrap.d-row-view .d-column-labels { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(120px,.8fr) minmax(105px,.7fr) minmax(120px,.75fr) 68px; gap:18px; padding:8px 10px; border-bottom:1px solid var(--d-line); color:#89949a; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.6px; }
.main-app #table-wrap.d-row-view .results-table,.main-app #table-wrap.d-row-view .results-table tbody { display:block; width:100%; min-width:0; }
.main-app #table-wrap.d-row-view .results-table thead { display:none; }
.main-app #table-wrap.d-row-view .job-row-main { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(120px,.8fr) minmax(105px,.7fr) minmax(120px,.75fr) 68px; grid-template-rows:auto auto; align-items:center; gap:4px 18px; min-height:83px; padding:14px 10px; border-bottom:1px solid var(--d-line); background:transparent; }
.main-app #table-wrap.d-row-view .job-row-main:hover { background:#f0f4f5; }
.main-app #table-wrap.d-row-view .job-row-main td { display:block; min-width:0; padding:0; border:0; background:transparent; }
.main-app #table-wrap.d-row-view .job-row-main .team-cell,.main-app #table-wrap.d-row-view .job-row-main .provider-cell,.main-app #table-wrap.d-row-view .job-row-main .updated-cell { display:none; }
.main-app #table-wrap.d-row-view .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
.main-app #table-wrap.d-row-view .job-row-main .company-cell { grid-column:1; grid-row:2; }
.main-app #table-wrap.d-row-view .job-row-main .location-cell { grid-column:2; grid-row:1/3; }
.main-app #table-wrap.d-row-view .job-row-main .posted-cell { grid-column:3; grid-row:1/3; }
.main-app #table-wrap.d-row-view .job-row-main .salary-cell { grid-column:4; grid-row:1/3; overflow-wrap:anywhere; }
.main-app #table-wrap.d-row-view .job-row-main .save-cell { grid-column:5; grid-row:1; justify-self:end; }
.main-app #table-wrap.d-row-view .job-row-main .save-cell::before { content:'SAVE '; margin-right:5px; color:#8a979c; font:700 8px ui-monospace,SFMono-Regular,monospace; }
.main-app #table-wrap.d-row-view .job-row-main .link-cell { grid-column:5; grid-row:2; justify-self:end; }
.main-app #table-wrap.d-row-view .job-description-row { display:block; padding:12px; border-bottom:1px solid var(--d-line); background:#fff; }
.main-app #table-wrap.d-row-view .job-description-row td { display:block; width:100%; padding:0; }
.main-app .saved-page-hero { padding:65px 0 25px; }
.main-app .saved-page-hero h1 { color:var(--d-ink); font-size:46px; font-weight:700; letter-spacing:-2.5px; }
.main-app .saved-page-hero p { color:var(--d-muted); font-size:12px; }
.main-app .saved-section { border:1px solid var(--d-line); border-radius:8px; background:#fff; box-shadow:none; }
.main-app .saved-section h3 { color:var(--d-ink); font-size:18px; font-weight:700; letter-spacing:-.5px; }
@media(max-width:900px) {
  .main-app .app-topbar-inner,.main-app .shell { width:min(100% - 32px,1400px); }
  .main-app .hero { min-height:calc(100svh - 68px); padding:30px 0 55px; }
  .main-app .search-workflow { grid-template-columns:1fr; }
  .main-app .workflow-card { order:initial; }
  .main-app .hero-copy h1 { font-size:clamp(43px,7vw,64px); }
  .main-app .d-input-hint span:last-child { display:none; }
}

/* Final visual system: one clear search surface, with a distinct signal per mode. */
body.main-app { --d-accent:#4364ea; --d-accent-soft:#eef2ff; --d-accent-shadow:#4364ea17; --d-accent-ink:#3652cb; background-color:var(--d-bg); }
body.main-app[data-d-mode='filters'] { --d-accent:#0f766e; --d-accent-soft:#e8f4f1; --d-accent-shadow:#0f766e18; --d-accent-ink:#0f766e; }
body.main-app[data-d-mode='companies'] { --d-accent:#df655f; --d-accent-soft:#fff2ef; --d-accent-shadow:#df655f18; --d-accent-ink:#c9514d; }
.main-app button:focus-visible,.main-app a:focus-visible,.main-app summary:focus-visible,.main-app input:focus-visible,.main-app textarea:focus-visible,.main-app select:focus-visible { outline-color:var(--d-accent); }
.main-app .app-topbar { border-bottom-color:#e9edeb; }
.main-app .app-brand::after { color:var(--d-accent); transition:color .2s ease; }
.main-app .shell { padding-bottom:110px; }
.main-app .hero { padding-bottom:100px; }
.main-app .hero-copy h1 { font-weight:720; }
.main-app .hero-copy p { max-width:545px; margin-top:18px; color:#627078; font-size:14px; line-height:1.65; }
.main-app .d-mode-switch { width:auto; gap:3px; margin:39px auto 20px; padding:4px; border:1px solid #e4e9e6; border-radius:999px; background:#f0f3f1; }
.main-app .d-mode-switch button { min-height:37px; padding:0 17px; border:0; border-radius:999px; color:#6b767a; font-size:12px; font-weight:650; transition:background .18s,color .18s,box-shadow .18s; }
.main-app .d-mode-switch button:hover { color:var(--d-ink); background:#e9eeeb; }
.main-app .d-mode-switch button.is-active { border:0; background:#fff; color:var(--d-accent-ink); box-shadow:0 1px 6px #17202713; }
.main-app #semantic-search-panel { padding:25px 27px 19px; border:2px solid var(--d-accent); border-radius:14px; box-shadow:0 15px 45px var(--d-accent-shadow),0 3px 10px #1720270b; transition:border-color .2s ease,box-shadow .2s ease; }
.main-app .semantic-query-card label { color:var(--d-accent-ink); letter-spacing:1.3px; }
.main-app #semantic-query { min-height:125px; padding-right:46px; font-size:19px; line-height:1.55; }
.main-app #semantic-query::placeholder { color:#a0a9ae; }
.main-app #semantic-search-panel .actions { margin-top:21px; padding-top:18px; border-top-color:#edf0f0; }
.main-app .actions button[type='submit'] { min-height:43px; padding:10px 18px; border-color:var(--d-ink); border-radius:6px; background:var(--d-ink); }
.main-app .actions button[type='submit']:hover { background:var(--d-accent-ink); border-color:var(--d-accent-ink); }
.main-app .d-button-loading-dots { display:inline-flex; margin-left:1px; }
.main-app .d-button-loading-dots span { display:inline-block; width:.34em; opacity:.3; animation:d-search-dot 1.05s ease-in-out infinite; }
.main-app .d-button-loading-dots span:nth-child(2) { animation-delay:.15s; }
.main-app .d-button-loading-dots span:nth-child(3) { animation-delay:.3s; }
@keyframes d-search-dot { 0%,60%,100% { opacity:.3; transform:translateY(0); } 30% { opacity:1; transform:translateY(-2px); } }
@media (prefers-reduced-motion:reduce) { .main-app .d-button-loading-dots span { animation:none; opacity:1; } }
.main-app .d-examples { margin-top:20px; }
.main-app .d-examples button { padding:8px 11px; border-color:#e2e7e5; border-radius:7px; font-size:10.5px; }
.main-app .d-examples button:hover { border-color:var(--d-accent); color:var(--d-accent-ink); }
.main-app[data-d-mode='filters'] #search-form,.main-app[data-d-mode='companies'] #search-form { position:relative; padding:27px; border:2px solid var(--d-accent); border-radius:14px; background:#fff; box-shadow:0 15px 45px var(--d-accent-shadow),0 3px 10px #1720270b; }
.main-app[data-d-mode='filters'] #search-form::before,.main-app[data-d-mode='companies'] #search-form::before { display:block; margin:0 0 20px; color:var(--d-accent-ink); font:800 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:1.3px; }
.main-app[data-d-mode='filters'] #search-form::before { content:'FILTER THE CURATED INDEX'; }
.main-app[data-d-mode='companies'] #search-form::before { content:'LIVE COMPANY SEARCH'; }
.main-app[data-d-mode='filters'] .hero,.main-app[data-d-mode='companies'] .hero { padding-top:55px; }
.main-app[data-d-mode='filters'] .hero-copy p,.main-app[data-d-mode='companies'] .hero-copy p { max-width:600px; }
.main-app .workflow-card { padding:21px 22px; border-color:#e5e9e8 !important; border-radius:8px !important; background:#fdfefd !important; }
.main-app .workflow-card-head { padding-bottom:13px; }
.main-app .workflow-card-title { font-size:17px; }
.main-app .workflow-card-copy { font-size:11.5px; }
.main-app .multi-select>summary:focus-within,.main-app .role-criteria-grid textarea:focus,.main-app .role-criteria-grid select:focus,.main-app .form-two-up textarea:focus { border-color:var(--d-accent); box-shadow:0 0 0 3px var(--d-accent-soft); }
.main-app .d-custom-intro { border-color:#f3e2df; background:#fff9f8; }
.main-app .results { padding-top:48px; }
.main-app .d-results-eyebrow,.main-app .d-saved-eyebrow { margin-bottom:11px; color:var(--d-accent); font:800 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:1.6px; }
.main-app .results-head { border-bottom:0; padding-bottom:4px; }
.main-app .results-head h2 { font-size:32px; letter-spacing:-1.4px; }
.main-app .status { font-size:12px; }
.main-app .d-preview-status { color:#697780; }
.main-app .d-result-facts { gap:8px; margin:17px 0 23px; }
.main-app .d-result-facts span { padding:7px 10px; border:1px solid #e4e9e7; border-radius:5px; background:#fff; color:#5d6b71; font-size:10px; font-weight:650; }
.main-app .d-result-facts span:first-child { border-color:var(--d-accent); background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app .d-result-facts span+span::before { display:none; }
.main-app .results-toolbar { padding:11px 0 14px; margin-bottom:12px; border-bottom-color:#dce4e1; }
.main-app .results-view-option.is-active { background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app .results-table .job-title { font-size:14px; font-weight:700; letter-spacing:-.2px; }
.main-app .results-table .company-name { font-size:11.5px; }
.main-app .results-table a { color:var(--d-accent-ink); }
.main-app #table-wrap.d-row-view .d-column-labels { padding:7px 20px 11px; border-bottom:0; }
.main-app #table-wrap.d-row-view .job-row-main { min-height:88px; margin:0 0 8px; padding:16px 19px; border:1px solid #e1e7e4; border-radius:8px; background:#fff; transition:border-color .15s,box-shadow .15s; }
.main-app #table-wrap.d-row-view .job-row-main:hover { border-color:#c8d2ce; background:#fff; box-shadow:0 5px 16px #1720270a; }
.main-app #table-wrap.d-row-view .job-row-main .salary-cell { color:#43535b; font-weight:650; }
.main-app #table-wrap.d-row-view .job-row-main .save-cell::before { color:#9aa4a5; }
.main-app #table-wrap.d-row-view .job-description-row { margin:-8px 0 8px; padding:15px 20px; border:1px solid #e1e7e4; border-top:0; border-radius:0 0 8px 8px; }
.main-app .saved-page { padding-top:38px; }
.main-app .saved-page-hero { padding:0 0 30px; }
.main-app .saved-page-hero h1 { margin:0; font-size:50px; }
.main-app .saved-page-hero p { max-width:590px; margin-top:10px; font-size:13px; line-height:1.6; }
.main-app .saved-section { border-color:#e0e6e3; border-radius:10px; box-shadow:0 8px 32px #1720270a; }
.main-app .saved-section-head { padding:24px 28px; }
.main-app .saved-section h3 { font-size:21px; }
@media(max-width:900px) {
  .main-app[data-d-mode='filters'] #search-form,.main-app[data-d-mode='companies'] #search-form { padding:18px; }
}
@media(max-width:680px) {
  .main-app .d-mode-switch { gap:1px; margin-top:30px; }
  .main-app .d-mode-switch button { padding:0 11px; font-size:10.5px; }
  .main-app #semantic-search-panel { padding:18px; }
  .main-app #table-wrap.d-row-view .job-row-main { padding:16px; }
}
@media(max-width:680px) {
  .main-app .d-index-status { display:none; }
  .main-app .app-nav { gap:17px; }
  .main-app .app-nav-link { font-size:11px; }
  .main-app .hero { align-items:flex-start; min-height:calc(100svh - 68px); padding:75px 0 35px; }
  .main-app .d-heading-label { margin-bottom:18px; }
  .main-app .hero-copy h1 { font-size:clamp(40px,10vw,55px); }
  .main-app .hero-copy p { font-size:13px; }
  .main-app .d-mode-switch { gap:22px; margin-top:32px; }
  .main-app #semantic-search-panel { padding:17px; }
  .main-app #semantic-query { min-height:150px; font-size:16px; }
  .main-app .d-examples { justify-content:flex-start; }
  .main-app .d-examples>span { width:100%; }
  .main-app[data-d-mode='filters'] .hero,.main-app[data-d-mode='companies'] .hero { padding-top:35px; }
  .main-app .filter-two-up,.main-app .role-criteria-grid,.main-app .form-two-up { grid-template-columns:1fr; }
  .main-app .results-head h2 { font-size:25px; }
  .main-app .results-toolbar { flex-wrap:wrap; }
  .main-app .d-sort,.main-app .results-toolbar.d-company-sorting .d-company-sort { margin-left:0; }
  .main-app .download-link { margin-left:auto; }
  .main-app #table-wrap.d-row-view .job-row-main { grid-template-columns:minmax(0,1fr) 35px; gap:8px; padding:15px 2px; }
  .main-app #table-wrap.d-row-view .d-column-labels { display:none; }
  .main-app #table-wrap.d-row-view .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
  .main-app #table-wrap.d-row-view .job-row-main .save-cell { grid-column:2; grid-row:1; }
  .main-app #table-wrap.d-row-view .job-row-main .save-cell::before { display:none; }
  .main-app #table-wrap.d-row-view .job-row-main .company-cell,.main-app #table-wrap.d-row-view .job-row-main .location-cell,.main-app #table-wrap.d-row-view .job-row-main .posted-cell,.main-app #table-wrap.d-row-view .job-row-main .salary-cell,.main-app #table-wrap.d-row-view .job-row-main .link-cell { grid-column:1/-1; grid-row:auto; justify-self:stretch; }
  .main-app #table-wrap.d-row-view .job-row-main .location-cell::before,.main-app #table-wrap.d-row-view .job-row-main .posted-cell::before,.main-app #table-wrap.d-row-view .job-row-main .salary-cell::before { color:#91a0a5; font:700 9px ui-monospace,SFMono-Regular,monospace; }
  .main-app #table-wrap.d-row-view .job-row-main .location-cell::before { content:'LOCATION  ·  '; }
  .main-app #table-wrap.d-row-view .job-row-main .posted-cell::before { content:'POSTED  ·  '; }
  .main-app #table-wrap.d-row-view .job-row-main .salary-cell::before { content:'SALARY  ·  '; }
  .main-app #table-wrap.d-row-view .job-row-main .link-cell { padding-top:7px !important; }
  .main-app #table-wrap.d-row-view .job-row-main .link-cell a { display:block; padding:9px 11px; border:1px solid var(--d-line); border-radius:5px; text-align:center; }
  .main-app #saved-table-wrap { overflow:visible; }
}

/* Search results keep the query close to the list without repeating the landing hero. */
.main-app.d-has-results .hero { min-height:0; padding:38px 0 30px; }
.main-app.d-has-results .hero-copy h1 br { display:none; }
.main-app.d-has-results .hero-copy p { margin-top:8px; font-size:12px; }
.main-app.d-has-results .d-mode-switch { margin-top:22px; }
.main-app.d-has-results #semantic-search-panel { padding:17px 20px; }
.main-app.d-has-results .semantic-query-input-wrap,.main-app.d-has-results #semantic-query { min-height:55px; }
.main-app.d-has-results #semantic-query { font-size:16px; }
.main-app.d-has-results .d-input-hint { display:none; }
.main-app.d-has-results #semantic-search-panel .actions { margin-top:8px; padding-top:10px; }
.main-app.d-has-results[data-d-mode='filters'] .hero,.main-app.d-has-results[data-d-mode='companies'] .hero { padding-top:32px; }

/* Saved roles use a compact, explicitly labeled review layout. */
.main-app .saved-sort-control { display:flex; align-items:center; gap:10px; color:#66757b; font-size:11px; font-weight:650; white-space:nowrap; }
.main-app .saved-sort-control select,
.main-app .saved-status-select { min-width:135px; height:34px; padding:5px 27px 5px 10px; border:1px solid #d6dedd; border-radius:5px; background:#fff; color:#202c32; font-size:11px; font-weight:650; cursor:pointer; }
.main-app #saved-table-wrap .results-table,.main-app #saved-table-wrap .results-table tbody { display:block; width:100%; min-width:0; }
.main-app #saved-table-wrap .results-table colgroup,.main-app #saved-table-wrap .results-table thead { display:none; }
.main-app #saved-table-wrap .job-row-main { display:grid; grid-template-columns:34px minmax(0,2fr) minmax(115px,.8fr) minmax(95px,.65fr) minmax(105px,.7fr) 95px; grid-template-rows:auto auto; align-items:center; gap:5px 14px; padding:18px 24px; border-top:1px solid #e5eae8; background:#fff; }
.main-app #saved-table-wrap .job-row-main:hover { background:#fcfdfc; }
.main-app #saved-table-wrap .job-row-main td { display:block; min-width:0; padding:0; border:0; background:transparent; }
.main-app #saved-table-wrap .job-row-main .saved-job-cell { grid-column:1; grid-row:1/3; width:auto; text-align:left; }
.main-app #saved-table-wrap .job-row-main .saved-title-cell { grid-column:2; grid-row:1; display:flex; align-items:center; gap:9px; flex-wrap:wrap; }
.main-app #saved-table-wrap .job-row-main .saved-title-cell .job-title { min-width:0; }
.main-app #saved-table-wrap .job-row-main .company-cell { grid-column:2; grid-row:2; padding-left:0; }
.main-app #saved-table-wrap .job-row-main .location-cell { grid-column:3; grid-row:1; color:#46575d; font-size:11px; }
.main-app #saved-table-wrap .job-row-main .salary-cell { grid-column:3; grid-row:2; color:#718087; font-size:10px; }
.main-app #saved-table-wrap .job-row-main .posted-cell { grid-column:4; grid-row:1/3; color:#56666b; font-size:11px; }
.main-app #saved-table-wrap .job-row-main .posted-cell::before { content:'POSTED'; display:block; margin-bottom:4px; color:#91a0a1; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.08em; }
.main-app #saved-table-wrap .job-row-main .complete-cell { grid-column:5; grid-row:1/3; display:flex; align-items:center; gap:7px; color:#5e6c70; font-size:11px; font-weight:600; }
.main-app #saved-table-wrap .job-row-main .complete-cell .complete-toggle { width:16px; height:16px; margin:0; cursor:pointer; }
.main-app #saved-table-wrap .job-row-main .link-cell { grid-column:6; grid-row:1/3; justify-self:end; }
.main-app #saved-table-wrap .job-row-main .team-cell,.main-app #saved-table-wrap .job-row-main .provider-cell { display:none; }
.main-app #saved-table-wrap .job-description-row { display:block; padding:18px 26px; border-top:1px solid #e5eae8; }
.main-app #saved-table-wrap .job-description-row td { display:block; width:100%; padding:0; }
@media(max-width:600px) {
  .main-app .saved-filters { gap:10px; }
  .main-app #saved-note-filter,.main-app #saved-complete-filter { order:1; flex:1 1 calc(50% - 5px); }
  .main-app #saved-backup-download,.main-app #saved-backup-import { order:2; }
  .main-app .saved-sort-control { width:100%; justify-content:space-between; }
  .main-app .saved-sort-control select { min-width:180px; }
}

.main-app .saved-section.d-is-empty #saved-backup-download,.main-app .saved-section.d-is-empty #saved-note-filter,.main-app .saved-section.d-is-empty #saved-complete-filter { display:none; }
.main-app .saved-section.d-is-empty .saved-sort-control { display:none; }
.main-app .saved-section.d-is-empty .saved-section-head { border-bottom:1px solid #e7ece9; }
.main-app .saved-section.d-is-empty #saved-table-wrap .d-empty-row { display:block; }
.main-app .saved-section.d-is-empty #saved-table-wrap .d-empty-row td { display:block; padding:0; border:0; }
.main-app .d-empty-saved { display:flex; flex-direction:column; align-items:center; padding:55px 25px 60px; text-align:center; }
.main-app .d-empty-saved-mark { display:block; width:56px; height:56px; margin-bottom:18px; border-radius:12px; }
.main-app .d-empty-saved h4 { margin:0; color:var(--d-ink); font-size:22px; font-weight:720; letter-spacing:-.8px; }
.main-app .d-empty-saved p { max-width:365px; margin:9px 0 21px; color:var(--d-muted); font-size:12px; line-height:1.6; }
.main-app .saved-section #saved-table-wrap .d-empty-saved a { display:inline-flex; gap:12px; align-items:center; padding:10px 14px; border-radius:5px; background:var(--d-ink); color:#fff; font-size:11px; font-weight:680; text-decoration:none; }
.main-app .saved-section #saved-table-wrap .d-empty-saved a:hover { background:var(--d-blue); }
.main-app .d-empty-saved small { margin-top:22px; color:#9aa5a5; font-size:10px; }

/* Professional search workspace: clear primary fields, secondary scope controls. */
.main-app[data-d-mode='ai'] .d-form-footer { display:none; }
.main-app[data-d-mode='filters'] #search-form::before,.main-app[data-d-mode='companies'] #search-form::before { display:none; }
.main-app[data-d-mode='filters'] #search-form,.main-app[data-d-mode='companies'] #search-form { padding:0; overflow:visible; }
.main-app .d-form-header { display:flex; justify-content:space-between; align-items:center; gap:28px; padding:24px 29px 22px; border-bottom:1px solid #e9eeeb; }
.main-app .d-form-kicker,.main-app .d-step { display:block; color:var(--d-accent-ink); font:800 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:1.4px; }
.main-app .d-form-title { margin:7px 0 3px; color:var(--d-ink); font-size:23px; font-weight:740; line-height:1.15; letter-spacing:-.8px; }
.main-app .d-form-description { margin:0; color:#718078; font-size:12px; line-height:1.45; }
.main-app .d-reset-button { flex:none; padding:9px 12px; border:1px solid #dfe6e1; border-radius:6px; background:#fff; color:#52615f; font-size:11px; font-weight:650; box-shadow:none; }
.main-app .d-reset-button:hover { border-color:var(--d-accent); color:var(--d-accent-ink); background:var(--d-accent-soft); }
.main-app .search-workflow { grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:0; padding:26px 29px 28px; }
.main-app[data-d-mode='companies'] .search-workflow { grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); }
.main-app .workflow-card { display:block; padding:0 !important; border:0 !important; border-radius:0 !important; background:transparent !important; }
.main-app[data-d-mode='filters'] .d-company-card,.main-app[data-d-mode='companies'] .d-company-card { padding-right:27px !important; border-right:1px solid #e7ece8 !important; }
.main-app[data-d-mode='filters'] .d-role-card,.main-app[data-d-mode='companies'] .d-role-card { padding-left:27px !important; }
.main-app .workflow-card-head { display:block; margin:0 0 21px; padding:0; border:0; }
.main-app .workflow-card-title { margin:8px 0 4px; font-size:19px; font-weight:730; letter-spacing:-.6px; }
.main-app .workflow-card-copy { margin:0; color:#7b8888; font-size:12px; line-height:1.45; }
.main-app .role-criteria-grid,.main-app .filter-two-up { gap:16px 13px; }
.main-app .role-criteria-grid label,.main-app .form-two-up label,.main-app .filter-label { display:flex; flex-direction:column; gap:7px; color:#445355; font:680 12px/1.35 Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:0; text-transform:none; }
.main-app .role-criteria-grid textarea,.main-app .form-two-up textarea { width:100%; min-height:72px; height:72px; padding:11px 12px; border:1px solid #dce3e0; border-radius:7px; resize:vertical; color:var(--d-ink); font-size:12px; line-height:1.45; }
.main-app .role-criteria-grid textarea::placeholder,.main-app .form-two-up textarea::placeholder { color:#9ca9a6; }
.main-app .role-criteria-grid select,.main-app .multi-select>summary { min-height:42px; border-color:#dce3e0; border-radius:7px; color:#52615f; font-size:12px; }
.main-app .role-criteria-grid select { height:72px; }
.main-app .d-field-help { margin:0; color:#94a09d; font-size:10px; font-weight:500; line-height:1.35; }
.main-app .d-quick-titles { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-top:18px; }
.main-app .d-quick-titles>span,.main-app .d-active-label { margin-right:3px; color:#96a3a0; font:800 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.9px; }
.main-app .d-quick-titles button { padding:6px 8px; border:1px solid #e0e7e3; border-radius:5px; background:#fff; color:#65736f; font-size:10px; font-weight:600; box-shadow:none; }
.main-app .d-quick-titles button:hover { border-color:var(--d-accent); background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app .d-active-filters { display:flex; flex-wrap:wrap; align-items:center; gap:6px; min-height:27px; margin-top:9px; color:#919e9a; font-size:10px; line-height:1.4; }
.main-app .d-active-filters.is-empty { font-size:10px; }
.main-app .d-filter-chip { padding:5px 7px; border:1px solid #e6d9a7; border-radius:4px; background:#fffbef; color:#8b6a0f; font-size:10px; font-weight:620; box-shadow:none; }
.main-app .d-filter-chip:hover { border-color:var(--d-accent); background:var(--d-accent-soft); }
.main-app .d-filter-more { color:#77847f; font-size:10px; }
.main-app .d-form-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px 22px; min-height:88px; padding:16px 29px; border-top:1px solid #e9eeeb; background:#fbfcfb; border-radius:0 0 12px 12px; }
.main-app .d-footer-copy { display:grid; gap:3px; }
.main-app .d-footer-copy strong { color:#344542; font-size:13px; font-weight:740; }
.main-app .d-footer-copy span { color:#84918e; font-size:11px; }
.main-app .d-form-footer .actions { margin:0; }
.main-app .d-form-message { order:3; width:100%; padding:10px 12px; border:1px solid #e9c8bf; border-radius:6px; background:#fff6f3; color:#a1483e; font-size:11px; }
.main-app .d-form-footer .actions button { min-width:145px; }
.main-app .filter-two-up .multi-select { min-width:0; }
.main-app .multi-select-panel { z-index:40; }
.main-app .filter-action { font-size:10px; }

/* Company lists: align names and homepages as paired rows. */
.main-app[data-d-mode='companies'] .d-custom-intro { display:flex; align-items:center; gap:8px; margin-top:19px; padding:11px 12px; border-color:#f0e4e1; border-radius:6px; background:#fff9f7; color:#7c625c; font-size:10.5px; line-height:1.45; }
.main-app .d-live-dot { flex:none; width:7px; height:7px; border-radius:50%; background:#d96962; box-shadow:0 0 0 3px #f8e4e0; }
.main-app[data-d-mode='companies'] #companies { height:128px; min-height:128px; font-size:12px; line-height:1.6; }
.main-app[data-d-mode='companies'] .d-quick-titles { opacity:.9; }

/* A single results readout keeps the search and its criteria in view. */
.main-app .results { width:min(100%,1135px); }
.main-app .results-panel { gap:12px; }
.main-app .results-head { margin-bottom:0; padding-bottom:0; }
.main-app .results-head-copy { gap:0; }
.main-app .results-head h2,.main-app .saved-page-hero h1 { font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:clamp(28px,7vw,42px); line-height:1.08; font-weight:760; letter-spacing:-.065em; }
.main-app .results-head h2 { scroll-margin-top:36px; }
.main-app.d-has-results .results { min-height:100svh; }
.main-app.d-has-results .results-panel { align-content:start; }
.main-app.d-has-results .shell { padding-bottom:140px; }
.main-app .results-head h2::after { content:'.'; color:var(--d-accent); }
.main-app .results-head .meta { margin-top:12px; color:#899591; font-size:18px; line-height:1.4; }
.main-app .results.is-searching { display:none !important; }
.main-app .results .status:not([hidden]) { margin:0 0 15px; }
.main-app .summary { margin:0; }
.main-app .d-applied-criteria { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin:6px 0 0; }
.main-app .d-applied-criteria>span:first-child { margin-right:6px; color:#8a9791; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.8px; white-space:nowrap; }
.main-app .d-applied-criteria>button { display:flex; align-items:center; gap:9px; max-width:min(100%,360px); min-height:34px; padding:6px 9px 6px 11px; border:1px solid #d4dad5; border-radius:5px; background:#fff; color:#82908a; font-size:10px; cursor:pointer; }
.main-app .d-applied-criteria>button strong { overflow:hidden; color:#283431; font-size:11px; font-weight:680; text-overflow:ellipsis; white-space:nowrap; }
.main-app .d-applied-criteria>button .d-criteria-arrow { margin-left:auto; color:var(--d-accent-ink); font-size:13px; line-height:1; }
.main-app .d-applied-criteria>button:hover { border-color:var(--d-accent); box-shadow:0 3px 12px #1720270a; }
.main-app .results-toolbar { padding:13px 0; border-top:1px solid #dce5df; border-bottom:1px solid #dce5df; }
.main-app #table-wrap.d-row-view .d-column-labels { padding-top:13px; }
.main-app #table-wrap.d-row-view .job-row-main { cursor:pointer; }
.main-app #table-wrap.d-row-view .job-row-main:focus-visible { outline:2px solid var(--d-accent); outline-offset:2px; }
.main-app #table-wrap.d-row-view .job-row-main.expanded { border-color:var(--d-accent); border-radius:8px 8px 0 0; }
.main-app #table-wrap.d-row-view .job-row-main.expanded+.job-description-row { border-color:var(--d-accent); }
.main-app #table-wrap.d-row-view .job-row-main .link-cell a { display:inline-block; padding:5px 0; }
.main-app #table-wrap:not(.d-row-view) .company-group-row { background:transparent; }
.main-app #table-wrap:not(.d-row-view) .company-group-row td { padding:7px 0; border:0; }
.main-app #table-wrap:not(.d-row-view) .company-toggle { width:100%; border:1px solid #e1e8e4; border-radius:8px; background:#fff; box-shadow:none; }
.main-app #table-wrap:not(.d-row-view) .company-toggle:hover { border-color:#cbd8d0; background:#fcfdfc; }
@media(max-width:900px) {
  .main-app .search-workflow,.main-app[data-d-mode='companies'] .search-workflow { grid-template-columns:1fr; gap:28px; }
  .main-app[data-d-mode='filters'] .d-company-card,.main-app[data-d-mode='companies'] .d-company-card { padding-right:0 !important; border-right:0 !important; }
  .main-app[data-d-mode='filters'] .d-role-card,.main-app[data-d-mode='companies'] .d-role-card { padding-left:0 !important; padding-top:26px !important; border-top:1px solid #e7ece8 !important; }
}

/* Keep the standard workspace focused and dropdowns above its footer. */
.main-app[data-d-mode='companies'] .d-active-filters { display:none; }
.main-app .search-workflow { position:relative; z-index:2; }
.main-app .d-form-footer { position:relative; z-index:1; }
.main-app .role-criteria-grid textarea,.main-app .form-two-up textarea { resize:none; overflow-y:auto; }

/* The company view uses the same visual language as the role list. */
.main-app #table-wrap.d-company-view .results-table,.main-app #table-wrap.d-company-view .results-table tbody { display:block; width:100%; min-width:0; }
.main-app #table-wrap.d-company-view .results-table thead { display:none; }
.main-app #table-wrap.d-company-view .company-group-row,.main-app #table-wrap.d-company-view .company-group-row td { display:block; width:100%; }
.main-app #table-wrap.d-company-view .company-group-row td { padding:0 0 9px; }
.main-app #table-wrap.d-company-view .company-toggle { min-height:70px; padding:13px 17px; }
.main-app #table-wrap.d-company-view .company-name { color:var(--d-ink); font-size:13px; font-weight:720; }
.main-app #table-wrap.d-company-view .company-description { color:#7b8985; font-size:11px; }
.main-app #table-wrap.d-company-view .company-count { color:var(--d-accent-ink); font-size:11px; font-weight:680; }
.main-app #table-wrap.d-company-view .job-row-main { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(120px,.8fr) minmax(105px,.7fr) minmax(120px,.75fr) 68px; grid-template-rows:auto auto; align-items:center; gap:4px 18px; min-height:73px; margin:0 0 8px 18px; padding:12px 18px; border:1px solid #e6ebe8; border-radius:7px; background:#fcfdfc; cursor:pointer; }
.main-app #table-wrap.d-company-view .job-row-main:hover { border-color:#cbd8d0; background:#fff; }
.main-app #table-wrap.d-company-view .job-row-main td { display:block; min-width:0; padding:0; border:0; background:transparent; }
.main-app #table-wrap.d-company-view .job-row-main .team-cell,.main-app #table-wrap.d-company-view .job-row-main .provider-cell,.main-app #table-wrap.d-company-view .job-row-main .updated-cell,.main-app #table-wrap.d-company-view .job-row-main .company-cell { display:none; }
.main-app #table-wrap.d-company-view .job-row-main td:nth-child(2) { grid-column:1; grid-row:1/3; }
.main-app #table-wrap.d-company-view .job-row-main .location-cell { grid-column:2; grid-row:1/3; }
.main-app #table-wrap.d-company-view .job-row-main .posted-cell { grid-column:3; grid-row:1/3; }
.main-app #table-wrap.d-company-view .job-row-main .salary-cell { grid-column:4; grid-row:1/3; color:#43535b; font-weight:650; }
.main-app #table-wrap.d-company-view .job-row-main .save-cell { grid-column:5; grid-row:1; justify-self:end; }
.main-app #table-wrap.d-company-view .job-row-main .link-cell { grid-column:5; grid-row:2; justify-self:end; }
.main-app #table-wrap.d-company-view .job-row-main .job-title { font-size:12px; }
.main-app #table-wrap.d-company-view .job-row-main .link-cell a { font-size:10px; }
.main-app #table-wrap.d-company-view .job-description-row { display:block; margin:-8px 0 8px 18px; padding:14px 18px; border:1px solid #e6ebe8; border-top:0; border-radius:0 0 7px 7px; background:#fff; }
.main-app #table-wrap.d-company-view .job-description-row td { display:block; width:100%; padding:0; }

.main-app .d-stale-notice { width:max-content; max-width:100%; margin:13px 0 0; padding:8px 11px; border:1px solid #e9d9a9; border-radius:5px; background:#fffaf0; color:#7d671f; font-size:11px; font-weight:610; }


/* Keep one search-box footprint across all three methods. */
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero,.main-app:not(.d-has-results)[data-d-mode='companies'] .hero { display:flex; align-items:center; min-height:calc(100svh - 68px); padding:30px 0 100px; }
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero-copy h1 br,.main-app:not(.d-has-results)[data-d-mode='companies'] .hero-copy h1 br { display:block; }
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero-copy p,.main-app:not(.d-has-results)[data-d-mode='companies'] .hero-copy p { max-width:545px; margin-top:18px; font-size:14px; }
.main-app:not(.d-has-results)[data-d-mode='filters'] .d-mode-switch,.main-app:not(.d-has-results)[data-d-mode='companies'] .d-mode-switch { margin-top:20px; }
.main-app #semantic-search-panel,.main-app[data-d-mode='filters'] #search-form,.main-app[data-d-mode='companies'] #search-form { width:100%; height:303px; }
.main-app[data-d-mode='filters'] #search-form,.main-app[data-d-mode='companies'] #search-form { display:flex; flex-direction:column; gap:0; }
.main-app #standard-search-panel { position:relative; z-index:2; display:flex; flex:1; flex-direction:column; min-height:0; }
.main-app .d-form-header { flex:none; min-height:55px; gap:10px; padding:10px 21px 9px; }
.main-app .d-form-header>div:first-child { margin-right:auto; }
.main-app .d-form-title { margin:3px 0 0; font-size:17px; letter-spacing:-.45px; }
.main-app .d-form-description { display:none; }
.main-app .d-form-kicker { font-size:8px; letter-spacing:1px; }
.main-app .d-reset-button { padding:6px 9px; font-size:10px; }
.main-app .search-workflow,.main-app[data-d-mode='companies'] .search-workflow { display:grid; flex:1; min-height:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:9px 21px; }
.main-app .d-role-card,.main-app .d-company-card { width:100%; height:auto; min-width:0; padding:0 !important; border:0 !important; overflow:visible; }
.main-app[data-d-mode='filters'] .d-company-card,.main-app[data-d-mode='companies'] .d-company-card { padding-right:15px !important; border-right:1px solid #e7ece8 !important; }
.main-app[data-d-mode='filters'] .d-role-card,.main-app[data-d-mode='companies'] .d-role-card { padding:0 !important; border:0 !important; }
.main-app .workflow-card-head { display:block; margin:0 0 5px; padding:0; border:0; }
.main-app .workflow-card-head .workflow-card-title,.main-app .workflow-card-head .workflow-card-copy { display:none; }
.main-app .d-step-heading { display:flex; align-items:center; gap:1px; min-height:24px; }
.main-app .d-search-info { position:relative; display:inline-flex; align-items:center; justify-content:center; flex:none; width:24px; height:24px; margin:-3px 0; padding:0; border:0; border-radius:50%; background:transparent; color:var(--d-muted); cursor:pointer; box-shadow:none; }
.main-app .d-search-info::before { content:''; position:absolute; inset:-4px; border-radius:50%; }
.main-app .d-search-info svg { width:14px; height:14px; }
.main-app .d-search-info:hover,.main-app .d-search-info[aria-expanded='true'] { color:var(--d-ink); background:#17202708; }
.main-app .d-search-info-tooltip { position:fixed; z-index:1100; width:340px; max-width:calc(100vw - 24px); margin:0; padding:16px; border:1px solid #dce3dc; border-radius:9px; background:#fffefa; color:#5f6d65; font:450 13px/19px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; letter-spacing:0; text-transform:none; box-shadow:0 4px 16px #243b3010,0 1px 3px #243b3008; }
.main-app .d-search-info-tooltip:not([hidden]) { animation:d-info-appear 130ms ease-out; }
.main-app .d-search-info-tooltip::before { content:''; position:absolute; left:var(--d-info-caret-left,12px); width:9px; height:9px; background:#fffefa; transform:translateX(-50%) rotate(45deg); }
.main-app .d-search-info-tooltip[data-placement='above']::before { bottom:-5px; border-right:1px solid #dce3dc; border-bottom:1px solid #dce3dc; }
.main-app .d-search-info-tooltip[data-placement='below']::before { top:-5px; border-left:1px solid #dce3dc; border-top:1px solid #dce3dc; }
.main-app .d-search-info-tooltip ul { display:grid; gap:10px; margin:0; padding:0; list-style:none; }
.main-app .d-search-info-tooltip li { position:relative; margin:0; padding:0 0 0 17px; }
.main-app .d-search-info-tooltip li::before { content:''; position:absolute; left:2px; top:5px; width:4px; height:7px; border-right:1.5px solid #7b9182; border-bottom:1.5px solid #7b9182; transform:rotate(45deg); }
.main-app .d-search-info-tooltip strong { color:#243b30; font-weight:650; }
.main-app .d-search-info-tooltip code { display:inline-block; padding:0 4px; border:1px solid #e0e7df; border-radius:4px; background:#eef2ec; color:#304c3a; font:500 12px/17px ui-monospace,SFMono-Regular,monospace; white-space:nowrap; vertical-align:baseline; }
@keyframes d-info-appear { from { opacity:0; } to { opacity:1; } }
@media (prefers-reduced-motion:reduce) { .main-app .d-search-info-tooltip:not([hidden]) { animation:none; } }
.main-app .d-step { font-size:8px; letter-spacing:.8px; }
.main-app .role-criteria-grid,.main-app .filter-two-up,.main-app[data-d-mode='companies'] .role-criteria-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 9px; }
.main-app .role-criteria-grid label,.main-app .filter-label,.main-app .form-two-up label { gap:4px; font-size:10.5px; }
.main-app .role-criteria-grid textarea,.main-app .role-criteria-grid select { height:42px; min-height:42px; padding:8px 9px; font-size:11px; }
.main-app #titles,.main-app #keywords,.main-app #location,.main-app #date-posted { height:42px; min-height:42px; }
.main-app #company-homepages { min-height:90px; }
.main-app .d-field-help { display:none; }
.main-app .d-quick-titles { display:none; }
.main-app .d-quick-titles button { padding:4px 7px; font-size:9px; }
.main-app .d-active-filters { display:none; }
.main-app .d-active-filters.is-empty { display:none; }
.main-app .d-active-label { display:none; }
.main-app .d-filter-chip { padding:3px 6px; font-size:9px; }
.main-app .multi-select>summary { min-height:34px; height:34px; padding:6px 9px; font-size:10.5px; }
.main-app[data-d-mode='filters'] .d-company-card .multi-select-summary { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.main-app .multi-select-panel { z-index:50; }
.main-app[data-d-mode='filters'] .filter-two-up .multi-select-panel { top:calc(100% + 6px); bottom:auto; }
.main-app .d-form-footer { flex:none; min-height:58px; padding:7px 21px; }
.main-app .d-footer-copy strong { font-size:11px; }
.main-app .d-footer-copy span { font-size:9.5px; }
.main-app .d-form-footer .actions button { min-height:37px; min-width:126px; padding:7px 12px; font-size:10.5px; }
.main-app .d-form-message:not([hidden]) { position:absolute; top:calc(100% + 8px); right:0; left:0; width:100%; box-shadow:0 5px 15px #1720270c; }
.main-app[data-d-mode='companies'] #companies { height:90px; min-height:90px; padding:8px 10px; font-size:11px; }
.main-app[data-d-mode='companies'] .d-company-card .form-section { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 9px; align-items:center; }
.main-app[data-d-mode='companies'] .d-company-sources { display:grid; grid-column:1/-1; grid-template-columns:minmax(0,1fr) 125px; gap:8px; margin-bottom:2px; }
.main-app[data-d-mode='companies'] .d-company-sources .company-search-picker { z-index:60; }
.main-app[data-d-mode='companies'] .d-company-sources .company-search-input { height:32px; min-height:32px; padding:6px 9px; border-color:#dce3e0; border-radius:6px; font-size:10px; }
.main-app[data-d-mode='companies'] .d-company-sources .company-source-picker,
.main-app[data-d-mode='companies'] .d-company-sources #company-source-filter { width:100%; min-width:0; max-width:100%; }
.main-app[data-d-mode='companies'] .d-company-sources .filter-label { display:none; }
.main-app[data-d-mode='companies'] .d-company-sources .multi-select>summary { display:flex; align-items:center; min-height:32px; height:32px; padding:5px 8px; border-color:#e8d0cc; border-radius:6px; background:#fff8f6; color:#bb5a50; font-size:10px; font-weight:680; }
.main-app[data-d-mode='companies'] .d-company-sources .multi-select-summary { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.main-app[data-d-mode='companies'] .d-company-sources .multi-select-panel { right:0; left:auto; width:max(240px,100%); }
.main-app #company-source-options .company-source-icon { display:block; width:18px; height:18px; flex:0 0 18px; object-fit:contain; border-radius:3px; }
.main-app .company-search-input-wrap { position:relative; width:100%; }
.main-app #company-search-input { padding-right:34px; }
.main-app #company-search-input::-webkit-search-cancel-button { -webkit-appearance:none; appearance:none; display:none; }
.main-app #company-search-clear { position:absolute; top:50%; right:7px; display:grid; place-items:center; width:24px; height:24px; min-height:24px; margin:0; padding:5px; border:0; border-radius:3px; background:transparent; color:#000; box-shadow:none; transform:translateY(-50%); cursor:pointer; }
.main-app #company-search-clear[hidden] { display:none; }
.main-app #company-search-clear svg { display:block; width:14px; height:14px; }
.main-app #company-search-clear:focus-visible { outline:2px solid var(--d-accent); outline-offset:1px; }
/* Four complete 44px rows, three 2px gaps, and the two border pixels. */
.main-app #company-search-results { box-sizing:border-box; width:min(320px,calc(100vw - 48px)); min-width:100%; max-width:calc(100vw - 48px); max-height:184px; grid-auto-rows:44px; align-content:start; gap:2px; padding:0 6px; overflow-x:hidden; overflow-y:auto; scrollbar-gutter:stable; scroll-snap-type:y mandatory; border:1px solid #dce3e0; border-radius:8px; background:#fff; box-shadow:0 18px 35px #1821291c; }
.main-app #company-search-results:empty { padding:0; border:0; box-shadow:none; }
.main-app #company-search-results .company-search-result { display:flex; align-items:center; gap:8px; height:44px; min-height:44px; width:100%; margin:0; padding:5px 8px; scroll-snap-align:start; border:0; border-radius:5px; background:transparent; color:var(--d-text-primary); font-family:var(--d-type-sans); text-align:left; box-shadow:none; transform:none; }
.main-app #company-search-results .company-search-result:hover { background:#f5f6fa; }
.main-app #company-search-results .company-search-result:focus-visible { outline:2px solid var(--d-accent); outline-offset:-2px; background:var(--d-accent-soft); }
.main-app #company-search-results .company-search-result.is-selected { background:var(--d-accent-soft); color:var(--d-text-primary); opacity:1; }
.main-app .company-search-result-logo { display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; border:0; background:transparent; color:var(--d-text-secondary); font-size:12px; font-weight:600; }
.main-app .company-search-result-logo > span { grid-area:1 / 1; }
.main-app .company-search-result-logo > span:has(+ img:not([hidden])) { visibility:hidden; }
.main-app .company-search-result-logo img { display:block; grid-area:1 / 1; width:22px; height:22px; padding:0; object-fit:contain; background:transparent; mix-blend-mode:multiply; }
.main-app .company-search-result-logo img[hidden] { display:none; }
.main-app .company-search-result-copy { display:flex; flex:1; flex-direction:column; gap:1px; min-width:0; }
.main-app .company-search-result-name { flex-shrink:0; padding:1px 0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.main-app .company-search-result-domain { flex-shrink:0; overflow:hidden; color:var(--d-text-secondary); font-size:10px; font-weight:400; line-height:1.35; letter-spacing:0; text-overflow:ellipsis; white-space:nowrap; }
.main-app .company-search-result-action { flex-shrink:0; color:var(--d-text-secondary); font-size:18px; font-weight:400; }
.main-app .company-search-result.is-selected .company-search-result-action { color:var(--d-accent-ink); font-size:11px; font-weight:500; }
.main-app .company-search-empty { padding:12px 10px; color:var(--d-text-secondary); font-family:var(--d-type-sans); font-size:var(--d-type-control); font-weight:400; line-height:1.4; }
.main-app[data-d-mode='companies'] .d-company-card .form-two-up { display:grid; grid-column:1/-1; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:9px; }
.main-app[data-d-mode='companies'] #companies,.main-app[data-d-mode='companies'] #company-homepages { height:64px; min-height:64px; }
.main-app[data-d-mode='companies'] #company-homepages { height:64px; min-height:64px; padding:8px 10px; font-size:11px; }
.main-app .d-pair-help { grid-column:1; margin:0; color:#89948f; font-size:9px; line-height:1.3; }
.main-app[data-d-mode='companies'] .d-custom-intro { display:none; }
@media(min-width:701px) {
  .main-app[data-d-mode='filters'] .filter-two-up .filter-field { gap:4px; }
  .main-app[data-d-mode='filters'] .filter-two-up .multi-select>summary { height:42px; min-height:42px; }
  .main-app[data-d-mode='companies'] #companies,
  .main-app[data-d-mode='companies'] #company-homepages { height:71px; min-height:71px; }
  .main-app[data-d-mode='companies'] .d-pair-help { font-size:8.5px; line-height:1.2; }
}
.main-app.d-has-results #semantic-search-panel { padding:25px 27px 19px; }
.main-app.d-has-results .semantic-query-input-wrap { min-height:100px; }
.main-app.d-has-results #semantic-query { min-height:125px; font-size:19px; }
.main-app.d-has-results .d-input-hint { display:flex; }
.main-app.d-has-results #semantic-search-panel .actions { margin-top:21px; padding-top:18px; }
@media(max-width:900px) {
  .main-app .search-workflow,.main-app[data-d-mode='companies'] .search-workflow { grid-template-columns:1fr 1fr; gap:10px; }
}

/* Keep the search surfaces aligned while the desktop headings remain one line. */
.main-app:not(.d-has-results) .hero-form-column { min-height:808px; }
.main-app:not(.d-has-results) .hero-copy { min-height:0; }
.main-app:not(.d-has-results) .hero-copy p,
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero-copy p,
.main-app:not(.d-has-results)[data-d-mode='companies'] .hero-copy p,
.main-app.d-has-results .hero-copy p { max-width:700px; min-height:3.3em; }
/* Keep both hero lines the same size before, during, and after a search. */
.main-app .hero-copy h1 { font-size:clamp(42px,4.7vw,68px); white-space:nowrap; }
.main-app:not(.d-has-results) .d-mode-switch { margin-top:20px; }
@media(max-width:650px) {
  .main-app .hero-copy h1 { white-space:normal; }
}

/* A fixed search heading and a mode-specific second line keep the hero stable. */
.main-app .hero-copy h1 .d-hero-tagline {
  display:block;
  color:var(--d-accent);
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.06em;
  font-weight:400;
  font-style:italic;
  line-height:1.06;
  letter-spacing:-.065em;
  white-space:nowrap;
}
@media(max-width:650px) {
  .main-app .hero-copy h1 .d-hero-tagline { white-space:normal; }
}

/* Results controls: quiet editorial tabs and an unboxed sort menu. */
.main-app .results-toolbar {
  position:relative;
  justify-content:space-between;
  gap:16px;
  min-height:46px;
  margin:0 0 10px;
  padding:6px 0;
  background:linear-gradient(180deg,var(--d-bg-page) 0%,var(--d-bg-footer) 100%) fixed;
  border-top:1px solid #d9e0db;
  border-bottom:1px solid #d9e0db;
}
.main-app .results-view-label { display:none; }
.main-app .results-group-toggle {
  display:flex;
  gap:3px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
}
.main-app .results-view-option {
  min-width:82px;
  min-height:30px;
  padding:6px 10px;
  border-radius:4px;
  background:transparent;
  color:#88978f;
  box-shadow:none;
  font-size:11px;
  font-weight:670;
  letter-spacing:0;
}
.main-app .results-group-toggle input:not(:checked) ~ .results-view-option--roles,
.main-app .results-group-toggle input:checked ~ .results-view-option--company,
.main-app .results-view-option.is-active {
  background:#e8ebe8;
  color:#293b34;
  box-shadow:none;
}
.main-app .d-sort-controls {
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:16px;
  margin-left:auto;
}
.main-app .d-sort,
.main-app .results-toolbar.d-company-sorting .d-sort,
.main-app .results-toolbar.d-company-sorting .d-company-sort {
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin:0;
  color:#8a9990;
  font:700 9px ui-monospace,SFMono-Regular,monospace;
  letter-spacing:.8px;
  white-space:nowrap;
}
.main-app .d-company-sort[hidden] { display:none; }
.main-app .d-sort select {
  width:auto;
  height:30px;
  padding:5px 17px 5px 0;
  appearance:none;
  border:0;
  border-radius:0;
  background:transparent;
  color:#34453d;
  font-family:inherit;
  font-size:11px;
  font-weight:670;
  letter-spacing:0;
  cursor:pointer;
}
.main-app .d-company-sort select { width:auto; }
.main-app .d-sort { position:relative; }
.main-app .d-sort::after {
  content:'';
  position:absolute;
  right:3px;
  top:50%;
  width:7px;
  height:7px;
  border-right:1.4px solid #34453d;
  border-bottom:1.4px solid #34453d;
  transform:translateY(-75%) rotate(45deg);
  pointer-events:none;
}
.main-app .d-sort select:focus-visible { outline:2px solid var(--d-accent); outline-offset:3px; border-radius:3px; }
.main-app .results-toolbar .download-link { margin:0 0 0 2px; padding:5px 0 5px 14px; border:0; border-left:1px solid #d9e0db; border-radius:0; background:transparent; color:#5b6b63; font-size:10px; font-weight:670; }
.main-app #semantic-search-panel.is-revealing { animation:reveal 180ms ease both; }
.main-app.d-has-results[data-d-mode='ai'] .hero { padding-top:32px; }
@media(max-width:720px) {
  .main-app .results-toolbar { flex-wrap:wrap; gap:8px 20px; }
  .main-app .d-sort-controls { flex-wrap:wrap; justify-content:flex-start; margin-left:0; }
}

/* Let the footer close the empty search page; result rows extend it naturally. */
body.main-app { display:flex; flex-direction:column; min-height:100svh; }
.main-app .shell { flex:1 0 auto; padding-bottom:0; }
.main-app:not(.d-has-results) .hero,
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero,
.main-app:not(.d-has-results)[data-d-mode='companies'] .hero { min-height:0; padding:46px 0 48px; }
/* Match the tallest search mode so vertical centering cannot move the mode switch. */
.main-app:not(.d-has-results) .hero-form-column { min-height:704px; }
.main-app.d-has-results .shell { padding-bottom:56px; }
.main-app.d-has-results .results { min-height:0; }
.main-app .d-site-footer { flex:none; width:100%; border-top:1px solid #e2e8e3; background:var(--d-bg-footer); }
.main-app .d-site-footer-inner { display:flex; justify-content:space-between; align-items:center; gap:16px; width:min(100% - 64px,1400px); min-height:90px; margin:auto; color:#7e8985; font-size:12px; }
.main-app .d-site-footer-brand { color:var(--d-ink); font-size:17px; font-weight:750; letter-spacing:-.7px; white-space:nowrap; display:inline-flex; align-items:center; gap:10px; text-decoration:none; }
.main-app .d-site-footer-brand img { display:block; flex:none; border-radius:9px; }
.main-app .d-site-footer-brand:focus-visible { outline:2px solid var(--d-accent); outline-offset:5px; border-radius:4px; }
@media(max-width:720px) {
  .main-app .d-site-footer-inner { flex-wrap:wrap; gap:10px; width:calc(100% - 32px); padding:20px 0; font-size:10px; }
}

/* One bookmark action for roles in results and on the Saved page. */
.main-app button.save-toggle { color:#788782; }
.main-app button.save-toggle:hover { background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app button.save-toggle[aria-pressed='true'] { color:var(--d-accent-ink); }
.main-app #table-wrap.d-row-view .job-row-main .save-cell::before { display:none; }

/* Saved roles follow the same restrained hierarchy as Search results. */
.main-app .saved-section-head { align-items:center; padding:17px 24px; }
.main-app .saved-page-hero h1 { max-width:none; white-space:nowrap; }
.main-app .saved-headline-period { color:var(--d-accent); }
.main-app .saved-section-summary { display:flex; flex-direction:column; gap:5px; }
.main-app .saved-section-summary h2 { margin:0; color:var(--d-ink); font-size:20px; font-weight:720; letter-spacing:-.035em; line-height:1.2; }
.main-app .saved-meta { color:#52635d; font-size:12px; font-weight:650; }
.main-app .saved-filters { align-items:center; gap:8px; }
.main-app .saved-filters .download-link { display:inline-flex; align-items:center; min-height:32px; margin:0 0 0 4px; padding:5px 0 5px 12px; border:0; border-left:1px solid #d9e0db; white-space:nowrap; color:var(--d-text-secondary); }
.main-app .saved-filters .download-link[hidden] { display:none; }
.main-app .saved-filters .download-link:focus-visible { outline:2px solid var(--d-accent); outline-offset:3px; }
.main-app .saved-status-select { width:135px; min-width:135px; }
.main-app #saved-complete-filter { width:155px; min-width:155px; }
.main-app .saved-sort-control { gap:8px; margin:0; }
.main-app .saved-sort-control select { width:160px; min-width:0; }

/* One dropdown language for company lists, curated filters, presets, and Saved. */
.main-app .multi-select,
.main-app .multi-select:hover,
.main-app .multi-select:focus-within { border:0; background:transparent; box-shadow:none; }
.main-app #search-form .multi-select>summary:focus-within,
.main-app #search-form textarea:focus,
.main-app #search-form .d-company-scroll:focus-within,
.main-app #search-form select:focus,
.main-app #search-form input[type='text']:focus,
.main-app #search-form input[type='search']:focus,
.main-app #search-form .company-search-input:focus {
  border-color:#9ca9a5;
  outline:none;
  box-shadow:0 0 0 2px rgba(23,32,39,.055);
}
.main-app .multi-select>summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:34px;
  height:34px;
  padding:6px 9px;
  border:1px solid #d9e1df;
  border-radius:6px;
  background:#fff;
  color:#52615f;
  font-size:10.5px;
  font-weight:650;
  letter-spacing:0;
  text-transform:none;
  box-shadow:none;
}
.main-app .multi-select>summary:hover { border-color:#b7c5c1; color:var(--d-ink); }
.main-app .multi-select[open]>summary { border-color:#aeb8b5; box-shadow:0 0 0 3px #1720270a; }
.main-app .multi-select-chevron { color:#87938f; font-size:9px; }
.main-app .multi-select-panel {
  gap:0;
  padding:7px;
  border:1px solid #d4ddda;
  border-radius:7px;
  background:#fff;
  box-shadow:0 16px 34px #1720271c;
}
.main-app .multi-select-actions { gap:5px; margin-bottom:3px; padding-bottom:5px; border-bottom:1px solid #edf0ef; }
.main-app .multi-select-actions .filter-action { padding:4px 5px; color:#70807a; font-size:9px; font-weight:700; }
.main-app .multi-select-search { min-height:32px; margin-bottom:6px; padding:6px 8px; border-color:#dce3e0; border-radius:5px; font-size:10px; }
.main-app .multi-select-options { gap:2px; }
.main-app .multi-select-option {
  min-height:31px;
  padding:6px 7px;
  border:1px solid transparent;
  border-radius:5px;
  color:#4f5e5a;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  font-size:10.5px;
  font-weight:590;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.main-app .multi-select-option span { font:inherit; letter-spacing:inherit; text-transform:inherit; }
.main-app .multi-select-option:hover { border-color:#e2e8e6; background:#f6f8f7; color:var(--d-ink); }
.main-app .multi-select-option.is-selected,
.main-app .tri-state-filter-option[data-state='included'] { border-color:#d2d8d6; background:#f1f3f2; color:var(--d-ink); }
.main-app .tri-state-filter-option[data-state='excluded'] { border-color:#eed8d4; background:#fff5f3; color:#9d4f47; }
.main-app .multi-select-option input { width:13px; height:13px; accent-color:var(--d-ink); }
.main-app .filter-cycle-indicator { display:grid; place-items:center; width:15px; height:15px; border:1px solid #cfd9d6; border-radius:4px; background:#fff; color:var(--d-ink); font-size:10px; font-weight:800; }
.main-app .tri-state-filter-option[data-state='included'] .filter-cycle-indicator { border-color:#c7cfcd; background:#f1f3f2; color:var(--d-ink); }
.main-app .tri-state-filter-option[data-state='excluded'] .filter-cycle-indicator { border-color:#e1bbb5; color:#b5544b; }
.main-app[data-d-mode='companies'] .d-company-sources .multi-select>summary {
  border-color:#d9e1df;
  background:#fff;
  color:#52615f;
}
.main-app[data-d-mode='companies'] .d-company-sources .multi-select>summary:hover { border-color:#b7c5c1; color:var(--d-ink); }
.main-app #saved-table-wrap .job-row-main {
  grid-template-columns:30px minmax(0,1.7fr) minmax(110px,.9fr) minmax(110px,.8fr) minmax(90px,.65fr) minmax(90px,.65fr) 92px;
  grid-template-rows:auto auto;
  gap:4px 14px;
  padding:18px 24px;
  cursor:pointer;
}
.main-app #saved-table-wrap .job-row-main .saved-job-cell,
.main-app #saved-table-wrap .job-row-main .location-cell,
.main-app #saved-table-wrap .job-row-main .salary-cell,
.main-app #saved-table-wrap .job-row-main .posted-cell,
.main-app #saved-table-wrap .job-row-main .complete-cell,
.main-app #saved-table-wrap .job-row-main .link-cell { grid-row:1/3; }
.main-app #saved-table-wrap .job-row-main .saved-job-cell { grid-column:1; }
.main-app #saved-table-wrap .job-row-main .saved-title-cell { grid-column:2; grid-row:1; display:flex; flex-wrap:wrap; gap:5px 8px; align-self:end; padding:0; }
.main-app .job-row-main .role-detail-chevron { display:inline-block; width:6px; height:6px; margin:0 0 2px 9px; border-right:1.5px solid #8c9995; border-bottom:1.5px solid #8c9995; transform:rotate(-45deg); transition:transform .15s ease,border-color .15s ease; vertical-align:middle; }
.main-app .job-row-main:hover .role-detail-chevron { border-color:#52655f; }
.main-app .job-row-main.expanded .role-detail-chevron { transform:rotate(45deg); border-color:var(--d-accent); }
.main-app #saved-table-wrap .job-row-main .company-cell { grid-column:2; grid-row:2; align-self:start; min-height:17px; padding:0; }
.main-app #saved-table-wrap .job-row-main .location-cell,
.main-app #saved-table-wrap .job-row-main .salary-cell,
.main-app #saved-table-wrap .job-row-main .posted-cell { align-self:center; color:#46575d; font-size:11px; font-weight:600; line-height:1.45; }
.main-app #saved-table-wrap .job-row-main .location-cell { grid-column:3; }
.main-app #saved-table-wrap .job-row-main .salary-cell { grid-column:4; }
.main-app #saved-table-wrap .job-row-main .posted-cell { grid-column:5; }
.main-app #saved-table-wrap .job-row-main .location-cell::before,
.main-app #saved-table-wrap .job-row-main .salary-cell::before,
.main-app #saved-table-wrap .job-row-main .posted-cell::before { display:block; margin:0 0 5px; color:#889894; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.08em; text-transform:uppercase; }
.main-app #saved-table-wrap .job-row-main .location-cell::before { content:'Location'; }
.main-app #saved-table-wrap .job-row-main .salary-cell::before { content:'Salary'; }
.main-app #saved-table-wrap .job-row-main .posted-cell::before { content:'Posted'; }
.main-app #saved-table-wrap .job-row-main .complete-cell { grid-column:6; align-self:center; }
.main-app #saved-table-wrap .job-row-main .link-cell { grid-column:7; align-self:center; }
.main-app #saved-table-wrap .saved-note-indicator { display:inline-flex; align-items:center; padding:2px 6px; border-radius:3px; background:#edf5f0; color:#39745d; font-size:9px; font-weight:700; line-height:1.4; }
.main-app #saved-table-wrap .saved-note-indicator[hidden] { display:none; }
.main-app #saved-table-wrap .job-description-row .job-detail-layout { grid-template-columns:minmax(0,1fr) minmax(220px,280px); }
.main-app #saved-table-wrap .saved-role-details h4 { margin:0 0 9px; color:#657670; font:700 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:.07em; text-transform:uppercase; }
.main-app #saved-table-wrap .job-note-panel { display:block; padding:0; border:0; border-radius:0; background:transparent; position:static; }
.main-app #saved-table-wrap .job-note-panel-label { margin:0 0 9px; color:#657670; font:700 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:.07em; text-transform:uppercase; }
.main-app #saved-table-wrap .job-note-input { display:block; min-height:90px; box-sizing:border-box; }
.main-app #saved-table-wrap .job-description-panel { min-height:90px; }
@media(max-width:1050px) {
  .main-app #saved-table-wrap .job-row-main { grid-template-columns:30px minmax(0,1.5fr) minmax(110px,1fr) minmax(95px,.75fr); gap:8px 12px; }
  .main-app #saved-table-wrap .job-row-main .saved-job-cell { grid-column:1; grid-row:1/3; }
  .main-app #saved-table-wrap .job-row-main .saved-title-cell { grid-column:2; grid-row:1; padding:0; }
  .main-app #saved-table-wrap .job-row-main .company-cell { grid-column:2; grid-row:2; }
  .main-app #saved-table-wrap .job-row-main .location-cell { grid-column:3; grid-row:1; }
  .main-app #saved-table-wrap .job-row-main .salary-cell { grid-column:3; grid-row:2; }
  .main-app #saved-table-wrap .job-row-main .posted-cell { grid-column:4; grid-row:1; }
  .main-app #saved-table-wrap .job-row-main .complete-cell { grid-column:4; grid-row:2; }
  .main-app #saved-table-wrap .job-row-main .link-cell { grid-column:4; grid-row:3; justify-self:start; }
}
@media(max-width:640px) {
  .main-app .saved-section-head { padding:16px; }
  .main-app .saved-filters { flex-wrap:nowrap; margin-left:0; width:100%; }
  .main-app #saved-note-filter,.main-app #saved-complete-filter { flex:1 1 0; width:auto; }
  .main-app .saved-sort-control { flex:1 1 0; width:auto; min-width:0; }
  .main-app .saved-sort-control span { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
  .main-app .saved-sort-control select { width:100%; min-width:0; }
  .main-app #saved-table-wrap .job-row-main { grid-template-columns:minmax(0,1fr) auto; gap:8px 12px; padding:16px; }
  .main-app #saved-table-wrap .job-row-main .saved-title-cell { grid-column:1; grid-row:1; }
  .main-app #saved-table-wrap .job-row-main .saved-job-cell { grid-column:2; grid-row:1; justify-self:end; }
  .main-app #saved-table-wrap .job-row-main .company-cell { grid-column:1/-1; grid-row:2; }
  .main-app #saved-table-wrap .job-row-main .location-cell { grid-column:1/-1; grid-row:3; }
  .main-app #saved-table-wrap .job-row-main .salary-cell { grid-column:1; grid-row:4; }
  .main-app #saved-table-wrap .job-row-main .posted-cell { grid-column:2; grid-row:4; justify-self:end; text-align:right; }
  .main-app #saved-table-wrap .job-row-main .location-cell::before { display:inline; margin-right:7px; }
  .main-app #saved-table-wrap .job-row-main .salary-cell::before,
  .main-app #saved-table-wrap .job-row-main .posted-cell::before { display:block; }
  .main-app #saved-table-wrap .job-row-main td.complete-cell:nth-child(7) { grid-column:1; grid-row:5; }
  .main-app #saved-table-wrap .job-row-main .link-cell { grid-column:2; grid-row:5; justify-self:end; }
  .main-app #saved-table-wrap .job-description-row .job-detail-layout { grid-template-columns:1fr; }
}
@media(max-width:520px) {
  .main-app .saved-filters { flex-wrap:wrap; }
  .main-app #saved-note-filter,.main-app #saved-complete-filter { flex:1 1 calc(50% - 4px); }
  .main-app .saved-sort-control { flex:1 1 100%; }
  .main-app .saved-sort-control span { position:static; width:auto; height:auto; overflow:visible; clip-path:none; }
  .main-app .saved-sort-control select { width:180px; }
}

/* Phone layout: let each search surface grow with its controls, and use the
   same readable card rhythm in Roles, Companies, and Saved. */
@media(max-width:700px) {
  .main-app .app-topbar-inner { width:calc(100% - 24px); }
  .main-app .shell { width:calc(100% - 32px); grid-template-columns:minmax(0,1fr); }
  .main-app .hero,.main-app .results { min-width:0; }
  .main-app .hero-grid,.main-app .hero-form-column { max-width:100%; }
  .main-app .results-panel { width:100%; min-width:0; grid-template-columns:minmax(0,1fr); }
  .main-app .results-panel > * { min-width:0; }
  .main-app .results-head-copy { grid-template-columns:minmax(0,1fr); }
  .main-app .app-nav { flex:none; justify-content:flex-end; gap:12px; margin-left:auto; margin-right:0; }
  .main-app .d-index-status { display:none; }
  .main-app:not(.d-has-results) .hero-form-column { min-height:0; }
  .main-app:not(.d-has-results) .hero,
  .main-app:not(.d-has-results)[data-d-mode='filters'] .hero,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .hero { display:block; min-height:0; padding:32px 0 44px; }
  .main-app .hero-form-column,.main-app .hero-copy,.main-app .d-mode-switch { min-width:0; }
  .main-app .hero-copy p,
  .main-app:not(.d-has-results) .hero-copy p,
  .main-app[data-d-mode='filters'] .hero-copy p,
  .main-app[data-d-mode='companies'] .hero-copy p,
  .main-app:not(.d-has-results)[data-d-mode='filters'] .hero-copy p,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .hero-copy p,
  .main-app.d-has-results .hero-copy p { max-width:320px; min-height:0; margin:18px auto 0; font-size:14px; line-height:1.5; }
  .main-app #semantic-search-panel,
  .main-app[data-d-mode='filters'] #search-form,
  .main-app[data-d-mode='companies'] #search-form { width:100%; height:auto; min-height:0; }
  .main-app[data-d-mode='filters'] #search-form,
  .main-app[data-d-mode='companies'] #search-form { min-height:610px; }
  .main-app #semantic-search-panel { display:flex; flex-direction:column; padding:18px; }
  .main-app #semantic-search-panel .actions { flex:none; align-self:stretch; justify-content:flex-end; }
  .main-app #standard-search-panel { flex:1; min-height:0; }
  .main-app .d-form-header { height:auto; min-height:0; padding:15px 16px; }
  .main-app .search-workflow,
  .main-app[data-d-mode='companies'] .search-workflow { flex:1; grid-template-columns:minmax(0,1fr); gap:16px; padding:16px; }
  .main-app[data-d-mode='filters'] .d-company-card,
  .main-app[data-d-mode='companies'] .d-company-card { padding:0 0 16px !important; border:0 !important; border-bottom:1px solid #e7ece8 !important; }
  .main-app[data-d-mode='filters'] .d-role-card,
  .main-app[data-d-mode='companies'] .d-role-card { padding:0 !important; border:0 !important; }
  .main-app .filter-two-up,
  .main-app .role-criteria-grid,
  .main-app[data-d-mode='companies'] .role-criteria-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .main-app .filter-two-up>* ,
  .main-app .role-criteria-grid>* { min-width:0; }
  .main-app[data-d-mode='companies'] .d-company-card .form-section { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; align-items:stretch; }
  .main-app[data-d-mode='companies'] .d-company-sources { grid-column:1; grid-template-columns:minmax(0,1fr) minmax(0,125px); }
  .main-app[data-d-mode='companies'] .d-company-card .form-two-up { grid-column:1; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .main-app[data-d-mode='companies'] .d-company-card .form-two-up>* { min-width:0; }
  .main-app .d-pair-help { grid-column:1; }
  .main-app .d-pair-help { width:auto; font-size:10px; line-height:1.45; }
  .main-app .d-form-footer { display:flex; min-height:0; flex-direction:column; align-items:stretch; gap:12px; padding:14px 16px; }
  .main-app .d-form-footer .actions { display:flex; justify-content:flex-end; align-self:stretch; margin:0; }
  .main-app .d-form-footer .actions button { flex:none; }
  .main-app .d-form-message:not([hidden]) { position:static; width:100%; box-shadow:none; }

  .main-app .results-toolbar { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:7px 12px; flex-direction:row; }
  .main-app .results-view-control { width:max-content; min-width:0; justify-self:start; flex-direction:row; align-items:center; }
  .main-app .results-group-toggle { width:max-content; min-width:0; }
  .main-app .d-sort-controls { grid-column:1/-1; grid-row:2; justify-content:flex-start; flex-wrap:wrap; margin:0; }
  .main-app .results-toolbar .download-link { grid-column:2; grid-row:1; width:auto; margin:0; padding:5px 0; border:0; text-align:right; white-space:nowrap; }
  .main-app #table-wrap.d-row-view .job-row-main { grid-template-columns:minmax(0,1fr) auto; padding:16px; }
  .main-app #table-wrap.d-row-view .job-row-main .company-cell { grid-column:1/-1; grid-row:2; }
  .main-app #table-wrap.d-row-view .job-row-main .location-cell { grid-column:1/-1; grid-row:3; }
  .main-app #table-wrap.d-row-view .job-row-main .posted-cell { grid-column:1/-1; grid-row:4; }
  .main-app #table-wrap.d-row-view .job-row-main .salary-cell { grid-column:1; grid-row:5; }
  .main-app #table-wrap.d-row-view .job-row-main .link-cell { grid-column:2; grid-row:5; justify-self:end; align-self:center; padding:0 !important; }

  .main-app #table-wrap.d-company-view .company-toggle { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:10px; padding:14px; }
  .main-app #table-wrap.d-company-view .company-group-identity { min-width:0; }
  .main-app #table-wrap.d-company-view .company-toggle-meta { min-width:max-content; flex:none; margin:0; }
  .main-app #table-wrap.d-company-view .company-count { width:auto; white-space:nowrap; overflow-wrap:normal; word-break:normal; }
  .main-app #table-wrap.d-company-view .job-row-main { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:none; align-items:start; gap:8px 10px; min-height:0; margin:0 0 8px 12px; padding:14px; }
  .main-app #table-wrap.d-company-view .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
  .main-app #table-wrap.d-company-view .job-row-main .save-cell { grid-column:2; grid-row:1; }
  .main-app #table-wrap.d-company-view .job-row-main .location-cell { grid-column:1/-1; grid-row:2; }
  .main-app #table-wrap.d-company-view .job-row-main .posted-cell { grid-column:1/-1; grid-row:3; }
  .main-app #table-wrap.d-company-view .job-row-main .salary-cell { grid-column:1; grid-row:4; }
  .main-app #table-wrap.d-company-view .job-row-main .link-cell { grid-column:2; grid-row:4; justify-self:end; align-self:center; }
  .main-app #table-wrap.d-company-view .job-row-main .location-cell::before,
  .main-app #table-wrap.d-company-view .job-row-main .posted-cell::before,
  .main-app #table-wrap.d-company-view .job-row-main .salary-cell::before { display:inline; margin-right:7px; color:#889894; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.06em; text-transform:uppercase; }
  .main-app #table-wrap.d-company-view .job-row-main .location-cell::before { content:'Location ·'; }
  .main-app #table-wrap.d-company-view .job-row-main .posted-cell::before { content:'Posted ·'; }
  .main-app #table-wrap.d-company-view .job-row-main .salary-cell::before { content:'Salary ·'; }
  .main-app #table-wrap.d-company-view .job-description-row { margin:-8px 0 8px 12px; }

  .main-app #saved-table-wrap .job-row-main { grid-template-columns:minmax(0,1fr) auto; grid-template-rows:none; gap:8px 10px; padding:16px; }
  .main-app #saved-table-wrap .job-row-main .saved-title-cell { grid-column:1; grid-row:1; }
  .main-app #saved-table-wrap .job-row-main .saved-job-cell { grid-column:2; grid-row:1; justify-self:end; }
  .main-app #saved-table-wrap .job-row-main .company-cell { grid-column:1/-1; grid-row:2; }
  .main-app #saved-table-wrap .job-row-main .location-cell { grid-column:1/-1; grid-row:3; }
  .main-app #saved-table-wrap .job-row-main .posted-cell { grid-column:1; grid-row:4; justify-self:stretch; text-align:left; }
  .main-app #saved-table-wrap .job-row-main .salary-cell { grid-column:1; grid-row:5; overflow-wrap:anywhere; }
  .main-app #saved-table-wrap .job-row-main .location-cell::before,
  .main-app #saved-table-wrap .job-row-main .posted-cell::before,
  .main-app #saved-table-wrap .job-row-main .salary-cell::before { display:inline; margin:0 7px 0 0; }
  .main-app #saved-table-wrap .job-row-main td.complete-cell:nth-child(7) { grid-column:2; grid-row:4; justify-self:end; }
  .main-app #saved-table-wrap .job-row-main .link-cell { grid-column:2; grid-row:5; justify-self:end; align-self:center; white-space:nowrap; }
  .main-app #saved-table-wrap .job-description-row .job-detail-layout { grid-template-columns:minmax(0,1fr); }

  .main-app #table-wrap.d-row-view .job-row-main .link-cell a,
  .main-app #table-wrap.d-company-view .job-row-main .link-cell a,
  .main-app #saved-table-wrap .job-row-main .link-cell a { display:inline-flex; align-items:center; min-height:24px; padding:0 !important; border:0; border-radius:0; background:transparent; color:var(--d-accent-ink); font-size:11px; font-weight:650; line-height:1.35; text-decoration:none; text-align:right; white-space:nowrap; }
}
@media(max-width:400px) {
  .main-app[data-d-mode='filters'] #search-form,
  .main-app[data-d-mode='companies'] #search-form { min-height:825px; }
  .main-app #table-wrap.d-company-view .company-toggle { gap:7px; }
  .main-app #table-wrap.d-company-view .company-group-identity { grid-column:1/-1; grid-row:1; }
  .main-app #table-wrap.d-company-view .company-toggle-meta { grid-column:1/-1; grid-row:2; justify-self:end; }
  .main-app .d-mode-switch { gap:6px; }
  .main-app .d-mode-switch button { min-width:0; padding-right:7px; padding-left:7px; font-size:11px; }
  .main-app .d-form-header { flex-wrap:wrap; }
  .main-app .filter-two-up,.main-app .role-criteria-grid,
  .main-app[data-d-mode='companies'] .role-criteria-grid { grid-template-columns:minmax(0,1fr); }
  .main-app[data-d-mode='companies'] .d-company-sources { grid-template-columns:minmax(0,1fr); }
  .main-app[data-d-mode='companies'] .d-company-card .form-two-up { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.main-app .preset-multi-select .multi-select-panel { max-width:calc(100vw - 48px); }
  .main-app .results-toolbar { grid-template-columns:minmax(0,1fr) auto; }
}

/* Typography system
   - Inter: all interface, content, controls, and data.
   - Georgia italic: the hero's editorial second line only.
   - UI monospace: short uppercase eyebrows and data/field labels only.
   - Accent color: editorial emphasis and interactive affordances, never ordinary copy. */
body.main-app {
  --d-type-sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --d-type-serif:Georgia,"Times New Roman",serif;
  --d-type-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;
  --d-text-primary:#172027;
  --d-text-secondary:#52615f;
  --d-text-muted:#73817d;
  --d-text-quiet:#8a9893;
  --d-type-body:12px;
  --d-type-control:11px;
  --d-type-meta:11px;
  --d-type-label:9px;
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
}

/* Page hierarchy */
.main-app .app-brand,
.main-app .hero-copy h1,
.main-app .results-head h2,
.main-app .saved-page-hero h1,
.main-app .saved-section-summary h2,
.main-app .d-form-title,
.main-app .d-empty-saved h4 {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
}
.main-app .hero-copy h1,
.main-app .results-head h2,
.main-app .saved-page-hero h1 {
  font-size:clamp(28px,7vw,42px);
  font-weight:760;
  line-height:1.08;
  letter-spacing:-.065em;
}
.main-app .hero-copy h1 {
  font-size:clamp(42px,4.3vw,56px);
  font-weight:720;
  line-height:1.07;
  letter-spacing:-.066em;
}
.main-app .hero-copy h1 .d-hero-tagline {
  color:var(--d-accent);
  font-family:var(--d-type-serif);
  font-style:italic;
  font-weight:400;
}
.main-app .hero-copy p,
.main-app .saved-page-hero p {
  color:var(--d-text-muted);
  font-family:var(--d-type-sans);
  font-size:13px;
  font-weight:400;
  line-height:1.6;
}
.main-app .results-head .meta {
  margin-top:9px;
  color:#64736e;
  font-family:var(--d-type-sans);
  font-size:18px;
  font-weight:500;
  line-height:1.45;
}
.main-app .saved-section-summary h2 { font-size:20px; font-weight:720; line-height:1.2; letter-spacing:-.035em; }
.main-app .saved-meta { color:var(--d-text-secondary); font-size:12px; font-weight:600; }

/* Uppercase micro-labels identify sections or fields; they do not carry body copy. */
.main-app .d-index-status,
.main-app .semantic-query-card label,
.main-app .d-examples>span,
.main-app .d-results-eyebrow,
.main-app .d-saved-eyebrow,
.main-app .d-form-kicker,
.main-app .d-step,
.main-app .d-quick-titles>span,
.main-app .d-active-label,
.main-app .results-view-label,
.main-app .d-sort,
.main-app .d-applied-criteria>span:first-child,
.main-app #table-wrap.d-row-view .d-column-labels,
.main-app #saved-table-wrap .job-row-main .location-cell::before,
.main-app #saved-table-wrap .job-row-main .salary-cell::before,
.main-app #saved-table-wrap .job-row-main .posted-cell::before,
.main-app #saved-table-wrap .saved-role-details h4,
.main-app #saved-table-wrap .job-note-panel-label {
  font-family:var(--d-type-mono);
  font-size:var(--d-type-label);
  font-weight:700;
  line-height:1.35;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.main-app .semantic-query-card label,
.main-app .d-results-eyebrow,
.main-app .d-saved-eyebrow { font-size:10px; font-weight:800; letter-spacing:.14em; }
.main-app .d-form-kicker,
.main-app .d-step { color:var(--d-accent-ink); font-weight:800; }
.main-app .d-examples>span,
.main-app .d-active-label,
.main-app .results-view-label,
.main-app .d-sort,
.main-app .d-applied-criteria>span:first-child,
.main-app #table-wrap.d-row-view .d-column-labels,
.main-app #saved-table-wrap .job-row-main .location-cell::before,
.main-app #saved-table-wrap .job-row-main .salary-cell::before,
.main-app #saved-table-wrap .job-row-main .posted-cell::before { color:var(--d-text-quiet); }

/* Navigation, form labels, controls, and helper copy */
.main-app .app-nav-link { color:#68747a; font-size:11px; font-weight:650; }
.main-app .app-nav-link.is-active { color:var(--d-text-primary); }
.main-app .d-mode-switch button,
.main-app .d-reset-button,
.main-app .multi-select>summary,
.main-app .multi-select-option,
.main-app .filter-action,
.main-app .d-quick-titles button,
.main-app .actions button[type='submit'],
.main-app .saved-filter-option,
.main-app .saved-sort-control select,
.main-app .saved-status-select,
.main-app .results-view-option,
.main-app .download-link {
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:650;
  letter-spacing:0;
  text-transform:none;
}
.main-app .actions button[type='submit'] { font-size:12px; font-weight:700; }
.main-app .role-criteria-grid label,
.main-app .form-two-up label,
.main-app .filter-label {
  color:#445355;
  font-family:var(--d-type-sans);
  font-size:10.5px;
  font-weight:650;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.main-app .workflow-card-copy,
.main-app .d-form-description,
.main-app .d-field-help,
.main-app .d-pair-help,
.main-app .d-input-hint,
.main-app .catalog-meta {
  color:var(--d-text-muted);
  font-family:var(--d-type-sans);
  font-weight:400;
}
.main-app #search-form textarea,
.main-app #search-form select,
.main-app #search-form input[type='text'],
.main-app #search-form input[type='search'],
.main-app #search-form .company-search-input,
.main-app #search-form .multi-select-search {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-weight:400;
}
.main-app #search-form textarea::placeholder,
.main-app #search-form input::placeholder,
.main-app #search-form .company-search-input::placeholder,
.main-app #search-form .multi-select-search::placeholder {
  color:var(--d-text-quiet);
  opacity:1;
  font-family:var(--d-type-sans);
  font-weight:400;
}

/* Presets use the same typography and sentence case as the search form. */
body.main-app .preset-multi-select .multi-select-panel {
  padding:12px;
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:400;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-toggle label,
body.main-app .preset-toggle-name,
body.main-app .preset-edit,
body.main-app .preset-save-current,
body.main-app .preset-editor-actions button {
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:650;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-edit { color:var(--d-text-secondary); }
body.main-app .preset-editor,
body.main-app .preset-editor-company>div,
body.main-app .preset-quick-save { gap:10px; }
body.main-app .preset-editor-field,
body.main-app .preset-quick-save label {
  margin:2px 0 -4px;
  color:#445355;
  font-family:var(--d-type-sans);
  font-size:10.5px;
  font-weight:650;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-quick-save h3,
body.main-app .preset-editor-company legend {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:12px;
  font-weight:650;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-quick-save h3 { font-size:14px; }
body.main-app .preset-editor-company { padding:10px; border-color:var(--d-line); border-radius:6px; }
body.main-app .preset-editor-help,
body.main-app .preset-quick-save p {
  font-family:var(--d-type-sans);
  font-size:var(--d-type-meta);
  font-weight:400;
  line-height:1.5;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-editor-help,
body.main-app .preset-quick-save p { color:var(--d-text-muted); }
body.main-app .preset-editor input,
body.main-app .preset-editor textarea,
body.main-app .preset-editor select,
body.main-app .preset-quick-save input {
  min-height:36px;
  padding:8px;
  border-color:#d9e1df;
  border-radius:6px;
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:400;
  line-height:1.45;
  letter-spacing:0;
  text-transform:none;
}
body.main-app .preset-editor-actions { gap:8px; padding-top:6px; }
body.main-app .preset-editor-actions button { min-height:34px; padding:8px 12px; border-radius:6px; box-shadow:none; }
body.main-app .preset-multi-select.is-editing .multi-select-panel {
  max-height:min(440px, var(--preset-editor-available-height, 60dvh));
  overflow-y:auto;
  overscroll-behavior-y:contain;
}

/* Searchable location picker: canonical suggestions plus free text. */
.main-app .d-location-picker { position:relative; width:100%; text-transform:none; }
.main-app .d-location-control {
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:4px;
  height:42px;
  min-height:42px;
  padding:4px 10px 4px 5px;
  border:1px solid #d9e1df;
  border-radius:6px;
  background:#fff;
  cursor:text;
  overflow:hidden;
}
.main-app .d-location-picker.is-open .d-location-control,
.main-app .d-location-control:focus-within { border-color:#9ca9a5; box-shadow:0 0 0 2px rgba(23,32,39,.055); }
.main-app .d-location-chips {
  display:flex;
  flex:0 1 auto;
  align-items:center;
  gap:4px;
  max-width:100%;
  min-width:0;
  overflow-x:auto;
  scrollbar-width:none;
}
.main-app .d-location-chips::-webkit-scrollbar { display:none; }
.main-app .d-location-chips:empty { display:none; }
.main-app .d-location-chip {
  display:inline-flex;
  flex:0 1 auto;
  align-items:center;
  gap:3px;
  max-width:100%;
  min-width:0;
  padding:4px 5px 4px 7px;
  border:1px solid #dce4e1;
  border-radius:5px;
  background:#f3f6f5;
  color:#33423f;
  font:600 10px/1.2 var(--d-type-sans);
  white-space:nowrap;
}
.main-app .d-location-chip-label {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.main-app .d-location-chip button {
  display:grid;
  flex:0 0 auto;
  place-items:center;
  width:15px;
  height:15px;
  padding:0;
  border:0;
  background:transparent;
  color:#7d8985;
  font:700 13px/1 var(--d-type-sans);
  box-shadow:none;
}
.main-app .d-location-chip button:hover { color:var(--d-ink); background:transparent; transform:none; box-shadow:none; }


.main-app .d-location-more {
  flex:0 0 auto;
  min-width:25px;
  height:24px;
  padding:0 6px;
  border:1px solid #dce4e1;
  border-radius:5px;
  background:#fff;
  color:#697772;
  font:650 9px/1 var(--d-type-sans);
  box-shadow:none;
}
.main-app .d-location-more:hover { border-color:#bdc9c5; background:#f6f8f7; color:var(--d-ink); transform:none; box-shadow:none; }
.main-app #search-form .d-location-input {
  flex:1 1 110px;
  width:auto;
  min-width:0;
  min-height:30px;
  padding:4px;
  border:0;
  background:transparent;
  box-shadow:none;
  font-size:11px;
}
.main-app #search-form .d-location-chips:not(:empty) + .d-location-input {
  flex:0 0 1px;
  min-width:1px;
  padding:0;
}
.main-app #search-form .d-location-picker.is-open .d-location-chips:not(:empty) + .d-location-input {
  flex:0 0 8px;
  min-width:8px;
  padding:0 0 0 3px;
}
.main-app #search-form .d-location-picker.has-query .d-location-chips:not(:empty) + .d-location-input {
  flex:1 1 60px;
  min-width:0;
  padding:4px;
}
.main-app #search-form .d-location-input,
.main-app #search-form .d-location-input:focus,
.main-app #search-form .d-location-input:focus-visible {
  appearance:none;
  -webkit-appearance:none;
  border:0 !important;
  border-radius:0;
  outline:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.main-app #search-form .d-location-input::-webkit-search-cancel-button { -webkit-appearance:none; appearance:none; display:none; }
.main-app #search-form .d-location-picker.has-query .d-location-input { min-width:0; }
.main-app .d-location-actions { display:flex; align-items:center; justify-content:flex-end; gap:2px; flex:0 0 auto; }
.main-app .d-location-clear { display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; min-height:24px; margin:0; padding:5px; border:0; border-radius:3px; background:transparent; color:#6f7e78; box-shadow:none; cursor:pointer; }
.main-app .d-location-clear[hidden] { display:none; }
.main-app .d-location-clear svg { display:block; width:14px; height:14px; }
.main-app .d-location-clear:hover { background:#f0f4f1; color:var(--d-ink); transform:none; box-shadow:none; }
.main-app .d-location-clear:focus-visible { outline:2px solid var(--d-accent); outline-offset:1px; }
.main-app .d-location-chevron { display:flex; align-items:center; justify-content:center; flex:0 0 14px; width:14px; height:14px; color:#87938f; pointer-events:none; }
.main-app .d-location-chevron svg { display:block; width:14px; height:14px; }
.main-app #search-form #date-posted,
.main-app #saved-sort-select,
.main-app #saved-note-filter,
.main-app #saved-complete-filter { appearance:none; -webkit-appearance:none; padding-right:34px; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%2387938f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:right 10px center; background-size:14px 14px; }
.main-app .d-location-suggestions {
  position:absolute;
  z-index:70;
  top:calc(100% + 5px);
  left:0;
  width:280px;
  max-width:min(280px, calc(100vw - 32px));
  padding:6px;
  border:1px solid #d4ddda;
  border-radius:7px;
  background:#fff;
  box-shadow:0 16px 35px #1720271d;
}
.main-app .d-location-options { max-height:192px; overflow-y:auto; overscroll-behavior:contain; scroll-snap-type:y proximity; }
.main-app .d-location-option {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  height:32px;
  min-height:32px;
  margin:0;
  scroll-snap-align:start;
  padding:7px 8px;
  border:1px solid transparent;
  border-radius:5px;
  background:#fff;
  color:#33423f;
  text-align:left;
  box-shadow:none;
}
.main-app .d-location-option:hover,
.main-app .d-location-option:focus { border-color:#e2e8e6; background:#f6f8f7; color:var(--d-ink); transform:none; box-shadow:none; }
.main-app .d-location-option span { min-width:0; overflow:hidden; text-overflow:ellipsis; font:600 10.5px/1.3 var(--d-type-sans); white-space:nowrap; }
.main-app .d-location-option small { flex:0 0 auto; color:#87938f; font:500 9px/1.3 var(--d-type-sans); }
.main-app .d-location-option-custom { color:var(--d-accent-ink); }
.main-app .d-location-option-selected small { color:#a4564e; }
.main-app .d-location-section-label {
  padding:7px 8px 4px;
  color:#89958f;
  font:700 8.5px/1 var(--d-type-mono);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.main-app .d-location-empty { padding:9px 8px; color:#7b8985; font:500 10px/1.4 var(--d-type-sans); }
.main-app .d-location-help { margin-top:1px; }
.main-app[data-d-mode='companies'] .d-company-sources .company-search-input {
  color:var(--d-text-primary);
  font-size:10.5px;
}

/* Applied criteria use one pill hierarchy: quiet label, primary value, accent action. */
.main-app .d-applied-criteria>button {
  color:var(--d-text-muted);
  font-family:var(--d-type-sans);
  font-size:10px;
  font-weight:600;
  line-height:1.35;
}
.main-app .d-applied-criteria>button strong {
  color:var(--d-text-primary);
  font-size:var(--d-type-control);
  font-weight:650;
  line-height:1.35;
}
.main-app .d-applied-criteria>button .d-criteria-arrow { color:var(--d-accent-ink); font-weight:700; }
.main-app .d-filter-chip,
.main-app .d-result-facts span,
.main-app #saved-table-wrap .saved-note-indicator {
  color:var(--d-text-secondary);
  font-family:var(--d-type-sans);
  font-size:10px;
  font-weight:650;
  line-height:1.35;
}

/* Results and Saved share the same row hierarchy. */
.main-app #table-wrap .results-table,
.main-app #saved-table-wrap .results-table,
.main-app #table-wrap .results-table td,
.main-app #saved-table-wrap .results-table td {
  color:var(--d-text-muted);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-meta);
  font-weight:600;
  line-height:1.45;
}
.main-app #table-wrap .results-table .job-title,
.main-app #saved-table-wrap .results-table .job-title {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:-.01em;
}
.main-app #table-wrap .results-table .company-name,
.main-app #saved-table-wrap .results-table .company-name {
  color:var(--d-text-secondary);
  font-family:var(--d-type-sans);
  font-size:13px;
  font-weight:500;
  line-height:1.4;
}
.main-app #table-wrap .job-description-panel,
.main-app #saved-table-wrap .job-description-panel {
  color:var(--d-text-secondary);
  font-family:var(--d-type-sans);
  font-size:13px;
  font-weight:400;
  line-height:1.6;
}
.main-app #table-wrap .job-row-main .location-cell,
.main-app #table-wrap .job-row-main .posted-cell,
.main-app #table-wrap .job-row-main .salary-cell,
.main-app #saved-table-wrap .job-row-main .location-cell,
.main-app #saved-table-wrap .job-row-main .posted-cell,
.main-app #saved-table-wrap .job-row-main .salary-cell,
.main-app #saved-table-wrap .job-row-main .complete-cell {
  color:#687780;
  font-family:var(--d-type-sans);
  font-size:13px;
  font-weight:400;
  line-height:1.45;
}
.main-app #table-wrap.d-row-view .job-row-main .location-cell,
.main-app #table-wrap.d-row-view .job-row-main .posted-cell,
.main-app #table-wrap.d-row-view .job-row-main .salary-cell,
.main-app #table-wrap.d-company-view .job-row-main .location-cell,
.main-app #table-wrap.d-company-view .job-row-main .posted-cell,
.main-app #table-wrap.d-company-view .job-row-main .salary-cell {
  color:#687780;
  font-size:13px;
  font-weight:400;
}
.main-app #table-wrap .results-table a,
.main-app #saved-table-wrap .results-table a,
.main-app #table-wrap .job-row-main .link-cell a,
.main-app #saved-table-wrap .job-row-main .link-cell a {
  color:var(--d-accent-ink);
  font-family:var(--d-type-sans);
  font-size:13px;
  font-weight:600;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
/* Results controls share one type scale and sentence case; state supplies emphasis. */
.main-app #results-toolbar :is(.results-view-option,.d-sort,.d-sort select,.download-link) {
  color:var(--d-text-secondary);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:600;
  line-height:1.4;
  letter-spacing:0;
  text-transform:none;
}
.main-app #results-toolbar .results-view-option,
.main-app #results-toolbar .d-sort select { min-height:32px; }
.main-app #results-toolbar .download-link { display:inline-flex; align-items:center; min-height:32px; }
.main-app #results-toolbar .results-view-option[aria-pressed='true'],
.main-app #results-toolbar .d-sort select { color:var(--d-text-primary); }
.main-app #results-toolbar :is(.results-view-option,.download-link):hover { color:var(--d-text-primary); }
.main-app #results-toolbar :is(.results-view-option,.download-link):focus-visible { outline:2px solid var(--d-accent); outline-offset:3px; }
.main-app .saved-sort-control { color:var(--d-text-quiet); font-family:var(--d-type-mono); font-size:var(--d-type-label); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.main-app .saved-filter-option { color:var(--d-text-secondary); }

@media(max-width:700px) {
  .main-app .hero-copy p,
  .main-app .saved-page-hero p { font-size:13px; }
  .main-app #table-wrap .results-table .job-title,
  .main-app #saved-table-wrap .results-table .job-title { font-size:14px; }
}

/* Desktop role results use the denser table rhythm from the original app.
   Company remains a distinct, scannable column; mobile keeps the card layout. */
@media(min-width:901px) {
  .main-app.d-dense-role-rows #table-wrap.d-row-view .d-column-labels,
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main {
    grid-template-columns:minmax(225px,1.45fr) minmax(150px,.82fr) minmax(145px,.9fr) minmax(90px,.56fr) minmax(115px,.68fr) 112px;
    gap:14px;
  }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .d-column-labels {
    padding:8px 14px 10px;
    border-bottom:1px solid var(--d-line);
  }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main {
    grid-template-rows:auto;
    min-height:58px;
    margin:0;
    padding:10px 14px;
    border:0;
    border-right:1px solid var(--d-line);
    border-bottom:1px solid var(--d-line);
    border-left:1px solid var(--d-line);
    border-radius:0;
    background:#fff;
    box-shadow:none;
  }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main:hover {
    border-color:var(--d-line);
    background:#f6f8f7;
    box-shadow:none;
  }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main.expanded {
    border:0;
    border-right:1px solid var(--d-line);
    border-bottom:1px solid var(--d-line);
    border-left:1px solid var(--d-line);
    border-radius:0;
    box-shadow:inset 3px 0 0 var(--d-accent);
  }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .company-cell { grid-column:2; grid-row:1; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .location-cell { grid-column:3; grid-row:1; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .posted-cell { grid-column:4; grid-row:1; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .salary-cell { grid-column:5; grid-row:1; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .save-cell { grid-column:6; grid-row:1; justify-self:start; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .link-cell { grid-column:6; grid-row:1; justify-self:end; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .job-title { font-size:13px; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .company-identity { gap:8px; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .company-logo-wrap { width:28px; height:28px; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .company-name { font-size:12px; font-weight:650; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .location-cell,
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .posted-cell,
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-row-main .salary-cell { font-size:12px; line-height:1.35; }
  .main-app.d-dense-role-rows #table-wrap.d-row-view .job-description-row {
    margin:0;
    padding:15px 18px;
    border:0;
    border-bottom:1px solid var(--d-line);
    border-radius:0;
    box-shadow:inset 3px 0 0 var(--d-accent);
  }
}

/* Opening screen: every search method shares one stable frame. Mode changes
   replace only the copy and controls inside that frame. Size against the
   viewport without clipping controls when zoom or a small screen needs more room. */
.main-app:not(.d-has-results):has(#search-section:not([hidden])) .d-site-footer { display:none; }
.main-app:not(.d-has-results) .hero,
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero,
.main-app:not(.d-has-results)[data-d-mode='companies'] .hero {
  --d-opening-module-height:clamp(286px,40svh,303px);
  display:flex;
  align-items:center;
  min-height:calc(100svh - 69px);
  padding:16px 0;
}
.main-app:not(.d-has-results) .hero-form-column { min-height:0; }
.main-app:not(.d-has-results) .hero-copy h1 { font-size:clamp(34px,calc(10svh - 29px),56px); }
.main-app:not(.d-has-results) .hero-copy p,
.main-app:not(.d-has-results)[data-d-mode='filters'] .hero-copy p,
.main-app:not(.d-has-results)[data-d-mode='companies'] .hero-copy p {
  min-height:3em;
  max-width:700px;
  margin:8px auto 0;
  font-size:clamp(12px,calc(.5svh + 9px),14px);
  line-height:1.5;
}
.main-app:not(.d-has-results) .d-mode-switch,
.main-app:not(.d-has-results)[data-d-mode='filters'] .d-mode-switch,
.main-app:not(.d-has-results)[data-d-mode='companies'] .d-mode-switch { margin:10px auto; }
.main-app:not(.d-has-results) #semantic-search-panel,
.main-app:not(.d-has-results)[data-d-mode='filters'] #search-form,
.main-app:not(.d-has-results)[data-d-mode='companies'] #search-form { height:var(--d-opening-module-height); }
.main-app:not(.d-has-results) .d-form-header { min-height:48px; padding:7px 21px; }
.main-app:not(.d-has-results) .d-form-footer { min-height:54px; padding:5px 21px; }
.main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-search-panel {
  display:flex;
  flex-direction:column;
  padding:17px 20px 14px;
}
.main-app:not(.d-has-results)[data-d-mode='ai'] .semantic-query-card {
  display:flex;
  flex:1;
  flex-direction:column;
  min-height:0;
}
.main-app:not(.d-has-results)[data-d-mode='ai'] .semantic-query-input-wrap {
  display:flex;
  flex:1;
  flex-direction:column;
}
.main-app:not(.d-has-results)[data-d-mode='ai'] .semantic-query-input-wrap,
.main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-query { min-height:76px; }
.main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-query {
  flex:1;
  font-size:17px;
  line-height:1.45;
}
.main-app:not(.d-has-results)[data-d-mode='ai'] .d-input-hint { margin-top:4px; }
.main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-search-panel .actions {
  margin-top:12px;
  padding-top:12px;
}
.main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples { gap:6px; margin-top:10px; }
.main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples button { padding:5px 9px; }
/* Reserve the AI examples' space so switching modes keeps the heading fixed. */
@media(min-width:701px) {
  .main-app:not(.d-has-results) .search-workflow,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .search-workflow { padding:7px 21px; }
  .main-app:not(.d-has-results)[data-d-mode='companies'] #companies,
  .main-app:not(.d-has-results)[data-d-mode='companies'] #company-homepages { height:64px; min-height:64px; }
  .main-app:not(.d-has-results)[data-d-mode='filters'] .hero-form-column::after,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .hero-form-column::after { content:''; height:88px; }
}
@media(min-width:701px) and (max-height:700px) {
  .main-app:not(.d-has-results) .hero,
  .main-app:not(.d-has-results)[data-d-mode='filters'] .hero,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .hero { padding:10px 0; }
  .main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples { gap:4px; margin-top:8px; }
  .main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples button { padding:4px 9px; }
  .main-app:not(.d-has-results)[data-d-mode='filters'] .hero-form-column::after,
  .main-app:not(.d-has-results)[data-d-mode='companies'] .hero-form-column::after { height:76px; }
}
@media(min-width:701px) and (max-width:900px) {
  .main-app:not(.d-has-results) #semantic-search-panel,
  .main-app:not(.d-has-results)[data-d-mode='filters'] #search-form,
  .main-app:not(.d-has-results)[data-d-mode='companies'] #search-form { height:303px; }
}

@media(max-width:700px) {
  .main-app .hero,
  .main-app[data-d-mode='filters'] .hero,
  .main-app[data-d-mode='companies'] .hero { display:block; min-height:0; padding:14px 0; }
  .main-app .hero-copy h1 { font-size:clamp(28px,7vw,40px); }
  .main-app .hero-copy p,
  .main-app[data-d-mode='filters'] .hero-copy p,
  .main-app[data-d-mode='companies'] .hero-copy p {
    min-height:4.5em;
    max-width:430px;
    font-size:clamp(12px,3.1vw,13px);
  }
  .main-app:not(.d-has-results) #semantic-search-panel,
  .main-app[data-d-mode='filters'] #search-form,
  .main-app[data-d-mode='companies'] #search-form { height:auto; min-height:0; }
  .main-app .search-workflow,
  .main-app[data-d-mode='companies'] .search-workflow { flex:none; gap:12px; padding:12px 16px; }
  .main-app .d-form-header { flex-wrap:nowrap; gap:8px; padding:10px 16px; }
  .main-app .d-form-title { font-size:15px; }
  .main-app .filter-two-up,
  .main-app .role-criteria-grid,
  .main-app[data-d-mode='companies'] .role-criteria-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .main-app[data-d-mode='companies'] .d-company-sources { grid-template-columns:minmax(0,1fr) 110px; }
  .main-app .d-form-footer { flex-direction:row; padding:10px 16px; gap:8px; }
  .main-app .d-footer-copy { flex:1; min-width:0; }
  .main-app .d-form-footer .actions { flex:none; align-self:center; width:auto; margin-left:auto; }
  .main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples { justify-content:center; }
  .main-app:not(.d-has-results)[data-d-mode='ai'] .d-examples>span { display:none; }
  .main-app:not(.d-has-results)[data-d-mode='ai'] .semantic-query-input-wrap,
  .main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-query { min-height:88px; }
}

/* In company-grouped results, the company is the row heading and therefore
   uses the same hierarchy as a role title in role view. */
.main-app #table-wrap.d-company-view .company-toggle .company-name {
  justify-self:start;
  max-width:100%;
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:14px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:-.01em;
}

/* Curated Index and My Companies: type follows the meaning of the text.
   Labels identify fields, quiet text suggests input, and dark text records a choice. */
.main-app #search-form .filter-label,
.main-app #search-form .role-criteria-grid label,
.main-app #search-form .form-two-up label {
  color:var(--d-text-secondary);
  font:650 10.5px/1.35 var(--d-type-sans);
  letter-spacing:0;
  text-transform:none;
}
.main-app #search-form .multi-select>summary,
.main-app #search-form .role-criteria-grid textarea,
.main-app #search-form .role-criteria-grid select,
.main-app #search-form .form-two-up textarea,
.main-app #search-form .company-search-input,
.main-app #search-form .d-location-input {
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:500;
  line-height:1.4;
  letter-spacing:0;
  text-transform:none;
}
.main-app #search-form .multi-select-summary {
  color:var(--d-text-primary);
  font-weight:500;
}
.main-app #search-form .multi-select-summary.empty {
  color:var(--d-text-secondary);
  font-weight:400;
}
body.main-app #search-form input.company-search-input,
body.main-app #search-form input.d-location-input { font-weight:500; }
.main-app #search-form #date-posted:has(option[value='any']:checked) {
  color:var(--d-text-secondary);
  font-weight:400;
}
.main-app #search-form #date-posted option {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:500;
}
.main-app #search-form .role-criteria-grid textarea::placeholder,
.main-app #search-form .form-two-up textarea::placeholder,
.main-app #search-form input::placeholder {
  color:var(--d-text-quiet);
  font-weight:400;
  opacity:1;
}
.main-app #search-form .multi-select-option,
.main-app #search-form .d-location-option span,
.main-app #search-form .company-search-result-name {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:500;
  line-height:1.35;
  letter-spacing:0;
  text-transform:none;
}
.main-app #search-form .multi-select-option.is-selected { font-weight:600; }
@media(min-width:701px) {
  .main-app[data-d-mode='companies'] .d-pair-help { font-size:9px; }
}

/* All modes use the same measured frame, large enough for the tallest mode.
   Custom helper text remains inside the white workspace. */
.main-app #semantic-search-panel,
.main-app[data-d-mode='filters'] #search-form,
.main-app[data-d-mode='companies'] #search-form,
.main-app:not(.d-has-results) #semantic-search-panel,
.main-app:not(.d-has-results)[data-d-mode='filters'] #search-form,
.main-app:not(.d-has-results)[data-d-mode='companies'] #search-form {
  height:var(--d-search-panel-height,var(--d-opening-module-height,303px));
  min-height:0;
}

/* Preserve the shared frame while using the October 14 control layout. */
.main-app { --d-search-field-height:42px; --d-company-list-height:64px; --d-search-button-width:152px; --d-search-button-height:42px; }
/* Retain three visible company lines within the original 64px boxes. */
.main-app #search-form #companies,
.main-app #search-form #company-homepages {
  height:var(--d-company-list-height);
  min-height:var(--d-company-list-height);
  padding:8px 10px;
  line-height:1.25;
}

/* Let the column divider follow the resized workspace's top and bottom insets. */
@media(min-width:701px) {
  .main-app[data-d-mode='companies'] .d-company-card .form-two-up { margin-top:var(--d-company-row-offset,0px); }
  .main-app[data-d-mode='filters'] .d-company-card,
  .main-app[data-d-mode='companies'] .d-company-card { align-self:stretch; }
}

/* One footer owns the divider and submit action in every search mode. */
.main-app[data-d-mode='ai'] #semantic-search-panel,
.main-app:not(.d-has-results)[data-d-mode='ai'] #semantic-search-panel {
  display:flex;
  flex-direction:column;
  padding:0;
}
.main-app[data-d-mode='ai'] #semantic-search-panel > .semantic-query-card {
  flex:1;
  min-height:0;
  padding:17px 20px 14px;
}
.main-app #search-form .d-form-footer {
  display:flex;
  flex:0 0 auto;
  flex-direction:row;
  flex-wrap:nowrap;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  height:var(--d-search-footer-height,64px);
  min-height:var(--d-search-footer-height,64px);
  padding:10px 21px;
  border-top:1px solid #e9eeeb;
}
.main-app #search-form .d-footer-copy { flex:1; min-width:0; }
body.main-app[data-d-mode] #search-form .d-form-footer .actions {
  display:flex;
  flex:none;
  align-self:center;
  justify-content:flex-end;
  width:var(--d-search-button-width);
  margin:0 0 0 auto;
  padding:0;
  border:0;
}
body.main-app[data-d-mode] #search-form .d-form-footer .actions > button[type='submit'] {
  flex:none;
  box-sizing:border-box;
  width:var(--d-search-button-width);
  min-width:var(--d-search-button-width);
  height:var(--d-search-button-height);
  min-height:var(--d-search-button-height);
  padding:8px 12px;
  font:700 12px/1.4 var(--d-type-sans);
  white-space:nowrap;
}
body.main-app #search-form .d-form-message:not([hidden]) {
  position:static;
  flex:none;
  width:auto;
  margin:0 21px 12px;
  box-shadow:none;
}
.main-app:not(.d-has-results)[data-d-mode] .hero-copy p { min-height:var(--d-search-intro-height,3em); }
.main-app #search-form .is-revealing { animation:none; }
@media(max-width:700px) {
  .main-app #search-form .d-form-footer { padding-right:16px; padding-left:16px; }
  .main-app[data-d-mode='ai'] #semantic-search-panel > .semantic-query-card { padding:16px; }
  body.main-app #search-form .d-form-message:not([hidden]) { margin-right:16px; margin-left:16px; }
}

.main-app .d-public-coverage { font-size:12px; }
.main-app .d-public-coverage summary { cursor:pointer; }
.main-app .d-public-coverage p { margin:8px 0; color:#52635c; line-height:1.5; }
.main-app .d-public-coverage-companies { display:flex; flex-wrap:wrap; gap:6px; }
.main-app .d-public-coverage-company { padding:4px 9px; border:1px solid #dce3e0; border-radius:999px; background:#f4f7f5; color:#43554c; font-size:11px; }
.main-app a.company-navigation { color:inherit; text-decoration:none; }
.main-app a.company-navigation:hover { text-decoration:underline; }
.main-app a.company-navigation:focus-visible { outline:2px solid var(--accent, #267354); outline-offset:3px; }
.main-app .company-toggle button.company-toggle-meta { background:transparent; border:0; font:inherit; color:inherit; padding:0; cursor:pointer; }

.main-app .role-title-ending { white-space:nowrap; }

/* The outer card owns elevation; an inner shadow can appear after snapshot fades. */
.main-app #search-form .search-workflow { box-shadow:none; }

/* Swap modes in place without snapshot fades or reanimating the text. */
.main-app #search-form,
.main-app #search-form .search-kind-panel,
.main-app #search-form .search-mode-panel,
.main-app #search-form .is-revealing { animation:none; }

/* Sort controls stay neutral when selected, across role and company views. */
/* Reserve an inset arrow gutter on every single-choice dropdown. */
.main-app select:not([multiple]):not([size]) {
  box-sizing:border-box;
  appearance:none;
  -webkit-appearance:none;
  padding-right:34px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m4 6 4 4 4-4' fill='none' stroke='%23687780' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 10px center;
  background-size:14px 14px;
}
.main-app :is(.d-sort,.cp-sort) { min-width:0; max-width:100%; }
.main-app :is(.d-sort,.cp-sort) select { width:auto; min-width:0; max-width:100%; flex-shrink:1; }
.main-app .d-sort::after { display:none; }
.main-app :is(.d-sort,.cp-sort) select:focus {
  outline:none;
  box-shadow:none;
  border-color:#e1e6e2;
}
.main-app :is(.d-sort,.cp-sort) select:focus-visible {
  outline:none;
  background-color:#eef1ef;
  text-decoration:underline;
  text-decoration-color:#687780;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}

.main-app #table-wrap.d-company-view .company-toggle-meta { flex-shrink:0; }
.main-app #table-wrap.d-company-view .company-count {
  width:auto;
  white-space:nowrap;
  overflow-wrap:normal;
  word-break:normal;
}

.main-app .d-example-compact { display:none; }
@media(max-width:700px) {
  /* AI input should not inherit the height measured for the larger custom form. */
  body.main-app[data-d-mode='ai'] #semantic-search-panel { height:auto; min-height:0; }
  body.main-app[data-d-mode='ai'] #semantic-search-panel > .semantic-query-card { flex:none; gap:0; padding:14px 16px 12px; }
  body.main-app[data-d-mode='ai'] #semantic-search-panel .semantic-query-input-wrap { flex:none; min-height:0; }
  body.main-app[data-d-mode='ai'] #semantic-search-panel #semantic-query {
    box-sizing:border-box;
    flex:none;
    height:calc(5.8em + 8px);
    min-height:0;
    max-height:calc(5.8em + 8px);
    padding-top:4px;
    padding-bottom:4px;
    font-size:16px;
    line-height:1.45;
    overflow-y:auto;
  }
  body.main-app[data-d-mode='ai'] #search-form .d-form-footer { height:auto; min-height:0; padding:10px 16px; }
  body.main-app:not(.d-has-results)[data-d-mode='ai'] .hero-copy p { min-height:0; margin-top:8px; font-size:13px; }
  body.main-app[data-d-mode='ai'] .d-examples { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
  body.main-app[data-d-mode='ai'] .d-examples>span { display:none; }
  body.main-app[data-d-mode='ai'] .d-examples button { width:100%; min-width:0; padding:8px 6px; font-size:11px; line-height:1.35; }
  body.main-app .d-examples .d-example-full { display:none; }
  body.main-app .d-examples .d-example-compact { display:inline; }
}
@media(max-width:700px) and (max-height:650px) {
  body.main-app:not(.d-has-results):is([data-d-mode='ai'],[data-d-mode='filters'],[data-d-mode='companies']) .hero { padding:6px 0; }
  body.main-app:not(.d-has-results):is([data-d-mode='ai'],[data-d-mode='filters'],[data-d-mode='companies']) .hero-copy h1 { font-size:26px; line-height:1.1; }
  body.main-app:not(.d-has-results)[data-d-mode='ai'] .hero-copy p { margin-top:5px; font-size:12px; line-height:1.4; }
  body.main-app:not(.d-has-results):is([data-d-mode='ai'],[data-d-mode='filters'],[data-d-mode='companies']) .d-mode-switch { margin:7px auto; }
  body.main-app[data-d-mode='ai'] .d-examples { margin-top:4px; }
  body.main-app[data-d-mode='ai'] .d-input-hint { display:none; }
}

/* Precision and Custom keep the same compact mobile workspace. */
@media(max-width:700px) {
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) {
    --d-search-field-height:36px;
    --d-company-list-height:48px;
    --d-search-button-height:38px;
    --d-search-button-width:128px;
  }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form { position:relative; min-height:0; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-header { position:absolute; top:8px; right:12px; z-index:1; min-height:0; padding:0; border:0; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-header>div:first-child { display:none; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-reset-button { min-height:24px; padding:3px 0; border:0; background:transparent; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-title { font-size:14px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .search-workflow { flex:none; gap:8px; padding:10px 12px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .workflow-card { gap:0; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-company-card { min-height:max(130px,var(--d-mobile-company-section-height,0px)); padding-bottom:8px!important; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .workflow-card-head { margin-bottom:5px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.role-criteria-grid,.filter-two-up) { gap:7px 10px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .filter-field { gap:3px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.filter-label,.role-criteria-grid label,.form-two-up label) { gap:3px; font-size:11px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.role-criteria-grid textarea,.role-criteria-grid select,.d-location-control,.multi-select>summary,.company-search-input) { box-sizing:border-box; height:36px!important; min-height:36px; padding:6px 9px; line-height:1.25; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.role-criteria-grid textarea,.role-criteria-grid select,.d-location-input,.company-search-input) { font-size:12px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(#companies,#company-homepages) { height:48px!important; min-height:48px; padding:5px 8px; font-size:12px; line-height:1.15; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-search-info { width:20px; height:20px; min-height:20px; }
  .main-app[data-d-mode='filters'] #search-form .catalog-meta:empty { display:none; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-step { font-size:10px; line-height:1.35; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.multi-select>summary,.multi-select-summary,.role-criteria-grid select) { font-size:12px; line-height:1.35; }
  .main-app[data-d-mode='companies'] #search-form .d-company-card .form-section { gap:6px; }
  .main-app[data-d-mode='companies'] .d-company-sources { grid-template-columns:minmax(0,1fr) 125px; }
  .main-app[data-d-mode='companies'] #search-form .d-pair-help { margin:0; font-size:11px; line-height:1.3; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-footer { height:auto; min-height:58px; padding:7px 12px; gap:10px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-footer-copy>span { display:none; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-footer-copy>strong { font-size:11px; line-height:1.35; }
}
@media(max-width:700px) and (max-height:740px) {
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) {
    --d-search-field-height:34px;
    --d-company-list-height:44px;
  }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .search-workflow { gap:6px; padding-top:7px; padding-bottom:7px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.role-criteria-grid,.filter-two-up) { gap:5px 10px; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(.role-criteria-grid textarea,.role-criteria-grid select,.d-location-control,.multi-select>summary,.company-search-input) { height:34px!important; min-height:34px; padding-top:5px; padding-bottom:5px; line-height:1.25; }
  .main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form :is(#companies,#company-homepages) { height:44px!important; min-height:44px; padding-top:3px; padding-bottom:3px; line-height:1.1; }
}

@media(max-width:700px) {
  /* Keep a readable two-line introduction in every mobile search mode. */
  .main-app #search-section .hero-copy { display:block; }
  .main-app #search-section .hero-copy p { display:block; min-height:0; max-width:100%; margin:6px auto 0; font-size:12px; line-height:1.4; }
  .main-app #search-form :is(textarea,input[type='text'],input[type='search'])::placeholder { font-size:12px; font-weight:400; opacity:1; }
  .main-app #search-form #semantic-query::placeholder { font-size:16px; }
}

/* Mobile results retain the search workspace and give view/sort their own rows. */
@media(max-width:700px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .hero { padding:14px 0; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .hero-copy h1 { font-size:clamp(28px,7vw,40px); }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .hero-copy h1 br { display:block; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .d-mode-switch { margin:10px auto; }
  .main-app .results-toolbar .download-link,
  .main-app #saved-export-link { display:none!important; }
  .main-app .results-toolbar { grid-template-columns:minmax(0,1fr); gap:10px; padding:12px 0; }
  .main-app .results-view-control { width:100%; }
  .main-app .results-group-toggle { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; padding:3px; border-radius:8px; background:#eef1ee; }
  .main-app .results-view-option { min-width:0; min-height:38px; padding:10px 12px; text-align:center; font-size:12px; border-radius:6px; }
  .main-app .d-sort-controls { display:grid; grid-template-columns:minmax(0,1fr); width:100%; gap:10px; grid-column:1; grid-row:2; }
  .main-app .results-toolbar.d-company-sorting .d-sort-controls { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .main-app .results-toolbar .d-sort { display:flex; flex-direction:column; align-items:stretch; gap:5px; width:100%; min-width:0; font-size:10px; letter-spacing:.03em; }
  .main-app .results-toolbar .d-sort[hidden] { display:none; }
  .main-app .results-toolbar .d-sort select { box-sizing:border-box; width:100%; height:40px; padding:8px 32px 8px 10px; border:1px solid #dce3e0; border-radius:6px; background-color:#fff; font-family:var(--d-type-sans); font-size:12px; }
}
@media(max-width:700px) and (max-height:650px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .hero { padding:6px 0; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .hero-copy h1 { font-size:26px; line-height:1.1; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) .d-mode-switch { margin:7px auto; }
}

/* Saved roles use the same labeled, touch-friendly controls as mobile results. */
.main-app .d-saved-status-control { display:contents; }
.main-app .d-saved-status-control>span { display:none; }
@media(max-width:700px) {
  .main-app .saved-section-head { flex-direction:column; align-items:stretch; gap:16px; padding:16px; }
  .main-app .saved-filters { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; margin:0; gap:12px 10px; }
  .main-app .saved-sort-control { grid-column:1/-1; }
  .main-app :is(.saved-sort-control,.d-saved-status-control) { display:flex; flex-direction:column; align-items:stretch; justify-content:start; width:100%; min-width:0; margin:0; gap:5px; color:var(--d-text-secondary); font-family:var(--d-type-sans); font-size:11px; font-weight:650; line-height:1.35; letter-spacing:0; text-transform:none; }
  .main-app :is(.saved-sort-control,.d-saved-status-control)>span { font:inherit; letter-spacing:0; text-transform:none; display:block; position:static; width:auto; height:auto; overflow:visible; clip-path:none; white-space:normal; }
  .main-app .saved-filters :is(#saved-sort-select,#saved-note-filter,#saved-complete-filter) { flex:none; box-sizing:border-box; width:100%; min-width:0; max-width:100%; height:44px; margin:0; padding:10px 32px 10px 10px; border:1px solid #dce3e0; border-radius:6px; background-color:#fff; color:var(--d-text-primary); font-family:var(--d-type-sans); font-size:12px; font-weight:500; line-height:1.35; letter-spacing:0; text-transform:none; }
  .main-app .saved-filters .saved-filter-option { min-width:0; }
}

/* Desktop workspaces share their top edge, not an artificially equal height. */
@media(min-width:701px) {
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero { display:block; min-height:0; padding:clamp(30px,6svh,56px) 0 36px; }
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero-form-column::after { content:none; }
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero-copy p { min-height:3em; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel,
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form { height:auto; min-height:0; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel { display:grid; grid-template-columns:minmax(0,1fr); align-items:stretch; padding:0; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.semantic-query-card { display:block; min-width:0; padding:16px 18px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .semantic-query-card label { margin-bottom:8px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .semantic-query-input-wrap { display:block; min-height:0; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel #semantic-query { box-sizing:border-box; flex:none; height:max(calc(2.9em + 8px),var(--d-desktop-query-height,0px)); min-height:0; max-height:240px; padding:4px 0; font-size:17px; line-height:1.45; overflow-y:auto; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .semantic-voice-button { top:4px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .d-input-hint { display:block; margin-top:6px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .d-input-hint span:last-child { display:none; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.d-form-footer { width:100%; height:auto; min-height:58px; padding:8px 18px; border:0; border-top:1px solid #e9eeeb; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form { position:relative; min-height:var(--d-desktop-standard-height,0px); }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-header { position:absolute; top:12px; right:20px; z-index:3; min-height:0; padding:0; border:0; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-header>div:first-child { display:none; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-reset-button { min-height:24px; padding:3px 0; border:0; background:transparent; font-size:10px; text-decoration:underline; text-underline-offset:3px; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form #standard-search-panel { flex:none; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .search-workflow { flex:none; gap:18px; padding:14px 20px 12px; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .workflow-card-head { margin-bottom:5px; }
  body.main-app[data-d-mode][data-d-mode='companies'] #search-form .d-company-card .form-two-up { margin-top:0; }
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-form-footer { height:auto; min-height:58px; margin-top:auto; padding:8px 20px; }
  body.main-app[data-d-mode][data-d-mode='ai'] .d-examples { margin-top:10px; }
}

/* Import belongs with the other desktop company-list sources. */
.main-app .d-company-import,.main-app .d-company-import-status { display:none; }
@media(min-width:701px) {
  body.main-app[data-d-mode='companies'] #search-form .d-company-sources { grid-template-columns:minmax(0,1fr) 115px auto; }
  .main-app #search-form .d-company-import { display:block; box-sizing:border-box; height:32px; min-height:32px; padding:6px 9px; border:1px dashed #d8b1ab; border-radius:6px; background:#fff; color:#a4544b; font:600 11px/1.4 var(--d-type-sans); letter-spacing:0; text-transform:none; white-space:nowrap; box-shadow:none; }
  .main-app #search-form .d-company-import:hover { border-color:var(--d-accent); color:var(--d-accent-ink); background:var(--d-accent-soft); }
  .main-app #search-form .d-company-import:focus-visible { outline:2px solid var(--d-accent); outline-offset:2px; }
  .main-app .d-company-import-status:not(:empty) { display:block; grid-column:1/-1; margin:2px 0 0; color:var(--d-text-secondary); font:400 11px/1.4 var(--d-type-sans); }
  .main-app .d-company-import-status[data-error='true'] { color:#b34f45; }
}
@media(min-width:701px) and (max-width:1000px) {
  body.main-app[data-d-mode='companies'] #search-form .d-company-sources { grid-template-columns:minmax(0,1fr) auto; }
  .main-app[data-d-mode='companies'] #search-form .d-company-sources .company-search-picker { grid-column:1/-1; }
}

/* Voice input sits beside submit, leaving the prompt's full width for typing. */
body.main-app #search-form .d-form-footer #semantic-voice-button { position:static; flex:none; width:var(--d-search-button-height); height:var(--d-search-button-height); min-height:var(--d-search-button-height); margin:0 0 0 auto; padding:10px; }
body.main-app #search-form .d-form-footer #semantic-voice-button:not([hidden]) { display:inline-flex; align-items:center; justify-content:center; }
body.main-app:not([data-d-mode='ai']) #search-form .d-form-footer #semantic-voice-button { display:none; }
body.main-app[data-d-mode='ai'] #search-form .d-form-footer .actions { margin-left:0; }
body.main-app[data-d-mode='ai'] #search-form #semantic-query { padding-right:0; }


/* AI is a quiet, self-contained prompt composer with actions in its lower edge. */
body.main-app[data-d-mode='ai'] #search-form,
body.main-app[data-d-mode='ai'] .d-examples { max-width:840px; margin-left:auto; margin-right:auto; }
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel {
  display:flex; flex-direction:column; height:auto; min-height:0; padding:0;
  border:1px solid #d7dfdf; border-radius:26px; background:#fff;
  box-shadow:0 4px 18px #17202708;
}
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.semantic-query-card {
  flex:none; display:block; padding:22px 24px 4px;
}
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .semantic-query-card label {
  margin:0 0 8px; color:var(--d-text-primary); font:600 18px/1.4 var(--d-type-sans);
  letter-spacing:-.2px; text-transform:none;
}
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel #semantic-query {
  padding:4px 0; font-weight:400;
}
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-query::placeholder { color:#6d7b80; opacity:1; }
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.d-form-footer {
  flex:none; height:auto; min-height:0; padding:8px 16px 16px 24px; border:0; background:transparent; gap:10px;
}
.main-app .d-composer-help { display:none; }
body.main-app[data-d-mode='ai'] .d-composer-help {
  display:block; margin-right:auto; color:#77848a; font:400 11px/1.5 var(--d-type-sans);
}
body.main-app[data-d-mode='ai'] #search-form .d-form-footer #semantic-voice-button {
  width:44px; height:44px; min-height:44px; margin:0 0 0 auto; border:0; border-radius:50%;
  background:#f2f5f5; color:#506169;
}
body.main-app[data-d-mode='ai'] #search-form .d-form-footer #semantic-voice-button:hover { background:#e9edfb; color:#394ece; }
body.main-app[data-d-mode='ai'] #search-form .d-form-footer #semantic-voice-button.is-listening { background:#fff0ee; color:#b34f45; }
body.main-app[data-d-mode='ai'] #search-form .d-form-footer .actions { width:auto; }
body.main-app[data-d-mode='ai'] #search-form .d-form-footer .actions>button[type='submit'] {
  width:auto; min-width:0; height:44px; min-height:44px; padding:10px 20px; border-radius:999px;
  border:0; background:var(--d-accent); color:#fff; font-size:12px; box-shadow:none;
}
body.main-app[data-d-mode='ai'] #search-form .d-form-footer .actions>button[type='submit']:hover:not(:disabled) { background:#3449dc; }
body.main-app[data-d-mode='ai'] #search-form .d-form-footer :is(button:focus-visible) { outline:2px solid #4b61ff; outline-offset:3px; }
body.main-app[data-d-mode][data-d-mode='ai'] .d-examples { gap:8px; margin-top:14px; }
body.main-app[data-d-mode='ai'] .d-examples>span { color:#7b878c; font:400 11px/1.4 var(--d-type-sans); letter-spacing:0; text-transform:none; }
body.main-app[data-d-mode='ai'] .d-examples .d-example-full { display:none; }
body.main-app[data-d-mode='ai'] .d-examples .d-example-compact { display:inline; }
body.main-app[data-d-mode='ai'] .d-examples button { padding:8px 13px; border:1px solid #e0e5e4; border-radius:999px; background:#fff; font-size:11px; }
body.main-app[data-d-mode='ai'] .d-examples button:hover { background:#eef0ff; border-color:#bcc5ff; }
@media(max-width:700px) {
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel { border-radius:22px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.semantic-query-card { padding:16px 18px 0; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel .semantic-query-card label { font-size:16px; margin-bottom:4px; }
  body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel>.d-form-footer { padding:8px 12px 12px 18px; gap:8px; }
  body.main-app[data-d-mode='ai'] .d-composer-help { display:none; }
  body.main-app[data-d-mode='ai'] #search-form .d-form-footer .actions>button[type='submit'] { padding:10px 16px; }
  body.main-app[data-d-mode][data-d-mode='ai'] .d-examples { margin-top:8px; gap:6px; }
}

/* Compact multi-location field; editing floats above the page without resizing the form. */
.main-app #search-form button.d-location-control { width:100%; justify-content:space-between; gap:6px; padding:8px 10px; color:#536460; font:500 13px/1.3 var(--d-type-sans); text-align:left; cursor:pointer; box-shadow:none; transform:none; }
.main-app .d-location-summary { flex:1; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.main-app .d-location-count { flex:none; border-radius:12px; background:#edf1ef; padding:2px 6px; font-size:11px; }
.main-app .d-location-popover { margin:0; inset:auto; position:fixed; z-index:1000; display:flex; flex-direction:column; gap:10px; box-sizing:border-box; padding:12px; border:1px solid #d4ddda; border-radius:12px; background:white; box-shadow:0 12px 36px #17202726; overflow:auto; text-transform:none; }
.main-app .d-location-popover[hidden], .main-app .d-location-count[hidden] { display:none; }
.main-app .d-location-heading { display:flex; align-items:center; justify-content:space-between; color:#536460; font:600 12px/1.4 var(--d-type-sans); }
.main-app #search-form .d-location-done { border:0; padding:5px 10px; min-height:28px; background:#edf1ef; color:#172027; border-radius:6px; font:600 12px/1.4 var(--d-type-sans); box-shadow:none; }
.main-app .d-location-popover .d-location-chips { display:flex; flex:none; width:100%; max-width:none; flex-wrap:nowrap; overflow-x:auto; gap:6px; padding-bottom:3px; }
.main-app .d-location-popover .d-location-chips:empty { display:none; }
.main-app .d-location-popover .d-location-chip { display:flex; flex:none; max-width:260px; height:28px; padding:3px 6px 3px 9px; border-radius:6px; }
.main-app .d-location-popover .d-location-chip-label { max-width:220px; font-size:12px; }
.main-app .d-location-popover .d-location-chip button { display:block; width:22px; min-width:22px; height:22px; font-size:16px; }
.main-app .d-location-search-row { display:flex; flex:none; align-items:center; border:1px solid #d9e1df; border-radius:7px; padding:0 8px; }
.main-app #search-form .d-location-popover input.d-location-input { display:block; flex:1; width:100%; min-width:0; height:38px; padding:8px 0; font:500 13px/1.4 var(--d-type-sans); }
.main-app .d-location-popover .d-location-suggestions { position:static; width:100%; max-width:none; padding:0; border:0; box-shadow:none; min-height:0; overflow:auto; }
.main-app .d-location-popover .d-location-options { max-height:220px; }
.main-app .d-location-popover .d-location-option { min-height:40px; gap:8px; }
.main-app .d-location-popover .d-location-option::before { content:''; flex:none; width:14px; height:14px; border:1px solid #aab6b1; border-radius:3px; }
.main-app .d-location-popover .d-location-option[aria-selected='true']::before { content:'✓'; background:#536460; border-color:#536460; color:white; text-align:center; font-size:12px; }
.main-app #search-form .d-location-popover .d-location-option span { flex:1; font-size:13px; }
.main-app .d-location-popover .d-location-option small { font-size:10px; }
@media(max-width:700px) { .main-app #search-form button.d-location-control { font-size:12px; } }
.main-app .d-location-popover .d-location-chips::-webkit-scrollbar { display:block; height:4px; }
.main-app .d-location-popover .d-location-chips::-webkit-scrollbar-thumb { background:#c5cfcb; border-radius:4px; }

/* Location controls use the same type hierarchy as the adjacent filters. */
.main-app #search-form button.d-location-control,
.main-app #search-form .d-location-popover input.d-location-input,
.main-app #search-form .d-location-popover .d-location-option span {
  color:var(--d-text-primary);
  font-family:var(--d-type-sans);
  font-size:var(--d-type-control);
  font-weight:500;
  line-height:1.4;
  letter-spacing:0;
}
.main-app #search-form button.d-location-control:not([title]),
.main-app #search-form button.d-location-control[title=''] { color:var(--d-text-quiet); font-weight:400; }
.main-app .d-location-heading,
.main-app .d-location-popover .d-location-chip-label,
.main-app #search-form .d-location-done { color:var(--d-text-primary); font:500 var(--d-type-control)/1.4 var(--d-type-sans); }
.main-app .d-location-popover .d-location-option small,
.main-app .d-location-count { color:var(--d-text-secondary); font:400 var(--d-type-meta)/1.4 var(--d-type-sans); }
@media(max-width:700px) {
  .main-app #search-form button.d-location-control,
  .main-app #search-form .d-location-popover input.d-location-input,
  .main-app #search-form .d-location-popover .d-location-option span { font-size:12px; }
}

/* Match the complete AI surface, including its border and focus ring. */
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form {
  border:1px solid #d7dfdf;
  border-radius:26px;
  box-shadow:0 4px 18px #17202708;
}
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form[data-engaged='true'] {
  border-color:#9daaf6;
  box-shadow:0 0 0 3px #4b61ff0a,0 4px 18px #17202708;
}
@media(min-width:701px) {
  body.main-app[data-d-mode][data-d-mode='companies'] #search-form .d-company-card .form-two-up {
    margin-top:var(--d-company-row-offset,0px);
  }
}
@media(min-width:701px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .d-role-card .role-criteria-grid { margin-top:0; }
}

/* Three complete input lines, with the same inset in both structured modes. */
body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .role-criteria-grid :is(#titles,#keywords) {
  box-sizing:border-box;
  padding:8px 10px;
  line-height:1.4;
  height:calc(3lh + 18px)!important;
  min-height:calc(3lh + 18px);
}
body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form>.d-form-footer {
  border-radius:0 0 25px 25px;
}

/* Keep database lookup separate from the other list sources on desktop. */
@media(min-width:701px) {
  body.main-app[data-d-mode='companies'] #search-form .d-company-sources { grid-template-columns:minmax(0,1fr) auto; }
  .main-app[data-d-mode='companies'] #search-form .d-company-sources .company-search-picker { grid-column:1/-1; }
}

/* Retain the shared subtle surface, tinted to the active search mode. */
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form {
  border-color:#d7dfdf;
  box-shadow:0 4px 18px #17202708;
}
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form[data-engaged='true'] {
  border-color:var(--d-accent);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--d-accent) 4%,transparent),0 4px 18px #17202708;
}
@media(min-width:701px) {
  body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .role-criteria-grid>label:nth-last-child(-n+2) { margin-top:var(--d-role-row-offset,0px); }
  body.main-app[data-d-mode='filters'] #search-form .filter-two-up>:nth-child(n+3) { margin-top:var(--d-filter-row-offset,0px); }
}

/* One vertical viewport keeps names and homepages on the same rows. */
body.main-app #search-form .d-company-scroll-fields {
  grid-template-columns:repeat(2,minmax(0,1fr));
  row-gap:4px;
}
.main-app #search-form .d-company-scroll {
  grid-column:1/-1;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:start;
  box-sizing:border-box;
  min-width:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  border:1px solid #dce3e0;
  border-radius:7px;
  background:#fff;
}
body.main-app #search-form .d-company-scroll textarea {
  align-self:start;
  box-sizing:border-box;
  min-width:0;
  width:100%;
  margin:0;
  border:0!important;
  border-radius:0!important;
  resize:none!important;
  overflow-x:scroll!important;
  overflow-y:hidden!important;
  background:transparent!important;
  box-shadow:none!important;
  outline:none;
}
body.main-app #search-form .d-company-scroll textarea+textarea {
  border-left:1px solid #dce3e0!important;
}

/* Three company lines with a compact four-pixel vertical inset. */
@media(min-width:701px) {
  body.main-app { --d-company-list-height:calc(3lh + 10px); }
  body.main-app[data-d-mode='companies'] #search-form :is(#companies,#company-homepages) {
    box-sizing:border-box;
    height:var(--d-company-list-height);
    min-height:var(--d-company-list-height);
    padding-top:4px;
    padding-bottom:4px;
  }
}

/* Keep an entered search visibly active after focus leaves its controls. */
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form[data-has-criteria='true'] {
  border-color:var(--d-accent);
}
body.main-app[data-d-mode][data-d-mode='ai'] #search-form[data-has-criteria='true'] #semantic-search-panel {
  border-color:#9daaf6;
}

/* End the workspace at its controls, followed by the normal footer inset. */
@media(min-width:701px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form .workflow-card .form-section { margin-bottom:0; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form>.d-form-footer { margin-top:0; }
}
@media(min-width:701px) {
  body.main-app[data-d-mode='filters'] #search-form .d-company-card .form-section { gap:0; }
}

/* Desktop opening view: copy is one group, selector and composer another. */
@media(min-width:701px) {
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero-copy h1 { margin:0; }
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero-copy p {
    height:auto;
    min-height:0;
    max-width:760px;
    margin:16px auto 0;
  }
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .d-mode-switch {
    margin:24px auto 16px;
  }
}

/* Keep the invisible form border neutral before it becomes visible in a mode switch. */
body.main-app[data-d-mode='ai'] #search-form { border-color:#d7dfdf; }

/* Module highlighting follows applied criteria and editing state. */
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form,
body.main-app[data-d-mode][data-d-mode='ai'] #semantic-search-panel {
  border-color:#d7dfdf;
  box-shadow:0 4px 18px #17202708;
  transition:border-color .15s ease,box-shadow .15s ease;
}
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form:is([data-has-criteria='true'],[data-engaged='true']),
body.main-app[data-d-mode][data-d-mode='ai'] #search-form:is([data-has-criteria='true'],[data-engaged='true']) #semantic-search-panel {
  border-color:var(--d-accent);
}
body.main-app[data-d-mode]:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form[data-engaged='true'],
body.main-app[data-d-mode][data-d-mode='ai'] #search-form[data-engaged='true'] #semantic-search-panel {
  box-shadow:0 0 0 3px var(--d-accent-soft),0 4px 18px #17202708;
}

/* Keep phone navigation compact without stacking each header control. */
@media(max-width:700px) {
  body.main-app .app-topbar-inner { min-height:56px; }
  body.main-app .app-nav-link { padding-top:16px; padding-bottom:16px; }
}
@media(max-width:570px) {
  body.main-app .app-topbar-inner { display:block; min-height:0; padding:6px 0 0; }
  body.main-app .app-branding { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2px 12px; align-items:center; }
  body.main-app .app-branding > .app-brand { grid-column:1; grid-row:1; display:flex; align-items:center; min-height:28px; font-size:20px; }
  body.main-app .app-branding > .app-nav { grid-column:1 / -1; grid-row:2; width:100%; margin:0; justify-content:space-between; flex-wrap:nowrap; gap:8px; }
  body.main-app .app-nav-link { min-height:38px; padding:10px 2px; font-size:11px; line-height:16px; white-space:nowrap; }
  body.main-app .d-index-status { display:none; }
}

/* One desktop first screen: search first, four concise benefits directly below.
   Content remains scrollable when zoom or unusually short windows need room. */
@media(min-width:1024px) {
  body.main-app[data-page='search']:not(.d-has-results) .hero-form-column { width:min(100%,800px); }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .hero-copy h1 {
    font-size:clamp(44px,7svh,60px); line-height:1.06; letter-spacing:-.055em;
  }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .hero-copy p {
    max-width:800px; min-height:22px; margin:12px auto 0; font-size:15px; line-height:22px;
  }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .d-mode-switch { margin:18px auto 12px; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .d-examples {
    display:flex; flex-wrap:nowrap; height:28px; overflow:hidden; gap:6px; margin:10px auto 0;
  }
  body.main-app[data-page='search']:not(.d-has-results):is([data-d-mode='filters'],[data-d-mode='companies']) .d-examples { visibility:hidden; pointer-events:none; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode='companies'] .d-examples > * { display:none; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .d-examples button { padding:5px 10px; white-space:nowrap; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits {
    width:100%; margin:40px 0 0; padding:0 0 32px; border:0;
  }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits-grid article { gap:8px; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits article > svg { width:18px; height:18px; margin:0; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits h3 { margin:0; font-size:12px; font-weight:600; line-height:16px; text-wrap:initial; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits p { font-size:11.5px; line-height:17px; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits-grid h3 { min-height:0; }
}
@media(min-width:1024px) and (max-height:800px) {
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .hero-copy h1 { font-size:42px; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .d-mode-switch { margin:6px auto; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .hero-copy p { margin-top:6px; }
  body.main-app[data-page='search']:not(.d-has-results)[data-d-mode] .d-examples { margin-top:6px; }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits { margin-top:32px; }
}

/* Keep benefit spacing independent of the four-to-two-column wrap. */
@media(min-width:701px) {
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits {
    width:min(100%,820px); margin:16px auto 0; padding:0 0 32px;
  }
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits-grid { gap:12px; }
}

/* Keep the mode tagline on its own line below the search headline. */
body.main-app[data-page='search'] .hero-copy h1 .d-hero-tagline {
  display:block;
  margin-left:0;
  white-space:nowrap;
}

@media(min-width:1024px) {
  body.main-app[data-page='search']:not(.d-has-results) .d-search-benefits { width:min(100%,800px); }
}

.main-app .d-search-benefits .d-note-line { display:none; }

/* Precision and Custom share one compact, two-row form. */
body.main-app #search-form.d-search-layout {
  --sl-heading-row-height:30px;
  --sl-heading-gap:12px;
}
body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout {
  display:block; width:100%; max-width:840px; height:auto; min-height:0; padding:22px 24px 16px;
  margin-left:auto; margin-right:auto;
  border-width:1px; border-radius:26px; background:#fff; overflow:visible;
}
body.main-app #search-form.d-search-layout [hidden] { display:none!important; }
body.main-app #search-form.d-search-layout .sl-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
body.main-app #search-form.d-search-layout .search-workflow,
body.main-app #search-form.d-search-layout .d-form-header { display:none!important; }
body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout #standard-search-panel { display:block; flex:none; height:auto; min-height:0; overflow:visible; }
body.main-app #search-form.d-search-layout .sl-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; min-height:var(--sl-heading-row-height); margin-bottom:var(--sl-heading-gap); }
body.main-app #search-form.d-search-layout .sl-heading h2,
body.main-app #search-form.d-search-layout #semantic-search-panel .semantic-query-card label {
  display:flex; align-items:center; gap:8px; min-height:var(--sl-heading-row-height); margin:0;
  color:var(--d-text-primary); font:600 18px/1.4 var(--d-type-sans); letter-spacing:-.2px; text-transform:none;
}
body.main-app #search-form.d-search-layout .sl-mode-icon { display:block; flex:none; width:17px; height:17px; color:var(--d-text-muted); }
body.main-app #search-form.d-search-layout #semantic-search-panel .semantic-query-card label { margin-bottom:var(--sl-heading-gap); }
body.main-app #search-form.d-search-layout .sl-heading-actions { display:flex; align-items:center; gap:14px; }
body.main-app #search-form.d-search-layout .sl-preset-edit-actions { display:flex; align-items:center; gap:10px; }
body.main-app #search-form.d-search-layout .sl-preset-edit-actions button {
  min-width:0; min-height:24px; margin:0; padding:2px 0; border:0; border-radius:0; background:transparent;
  color:var(--d-text-secondary); font:400 11px/18px var(--d-type-sans); text-decoration:underline; text-underline-offset:3px;
}
body.main-app #search-form.d-search-layout .sl-preset-edit-actions #preset-editor-submit { color:var(--d-text-primary); font-weight:600; }
body.main-app #search-form.d-search-layout .preset-editor-name-field { display:grid; gap:6px; min-width:0; }
body.main-app #search-form.d-search-layout .preset-editor-error { margin:0; color:#a34840; font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-heading .d-reset-button { min-height:24px; padding:2px 0; background:transparent; border:0; color:var(--d-text-secondary); font-size:11px; }
body.main-app #search-form.d-search-layout .sl-heading .d-reset-button:disabled { color:var(--d-text-quiet); opacity:.6; text-decoration:none; cursor:default; }
body.main-app #search-form.d-search-layout .sl-criteria { display:grid; grid-template-columns:1fr 1fr 1fr .8fr; gap:10px; }
body.main-app #search-form.d-search-layout #standard-search-panel .sl-criteria > .sl-companies-trigger { height:46px!important; min-height:46px; border-radius:9px; font-size:13px; }
body.main-app #search-form.d-search-layout .sl-text-slot { position:relative; height:46px; min-width:0; }
body.main-app #search-form.d-search-layout .sl-text-slot:focus-within { z-index:20; }
body.main-app #search-form.d-search-layout .sl-text-editor { position:absolute; inset:0 0 auto; display:block; margin:0; padding:12px 11px; border:1px solid #dce3e0; border-radius:9px; background:#fff; }
body.main-app #search-form.d-search-layout .sl-text-editor.sl-editing { border-color:var(--d-text-primary); box-shadow:0 7px 18px #17202715; }
body.main-app #search-form.d-search-layout .sl-text-editor textarea {
  display:block; box-sizing:border-box; width:100%; height:20px; min-height:0!important; max-height:80px;
  margin:0; padding:0!important; border:0!important; border-radius:0; resize:none; background:#fff;
  color:var(--d-text-primary); font:400 13px/20px var(--d-type-sans); overflow:hidden;
  white-space:pre-wrap; overflow-wrap:anywhere;
}
body.main-app #search-form.d-search-layout :is(.sl-text-editor textarea,.sl-location-input):is(:focus,:focus-visible) {
  border:0!important; outline:none; box-shadow:none;
}
body.main-app #search-form.d-search-layout .sl-text-editor textarea::placeholder { color:var(--d-text-quiet); font:inherit; opacity:1; }
body.main-app #search-form.d-search-layout .sl-secondary { position:relative; display:grid; grid-template-columns:1fr 1.25fr .85fr 1.25fr .85fr 1fr; gap:8px; margin-top:10px; }
body.main-app[data-d-mode='companies'] #search-form.d-search-layout .sl-secondary { grid-template-columns:minmax(0,1fr) 128px; }
body.main-app #search-form.d-search-layout .sl-secondary > [data-search-mode-panel],
body.main-app #search-form.d-search-layout .sl-secondary > [data-search-mode-panel] > .form-section,
body.main-app #search-form.d-search-layout .sl-secondary .filter-two-up { display:contents; }
body.main-app #search-form.d-search-layout .sl-secondary > [data-search-mode-panel][hidden] { display:none!important; }
body.main-app #search-form.d-search-layout .sl-secondary .filter-field { display:block; min-width:0; margin:0; }
body.main-app #search-form.d-search-layout .sl-secondary .filter-label,
body.main-app #search-form.d-search-layout .sl-secondary .catalog-meta,
body.main-app #search-form.d-search-layout [data-search-mode-panel='company_name'] > .form-section { display:none!important; }
body.main-app #search-form.d-search-layout .sl-posted { display:block; min-width:0; margin:0; }
body.main-app #search-form.d-search-layout :is(.sl-secondary .multi-select > summary,#date-posted,.sl-companies-trigger) {
  box-sizing:border-box; display:flex; align-items:center; width:100%; height:36px!important; min-height:36px;
  margin:0; padding:7px 10px; border:1px solid #dce3e0; border-radius:8px;
  background:#fff; color:var(--d-text-secondary); font:400 12px/20px var(--d-type-sans); text-transform:none; letter-spacing:0;
}
body.main-app #search-form.d-search-layout #date-posted { display:block; }
body.main-app #search-form.d-search-layout .sl-companies-trigger { justify-content:space-between; gap:8px; text-align:left; }
body.main-app #search-form.d-search-layout .sl-companies-trigger > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.main-app #search-form.d-search-layout .sl-companies-trigger.has-value { color:var(--d-text-primary); }
body.main-app #search-form.d-search-layout .sl-secondary .multi-select { width:100%; margin:0; }
body.main-app #search-form.d-search-layout .sl-secondary .multi-select-summary { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font:inherit; }
body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout .d-form-footer {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:nowrap; gap:16px;
  height:auto; min-height:38px; padding:0; margin-top:12px; border:0; background:transparent;
}
body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions { width:152px; margin:0; padding:0; border:0; flex:none; }
body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions button[type='submit'] {
  width:152px; height:38px; min-height:38px; min-width:100px; padding:9px 16px; border:1px solid var(--d-text-primary); border-radius:8px;
  background:var(--d-text-primary); color:#fff; font:500 13px/1.4 var(--d-type-sans); box-shadow:none;
}
body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions button[type='submit']:hover:not(:disabled) { background:#2a353d; }
/* Keep the bubbles branch's blue pill action on the AI composer. */
body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-form-footer .actions { width:auto; }
body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-form-footer .actions button[type='submit'] {
  width:auto; min-width:0; height:38px; min-height:38px; padding:9px 20px; border:0; border-radius:999px;
  background:var(--d-accent); color:#fff; font-size:12px; font-weight:700; box-shadow:none;
}
body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-form-footer .actions button[type='submit']:hover:not(:disabled) { background:#3449dc; }
body.main-app #search-form.d-search-layout .d-footer-copy > strong { font-size:12px; line-height:18px; font-weight:400; }
body.main-app #search-form.d-search-layout .d-footer-copy > span { font-size:11px; line-height:16px; }
body.main-app #search-form.d-search-layout .d-footer-copy[data-guidance] > span { display:block; white-space:normal; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-secondary :is(.multi-select[open] > summary,.sl-companies-trigger[aria-expanded='true']) { border-color:var(--d-text-primary); }
body.main-app #search-form.d-search-layout .d-form-message:not([hidden]) { margin:12px 0 0; }

/* The company selector is a top-layer popover so dropdowns never shift the form. */
body.main-app #search-form.d-search-layout .sl-company-picker {
  box-sizing:border-box; position:absolute; inset:auto; margin:0; padding:0; z-index:100;
  overflow:auto; max-width:calc(100vw - 24px); border:1px solid #dce3e0; border-radius:16px;
  background:#fff; color:var(--d-text-primary); box-shadow:0 12px 32px #17202722;
  font:400 13px/20px var(--d-type-sans);
}
body.main-app #search-form.d-search-layout .sl-company-picker::backdrop { background:transparent; }
body.main-app #search-form.d-search-layout .sl-tabs { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:4px; padding:6px; border-bottom:1px solid #dce3e0; }
body.main-app #search-form.d-search-layout .sl-tabs button { min-width:0; padding:8px 4px; border:0; border-radius:6px; background:transparent; color:var(--d-text-secondary); font:400 12px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-tabs button[aria-selected='true'] { background:#f2f5f5; color:var(--d-text-primary); font-weight:500; }
body.main-app #search-form.d-search-layout .sl-picker-content { box-sizing:border-box; position:relative; display:flex; flex-direction:column; height:279px; padding:14px; }
body.main-app #search-form.d-search-layout .sl-picker-content > [role='tabpanel']:not([hidden]) { display:flex; flex:1; flex-direction:column; min-height:0; }
body.main-app #search-form.d-search-layout .sl-picker-content:has(> :is(#sl-panel-database,#sl-panel-lists):not([hidden])) { padding-bottom:0; }
body.main-app #search-form.d-search-layout .sl-scroll-area { position:relative; display:flex; flex:1; min-height:0; }
body.main-app #search-form.d-search-layout .sl-scroll-area::after { content:''; position:absolute; right:0; bottom:0; left:0; height:24px; background:linear-gradient(to bottom,#fff0,#fff); opacity:0; pointer-events:none; }
body.main-app #search-form.d-search-layout .sl-scroll-area.sl-more-below::after { opacity:1; }
body.main-app #search-form.d-search-layout .sl-database-scroll { margin-top:0; }
/* Keep the entry table measured between tabs without taking space or focus. */
body.main-app #search-form.d-search-layout #sl-panel-add[hidden] { display:block!important; position:absolute; top:14px; right:14px; left:14px; height:0; overflow:hidden; visibility:hidden; pointer-events:none; }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query { box-sizing:border-box; flex:none; width:100%; height:40px; min-height:0; margin:0; padding:9px 10px; border:1px solid #dce3e0; border-radius:7px; background:#fff; color:var(--d-text-primary); font:400 13px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query::placeholder { color:var(--d-text-quiet); font:inherit; }
body.main-app #search-form.d-search-layout .sl-database-results { flex:1; min-height:0; overflow-x:hidden; overflow-y:auto; scrollbar-gutter:stable; padding-bottom:12px; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row { display:flex; align-items:center; gap:10px; min-height:48px; padding:6px 4px; border-bottom:0; text-transform:none; letter-spacing:0; font:400 13px/20px var(--d-type-sans); }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row + .sl-database-row { border-top:1px solid #e6e8e2; }
body.main-app #search-form.d-search-layout .sl-company-picker :is(.sl-database-row input,.sl-source-companies input),
body.main-app .ls-workspace .sl-database-row input { flex:none; width:16px; height:16px; margin:0; accent-color:var(--d-text-primary); }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row > span { display:flex; flex:1; flex-direction:column; min-width:0; white-space:normal; overflow-wrap:anywhere; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row > .sl-company-mark { flex:none; align-items:center; justify-content:center; width:24px; height:24px; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-company-favicon { display:block; width:20px; height:20px; object-fit:contain; }
body.main-app #search-form.d-search-layout .sl-company-icon-fallback { width:20px; height:20px; color:var(--d-text-muted); }
body.main-app #search-form.d-search-layout .sl-database-row small,
body.main-app #search-form.d-search-layout .sl-empty { color:var(--d-text-secondary); font-size:12px; line-height:18px; }
body.main-app #search-form.d-search-layout .sl-company-picker .company-source-picker { display:block; flex:1; min-height:0; height:100%; margin:0; }
body.main-app #search-form.d-search-layout .sl-company-picker .company-source-picker > .filter-label { display:none; }
body.main-app #search-form.d-search-layout .sl-company-picker .company-source-picker > .multi-select-panel { display:flex; flex-direction:column; position:static!important; inset:auto!important; width:100%!important; height:100%; min-width:0; min-height:0; max-height:none; margin:0; padding:0; border:0; box-shadow:none; background:#fff; }
body.main-app #search-form.d-search-layout .sl-company-picker #company-source-options { flex:1; min-height:0; max-height:none; overflow:auto; scrollbar-gutter:stable; margin:0; padding-bottom:12px; }
body.main-app #search-form.d-search-layout .sl-source + .sl-source { border-top:1px solid #e6e8e2; }
body.main-app #search-form.d-search-layout .sl-source-head { display:flex; align-items:center; flex-wrap:wrap; gap:8px 10px; min-height:60px; padding:10px 4px; }
body.main-app #search-form.d-search-layout .sl-source-copy { display:flex; flex:1; flex-direction:column; min-width:100px; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-source-name { font-weight:500; }
body.main-app #search-form.d-search-layout .sl-source-copy small { color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-source-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-source-view { display:inline-flex; align-items:center; min-height:36px; padding:8px 0; border:0; border-radius:0; background:transparent; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); text-decoration:underline; text-underline-offset:3px; }
body.main-app #search-form.d-search-layout .sl-source-view:hover,
body.main-app #search-form.d-search-layout .sl-source-view[aria-expanded='true'] { color:var(--d-text-primary); }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-source-add { flex:0 0 80px; width:80px; min-width:80px; min-height:36px; padding:8px 12px; border:1px solid #dce3e0; border-radius:8px; background:#fff; color:var(--d-text-primary); font:400 12px/18px var(--d-type-sans); white-space:nowrap; }
body.main-app #search-form.d-search-layout .sl-source-add:hover:not(:disabled) { background:#f2f5f5; border-color:#b7c5c1; }
body.main-app #search-form.d-search-layout .sl-source-add:disabled { color:var(--d-text-quiet); cursor:default; }
body.main-app #search-form.d-search-layout .sl-source-preview { margin:0 4px 10px; padding:0 6px; border-top:1px solid #e6e8e2; border-radius:0 0 6px 6px; background:#f7f9f8; }
body.main-app #search-form.d-search-layout .sl-source-companies { list-style:none; margin:0; padding:0; }
body.main-app #search-form.d-search-layout .sl-source-companies label { display:flex; align-items:center; gap:10px; min-height:50px; margin:0; padding:6px 4px; font:400 13px/20px var(--d-type-sans); text-transform:none; letter-spacing:0; }
body.main-app #search-form.d-search-layout .sl-source-companies li + li { border-top:1px solid #e6e8e2; }
body.main-app #search-form.d-search-layout .sl-source-companies .sl-company-mark { display:flex; flex:none; align-items:center; justify-content:center; width:24px; height:24px; }
body.main-app #search-form.d-search-layout .sl-source-companies label > span:last-child { display:flex; flex-direction:column; min-width:0; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-source-companies small { color:var(--d-text-secondary); font-size:12px; line-height:18px; }
body.main-app #search-form.d-search-layout .sl-company-picker #company-source-options .company-source-icon { width:20px; height:20px; flex:0 0 20px; margin:0 2px; }
body.main-app #search-form.d-search-layout .sl-entry-toolbar,
body.main-app #search-form.d-search-layout .sl-entry-footer,
body.main-app #search-form.d-search-layout .sl-picker-footer { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--d-text-secondary); font-size:12px; }
body.main-app #search-form.d-search-layout .sl-entry-toolbar { flex:none; margin-bottom:8px; }
body.main-app #search-form.d-search-layout .sl-company-url-help { flex:none; margin:0 0 10px; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-entry-footer { flex:none; margin-top:auto; padding-top:10px; }
body.main-app #search-form.d-search-layout :is(.sl-import,.sl-add-companies,.sl-done) { flex:none; padding:8px 12px; min-height:36px; border:1px solid #dce3e0; border-radius:8px; background:#fff; color:var(--d-text-primary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout :is(.sl-add-companies,.sl-done) { border-color:var(--d-text-primary); background:var(--d-text-primary); color:#fff; font-weight:500; }
body.main-app #search-form.d-search-layout :is(.sl-add-companies,.sl-done):hover:not(:disabled) { border-color:#2a353d; background:#2a353d; }
body.main-app #search-form.d-search-layout .sl-company-picker :is(button,input,.sl-database-results,#company-source-options):focus-visible { outline:2px solid var(--d-text-primary); outline-offset:2px; }
body.main-app #search-form.d-search-layout .sl-add-companies:disabled { opacity:.45; cursor:default; }
body.main-app #search-form.d-search-layout .sl-table-scroll { min-height:0; max-height:216px; overflow:auto; border:1px solid #dce3e0; border-radius:8px; }
body.main-app #search-form.d-search-layout .sl-table-scroll table { width:100%; margin:0; table-layout:fixed; border-collapse:separate; border-spacing:0; }
body.main-app #search-form.d-search-layout .sl-table-scroll th { position:sticky; top:0; z-index:1; padding:8px 10px; border:0; border-bottom:1px solid #dce3e0; background:#f2f5f5; color:var(--d-text-secondary); text-align:left; text-transform:none; letter-spacing:0; font:400 12px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-table-scroll th:last-child { width:34px; padding:0; }
body.main-app #search-form.d-search-layout .sl-table-scroll td { padding:0; border:0; border-bottom:1px solid #dce3e0; background:#fff; }
body.main-app #search-form.d-search-layout .sl-table-scroll tr:last-child td { border-bottom:0; }
body.main-app #search-form.d-search-layout .sl-table-scroll :is(td,th):first-child { border-right:1px solid #dce3e0; }
body.main-app #search-form.d-search-layout .sl-table-scroll input { box-sizing:border-box; display:block; width:100%; min-width:0; height:40px; margin:0; padding:10px; border:0; border-radius:0; background:#fff; color:var(--d-text-primary); font:400 13px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-table-scroll input::placeholder { color:var(--d-text-quiet); font:inherit; }
body.main-app #search-form.d-search-layout .sl-table-scroll td button { width:32px; min-height:32px; padding:0; border:0; background:#fff; color:var(--d-text-secondary); }
body.main-app #search-form.d-search-layout .sl-picker-message { flex:none; margin:8px 0 0; font-size:12px; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-picker-message:empty { display:none; }
body.main-app #search-form.d-search-layout .sl-selected { padding:10px 14px; border:0; border-top:1px solid #dce3e0; border-radius:0; }
body.main-app #search-form.d-search-layout .sl-selected summary { color:var(--d-text-secondary); font-size:12px; }
body.main-app #search-form.d-search-layout .sl-selected-rows { max-height:132px; overflow:auto; margin-top:8px; }
body.main-app #search-form.d-search-layout .sl-selected-row { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:5px 0; }
body.main-app #search-form.d-search-layout .sl-selected-row > span { min-width:0; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-selected-row small { display:block; color:var(--d-text-secondary); font-size:12px; }
body.main-app #search-form.d-search-layout .sl-selected-row button { padding:5px; border:0; background:transparent; color:var(--d-text-secondary); }
body.main-app #search-form.d-search-layout .sl-picker-footer { padding:10px 14px; border-top:1px solid #dce3e0; }
@media(max-width:570px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { padding:16px 18px 12px; }
  body.main-app #search-form.d-search-layout .sl-criteria { grid-template-columns:1fr; }
  body.main-app #search-form.d-search-layout .sl-secondary { grid-template-columns:repeat(3,minmax(0,1fr)); }
  body.main-app[data-d-mode='companies'] #search-form.d-search-layout .sl-secondary { grid-template-columns:minmax(0,1fr) 90px 90px; }
  body.main-app #search-form.d-search-layout #funding-filter { grid-column:auto; }
  body.main-app #search-form.d-search-layout .filter-field:has(#funding-filter) { grid-column:span 2; }
  body.main-app #search-form.d-search-layout .sl-heading-actions { gap:8px; }
  body.main-app #search-form.d-search-layout .sl-heading { flex-wrap:wrap; row-gap:6px; }
  body.main-app #search-form.d-search-layout .sl-heading .d-reset-button { min-width:0; }
  body.main-app #search-form.d-search-layout .sl-company-picker :is(.sl-entry-toolbar,.sl-entry-footer) { flex-wrap:wrap; }
  body.main-app #search-form.d-search-layout .sl-text-editor textarea,
  body.main-app #search-form.d-search-layout .sl-company-picker :is(.sl-database-query,.sl-table-scroll input) { font-size:16px; }
  body.main-app #search-form.d-search-layout .sl-source-actions { margin-left:auto; }
  body.main-app #search-form.d-search-layout .d-footer-copy:not([data-guidance]) > span { display:none; }
}
@media(pointer:coarse) {
  body.main-app #search-form.d-search-layout :is(.sl-secondary .multi-select > summary,#date-posted,.sl-companies-trigger) { height:44px!important; min-height:44px; }
  body.main-app #search-form.d-search-layout .sl-company-picker button { min-height:44px; }
  body.main-app #search-form.d-search-layout .sl-picker-content { height:307px; }
  body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query { height:44px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row { min-height:52px; padding-block:8px; }
  body.main-app #search-form.d-search-layout .sl-table-scroll th:last-child,
  body.main-app #search-form.d-search-layout .sl-table-scroll td button { width:44px; }
  body.main-app #search-form.d-search-layout .sl-table-scroll input { height:44px; }
}

/* Give company dropdowns more room by moving the opening workspace up. */
@media(min-width:701px) {
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero {
    padding-top:clamp(24px,3svh,32px);
  }
}
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px 12px; }
  body.main-app #search-form.d-search-layout .sl-heading h2 { grid-column:1; grid-row:1; min-width:0; }
  body.main-app #search-form.d-search-layout .sl-heading-actions { display:contents; }
  body.main-app #search-form.d-search-layout .sl-heading :is(.d-reset-button,.sl-preset-edit-actions) { grid-column:2; grid-row:1; justify-self:end; }
  body.main-app #search-form.d-search-layout .sl-heading .search-presets { grid-column:1 / -1; grid-row:2; justify-self:start; margin:0; }
  body.main-app #search-form.d-search-layout .sl-heading .preset-multi-select { position:relative; }
  body.main-app #search-form.d-search-layout .sl-heading .preset-multi-select .multi-select-panel { left:0; right:auto; width:min(320px,calc(100vw - 70px)); }
  body.main-app #search-form.d-search-layout { --sl-heading-gap:8px; }
  body.main-app[data-d-mode]:not(.d-has-results)[data-d-mode] .hero {
    padding-bottom:calc(16px + clamp(0px,calc(20svh - 140px),160px));
  }
}

/* Tags and the typing area are peers inside one wrapping, four-row scroll area. */
body.main-app #search-form.d-search-layout .sl-location-mobile-trigger { display:none; }
body.main-app #search-form.d-search-layout .sl-mobile-sheet:not([open]) { display:none; }
body.main-app #search-form.d-search-layout .sl-location-slot.is-editing { z-index:25; }
body.main-app #search-form.d-search-layout .sl-location-box {
  position:absolute; inset:0 0 auto; min-height:46px; padding:9px 10px;
  border:1px solid #dce3e0; border-radius:9px; background:#fff;
}
body.main-app #search-form.d-search-layout .sl-location-box.is-editing { border-color:var(--d-text-primary); box-shadow:0 7px 18px #17202715; }
body.main-app #search-form.d-search-layout .sl-location-flow {
  position:relative; display:flex; flex-wrap:nowrap; align-items:center; gap:6px;
  max-height:26px; overflow:hidden; overflow-anchor:none; scrollbar-width:thin;
}
body.main-app #search-form.d-search-layout .sl-location-box.is-editing .sl-location-flow {
  flex-wrap:wrap; max-height:122px; overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain;
}
body.main-app #search-form.d-search-layout textarea.sl-location-input {
  display:block; flex:1 1 auto; box-sizing:border-box; min-width:min(80px,100%); max-width:100%;
  height:26px; min-height:0; margin:0; padding:3px 0; border:0; border-radius:0; background:transparent;
  color:var(--d-text-primary); font:400 13px/20px var(--d-type-sans); box-shadow:none;
  resize:none; white-space:pre-wrap; overflow-wrap:anywhere; overflow-x:hidden;
}
body.main-app #search-form.d-search-layout textarea.sl-location-input::placeholder { color:var(--d-text-quiet); opacity:1; }
body.main-app #search-form.d-search-layout .sl-location-box.has-value:not(.is-editing) textarea::placeholder { color:var(--d-text-primary); }
body.main-app #search-form.d-search-layout .sl-location-tag {
  display:none; flex:0 1 auto; align-items:center; gap:6px; max-width:100%; min-height:26px;
  margin:0; padding:3px 6px 3px 8px; border:0; border-radius:5px; background:#f2f5f5;
  color:var(--d-text-primary); font:400 12px/20px var(--d-type-sans);
}
body.main-app #search-form.d-search-layout .sl-location-box.is-editing .sl-location-tag { display:flex; }
body.main-app #search-form.d-search-layout .sl-location-tag > span:first-child { min-width:0; white-space:normal; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-location-tag > span:last-child { flex:none; }
body.main-app #search-form.d-search-layout .sl-location-popup {
  position:fixed; inset:auto; display:flex; flex-direction:column; margin:0; box-sizing:border-box; padding:6px; overflow:hidden;
  border:1px solid #dce3e0; border-radius:10px; background:#fff; color:var(--d-text-primary);
  box-shadow:0 12px 32px #17202722; font:400 13px/20px var(--d-type-sans);
}
body.main-app #search-form.d-search-layout .sl-location-options { flex:0 1 auto; min-height:0; max-height:240px; overflow-y:auto; overscroll-behavior:contain; }
body.main-app #search-form.d-search-layout .sl-location-option {
  display:flex; align-items:center; gap:9px; width:100%; min-height:44px;
  padding:7px 9px; border:0; border-radius:6px; background:transparent; color:var(--d-text-primary);
  text-align:left; font:400 13px/20px var(--d-type-sans);
}
body.main-app #search-form.d-search-layout .sl-location-option > svg { width:16px; height:16px; flex:none; color:var(--d-text-secondary); }
body.main-app #search-form.d-search-layout .sl-location-option-copy { display:flex; flex-direction:column; min-width:0; overflow-wrap:anywhere; }
body.main-app #search-form.d-search-layout .sl-location-option[aria-selected='true'],
body.main-app #search-form.d-search-layout .sl-location-option:hover { background:#f2f5f5; }
body.main-app #search-form.d-search-layout .sl-location-option small { color:var(--d-text-secondary); font:400 11px/16px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-location-hint { flex:none; padding:7px 9px 3px; color:var(--d-text-secondary); font:400 11px/16px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-location-empty { margin:8px; color:var(--d-text-secondary); }
@media(max-width:570px) {
  body.main-app #search-form.d-search-layout textarea.sl-location-input { font-size:16px; }
}
@media(pointer:coarse) {
  body.main-app #search-form.d-search-layout textarea.sl-location-input { font-size:16px; }
  body.main-app #search-form.d-search-layout .sl-location-box.is-editing .sl-location-flow { max-height:194px; }
  body.main-app #search-form.d-search-layout .sl-location-box.is-editing :is(.sl-location-tag,textarea.sl-location-input) { min-height:44px; }
}

/* Closed fields share a complete-entry preview and a quiet count line. */
body.main-app #search-form.d-search-layout .sl-closed-summary {
  position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center;
  padding:4px 11px; pointer-events:none; color:var(--d-text-primary);
  font:400 13px/20px var(--d-type-sans); letter-spacing:0; text-transform:none;
}
body.main-app #search-form.d-search-layout .sl-summary-line { display:flex; align-items:center; gap:8px; min-width:0; }
body.main-app #search-form.d-search-layout .sl-summary-values { display:flex; flex:1; min-width:0; overflow:hidden; white-space:pre; }
body.main-app #search-form.d-search-layout .sl-summary-values > span { flex:none; white-space:pre; }
body.main-app #search-form.d-search-layout .sl-summary-more { flex:none; color:var(--d-text-secondary); }
body.main-app #search-form.d-search-layout .sl-summary-more:empty { display:none; }
body.main-app #search-form.d-search-layout .sl-summary-detail { color:var(--d-text-secondary); font:400 11px/16px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-text-editor.has-summary:not(.sl-editing) > textarea,
body.main-app #search-form.d-search-layout .sl-location-box.has-summary:not(.is-editing) > .sl-location-flow { opacity:0; }
/* Separate the dropdown's instruction row from its options, as in the demo. */
body.main-app #search-form.d-search-layout .sl-location-hint { border-top:1px solid #dce3e0; margin-top:5px; padding-top:8px; }
body.main-app #search-form.d-search-layout .cp-menu-foot { border-top-color:#dce3e0; }
@media(max-width:570px), (pointer:coarse) {
  body.main-app #search-form.d-search-layout .sl-closed-summary { font-size:16px; }
  body.main-app #search-form.d-search-layout .sl-summary-detail { font-size:12px; }
}

/* The structured composers use AI's smaller card and heading scale on mobile. */
@media(max-width:700px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { border-radius:22px; padding:16px 18px 12px; }
  body.main-app #search-form.d-search-layout .sl-heading h2,
  body.main-app #search-form.d-search-layout #semantic-search-panel .semantic-query-card label { font-size:16px; }
  body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions,
  body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions button[type='submit'] { width:auto; }
}

/* Equal desktop workspaces: compact filters and a comfortable four-line AI
   prompt, with every submit action aligned to the same lower inset. Expanded
   field editors and Companies remain overlays rather than stretching the card. */
@media(min-width:701px) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout {
    display:flex; flex-direction:column; min-height:224px;
  }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout #standard-search-panel { flex:1; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel { height:224px; min-height:224px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .semantic-query-card {
    display:flex; flex:1; flex-direction:column; gap:0;
  }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel .semantic-query-input-wrap { display:flex; flex:1; flex-direction:column; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-query { flex:1; height:92px; min-height:0; overflow-y:auto; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .d-form-footer { padding-right:24px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-form-footer #semantic-voice-button { width:38px; height:38px; min-height:38px; }
}
@media(pointer:coarse) {
  body.main-app #search-form.d-search-layout { --sl-heading-row-height:44px; }
  body.main-app[data-d-mode] #search-form.d-search-layout .d-form-footer .actions button[type='submit'] { height:44px; min-height:44px; }
}
@media(min-width:701px) and (pointer:coarse) {
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { min-height:238px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel { height:238px; min-height:238px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-form-footer #semantic-voice-button { width:44px; height:44px; min-height:44px; }
}

/* A shared mobile starting point keeps mode changes from moving the workspace. */
@media(max-width:700px) {
  body.main-app[data-d-mode] #search-section.hero { display:block; height:auto; min-height:0; padding:16px 0 12px; }
  body.main-app[data-d-mode] #search-section .hero-form-column { min-height:0; justify-content:flex-start; }
  body.main-app[data-d-mode] #search-section .hero-copy h1 { margin:0; font-size:clamp(28px,8.8vw,38px); line-height:1.08; white-space:nowrap; }
  body.main-app[data-d-mode] #search-section .hero-copy h1 .d-hero-tagline { line-height:1.08; white-space:nowrap; }
  body.main-app[data-d-mode] #search-section .hero-copy p { min-height:2.8em; margin:8px auto 0; font:400 12px/1.4 var(--d-type-sans); }
  body.main-app[data-d-mode] #search-section .d-mode-switch { display:grid; grid-template-columns:1fr 1.45fr 1.3fr; width:min(100%,360px); gap:2px; margin:10px auto; padding:3px; }
  body.main-app[data-d-mode] #search-section .d-mode-switch button { min-width:0; min-height:40px; padding:6px 4px; font:600 11px/1.3 var(--d-type-sans); white-space:nowrap; }
  body.main-app[data-d-mode] #search-form.d-search-layout { --sl-heading-row-height:26px; --sl-heading-gap:8px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { padding:12px 14px; }
  body.main-app #search-form.d-search-layout .sl-heading { gap:6px 10px; }
  body.main-app #search-form.d-search-layout .sl-heading .preset-multi-select > summary { height:30px!important; min-height:30px; }
  body.main-app #search-form.d-search-layout .sl-criteria { gap:8px; }
  body.main-app #search-form.d-search-layout .sl-secondary { gap:6px; margin-top:8px; }
  body.main-app #search-form.d-search-layout .sl-secondary :is(.multi-select > summary,#date-posted,.sl-companies-trigger) { padding:7px 6px; gap:2px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout .d-form-footer { gap:10px; margin-top:8px; }
  body.main-app #search-form.d-search-layout :is(.sl-text-editor textarea,textarea.sl-location-input,#semantic-query) { font:400 16px/20px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout :is(.sl-text-editor textarea,textarea.sl-location-input,#semantic-query)::placeholder { color:var(--d-text-quiet); font:400 14px/20px var(--d-type-sans); opacity:1; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-query { font:400 16px/20px var(--d-type-sans); }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .semantic-query-card { padding:12px 14px 0; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel .semantic-query-card label { margin-bottom:8px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .d-form-footer { padding:8px 14px 12px; }
  body.main-app[data-d-mode='ai'] #search-section .d-examples button { min-height:36px; padding:6px 8px; font:400 14px/20px var(--d-type-sans); }
  body.main-app[data-page='search'] .shell { padding-bottom:0; }
}
@media(max-width:570px) {
  body.main-app #search-form.d-search-layout .sl-criteria { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.main-app #search-form.d-search-layout .sl-location-slot { grid-column:auto; }
  body.main-app #search-form.d-search-layout #standard-search-panel .sl-criteria > .sl-companies-trigger { height:44px!important; min-height:44px; }
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary { grid-template-columns:repeat(6,minmax(0,1fr)); }
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary .filter-field:has(:is(#industry-filter,#investor-filter)) { grid-column:span 3; }
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary .filter-field:has(:is(#stage-filter,#funding-filter)),
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-posted { grid-column:span 2; }
  body.main-app #search-form.d-search-layout .sl-text-slot { height:44px; }
  body.main-app #search-form.d-search-layout .sl-text-editor { padding:11px 10px; }
  body.main-app #search-form.d-search-layout .sl-location-box { min-height:44px; padding:8px 10px; }
}
@media(max-width:700px) and (max-height:650px) {
  body.main-app[data-d-mode] #search-section.hero { padding:4px 0 8px; }
  body.main-app[data-d-mode] #search-section .hero-copy h1 { font-size:clamp(28px,8.4vw,34px); }
  body.main-app[data-d-mode] #search-section .hero-copy p { margin-top:4px; }
  body.main-app[data-d-mode] #search-section .d-mode-switch { margin:6px auto; }
  body.main-app[data-d-mode] #search-form.d-search-layout { --sl-heading-row-height:24px; --sl-heading-gap:6px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { padding:10px 12px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .semantic-query-card { padding:10px 12px 0; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .d-form-footer { padding:8px 12px 10px; }
  body.main-app #search-form.d-search-layout .sl-heading { row-gap:4px; }
  body.main-app #search-form.d-search-layout .sl-criteria { gap:6px; }
  body.main-app #search-form.d-search-layout .sl-secondary { margin-top:6px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout .d-form-footer { margin-top:6px; }
}

@media(max-width:360px) {
  body.main-app #search-form.d-search-layout .sl-secondary :is(.multi-select > summary,#date-posted,.sl-companies-trigger) { font-size:11px; }
}

/* The original Custom introduction needs a third line on the narrowest phones. */
@media(max-width:374px) {
  body.main-app[data-d-mode] #search-section .hero-copy p { min-height:4.2em; }
  body.main-app[data-d-mode='ai'] #search-section .d-examples button { padding-inline:4px; }
}
@media(max-width:700px) and (max-height:600px) {
  body.main-app[data-d-mode] #search-section.hero { padding-top:2px; padding-bottom:6px; }
  body.main-app[data-d-mode] #search-section .hero-copy p { margin-top:3px; }
  body.main-app[data-d-mode] #search-section .d-mode-switch { margin:3px auto; }
  body.main-app[data-d-mode] #search-form.d-search-layout { --sl-heading-gap:4px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout { padding-block:8px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .semantic-query-card { padding-top:8px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel #semantic-query { height:88px; max-height:88px; }
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .d-form-footer { padding-top:4px; padding-bottom:8px; }
  body.main-app #search-form.d-search-layout .sl-heading { row-gap:2px; }
  body.main-app #search-form.d-search-layout .sl-criteria { gap:4px; }
  body.main-app #search-form.d-search-layout .sl-secondary { gap:4px; margin-top:4px; }
  body.main-app:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout .d-form-footer { margin-top:4px; }
}

/* The desktop composer gives more room to the headline and benefits,
   retaining the input and button sizes used throughout search. */
@media(min-width:701px) and (pointer:fine) {
  body.main-app[data-page='search'] #search-form.d-search-layout {
    --sl-heading-row-height:26px; --sl-heading-gap:10px;
  }
  body.main-app[data-page='search']:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout {
    min-height:212px; padding:16px 20px 14px; border-radius:22px;
  }
  body.main-app[data-page='search']:is([data-d-mode='filters'],[data-d-mode='companies']) #search-form.d-search-layout .d-form-footer { margin-top:10px; }
  body.main-app[data-page='search'][data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel {
    height:212px; min-height:212px; border-radius:22px;
  }
  body.main-app[data-page='search'][data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .semantic-query-card { padding:16px 20px 0; }
  body.main-app[data-page='search'][data-d-mode='ai'] #search-form.d-search-layout #semantic-search-panel > .d-form-footer { padding:8px 20px 14px; }
}

/* On phones, keep the editor and results together in the space above the keyboard. */
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-location-mobile-trigger:not([hidden]) {
    display:block; position:absolute; inset:0; z-index:1; width:100%; height:100%; min-height:44px;
    margin:0; padding:0; border:0; border-radius:9px; background:transparent; box-shadow:none;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-trigger:focus-visible { outline:2px solid var(--d-text-primary); outline-offset:2px; }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet[open] {
    position:fixed; inset:auto; display:flex; flex-direction:column; gap:8px;
    box-sizing:border-box; min-width:0; max-width:none; min-height:0; max-height:none; margin:0; padding:12px;
    border:1px solid #dce3e0; border-radius:16px; background:#fff; color:var(--d-text-primary);
    box-shadow:0 12px 40px #17202726; overflow:hidden; text-transform:none;
  }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet::backdrop { background:#17202755; }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet-heading { display:flex; flex:none; align-items:center; justify-content:space-between; gap:12px; }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet-heading h2 { margin:0; font:600 16px/22px var(--d-type-sans); letter-spacing:-.2px; }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet-done {
    flex:none; min-width:64px; min-height:44px; margin:0; padding:10px 14px; border:1px solid var(--d-text-primary);
    border-radius:7px; background:var(--d-text-primary); color:#fff; font:600 13px/20px var(--d-type-sans); box-shadow:none;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-box {
    position:relative; inset:auto; flex:none; min-height:62px; padding:8px 10px; box-shadow:none;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-box.is-editing .sl-location-flow {
    max-height:var(--sl-mobile-location-flow,132px); scroll-padding:3px; touch-action:pan-y;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog :is(.sl-location-tag,textarea.sl-location-input) { min-height:44px; }
  body.main-app #search-form.d-search-layout #sl-location-mobile-dialog :is(textarea.sl-location-input,.sl-location-tag,.sl-location-option-copy > span) { font:400 16px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog textarea.sl-location-input { max-height:var(--sl-mobile-location-flow,132px); padding:11px 0; }
  body.main-app #search-form.d-search-layout #sl-location-mobile-dialog textarea.sl-location-input::placeholder { font:inherit; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-tag { padding:6px 10px; gap:8px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-tag > span:last-child { font-size:20px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-popup {
    position:static; inset:auto; display:flex; flex:1; flex-direction:column; min-height:0; width:auto; max-height:none;
    padding:0; border:0; border-radius:0; box-shadow:none; overflow:hidden;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-options {
    flex:1; min-height:0; max-height:none; overflow-y:auto; overscroll-behavior:contain; touch-action:pan-y;
    scrollbar-width:thin;
  }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-option { min-height:56px; padding:9px 10px; font-size:16px; line-height:22px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-option > svg { width:20px; height:20px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-option small { font-size:12px; line-height:18px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog .sl-location-hint { flex:none; margin-top:8px; padding:8px 0 0; font-size:12px; line-height:18px; }
  body.main-app #search-form.d-search-layout .sl-mobile-sheet.sl-mobile-sheet-short { padding:10px; gap:6px; }
  body.main-app #search-form.d-search-layout .sl-location-mobile-dialog.sl-mobile-sheet-short .sl-location-hint { display:none; }

  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-company-picker {
    position:static; inset:auto; display:flex; flex:1; flex-direction:column; width:100%; max-width:none; min-height:0;
    margin:0; padding:0; border:0; border-radius:0; box-shadow:none; overflow:hidden;
  }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-tabs { flex:none; padding:0 0 8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-tabs button { min-height:44px; padding:6px 3px; font:500 13px/18px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-content { flex:1; min-height:0; height:auto; padding:12px 0 0; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog #sl-panel-add[hidden] { display:flex!important; flex-direction:column; top:12px; bottom:0; left:0; right:0; height:auto; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-database-query { height:44px; min-height:44px; margin-bottom:10px; font:400 16px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-database-row { min-height:60px; gap:10px; padding:8px 2px; font:400 16px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog :is(.sl-database-row small,.sl-source-copy small) { font:400 12px/18px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-source-name { font:500 16px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog :is(.sl-source-view,.sl-source-add,.sl-import,.sl-add-companies) { min-height:44px; font-size:13px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-entry-toolbar { min-height:44px; margin-bottom:8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-table-scroll { flex:0 1 auto; min-height:44px; max-height:216px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-table-scroll input { height:44px; font:400 16px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-table-scroll :is(th:last-child,td button) { width:44px; min-height:44px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-entry-footer { padding-top:8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-selected { flex:none; padding:0; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-selected > summary { min-height:44px; padding:11px 0; font:400 13px/22px var(--d-type-sans); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-selected-rows { margin:0 0 8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer { flex:none; min-height:36px; padding:8px 0 0; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer .sl-done { display:none; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog.sl-mobile-sheet-compact .sl-picker-content { padding-top:8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog.sl-mobile-sheet-compact #sl-panel-add[hidden] { top:8px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog.sl-mobile-sheet-compact .sl-selected,
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog.sl-mobile-sheet-compact.sl-company-editing .sl-entry-toolbar { display:none; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog.sl-mobile-sheet-short.sl-company-editing :is(.sl-picker-footer,.sl-table-scroll thead) { display:none; }
}

/* Keep Posted's chevron visible after the compact controls reset backgrounds. */
body.main-app #search-form.d-search-layout .sl-posted { position:relative; }
body.main-app #search-form.d-search-layout .sl-posted::after {
  content:''; position:absolute; top:50%; right:12px; width:6px; height:6px;
  margin-top:-5px; border-right:1.5px solid #82908d; border-bottom:1.5px solid #82908d;
  transform:rotate(45deg); pointer-events:none;
}
body.main-app #search-form.d-search-layout .sl-secondary #date-posted {
  appearance:none; -webkit-appearance:none; background-image:none; padding-right:30px;
}

/* Salary shares row two with company filters and Posted. */
body.main-app #search-form.d-search-layout .sl-salary-field { min-width:0; }
body.main-app #search-form.d-search-layout #salary-filter { position:relative; }
body.main-app #search-form.d-search-layout #salary-filter .sl-salary-panel { left:auto; right:0; width:320px; max-width:calc(100vw - 48px); padding:16px; }
body.main-app #search-form.d-search-layout .sl-salary-heading { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:8px; }
body.main-app #search-form.d-search-layout .sl-salary-heading :is(label,output) { margin:0; padding:0; color:#52615f; font:400 12px/20px var(--d-type-sans); text-transform:none; letter-spacing:0; }
body.main-app #search-form.d-search-layout .sl-salary-heading output { white-space:nowrap; font-variant-numeric:tabular-nums; }
body.main-app #search-form.d-search-layout #salary-min-slider { --salary-progress:0%; display:block; appearance:none; -webkit-appearance:none; width:100%; height:28px; min-height:28px; margin:0; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; cursor:pointer; accent-color:#52615f; }
body.main-app #search-form.d-search-layout #salary-min-slider::-webkit-slider-runnable-track { height:3px; border-radius:3px; background:linear-gradient(to right,#52615f var(--salary-progress),#dce3e0 var(--salary-progress)); }
body.main-app #search-form.d-search-layout #salary-min-slider::-moz-range-track { height:3px; border-radius:3px; background:#dce3e0; }
body.main-app #search-form.d-search-layout #salary-min-slider::-moz-range-progress { height:3px; background:#52615f; }
body.main-app #search-form.d-search-layout #salary-min-slider::-webkit-slider-thumb { appearance:none; -webkit-appearance:none; width:14px; height:14px; margin-top:-5.5px; border:0; border-radius:50%; background:#52615f; }
body.main-app #search-form.d-search-layout #salary-min-slider::-moz-range-thumb { width:14px; height:14px; border:0; border-radius:50%; background:#52615f; }
body.main-app #search-form.d-search-layout #salary-min-slider:focus-visible { outline:2px solid #82908d; outline-offset:3px; border-radius:4px; }
body.main-app #search-form.d-search-layout .sl-salary-endpoints { display:flex; justify-content:space-between; color:#82908d; font:400 11px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout #salary-undisclosed-toggle { display:flex; align-items:center; justify-content:space-between; gap:12px; width:100%; min-height:44px; margin-top:12px; padding:10px 0 0; border:0; border-top:1px solid #e6ebe8; border-radius:0; background:transparent; color:#52615f; text-align:left; font:400 12px/20px var(--d-type-sans); letter-spacing:0; text-transform:none; }
body.main-app #search-form.d-search-layout .sl-salary-switch { position:relative; flex:none; width:32px; height:20px; border-radius:10px; background:#bbc4c0; }
body.main-app #search-form.d-search-layout .sl-salary-switch::after { content:''; position:absolute; left:3px; top:3px; width:14px; height:14px; border-radius:50%; background:#fff; }
body.main-app #search-form.d-search-layout [aria-pressed='true'] .sl-salary-switch { background:#52615f; }
body.main-app #search-form.d-search-layout [aria-pressed='true'] .sl-salary-switch::after { left:15px; }
body.main-app #search-form.d-search-layout #salary-filter.sl-salary-active > summary { color:var(--d-text-primary); }
@media(max-width:570px) {
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary .filter-field,
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary .sl-posted { grid-column:auto!important; }
  body.main-app #search-form.d-search-layout #salary-filter .sl-salary-panel { left:0; right:auto; }
}
body.main-app #search-form.d-search-layout #salary-filter > summary { position:relative; padding-right:26px; }
body.main-app #search-form.d-search-layout #salary-filter > summary::after { content:''; position:absolute; right:11px; top:50%; width:6px; height:6px; margin-top:-5px; border-right:1.5px solid #82908d; border-bottom:1.5px solid #82908d; transform:rotate(45deg); }

/* Unified search has two modes and consistent secondary controls. */
body.main-app #search-form.d-search-layout :is(.sl-secondary .multi-select > summary,#date-posted) {
  height:36px!important; min-height:36px; padding:7px 10px; font:400 13px/20px var(--d-type-sans);
}
body.main-app #search-form.d-search-layout .sl-picker-hint { flex:none; margin:0; padding:12px 14px 4px; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
@media(max-width:700px) {
  body.main-app[data-d-mode] #search-section .d-mode-switch { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-hint { padding:0 0 8px; }
}

@media(max-width:700px) {
  body.main-app #search-form.d-search-layout :is(.sl-secondary .multi-select > summary,#date-posted) { height:44px!important; min-height:44px; padding:11px 10px; }
}

/* The workspace keeps one outer anchor and canvas before and after search. */
body.main-app[data-page='search'][data-d-mode] .shell { display:grid; grid-template-columns:minmax(0,1fr); align-content:start; }
body.main-app[data-page='search'][data-d-mode] #search-section.hero { display:block; min-width:0; min-height:0; padding:14px 0; }
body.main-app[data-page='search'][data-d-mode] #search-section.hero .hero-form-column { min-height:0; }

/* Reserve example space where needed without exposing AI prompts in other modes. */
body.main-app[data-page='search']:is([data-d-mode='filters'],[data-d-mode='companies']) #search-section.hero .d-examples {
  visibility:hidden; pointer-events:none;
}

/* Search results keep the opening workspace's scale and spacing. */
@media(min-width:701px) {
  body.main-app[data-page='search'] { --sl-example-height:28px; --sl-example-gap:10px; }
  body.main-app[data-page='search'][data-d-mode] .shell {
    width:min(100% - 64px,1180px); min-height:calc(100svh - 69px); padding:clamp(24px,3svh,32px) 0 14px;
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero { padding:0; }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples {
    display:flex; flex-wrap:nowrap; width:100%; max-width:100%; min-width:0; height:var(--sl-example-height); overflow:hidden; gap:6px; margin:var(--sl-example-gap) auto 0;
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples button { padding:5px 10px; white-space:nowrap; }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .hero-copy h1 {
    margin:0; font-size:var(--sl-workspace-heading-size,clamp(34px,calc(10svh - 29px),56px));
    line-height:1.06;
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .hero-copy p {
    height:auto; min-height:0; max-width:var(--sl-workspace-copy-width,760px);
    margin:var(--sl-workspace-copy-gap,16px) auto 0;
    font-size:var(--sl-workspace-copy-size,clamp(12px,calc(.5svh + 9px),14px));
    line-height:var(--sl-workspace-copy-line,1.5);
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-mode-switch {
    margin:var(--sl-workspace-tabs-margin,24px auto 16px);
  }
}
@media(min-width:701px) {
  body.main-app[data-page='search'] {
    --sl-workspace-heading-size:clamp(44px,7svh,60px);
    --sl-workspace-copy-width:800px; --sl-workspace-copy-gap:12px;
    --sl-workspace-copy-size:15px; --sl-workspace-copy-line:22px;
    --sl-workspace-tabs-margin:18px auto 12px;
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .hero-copy h1 { letter-spacing:-.055em; }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .hero-form-column { width:min(100%,800px); }
}
@media(min-width:701px) and (max-height:800px) {
  body.main-app[data-page='search'] {
    --sl-workspace-heading-size:42px; --sl-workspace-copy-gap:6px;
    --sl-workspace-tabs-margin:6px auto;
    --sl-example-gap:6px;
  }
}
body.main-app[data-page='search'][data-d-mode] #search-section .hero-copy h1 br { display:block; }

/* Compact company dropdown: search, add a new company, or import a file. */
body.main-app #search-form.d-search-layout .sl-company-picker .sl-tabs[hidden] { display:none!important; }
body.main-app #search-form.d-search-layout .sl-company-picker { border-radius:10px; }
body.main-app #search-form.d-search-layout .sl-picker-content { height:279px; padding:10px; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company { display:flex; flex:none; align-items:center; gap:10px; width:100%; padding:10px 4px; border:0; border-top:1px solid #e6e8e2; background:#fff; color:var(--d-text-primary); text-align:left; font:400 13px/19px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-create-company[hidden] { display:none!important; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company > span:first-child { display:grid; place-items:center; width:24px; height:24px; border:1px solid #dce3e0; border-radius:6px; font-size:20px; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company strong, body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company small { display:block; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company small { color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-back { border:0; background:transparent; padding:6px 0; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-entry-title { font:500 13px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='single'] .sl-table-scroll tbody tr:nth-child(n+2) { display:none; }
body.main-app #search-form.d-search-layout .sl-picker-footer { gap:8px; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-import { padding:7px 9px; white-space:nowrap; }
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-company-picker .sl-tabs[hidden] { display:none!important; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-content { padding-top:0; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-create-company { min-height:52px; }
}

/* An empty trailing row is available for another company but is optional. */
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='single'] .sl-table-scroll tbody tr:nth-child(n+2) { display:table-row; }
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='single'] .sl-table-scroll tbody tr[hidden] { display:none; }
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='single'] .sl-add-companies { display:none; }
body.main-app #search-form.d-search-layout .sl-optional-row:not(:focus-within) :is(td,input,button) { background:#f6f8f7; color:#879892; }
body.main-app #search-form.d-search-layout .sl-optional-row:not(:focus-within) input::placeholder { color:#879892; }
body.main-app #search-form.d-search-layout .sl-optional-row button { visibility:hidden; }

/* Keep manual company entry compact and distinguish the optional next row. */
body.main-app #search-form.d-search-layout .sl-company-picker:not(.sl-company-mobile-dialog *) .sl-picker-content:has(#sl-panel-add:not([hidden])) { height:auto; }
body.main-app #search-form.d-search-layout .sl-table-scroll th { padding:4px 10px; background:#fff; font:500 12px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-table-scroll input { height:36px; padding:8px 10px; font:400 12px/20px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-entry-footer { margin-top:0; padding-top:6px; }
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-table-scroll input { height:44px; font:400 16px/22px var(--d-type-sans); }
}

/* Company options follow the compact filter-menu scale. */
@media(min-width:701px) and (pointer:fine) {
  body.main-app #search-form.d-search-layout .sl-company-picker { border-color:#d4ddda; border-radius:7px; box-shadow:0 16px 34px #1720271c; }
  body.main-app #search-form.d-search-layout .sl-picker-content { height:236px; padding:7px; }
  body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query { height:32px; padding:6px 8px; border-radius:5px; font-size:12px; line-height:18px; margin-bottom:4px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row { min-height:36px; padding:4px 6px; gap:8px; border:1px solid transparent; border-radius:5px; font-size:12px; line-height:16px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row + .sl-database-row { border-top-color:transparent; }
  body.main-app #search-form.d-search-layout .sl-database-row:hover { background:#f6f8f7; border-color:#e2e8e6; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row:has(input:checked) { background:#f1f3f2; border-color:#d2d8d6; }
  body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-row input,
  body.main-app .ls-workspace .sl-database-row input { width:13px; height:13px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-database-row > .sl-company-mark { width:20px; height:20px; }
  body.main-app #search-form.d-search-layout .sl-database-row small { font-size:10.5px; line-height:14px; }
  body.main-app #search-form.d-search-layout .sl-picker-footer { padding:7px; gap:6px; font-size:11px; }
  body.main-app #search-form.d-search-layout .sl-picker-footer :is(.sl-import,.sl-done) { min-height:30px; padding:5px 8px; border-radius:5px; font-size:11px; line-height:18px; }
  body.main-app #search-form.d-search-layout .sl-selected { padding:6px 8px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company { padding:7px 6px; gap:8px; font-size:12px; line-height:17px; }
  body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company small { font-size:11px; line-height:16px; }
}

/* Company-entry labels share the same quiet typography as the back link. */
body.main-app #search-form.d-search-layout .sl-entry-title { color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-draft-count { display:none; }
body.main-app #search-form.d-search-layout .sl-entry-footer:has(.sl-add-companies[disabled]),
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='single'] .sl-entry-footer { display:none; }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-table-scroll input:is(:focus,:focus-visible) { outline:none; box-shadow:none; }
body.main-app #search-form.d-search-layout .sl-table-scroll th { color:var(--d-text-secondary); font-weight:400; }
body.main-app :is(#search-form.d-search-layout,.ls-workspace) .sl-create-company strong { color:var(--d-text-secondary); font-weight:400; }
body.main-app #search-form.d-search-layout .sl-company-picker .sl-table-scroll input:is(:focus,:focus-visible) { outline:none!important; box-shadow:none!important; }

/* Match the company search field to the Industry and Investor menus. */
@media(min-width:701px) {
  body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query { height:36px; min-height:36px; padding:8px 10px; margin-bottom:6px; border-radius:5px; font:400 11px/18px var(--d-type-sans); }
}
body.main-app #search-form.d-search-layout .sl-company-picker .sl-database-query:is(:focus,:focus-visible) { outline:none!important; box-shadow:none; border-color:#b7c5c1; }
body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-content:has(#sl-panel-add:not([hidden])) { flex:0 1 auto; height:auto; }
body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer { margin-top:auto; }

body.main-app #search-form.d-search-layout .sl-import-actions { display:inline-flex; align-items:center; flex:none; }

/* Both modes place their guidance on the footer's lower text baseline. */
@media(min-width:701px) {
  body.main-app[data-d-mode='ai'] #search-form.d-search-layout .d-composer-help { align-self:flex-end; line-height:16px; margin-bottom:.5px; }
}

/* Admin bulk selection uses the filter menus' compact text action. */
body.main-app #search-form.d-search-layout .sl-select-all { align-self:center; flex:none; padding:4px 6px; margin:0; border:0; border-radius:4px; background:transparent; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); cursor:pointer; }
body.main-app #search-form.d-search-layout .sl-select-all:hover:not(:disabled) { background:#f1f3f2; }
body.main-app #search-form.d-search-layout .sl-select-all:disabled { opacity:.45; cursor:default; }
@media(pointer:coarse) {
  body.main-app #search-form.d-search-layout .sl-select-all { min-height:44px; }
}

/* Import counts stay close to the editable rows. */
body.main-app #search-form.d-search-layout .sl-review-summary { flex:none; margin:8px 0 0; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-import-invalid input[aria-invalid='true'] { background:#fff4f1; }
body.main-app #search-form.d-search-layout .sl-import-duplicate input { color:var(--d-text-secondary); background:#f6f8f7; }
body.main-app #search-form.d-search-layout .sl-company-picker[data-entry-mode='import'] .sl-entry-footer { display:flex; }

/* Duplicate and incomplete rows share the same restrained red treatment. */
body.main-app #search-form.d-search-layout :is(.sl-import-invalid,.sl-import-duplicate) :is(td,input,button) { background:#fff1ee; color:#934f43; }

/* Company-entry navigation and header use the filter menu hierarchy. */
body.main-app #search-form.d-search-layout .sl-table-scroll th { background:#e9eeec; }
body.main-app #search-form.d-search-layout .sl-edit-companies { flex:none; align-self:flex-start; padding:6px 4px; border:0; border-radius:4px; background:transparent; color:var(--d-text-secondary); font:400 12px/18px var(--d-type-sans); text-decoration:underline; text-underline-offset:3px; }
body.main-app #search-form.d-search-layout .sl-edit-companies:hover { background:#f1f3f2; }

/* Compact labels keep every footer action on the same line. */
body.main-app #search-form.d-search-layout .sl-picker-footer { display:flex; flex-wrap:nowrap; align-items:center; gap:6px; }
body.main-app #search-form.d-search-layout .sl-footer-copy { display:contents; }
body.main-app #search-form.d-search-layout .sl-selection-count { flex:1; min-width:0; white-space:nowrap; }
body.main-app #search-form.d-search-layout .sl-picker-footer :is(.sl-edit-companies,.sl-select-all,.sl-import) { flex:none; align-self:center; padding:5px 4px; margin:0; white-space:nowrap; font:400 11px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-import { border:0; background:transparent; text-decoration:underline; text-underline-offset:3px; }
body.main-app #search-form.d-search-layout .sl-company-picker:has(#sl-panel-add:not([hidden])) .sl-edit-companies { display:none; }
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer { gap:5px; font-size:11px; }
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer :is(.sl-edit-companies,.sl-select-all,.sl-import) { font-size:12px; padding-inline:3px; }
}

/* Keep selection controls together and editing beside the import button. */
body.main-app #search-form.d-search-layout .sl-selection-count { order:0; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-select-all { order:1; margin-right:auto; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-edit-companies { order:2; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-import-actions { order:3; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-done { order:4; }
body.main-app #search-form.d-search-layout .sl-picker-footer:has(.sl-select-all) .sl-selection-count { flex:none; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-import { padding:5px 8px; min-height:30px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-text-primary); text-decoration:none; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-import:hover { background:#f6f8f7; }
@media(max-width:700px), (pointer:coarse) {
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-picker-footer .sl-import { min-height:44px; padding-inline:7px; }
}

body.main-app #search-form.d-search-layout .sl-picker-message { color:#a33b2b; }

/* Give tablet filters room for their labels instead of clipping six across. */
@media(min-width:701px) and (max-width:760px) {
  body.main-app[data-d-mode='filters'] #search-form.d-search-layout .sl-secondary {
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

/* Fit full examples at wider widths while preserving entered-text sizing. */
@media(min-width:701px) {
  body.main-app #search-form.d-search-layout :is(.sl-text-editor textarea,textarea.sl-location-input)::placeholder { font-size:12px; }
}

/* Admin list navigation shares the existing single-row picker footer. */
body.main-app #search-form.d-search-layout .sl-import-actions { gap:6px; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-lists { flex:none; white-space:nowrap; min-height:30px; padding:5px 8px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-text-primary); font:400 11px/18px var(--d-type-sans); }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-lists:hover { background:#f6f8f7; }
body.main-app #search-form.d-search-layout .sl-picker-footer .sl-lists:focus-visible { outline:2px solid #4b61ff; outline-offset:2px; }
@media(max-width:700px) {
  body.main-app #search-form.d-search-layout .sl-company-mobile-dialog .sl-lists { min-height:44px; padding-inline:7px; font-size:12px; }
}

/* Precision examples share the AI example row and wrap instead of clipping. */
body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples {
  display:flex; visibility:visible; pointer-events:auto; flex-wrap:wrap;
  height:auto; overflow:visible; justify-content:center; gap:8px;
}
body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples > span {
  color:#7b878c; font:400 11px/1.4 var(--d-type-sans); letter-spacing:0;
}
body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples button {
  padding:6px 10px; border:1px solid #e0e5e4; border-radius:999px;
  background:#fff; font-size:11px; white-space:normal;
}
body.main-app #search-section.hero .d-examples button[hidden] { display:none; }
@media(max-width:700px) {
  body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples {
    display:grid; grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples > span { display:none; }
}

/* Use one typeface for the search examples. */
body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples button {
  font:400 10px/16px var(--d-type-sans); padding:5px 7px;
}
body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples > span {
  font:400 9px/16px var(--d-type-sans); letter-spacing:0; text-transform:none; margin-right:2px;
}
@media(min-width:701px) {
  body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples {
    flex-wrap:nowrap; gap:6px;
  }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples button { white-space:nowrap; }
}

/* Remove this rule to show the Precision examples again. */
body.main-app[data-page='search'][data-d-mode='filters'] #search-section.hero .d-examples {
  display:none;
}

body.main-app.d-has-results[data-page='search'][data-d-mode] #search-section.hero .d-examples {
  display:none;
}

/* Desktop product story beneath the search workspace. */
.landing-story { display:none; }
@media(min-width:0px) {
body.main-app[data-page='search']:not(.d-has-results) .landing-story { display:block; width:100%; font-family:var(--d-type-sans); color:var(--d-text-primary); }
.ls-eyebrow { font:500 10px/1.5 var(--d-type-sans); letter-spacing:1.7px; color:#52746b; }
.landing-story h2 { font:500 40px/1.13 var(--d-type-sans); letter-spacing:-1.7px; margin:20px 0; }
.landing-story p { font:400 15px/1.8 var(--d-type-sans); color:#697570; }
.ls-feature { display:grid; grid-template-columns:1fr 1.15fr; align-items:center; gap:90px; padding:75px 35px; }
.ls-copy p { max-width:390px; margin-bottom:0; }
.ls-reverse .ls-copy { order:2; }.ls-reverse .ls-visual { order:1; }
.ls-visual { min-width:0; padding:28px; background:#f6f8f5; border:1px solid #dce4dd; border-radius:16px; box-shadow:0 16px 40px #304b3910; }
.ls-visual-label { color:#718077; font-size:11px; margin-bottom:24px; }
.ls-orbit { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:15px; padding:12px 0; }.ls-orbit>span { padding:12px 17px; background:white; border:1px solid #e0e7e0; border-radius:25px; color:#65756a; font-size:12px; }.ls-orbit>b { width:100%; text-align:center; padding:18px; font-size:32px; letter-spacing:-1.5px; }.ls-orbit>b span { display:block; margin-top:5px; font-size:11px; font-weight:400; letter-spacing:0; color:#738078; }
.ls-query-prompt { font-size:22px; line-height:1.4; letter-spacing:-.5px; margin-bottom:26px; }.ls-field { display:flex; flex-wrap:wrap; gap:6px; margin:18px 0; }.ls-field small { width:100%; font-size:9px; letter-spacing:1px; color:#748078; margin-bottom:3px; }.ls-field>span { background:white; border:1px solid #dce4dd; border-radius:5px; padding:7px 9px; font-size:11px; }.ls-excerpt { background:white; border-radius:8px; padding:18px; font-size:13px; line-height:1.8; color:#79827b; }.ls-excerpt mark { background:#deeee3; color:#335a46; padding:2px; }
.ls-chart-head { display:flex; justify-content:space-between; align-items:center; margin:30px 0; font-size:15px; }.ls-signals svg { width:100%; height:auto; }.ls-signal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:25px; font-size:10px; color:#7a867e; }.ls-signal-grid b { display:block; margin-top:8px; font-size:11px; font-weight:500; color:#3f5c4d; }
.ls-personal { padding:85px 35px; text-align:center; }.ls-personal h2 { font-size:36px; }.ls-tools { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin-top:45px; text-align:left; }.ls-tools article { border-top:1px solid #cbd8ce; padding-top:22px; }.ls-tools article>span { font-size:11px; color:#84998b; }.ls-tools h3 { font-size:17px; font-weight:500; margin-top:20px; }.ls-tools p { font-size:13px; }
.ls-close { margin:25px 0 70px; padding:65px 30px; border-radius:18px; background:#e8eee7; text-align:center; }.ls-close h2 { font-size:36px; }.ls-close a { display:inline-flex; gap:36px; margin-top:15px; padding:15px 22px; border-radius:7px; background:#223c31; color:white; text-decoration:none; font-size:13px; }.ls-close a:hover { background:#345645; }.ls-footer { display:flex; align-items:center; gap:30px; padding:0 0 35px; color:#79867c; font-size:11px; }.ls-footer strong { color:#263e31; font-size:20px; letter-spacing:-1px; }.ls-footer a { margin-left:auto; color:inherit; text-decoration:none; }
}

/* Match the landing story to the search workspace's compact, neutral surfaces. */
@media(min-width:0px) {
  body.main-app[data-page='search']:not(.d-has-results) .landing-story { width:min(100%,1000px); margin:0 auto; }
  .landing-story h2 { font-size:34px; line-height:1.14; letter-spacing:-1.25px; margin:16px 0; }
  .landing-story .ls-copy h2 { margin-top:0; text-wrap:balance; }
  .landing-story p { font-size:14px; line-height:1.75; color:var(--d-text-secondary); }
  .landing-story .ls-eyebrow { font-size:10px; letter-spacing:1.2px; color:#39736b; }
  .landing-story .ls-feature { grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:56px; padding:56px 0; }
  .landing-story .ls-reverse { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); }
  .landing-story .ls-visual { padding:24px; background:#fff; border-color:#dfe4e1; border-radius:14px; box-shadow:0 4px 18px #20372d05; }
  .landing-story .ls-visual-label { font-size:11px; margin-bottom:22px; color:#718078; }
  .landing-story .ls-orbit { gap:10px; padding:4px 0; }
  .landing-story .ls-orbit>span { padding:9px 13px; background:#f6f8f6; font-size:11px; }
  .landing-story .ls-orbit>b { padding:14px; font-size:29px; }
  .landing-story .ls-query-prompt { font-size:20px; line-height:1.4; margin-bottom:22px; }
  .ls-query .ls-field { gap:4px; }
  .ls-query .ls-field>span { padding:4px 5px; font-size:10px; background:#f8f9f8; border-color:#dfe4e1; border-radius:6px; }
  .landing-story .ls-excerpt { background:#f5f8f6; padding:16px; border:1px solid #e8eee9; font-size:12px; }
  .landing-story .ls-chart-head { margin:24px 0; font-size:14px; }
  .landing-story .ls-signal-grid { padding-top:18px; border-top:1px solid #e7ece8; gap:10px; }
  .landing-story .ls-personal { padding:58px 0; }
  .landing-story .ls-personal h2 { font-size:30px; }
  .landing-story .ls-tools { gap:16px; margin-top:32px; }
  .landing-story .ls-tools article { background:#fff; border:1px solid #dfe4e1; border-radius:12px; padding:24px; }
  .landing-story .ls-tools article>span { display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; border-radius:7px; background:#edf3ef; color:#39736b; }
  .landing-story .ls-tools h3 { font-size:15px; margin:18px 0 10px; letter-spacing:-.3px; }
  .landing-story .ls-tools p { font-size:12px; margin:0; line-height:1.75; }
  .landing-story .ls-close { margin:16px 0 36px; padding:48px 24px; background:#f5f8f6; border:1px solid #dce5df; border-radius:16px; }
  .landing-story .ls-close h2 { font-size:30px; }
  .landing-story .ls-close a { background:#192127; padding:13px 20px; border-radius:7px; font-size:12px; }
  .landing-story .ls-close a:hover { background:#2d4840; }
  .landing-story .ls-close a:focus-visible,.landing-story .ls-footer a:focus-visible { outline:2px solid #39736b; outline-offset:4px; }
  .landing-story .ls-footer { padding-bottom:28px; }
}

@media(min-width:701px) {
  .ls-query [data-example-field="titles"] { display:grid; grid-template-columns:repeat(3,minmax(0,auto)); justify-content:start; }
  .ls-query [data-example-field="titles"] small { grid-column:1 / -1; }
  .ls-query [data-example-field="titles"]>span { font-size:11px; }
}

.ls-chart-caption,.ls-chart-dates { font:400 10px/1.5 var(--d-type-sans); color:#718078; }
.landing-story .ls-chart-status { display:grid; place-items:center; min-height:155px; margin:0; font-size:12px; }
.ls-chart-dates { display:flex; justify-content:space-between; }
.main-app .ls-chart-history .cp-chart { aspect-ratio:auto; height:155px; min-height:0; }
.main-app .ls-chart-history .cp-chart-labels { padding-inline:52px 12px; }
.main-app .ls-chart-history .cp-chart-line { stroke:#39766a; }
.main-app .ls-chart-history .cp-chart-dot,.main-app .ls-chart-history .cp-chart-start-dot { fill:#39766a; }

.ls-company-name { display:flex; align-items:center; gap:10px; }
.ls-company-name img { width:24px; height:24px; flex:none; object-fit:contain; border-radius:4px; }

@media(min-width:0px) {
  .ls-company-row { display:flex; align-items:center; gap:12px; padding:14px 0; border-bottom:1px solid #edf0ee; font-size:13px; }
  .ls-company-row img,.ls-role-company img { object-fit:contain; border-radius:4px; }
  .ls-company-row>span { margin-left:auto; color:#728078; font-size:11px; }
  .ls-role-company { display:flex; align-items:center; gap:8px; font-size:11px; margin-bottom:12px; }
  .ls-excerpt>a { font-size:14px; color:#264f43; text-decoration:none; font-weight:500; }
  .landing-story .ls-excerpt p { font-size:12px; }
  .ls-excerpt small { font-size:10px; color:#728078; }
  .landing-story .ls-signal-grid>span+span { border-left:1px solid #dfe5e1; padding-left:12px; }
  .ls-mini-preview { min-height:115px; margin-top:20px; padding:14px; background:#f6f8f6; border:1px solid #e5eae6; border-radius:7px; display:flex; flex-wrap:wrap; align-content:start; gap:7px; }
  .ls-mini-preview small { width:100%; font-size:8px; letter-spacing:.6px; color:#728078; margin-bottom:7px; }
  .ls-mini-preview span { font-size:10px; line-height:1.5; color:#526b62; }
  .ls-mini-preview span+span:before { content:'· '; }
}

/* Personal workflow follows the same alternating feature rhythm. */
@media(min-width:0px) {
  .landing-story .ls-personal { text-align:left; }
  .landing-story .ls-personal h2 { font-size:34px; }
  .ls-workspace-head { display:flex; justify-content:space-between; align-items:center; gap:16px; padding-bottom:20px; border-bottom:1px solid #e7ece8; }
  .ls-workspace-head strong { font-size:15px; font-weight:500; letter-spacing:-.3px; }
  .ls-workspace-head>span { color:#7a867e; font-size:10px; }
  .ls-workspace-block { padding:20px 0; border-bottom:1px solid #e7ece8; }
  .ls-workspace-block:last-child { padding-bottom:0; border-bottom:0; }
  .ls-workspace-label { display:flex; align-items:center; gap:9px; margin-bottom:14px; color:#718078; font-size:9px; letter-spacing:.8px; }
  .ls-workspace-label>span { color:#39736b; font-size:10px; letter-spacing:0; }
  .ls-workspace-companies { padding:6px; border:1px solid #dfe4e1; border-radius:7px; }
  .ls-workspace-companies img { border-radius:3px; }
  .ls-workspace-role { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:15px; background:#f5f8f6; border:1px solid #e5ebe7; border-radius:8px; }
  .ls-workspace-role strong { display:block; font-size:12px; font-weight:500; }
  .ls-workspace-role small { display:block; margin-top:6px; color:#718078; font-size:10px; }
  .ls-workspace-role svg { flex:none; color:#39736b; }
  .ls-workspace-saved { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; margin-top:13px; font-size:10px; }
  .ls-workspace-saved>span { color:#718078; }
  .ls-workspace-saved strong { font-weight:500; color:#526b62; }
}

@media(min-width:0px) {
  .landing-story .ls-company-row { gap:10px; }
  .ls-company-identity { flex:1; min-width:0; }
  .ls-company-identity strong { display:block; font-size:12px; font-weight:500; }
  .ls-company-identity small { display:block; font-size:10px; color:#728078; margin-top:4px; }
  .ls-backers { display:flex; align-items:center; padding-left:4px; }
  .ls-backers>span { width:27px; height:27px; margin-left:-4px; border:2px solid white; border-radius:50%; background:#f2f5f3; display:flex; align-items:center; justify-content:center; box-shadow:0 0 0 1px #e0e6e2; }
  .ls-backers img { width:18px; height:18px; object-fit:contain; border-radius:50%; }
  .ls-backers .ls-backer-more { font-size:9px; color:#63766b; }
  .ls-opening-count { min-width:55px; text-align:right; color:#39736b; text-decoration:none; }
  .ls-opening-count b { display:block; font-size:13px; font-weight:600; }
  .ls-opening-count small { display:block; font-size:9px; margin-top:3px; color:#728078; }
  .ls-opening-count:hover b { text-decoration:underline; }
}

.landing-story a.ls-company-row { color:inherit; text-decoration:none; border-radius:6px; transition:background .15s; }
.landing-story a.ls-company-row:hover { background:#f1f6f3; }
.landing-story a.ls-company-row:focus-visible,.landing-story .ls-action:focus-visible { outline:2px solid #39736b; outline-offset:4px; }
.landing-story .ls-action { display:inline-flex; align-items:center; gap:24px; margin-top:22px; padding:11px 16px; border:1px solid #d4dfd8; border-radius:7px; background:white; color:#315f50; font:500 12px/1.5 var(--d-type-sans); text-decoration:none; cursor:pointer; }
.landing-story .ls-action:hover { background:#edf4ef; border-color:#7b9f8f; }
.landing-story .ls-company-row>.ls-opening-count { margin-left:0; padding:0; border:0; }
.landing-story .ls-universe-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:4px 12px; min-height:32px; margin-bottom:8px; }
.ls-rotation-toggle { min-height:32px; padding:4px 8px; background:transparent; border:0; border-radius:4px; color:#39736b; font:inherit; cursor:pointer; }
.ls-rotation-toggle:hover { text-decoration:underline; }
.ls-rotation-toggle:focus-visible { outline:2px solid #39736b; }
.ls-company-list { --ls-company-row-height:64px; height:calc(var(--ls-company-row-height) * 4); overflow:clip; }
.landing-story .ls-company-track .ls-company-row { height:var(--ls-company-row-height); box-sizing:border-box; }
.landing-story .ls-company-track .ls-company-row:focus-visible { outline-offset:-2px; }
.ls-company-track .ls-company-identity strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* Phone and tablet landing flow. */
@media(max-width:1023px) {
  body.main-app[data-page='search']:not(.d-has-results) .landing-story { width:100%; min-width:0; }
  .landing-story .ls-feature,.landing-story .ls-reverse { grid-template-columns:minmax(0,1fr); gap:26px; padding:36px 0; }
  .landing-story .ls-copy,.landing-story .ls-reverse .ls-copy { order:0; }
  .landing-story .ls-visual,.landing-story .ls-reverse .ls-visual { order:1; }
  .landing-story h2,.landing-story .ls-personal h2 { font-size:30px; letter-spacing:-1px; }
  .landing-story .ls-copy p { max-width:600px; font-size:15px; }
  .landing-story .ls-visual { padding:20px; }
  .landing-story .ls-action { min-height:44px; font-size:13px; }
  .landing-story .ls-close { padding:32px 20px; margin:12px 0 24px; }
  .landing-story .ls-close h2 { font-size:28px; }
  .landing-story .ls-close a { min-height:44px; align-items:center; font-size:13px; }
  .landing-story .ls-footer { flex-wrap:wrap; gap:16px; padding-bottom:24px; }
  .landing-story .ls-footer a { padding:12px 0; }
}

/* Fit the AI examples into the gap above the first product section. */
@media(min-width:701px) {
  .landing-story > .ls-feature:first-child {
    --ls-intro-gap:68px;
    padding-top:var(--ls-intro-gap);
  }
  body.main-app[data-page='search'][data-d-mode='ai'] .landing-story > .ls-feature:first-child {
    padding-top:calc(var(--ls-intro-gap) - var(--sl-example-height) - var(--sl-example-gap));
  }
}
@media(max-width:700px) {
  .landing-story > .ls-feature:first-child { padding-top:26px; }
  .ls-company-list { --ls-company-row-height:98px; }
  body.main-app[data-page='search'][data-d-mode] #search-section.hero .d-examples button { min-height:44px; font-size:11px; line-height:1.4; padding:8px; white-space:normal; }
  .landing-story .ls-eyebrow { font-size:9px; letter-spacing:.9px; }
  .landing-story .ls-visual { padding:16px; border-radius:12px; }
  .landing-story .ls-company-row { display:grid; grid-template-columns:28px minmax(0,1fr) auto; gap:5px 10px; padding:14px 0; }
  .ls-company-row>img { grid-column:1; grid-row:1; }
  .ls-company-row .ls-company-identity { grid-column:2; grid-row:1; }
  .ls-company-row .ls-backers { grid-column:2; grid-row:2; margin-top:7px; }
  .ls-company-row .ls-opening-count { grid-column:3; grid-row:1 / 3; align-self:center; }
  .landing-story .ls-company-identity strong { font-size:13px; }
  .landing-story .ls-query-prompt { font-size:19px; }
  .landing-story .ls-chart-head { flex-wrap:wrap; gap:8px; }
  .landing-story .ls-signal-grid { grid-template-columns:1fr; gap:14px; }
  .landing-story .ls-signal-grid>span { display:flex; align-items:center; justify-content:space-between; gap:10px; font-size:11px; }
  .landing-story .ls-signal-grid>span+span { border-left:0; padding-left:0; }
  .landing-story .ls-signal-grid b { margin:0; font-size:12px; }
  .ls-workspace-head { flex-wrap:wrap; gap:7px; }
  .ls-workspace-role strong { line-height:1.5; }
  .landing-story .ls-footer>span { display:none; }
}

/* Company discovery inherits the main product's type and color tokens. */
body.main-app:is([data-page='companies'],[data-page='saved']) {
  --d-accent:#4364ea;
  --d-accent-soft:#eef2ff;
  --d-accent-shadow:#4364ea17;
  --d-accent-ink:#3652cb;
}
.main-app .cp-page,.main-app .saved-page { width:min(100%,1100px); margin:0 auto; padding-top:12px; }
.main-app #cp-directory { padding-bottom:56px; }
.main-app .cp-eyebrow,.main-app .d-saved-eyebrow { display:block; margin:0; color:var(--d-accent); font:800 10px/12px var(--d-type-mono); letter-spacing:1.5px; transition:color .2s ease; }
.main-app .cp-directory-head,.main-app .saved-page-hero { max-width:none; margin:0 0 30px; padding:0; }
.main-app .cp-directory-head h1,.main-app .saved-page-hero h1 { max-width:none; margin:12px 0 13px; color:var(--d-text-primary); font-family:var(--d-type-sans); font-size:clamp(32px,4.7vw,56px); line-height:1.1; font-weight:760; letter-spacing:-.06em; white-space:normal; }
.main-app .cp-headline-period,.main-app .saved-headline-period { display:inline-block; width:.13em; height:.13em; margin-left:.035em; border-radius:50%; background:var(--d-accent); color:transparent; font-size:inherit; line-height:0; vertical-align:baseline; overflow:hidden; transition:background-color .2s ease; }
.main-app .cp-directory-head p,.main-app .saved-page-hero p { max-width:760px; margin:0; color:var(--d-text-secondary); font-family:var(--d-type-sans); font-size:14px; font-weight:400; line-height:1.6; }
.main-app .cp-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px 20px; padding:24px; border:1px solid #dce3df; border-radius:10px; background:#fff; }
.main-app .cp-field { display:flex; flex-direction:column; gap:8px; min-width:0; }
.main-app .cp-field>span,.main-app .cp-focus label>span { color:#687780; font:700 10px ui-monospace,SFMono-Regular,monospace; letter-spacing:.7px; }
.main-app .cp-field>input,.main-app .cp-multi>summary,.main-app .cp-focus select,.main-app .cp-focus input,.main-app .cp-job-search { width:100%; height:40px; min-height:40px; padding:9px 12px; border:1px solid #dce3e0; border-radius:6px; background:#fff; color:var(--d-text-primary); font-size:13px; font-weight:400; box-shadow:none; }
.main-app .cp-field>input::placeholder,.main-app .cp-job-search::placeholder,.main-app .cp-focus input::placeholder { color:#87928c; }
.main-app .cp-multi { position:relative; border:0; background:transparent; border-radius:6px; min-width:0; }
.main-app .cp-multi>summary { display:flex; align-items:center; gap:12px; justify-content:space-between; font-family:var(--d-type-sans); font-weight:400; list-style:none; cursor:pointer; }
.main-app .cp-multi>summary::-webkit-details-marker { display:none; }
.main-app .cp-multi>summary::after,.main-app .sl-companies-trigger::after,.main-app .preset-multi-select>summary::after { content:''; width:6px; height:6px; flex-shrink:0; border-right:1.5px solid #82908d; border-bottom:1.5px solid #82908d; transform:rotate(45deg); margin:0 2px 4px 0; }
.main-app .cp-multi[open][data-menu-direction='up']>summary::after { transform:rotate(225deg); margin-top:4px; }
.main-app .cp-multi>summary>span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.main-app .cp-multi[open]>summary,.main-app .cp-has-selection>summary { border-color:var(--d-accent); background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app .cp-field>input:focus-visible,.main-app .cp-multi>summary:focus-visible,.main-app .cp-multi .multi-select-panel>input:focus-visible { outline:2px solid var(--d-accent); outline-offset:2px; }
.main-app .cp-multi .multi-select-panel { z-index:150; display:block; visibility:hidden; left:0; right:auto; top:calc(100% + 7px); padding:10px; width:100%; min-width:250px; max-width:min(360px,calc(100vw - 50px)); border:1px solid #dce3e0; border-radius:8px; background:#fff; box-shadow:0 12px 32px rgba(28,40,60,.12); }
.main-app .cp-multi[open] .multi-select-panel[data-cp-positioned] { visibility:visible; }
.main-app .cp-multi .multi-select-panel>input { width:100%; height:36px; min-height:36px; margin:0 0 8px; padding:8px 10px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-text-primary); font:400 12px var(--d-type-sans); box-shadow:none; }
.main-app .cp-options { max-height:var(--cp-options-height,152px); overflow:auto; overscroll-behavior:contain; }
.main-app .cp-multi .multi-select-panel { min-width:min(250px,calc(100vw - 24px)); max-width:calc(100vw - 24px); }
.main-app .cp-option-label { overflow-wrap:anywhere; }
.main-app .cp-option { display:flex; align-items:center; gap:10px; min-height:38px; margin:0; padding:8px; border:0; border-radius:5px; color:var(--d-text-primary); font:400 12px var(--d-type-sans); cursor:pointer; }
.main-app .cp-option[hidden] { display:none; }
.main-app .cp-option:hover { background:#f5f6fa; }
.main-app .cp-option:has(input:checked) { background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app .cp-option input[type='checkbox'],.main-app #search-form .preset-toggle input[type='checkbox'] { appearance:auto; width:15px; height:15px; min-height:15px; flex:0 0 15px; margin:0; padding:0; border-radius:3px; box-shadow:none; accent-color:var(--d-accent); }
.main-app .cp-option-label { text-transform:none; letter-spacing:0; font-weight:400; flex:1; min-width:0; line-height:1.4; }
.main-app .cp-option-label small { display:block; margin-top:2px; color:#85908d; font-size:10px; }
.main-app .cp-option-count { text-transform:none; letter-spacing:0; font-weight:400; color:#8a949b; font-size:11px; font-variant-numeric:tabular-nums; }
.main-app .cp-option.cp-unavailable { opacity:.45; cursor:default; }
.main-app .cp-menu-foot { text-transform:none; letter-spacing:0; display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:8px; padding:10px 3px 0; border-top:1px solid #edf0f3; color:#879198; font-size:10px; }
.main-app .cp-menu-foot button:disabled { opacity:.4; cursor:default; }
.main-app .cp-no-options { padding:10px 8px; color:#879198; font-size:12px; }
.main-app .cp-filter-foot { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:14px; border-top:1px solid #edf0ed; color:#7c8881; font-size:12px; }
.main-app .cp-text-button { padding:0; border:0; background:transparent; color:#52615f; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; box-shadow:none; }
.main-app .cp-list-toolbar { display:flex; align-items:center; justify-content:space-between; gap:20px; margin:32px 0 15px; }
.main-app .cp-list-toolbar h2 { margin:0; font-size:14px; font-weight:650; letter-spacing:-.2px; }
.main-app .cp-sort { display:flex; align-items:center; gap:9px; color:#7c8881; font:700 9px ui-monospace,SFMono-Regular,monospace; letter-spacing:.7px; }
.main-app .cp-sort select { padding:6px 23px 6px 8px; border:1px solid #e1e6e2; border-radius:5px; background:#fff; color:#34453d; font-family:var(--d-type-sans); font-size:12px; font-weight:500; letter-spacing:0; }
.main-app .cp-company-list { border-top:1px solid #dce3df; }
.main-app .cp-company { display:grid; grid-template-columns:42px minmax(0,1fr) 150px 18px; align-items:center; gap:19px; padding:22px 10px; border-bottom:1px solid #e1e6e2; color:inherit; text-decoration:none; transition:background .15s; }
.main-app .cp-company:hover { background:#fff; }
.main-app .cp-logo { display:flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid #e1e6e2; border-radius:6px; background:#fff; color:#53635d; font-size:21px; font-weight:650; flex-shrink:0; overflow:hidden; }
.main-app .cp-logo img { width:40px; height:40px; object-fit:contain; }
.main-app .cp-company h3 { margin:0 0 6px; font-size:16px; letter-spacing:-.35px; font-weight:680; }
.main-app .cp-company p { overflow:hidden; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical; margin:0 0 8px; color:#687780; font-size:13px; line-height:1.5; }
.main-app .cp-company-meta { display:flex; flex-wrap:wrap; gap:5px 14px; color:#85918a; font-size:11px; }
.main-app .cp-company-roles { text-align:right; color:#53635d; font-size:12px; }
.main-app .cp-company-roles strong { display:block; margin-bottom:5px; color:var(--d-text-primary); font-size:20px; font-weight:650; letter-spacing:-.6px; }
.main-app .cp-company-arrow { color:#8b9991; }
.main-app .cp-more { display:block; margin:24px auto 0; padding:11px 20px; border:1px solid #dce3df; border-radius:6px; background:#fff; color:#52615f; font-size:12px; cursor:pointer; box-shadow:none; }
.main-app #cp-directory-more { min-height:44px; }
.main-app .cp-back { display:inline-block; margin-bottom:33px; color:#697970; font-size:12px; text-decoration:none; }
.main-app .cp-back:hover { color:var(--d-accent); }
.main-app .cp-profile-head { padding-bottom:30px; }
.main-app .cp-profile-identity { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.main-app .cp-profile-name { display:flex; align-items:center; gap:18px; }
.main-app .cp-profile-name .cp-logo { width:54px; height:54px; border-radius:7px; }
.main-app .cp-profile-name .cp-logo img { width:52px; height:52px; }
.main-app .cp-profile-name h1 { max-width:none; margin:0; color:var(--d-text-primary); font-size:clamp(28px,4vw,42px); line-height:1.1; letter-spacing:-.06em; font-weight:760; }
.main-app .cp-website { padding:9px 13px; border:1px solid #dce3df; border-radius:6px; background:#fff; color:#52615f; font-size:12px; text-decoration:none; white-space:nowrap; }
.main-app .cp-description { max-width:760px; margin:21px 0 16px; color:#52615f; font-size:14px; line-height:1.7; }
.main-app .cp-facts { display:flex; flex-wrap:wrap; gap:5px 0; color:#687780; font-size:12px; line-height:1.5; }
.main-app .cp-investors { margin:15px 0 0; color:#7c8881; font-size:12px; line-height:1.7; }
.main-app .cp-investors span { color:#52615f; }
.main-app .cp-investor-details { display:inline; margin-left:8px; }
.main-app .cp-investor-details summary { display:inline; color:#697970; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.main-app .cp-investor-details[open]>span { display:block; margin-top:6px; }
.main-app .cp-overview { padding-top:27px; border-top:1px solid #dce3df; }
.main-app .cp-section-head { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:20px; }
.main-app .cp-section-head h2 { margin:0; font-size:20px; font-weight:680; letter-spacing:-.6px; }
.main-app .cp-updated { color:#87928c; font-size:11px; }
.main-app .cp-focus { display:flex; flex-wrap:wrap; align-items:flex-end; gap:14px; margin:0 0 18px; }
.main-app .cp-focus label { display:flex; flex-direction:column; gap:7px; width:260px; max-width:100%; }
.main-app .cp-focus label:nth-child(2) { width:270px; }
.main-app .cp-focus .cp-text-button { margin-bottom:12px; }
.main-app .cp-scope-note { margin:0 0 18px; color:#7c8881; font-size:12px; }
.main-app .cp-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid #dce3df; border-radius:9px; background:#fff; overflow:hidden; }
.main-app .cp-metric { min-width:0; padding:21px; border-right:1px solid #e7ece8; }
.main-app .cp-metric:last-child { border-right:0; }
.main-app .cp-metric-label { margin-bottom:12px; color:#687780; font-size:12px; }
.main-app .cp-metric-value { margin-bottom:9px; color:var(--d-text-primary); font-size:30px; font-weight:650; line-height:1.1; letter-spacing:-1px; }
.main-app .cp-metric-note { color:#87928c; font-size:11px; line-height:1.6; }
.main-app .cp-positive { color:#39745b; }
.main-app .cp-trend { display:block; margin:26px 0; }
.main-app .cp-trend h3 { margin:0 0 16px; font-size:14px; font-weight:650; }
.main-app .cp-trend p { margin:0; color:#7c8881; font-size:12px; line-height:1.7; }
.main-app .cp-chart { position:relative; aspect-ratio:600 / 128; min-height:150px; }
.main-app .cp-openings-line { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.main-app .cp-openings-line text { fill:#87928c; font-size:11px; }
.main-app .cp-chart-axis { stroke:#dce3df; }
.main-app .cp-chart-line { fill:none; stroke:#4364ea; stroke-width:2.5; vector-effect:non-scaling-stroke; }
.main-app .cp-chart { cursor:crosshair; user-select:none; touch-action:pan-y; }
.main-app .cp-chart:focus,.main-app .cp-chart:focus-visible { outline:none; }
.main-app .cp-chart-hover[hidden],.main-app .cp-chart-comparison[hidden] { display:none; }
.main-app .cp-chart-hover,.main-app .cp-chart-comparison { pointer-events:none; }
.main-app .cp-chart-guide,.main-app .cp-chart-start-guide { stroke:#87928c; stroke-width:1; stroke-dasharray:3 4; }
.main-app .cp-chart-dot,.main-app .cp-chart-start-dot { fill:#4364ea; stroke:#fff; stroke-width:2; }
.main-app .cp-chart-selection { fill:#4364ea; opacity:.06; }
.main-app .cp-chart-help { position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.main-app .cp-chart-tooltip { position:absolute; z-index:2; pointer-events:none; padding:8px 10px; border-radius:6px; background:#23312c; color:#fff; font-size:12px; line-height:1.4; box-shadow:0 3px 12px #0002; white-space:nowrap; max-width:100%; box-sizing:border-box; }
.main-app .cp-chart-labels { display:flex; justify-content:space-between; margin-top:8px; padding-left:8.67%; padding-right:2%; color:#65736c; font-size:11px; }
.main-app .cp-breakdowns { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:24px; padding:12px 0 16px; }
.main-app .cp-breakdown h3 { margin:0 0 8px; font-size:13px; font-weight:650; }
.main-app .cp-ranked-list { list-style:none; padding:0; margin:0; display:grid; gap:0; }
.main-app .cp-ranked-row { width:100%; min-height:0; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 16px; padding:6px 8px; border:1px solid transparent; border-radius:5px; background:transparent; color:#52615f; font:inherit; font-size:12px; line-height:1.4; text-align:left; cursor:pointer; box-shadow:none; }
.main-app .cp-ranked-label { overflow-wrap:anywhere; font-weight:500; }
.main-app .cp-ranked-count { color:#697970; font-variant-numeric:tabular-nums; }
.main-app .cp-ranked-track { grid-column:1 / -1; height:4px; background:#e9ede9; border-radius:2px; overflow:hidden; }
.main-app .cp-ranked-track span { display:block; height:100%; background:#9caaa2; border-radius:2px; }
.main-app .cp-ranked-row:hover,.main-app .cp-ranked-row:focus-visible { background:var(--d-accent-soft); border-color:var(--d-accent); color:var(--d-accent-ink); }
.main-app .cp-ranked-row[aria-pressed='true'] { background:var(--d-accent-soft); color:var(--d-accent-ink); border-color:var(--d-accent); }
.main-app .cp-ranked-row[aria-pressed='true'] .cp-ranked-track span { background:var(--d-accent); }
.main-app .cp-ranked-row:focus-visible,.main-app .cp-ranked-more:focus-visible { outline:2px solid var(--d-accent); outline-offset:2px; }
.main-app .cp-ranked-more { min-height:0; margin:6px 8px 0; padding:4px 0; border:0; border-radius:0; background:transparent; color:#52615f; font:inherit; font-size:12px; text-decoration:underline; text-underline-offset:3px; cursor:pointer; box-shadow:none; }
.main-app .cp-breakdown-note { margin:6px 8px 0; color:#7c8881; font-size:11px; line-height:1.5; }
.main-app .cp-jobs-section { padding-top:28px; border-top:1px solid #dce3df; }
.main-app .cp-jobs-section .cp-section-head { margin-bottom:18px; }
.main-app .cp-jobs-controls { display:flex; align-items:center; gap:20px; margin-bottom:18px; }
.main-app .cp-job-search { width:360px; max-width:100%; }
.main-app .cp-jobs-controls .cp-sort { margin-left:auto; }
.main-app .cp-jobs-count { margin:0 0 14px; color:#7c8881; font-size:12px; }
.main-app #cp-profile .cp-jobs-section .cp-section-head { justify-content:flex-start; align-items:baseline; gap:6px 12px; }
.main-app #cp-profile .cp-jobs-section .cp-section-head .cp-jobs-count { margin:0; }
.main-app .cp-jobs-table,.main-app .cp-jobs-table tbody { display:block; width:100%; }
.main-app .cp-jobs-section { --cp-job-columns:minmax(0,2fr) minmax(0,1.25fr) 100px minmax(0,1.1fr) 75px 30px; }
.main-app .cp-job-columns { display:grid; grid-template-columns:var(--cp-job-columns); gap:12px; padding:0 17px 9px; color:#7c8881; font-size:10px; }
.main-app .cp-jobs-table .job-row-main { display:grid; grid-template-columns:var(--cp-job-columns); align-items:center; gap:6px 12px; margin-bottom:8px; padding:16px; border:1px solid #e1e6e2; border-radius:7px; background:#fff; cursor:pointer; }
.main-app .cp-jobs-table .job-row-main:hover { border-color:#c2cdc6; }
.main-app .cp-jobs-table .job-row-main td { display:block; min-width:0; padding:0; border:0; background:none; }
.main-app .cp-jobs-table .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
.main-app .cp-jobs-table .job-row-main .team-cell,.main-app .cp-jobs-table .job-row-main .company-cell,.main-app .cp-jobs-table .job-row-main .provider-cell { display:none; }
.main-app .cp-jobs-table .job-title { color:#172027; font-size:13px; line-height:1.5; font-weight:650; }
.main-app .cp-jobs-table .location-cell { grid-column:2; grid-row:1; color:#687780; font-size:12px; line-height:1.5; }
.main-app .cp-jobs-table .salary-cell { grid-column:4; grid-row:1; color:#52615f; font-size:12px; line-height:1.5; }
.main-app .cp-jobs-table .posted-cell { grid-column:3; grid-row:1; color:#87928c; font-size:11px; line-height:1.5; }
.main-app .cp-first-seen { display:block; font-size:10px; }
.main-app .cp-jobs-table .link-cell { grid-column:5; grid-row:1; }
.main-app .cp-jobs-table .link-cell a { color:var(--d-accent-ink); font-size:11px; font-weight:550; text-decoration:none; }
.main-app .cp-jobs-table .save-cell { grid-column:6; grid-row:1; }
.main-app .cp-jobs-table .save-toggle { width:30px; height:30px; border:0; background:transparent; color:#7c8881; }
.main-app .cp-jobs-table .save-toggle svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.5; }
.main-app .cp-jobs-table .save-toggle[aria-pressed='true'] { color:var(--d-accent); }
.main-app .cp-jobs-table .save-toggle[aria-pressed='true'] svg { fill:var(--d-accent-soft); }
.main-app .cp-jobs-table .job-description-row { display:block; margin:-10px 0 8px; padding:20px; border:1px solid #e1e6e2; border-top:0; border-radius:0 0 7px 7px; background:#fff; }
.main-app .cp-jobs-table .job-description-row td { display:block; padding:0; border:0; }
.main-app .cp-jobs-table .job-row-main.expanded { border-radius:7px 7px 0 0; }
.main-app .cp-empty { padding:45px 20px; text-align:center; color:#7c8881; font-size:13px; line-height:1.7; }
.main-app .cp-empty h3 { margin:0 0 7px; color:#34453d; font-size:17px; letter-spacing:-.3px; }
.main-app .cp-empty p { margin:0 0 15px; }
.main-app .cp-loading { padding:45px 0; color:#7c8881; font-size:13px; }
.main-app .cp-overview[aria-busy='true'] .cp-metrics { opacity:.55; }
@media(max-width:900px) {
  .main-app .cp-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .main-app .cp-metric:nth-child(2) { border-right:0; }
  .main-app .cp-metric:nth-child(-n+2) { border-bottom:1px solid #e7ece8; }
  .main-app .cp-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .main-app[data-page='companies'] .app-topbar-inner { width:calc(100% - 32px); }
  .main-app[data-page='companies'] .app-nav { gap:17px; }
  .main-app[data-page='companies'] .d-index-status { display:none; }
  .main-app .cp-page,.main-app .saved-page { padding-top:12px; }
  .main-app #cp-directory { padding-bottom:40px; }
  .main-app .cp-filters { padding:17px; gap:15px 12px; }
  .main-app .cp-name-field { grid-column:1/-1; }
  .main-app .cp-field:nth-child(2) { grid-column:1/-1; }
  .main-app .cp-company { grid-template-columns:36px minmax(0,1fr) 60px; padding:20px 0; gap:12px; }
  .main-app .cp-company .cp-logo { width:36px; height:36px; }
  .main-app .cp-company .cp-logo img { width:34px; height:34px; }
  .main-app .cp-company-arrow { display:none; }
  .main-app .cp-company h3 { font-size:14px; }
  .main-app .cp-company-roles { font-size:10px; }
  .main-app .cp-company-meta { gap:5px 10px; }
  .main-app .cp-company p { -webkit-line-clamp:2; font-size:12px; }
  .main-app .cp-profile-identity { align-items:flex-start; flex-wrap:wrap; }
  .main-app .cp-profile-name .cp-logo { width:42px; height:42px; }
  .main-app .cp-profile-name .cp-logo img { width:40px; height:40px; }
  .main-app .cp-back { margin-bottom:25px; }
  .main-app .cp-metric { padding:17px; }
  .main-app .cp-metric-value { font-size:27px; }
  .main-app .cp-breakdowns { grid-template-columns:1fr; gap:16px; }
  .main-app .cp-focus label,.main-app .cp-focus label:nth-child(2) { width:100%; }
  .main-app .cp-chart { gap:5px; }
  .main-app .cp-jobs-controls { flex-wrap:wrap; gap:10px; }
  .main-app .cp-job-search { width:100%; }
  .main-app .cp-jobs-controls .cp-sort { margin-left:0; }
  .main-app .cp-jobs-table .job-row-main { grid-template-columns:minmax(0,1fr) 32px; gap:8px; padding:15px; }
  .main-app .cp-jobs-table .job-row-main td:nth-child(2) { grid-column:1; grid-row:1; }
  .main-app .cp-jobs-table .save-cell { grid-column:2; grid-row:1; }
  .main-app .cp-jobs-table .location-cell { grid-column:1/-1; grid-row:2; }
  .main-app .cp-jobs-table .salary-cell { grid-column:1/-1; grid-row:3; }
  .main-app .cp-jobs-table .posted-cell { grid-column:1; grid-row:4; }
  .main-app .cp-jobs-table .posted-cell::before { content:'Posted · '; }
  .main-app .cp-jobs-table .posted-cell:has(.cp-first-seen)::before { content:none; }
  .main-app .cp-first-seen { display:inline; margin-right:4px; }
  .main-app .cp-job-columns { display:none; }
  .main-app .cp-jobs-table .link-cell { grid-column:1/-1; grid-row:5; }
  .main-app .cp-list-toolbar { gap:10px; }
  .main-app .cp-sort { gap:5px; }
}

@media (max-width:620px) {
  .main-app .cp-field:nth-child(even) .multi-select-panel { left:auto; right:0; }
  .main-app .cp-multi .multi-select-panel { min-width:240px; }
}

/* Preserve the original profile styling with a narrower column and taller chart. */
.main-app .cp-page:has(#cp-profile:not([hidden])) { width:min(100%,844px); padding-top:16px; }
.main-app #cp-profile .cp-back { margin-bottom:16px; }
.main-app #cp-profile .cp-profile-head { padding-bottom:10px; }
.main-app #cp-profile .cp-profile-name { gap:12px; }
.main-app #cp-profile .cp-profile-name .cp-logo { width:42px; height:42px; }
.main-app #cp-profile .cp-profile-name .cp-logo img { width:40px; height:40px; }
.main-app #cp-profile .cp-profile-name h1 { font-size:clamp(27px,3.2vw,36px); }
.main-app #cp-profile .cp-description { margin:10px 0 8px; font-size:13px; line-height:1.5; }
.main-app #cp-profile .cp-facts { gap:5px 0; }
.main-app #cp-profile .cp-investors { margin-top:7px; line-height:1.5; }
.main-app #cp-profile :is(.cp-overview,.cp-jobs-section) { padding-top:10px; }
.main-app #cp-profile .cp-section-head { margin-bottom:8px; }
.main-app #cp-profile .cp-section-head h2 { font-size:18px; }
.main-app #cp-profile .cp-focus { gap:10px 14px; margin-bottom:10px; }
.main-app #cp-profile .cp-focus label { gap:5px; }
.main-app #cp-profile .cp-focus select { height:36px; min-height:36px; padding:7px 10px; }
.main-app #cp-profile .cp-focus .cp-text-button { margin-bottom:10px; }
.main-app #cp-profile .cp-scope-note { margin-bottom:10px; }
.main-app #cp-profile .cp-trend { margin:8px 0 14px; }
.main-app #cp-profile .cp-trend h3 { margin-bottom:8px; }
.main-app #cp-profile .cp-chart-labels { margin-top:0; }
.main-app #cp-profile .cp-metric { padding:10px 12px; }
.main-app #cp-profile .cp-metric-label { margin-bottom:5px; }
.main-app #cp-profile .cp-metric-value { margin-bottom:4px; font-size:24px; }
.main-app #cp-profile .cp-metric-note { line-height:1.4; }
.main-app #cp-profile .cp-breakdowns { margin-top:12px; padding-top:12px; }
@media(max-width:700px) {
  .main-app #cp-profile .cp-focus label,.main-app #cp-profile .cp-focus label:nth-child(2) { width:calc(50% - 7px); flex:1; }
  .main-app #cp-profile .cp-focus .cp-text-button { margin:0; }
  .main-app #cp-profile .cp-profile-identity { gap:10px; }
}

.main-app #cp-profile .cp-chart { aspect-ratio:auto; height:300px; min-height:0; }
.main-app #cp-profile .cp-chart-labels { padding-left:52px; padding-right:12px; }
.main-app #cp-profile .cp-jobs-section { padding-bottom:40px; }
@media(min-width:701px) {
  .main-app #cp-profile .cp-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); }
  .main-app #cp-profile .cp-metric:nth-child(2) { border-right:1px solid #e7ece8; }
  .main-app #cp-profile .cp-metric:nth-child(-n+2) { border-bottom:0; }
}

.main-app .cp-chart-tooltip { white-space:normal; width:max-content; }
.main-app .cp-chart-tooltip strong,.main-app .cp-chart-tooltip span { display:block; }
.main-app .cp-chart-tooltip span { margin-top:3px; font-size:11px; color:#dbe4dd; }

.main-app .cp-facts > span { display:inline-flex; align-items:baseline; column-gap:4px; font-weight:400; }
.main-app .cp-facts .cp-fact-label { color:#7c8881; }
.main-app .cp-facts .cp-fact-value { color:#52615f; }
.main-app .cp-facts > span + span::before { content:'·'; margin:0 10px; color:#87928c; }

/* Startup filters reuse the Companies selectors, with Search's accent color. */
.main-app #search-form .cp-multi>summary { height:var(--d-search-field-height); min-height:var(--d-search-field-height); padding:9px 12px; border:1px solid #dce3e0; border-radius:6px; background:#fff; color:var(--d-text-primary); font:400 var(--d-type-control)/1.4 var(--d-type-sans); box-shadow:none; }
.main-app #search-form .cp-multi>summary>span { color:inherit; font-weight:400; }
.main-app #search-form .d-company-sources .cp-multi>summary { height:32px; min-height:32px; padding:6px 9px; }
.main-app #search-form .cp-multi[open]>summary,
.main-app #search-form .cp-multi.cp-has-selection>summary { border-color:var(--d-accent); background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app #search-form .cp-multi .multi-select-panel { z-index:150; top:calc(100% + 7px); padding:10px; }
.main-app #search-form .cp-multi .multi-select-panel>input { width:100%; height:36px; min-height:36px; margin:0 0 8px; padding:8px 10px; border:1px solid #dce3e0; border-radius:5px; background:#fff; color:var(--d-text-primary); font:400 var(--d-type-control) var(--d-type-sans); box-shadow:none; }
.main-app #search-form .cp-options { display:block; padding:0; }
.main-app #search-form .cp-option,.main-app #search-form .preset-toggle { gap:10px; min-height:38px; margin:0; padding:8px; border:0; border-radius:5px; background:transparent; color:var(--d-text-primary); font:400 var(--d-type-control)/1.4 var(--d-type-sans); transform:none; }
.main-app #search-form .cp-option.is-hidden { display:none; }
.main-app #search-form .cp-option:hover,.main-app #search-form .preset-toggle:hover { background:#f5f6fa; }
.main-app #search-form .cp-option.is-selected,
.main-app #search-form .cp-option[data-state='included'] { background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app #search-form .cp-option[data-state='excluded'] { background:#fff5f3; color:#9d4f47; }
.main-app #search-form .cp-option .cp-option-count { color:#8a949b; font-size:11px; }
.main-app #search-form .cp-option .filter-cycle-indicator { position:relative; display:block; flex:0 0 15px; width:15px; height:15px; padding:0; border-radius:3px; font-size:0; line-height:0; }
.main-app #search-form .cp-option .filter-cycle-indicator::after { content:''; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); }
.main-app #search-form .cp-option[data-state='included'] .filter-cycle-indicator { border-color:var(--d-accent); background:var(--d-accent); color:#fff; }
.main-app #search-form .cp-option[data-state='included'] .filter-cycle-indicator::after { width:11px; height:11px; background:center/contain no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 11 11'%3E%3Cpath d='M2 5.5 4.5 8 9 3' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.main-app #search-form .cp-option[data-state='excluded'] .filter-cycle-indicator { border-color:#9d4f47; background:#9d4f47; color:#fff; }
.main-app #search-form .cp-option[data-state='excluded'] .filter-cycle-indicator::after { width:9px; height:2px; border-radius:1px; background:#fff; }
.main-app #search-form .cp-multi .cp-text-button { padding:0; border:0; background:transparent; color:#52615f; font-size:12px; text-transform:none; letter-spacing:0; font-weight:400; box-shadow:none; }

/* Saved search names and actions follow the same filter menu typography. */
.main-app #search-form .preset-toggle-group { gap:2px; max-height:158px; overflow-y:auto; overscroll-behavior-y:contain; }
.main-app #search-form .preset-toggle label { gap:10px; margin:0; padding:0; color:inherit; font:inherit; letter-spacing:0; text-transform:none; }
.main-app #search-form .preset-toggle-name { min-width:0; overflow-wrap:anywhere; color:inherit; font:inherit; }
.main-app #search-form .preset-toggle:has(input:checked) { background:var(--d-accent-soft); color:var(--d-accent-ink); }
.main-app #search-form .preset-edit { min-height:22px; color:var(--d-text-secondary); font:400 var(--d-type-control)/1.4 var(--d-type-sans); }
.main-app #search-form .preset-edit:hover { color:var(--d-text-primary); text-decoration:underline; text-underline-offset:3px; }
.main-app #search-form .preset-delete { color:#a34840; }
.main-app #search-form .preset-empty { margin:0; padding:8px; color:var(--d-text-muted); font:400 var(--d-type-control)/1.4 var(--d-type-sans); }
.main-app #search-form .preset-multi-select .multi-select-panel { padding:10px; border:1px solid #dce3e0; border-radius:8px; box-shadow:0 12px 32px rgba(28,40,60,.12); }

/* Destructive saved-search decisions stay inside the existing dropdown. */
.main-app #search-form .preset-delete-confirmation { display:grid; gap:10px; padding:4px 2px; color:var(--d-text-primary); font:400 12px/1.45 var(--d-type-sans); }
.main-app #search-form .preset-delete-confirmation[hidden] { display:none; }
.main-app #search-form .preset-delete-confirmation h3 { margin:0; font:600 14px/1.4 var(--d-type-sans); }
.main-app #search-form .preset-delete-confirmation p { margin:0; overflow-wrap:anywhere; font:inherit; color:var(--d-text-secondary); }
.main-app #search-form .preset-delete-confirmation .preset-delete-error { color:#a34840; }
.main-app #search-form .preset-delete-confirmation .preset-delete-confirm { border-color:#ead4d1; color:#a34840; }

/* Keep profile filter chevrons inset and focus styling neutral. */
.main-app #cp-profile .cp-focus label { width:220px; min-width:0; }
.main-app #cp-profile .cp-focus label:nth-child(2) { width:240px; }
.main-app #cp-profile .cp-focus select {
  box-sizing:border-box;
  width:100%;
  min-width:0;
  padding:7px 34px 7px 12px;
  appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='m1 1 5 5 5-5' fill='none' stroke='%23687780' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 12px center;
  text-overflow:ellipsis;
}
.main-app #cp-profile .cp-focus select:focus {
  border-color:#dce3e0;
  outline:none;
  box-shadow:none;
}
.main-app #cp-profile .cp-focus select:focus-visible {
  outline:none;
  box-shadow:none;
  background-color:#eef1ef;
  text-decoration:underline;
  text-decoration-color:#687780;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}
@media(max-width:700px) {
  .main-app #cp-profile .cp-focus label,
  .main-app #cp-profile .cp-focus label:nth-child(2) { width:calc(50% - 7px); flex:1; }
}
@media(max-width:420px) {
  .main-app #cp-profile .cp-focus label,
  .main-app #cp-profile .cp-focus label:nth-child(2) { width:100%; flex:1 1 100%; }
}

@media(max-width:640px) {
  .main-app #cp-profile .cp-chart { height:260px; }
}

/* Keep company filters readable on the narrowest phones. */
.main-app .cp-filter-foot > button { flex:none; white-space:nowrap; }
@media(max-width:360px) {
  .main-app .cp-filters { grid-template-columns:minmax(0,1fr); }
}
