/* Dealer Nexus App CSS - split from app.html */
:root {
      --bg: #0f172a;
      --panel: #111827;
      --panel-2: #1f2937;
      --card: rgba(255,255,255,0.08);
      --border: rgba(255,255,255,0.12);
      --text: #f8fafc;
      --muted: #94a3b8;
      --accent: #2563eb;
      --accent-2: #38bdf8;
      --danger: #ef4444;
      --success: #22c55e;
      --shadow: 0 24px 70px rgba(0,0,0,0.35);
      --radius: 18px;
    }

    * { box-sizing: border-box; }

    body {
      margin: 0;
      min-height: 100vh;
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      color: var(--text);
      background:
        radial-gradient(circle at top left, rgba(37,99,235,0.38), transparent 34%),
        radial-gradient(circle at top right, rgba(56,189,248,0.24), transparent 32%),
        linear-gradient(135deg, #020617 0%, #0f172a 52%, #111827 100%);
      padding: 26px;
    }

    .app {
      width: min(1450px, 100%);
      margin: 0 auto;
    }

    .topbar {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
      margin-bottom: 22px;
    }

    .brand {
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .logo {
      width: 56px;
      height: 56px;
      border-radius: 18px;
      display: grid;
      place-items: center;
      background:
        radial-gradient(circle at 30% 20%, rgba(255,255,255,0.35), transparent 24%),
        linear-gradient(135deg, var(--accent), var(--accent-2));
      box-shadow: 0 16px 44px rgba(37,99,235,0.42);
      border: 1px solid rgba(255,255,255,0.22);
      position: relative;
      overflow: hidden;
    }

    .logo::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(135deg, rgba(255,255,255,0.22), transparent 42%);
      pointer-events: none;
    }

    .logo svg {
      width: 38px;
      height: 38px;
      position: relative;
      z-index: 1;
      filter: drop-shadow(0 6px 10px rgba(0,0,0,0.28));
    }

    h1 {
      margin: 0;
      font-size: clamp(24px, 2.8vw, 38px);
      letter-spacing: -0.04em;
      line-height: 1;
    }

    .subtitle {
      margin-top: 7px;
      color: var(--muted);
      font-size: 14px;
    }

    .status-pill {
      border: 1px solid var(--border);
      background: rgba(255,255,255,0.07);
      border-radius: 999px;
      padding: 10px 14px;
      color: var(--muted);
      font-size: 13px;
      white-space: nowrap;
    }

    .hero-card {
      background: linear-gradient(180deg, rgba(255,255,255,0.11), rgba(255,255,255,0.055));
      border: 1px solid var(--border);
      border-radius: var(--radius);
      box-shadow: var(--shadow);
      padding: 22px;
      backdrop-filter: blur(16px);
    }

    .form-row {
      display: grid;
      grid-template-columns: minmax(260px, 1.15fr) minmax(220px, 0.7fr) minmax(180px, 0.55fr);
      gap: 16px;
      align-items: end;
      margin-bottom: 22px;
    }

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

    input,
    select {
      width: 100%;
      border: 1px solid rgba(255,255,255,0.14);
      outline: none;
      color: var(--text);
      background: rgba(15,23,42,0.75);
      border-radius: 14px;
      padding: 14px 14px;
      font-size: 16px;
      transition: 0.18s ease;
    }

    select {
      appearance: none;
      background-image:
        linear-gradient(45deg, transparent 50%, #cbd5e1 50%),
        linear-gradient(135deg, #cbd5e1 50%, transparent 50%);
      background-position:
        calc(100% - 20px) calc(50% - 3px),
        calc(100% - 14px) calc(50% - 3px);
      background-size: 6px 6px, 6px 6px;
      background-repeat: no-repeat;
      padding-right: 42px;
      cursor: pointer;
    }

    input:focus,
    select:focus {
      border-color: rgba(56,189,248,0.65);
      box-shadow: 0 0 0 4px rgba(56,189,248,0.13);
    }

    input[readonly] {
      color: #cbd5e1;
      background: rgba(148,163,184,0.13);
      cursor: not-allowed;
    }

    .section-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin: 8px 0 12px;
    }

    .section-title {
      margin: 0;
      font-size: 18px;
      letter-spacing: -0.02em;
    }

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

    button,
    .upload-button {
      border: 0;
      border-radius: 12px;
      padding: 8px 11px;
      color: white;
      background: linear-gradient(135deg, var(--accent), #1d4ed8);
      font-weight: 800;
      cursor: pointer;
      box-shadow: 0 12px 28px rgba(37,99,235,0.25);
      font-size: 12px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
    }

    button:hover,
    .upload-button:hover { filter: brightness(1.08); }

    #csvFile {
      position: absolute;
      width: 1px;
      height: 1px;
      opacity: 0;
      pointer-events: none;
    }

    .file-name {
      color: var(--muted);
      font-size: 13px;
      max-width: 340px;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .inventory-search-row {
      margin: 0 0 12px;
      display: grid;
      grid-template-columns: minmax(260px, 520px);
      gap: 12px;
    }

    .inventory-search-row input {
      padding: 12px 14px;
      font-size: 14px;
    }

    .table-wrap {
      border: 1px solid var(--border);
      border-radius: 16px;
      overflow: hidden;
      background: rgba(15,23,42,0.52);
    }

    .table-scroll {
      max-height: 432px;
      overflow-y: auto;
      overflow-x: auto;
    }

    table {
      width: 100%;
      border-collapse: separate;
      border-spacing: 0;
      min-width: 1000px;
    }

    thead th {
      position: sticky;
      top: 0;
      z-index: 2;
      background: rgba(17,24,39,0.98);
      color: #cbd5e1;
      text-align: left;
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 0.07em;
      padding: 13px 14px;
      border-bottom: 1px solid var(--border);
      white-space: nowrap;
    }

    tbody td {
      padding: 13px 14px;
      border-bottom: 1px solid rgba(255,255,255,0.075);
      color: #f1f5f9;
      font-size: 13px;
      white-space: nowrap;
    }

    tbody tr:hover { background: rgba(37,99,235,0.15); }
    tbody tr.selected-row { background: rgba(37,99,235,0.32); }
    tbody tr.selected-row td { border-bottom-color: rgba(56,189,248,0.28); }
    tbody tr:last-child td { border-bottom: 0; }

    .vin {
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
      color: #bfdbfe;
    }

    .money { font-variant-numeric: tabular-nums; }

    .message {
      padding: 18px;
      color: var(--muted);
      font-size: 14px;
    }

    .selected-inventory {
      margin-top: 18px;
      background: rgba(255,255,255,0.065);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 18px;
    }

    .selected-grid {
      margin-top: 14px;
      display: grid;
      grid-template-columns: repeat(4, minmax(160px, 1fr));
      gap: 12px;
    }

    .selected-field {
      background: rgba(15,23,42,0.58);
      border: 1px solid rgba(255,255,255,0.1);
      border-radius: 14px;
      padding: 12px;
      min-height: 74px;
    }

    .selected-label {
      color: var(--muted);
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      margin-bottom: 7px;
    }

    .selected-value {
      color: var(--text);
      font-size: 15px;
      font-weight: 800;
      overflow-wrap: anywhere;
    }

    .selected-empty {
      margin-top: 8px;
      color: var(--muted);
      line-height: 1.55;
    }

    .deal-structure {
      margin-top: 18px;
      background: rgba(255,255,255,0.065);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 18px;
    }

    .deal-placeholder {
      margin: 8px 0 0;
      color: var(--muted);
      line-height: 1.55;
    }

    .deal-grid {
      margin-top: 14px;
      display: grid;
      grid-template-columns: minmax(260px, 420px);
      gap: 14px;
      align-items: end;
    }

    .lender-note {
      margin-top: 10px;
      color: var(--muted);
      font-size: 13px;
      line-height: 1.45;
    }

    .approval-grid,
    .structure-grid,
    .calculation-grid {
      margin-top: 14px;
      display: grid;
      grid-template-columns: repeat(4, minmax(160px, 1fr));
      gap: 14px;
      align-items: end;
    }

    .deal-subtitle {
      margin: 22px 0 4px;
      font-size: 15px;
      font-weight: 900;
      color: #e2e8f0;
      letter-spacing: -0.01em;
    }

    .deal-field {
      background: rgba(15,23,42,0.42);
      border: 1px solid rgba(255,255,255,0.09);
      border-radius: 14px;
      padding: 12px;
    }

    .deal-field label {
      margin-bottom: 7px;
    }

    .readonly-box {
      width: 100%;
      min-height: 48px;
      display: flex;
      align-items: center;
      border: 1px solid rgba(255,255,255,0.14);
      color: #f8fafc;
      background: rgba(148,163,184,0.12);
      border-radius: 14px;
      padding: 13px 14px;
      font-size: 16px;
      font-weight: 800;
      font-variant-numeric: tabular-nums;
    }

    .first-payment-wrap {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
    }

    .first-payment-date {
      color: #bfdbfe;
      font-size: 13px;
      font-weight: 800;
      padding-left: 2px;
    }

    .deal-divider {
      margin: 22px 0 18px;
      border: 0;
      border-top: 1px solid rgba(255,255,255,0.16);
    }

    .profit-box {
      border-radius: 18px;
      padding: 18px;
      border: 1px solid rgba(255,255,255,0.14);
      background: rgba(239,68,68,0.18);
      box-shadow: 0 16px 36px rgba(0,0,0,0.18);
    }

    .profit-label {
      color: rgba(255,255,255,0.82);
      text-transform: uppercase;
      letter-spacing: 0.08em;
      font-size: 12px;
      font-weight: 900;
      margin-bottom: 6px;
    }

    .profit-value {
      font-size: 34px;
      font-weight: 950;
      letter-spacing: -0.04em;
      font-variant-numeric: tabular-nums;
    }

    .profit-negative { background: rgba(239,68,68,0.22); border-color: rgba(248,113,113,0.45); }
    .profit-orange { background: rgba(249,115,22,0.24); border-color: rgba(251,146,60,0.48); }
    .profit-yellow { background: rgba(234,179,8,0.25); border-color: rgba(250,204,21,0.52); }
    .profit-green { background: rgba(34,197,94,0.24); border-color: rgba(74,222,128,0.52); }

    .cps-compact {
      margin-top: 16px;
      border: 1px solid rgba(255,255,255,0.14);
      border-radius: 16px;
      overflow: visible;
      background: rgba(2,6,23,0.36);
    }

    .cps-compact-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding: 14px 18px;
      border-bottom: 1px solid rgba(255,255,255,0.12);
    }

    .cps-title {
      font-size: 18px;
      font-weight: 950;
      color: #93c5fd;
      letter-spacing: -0.02em;
    }

    .compact-actions {
      display: flex;
      gap: 10px;
      align-items: center;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .auto-structure-btn,
    .ai-recommendation-btn {
      padding: 9px 16px;
      min-width: 180px;
      justify-content: center;
    }

    .auto-structure-btn {
      background: linear-gradient(135deg, #0ea5e9, #2563eb);
    }

    .ai-recommendation-btn {
      background: linear-gradient(135deg, #7c3aed, #2563eb);
    }

    .cps-compact-body {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 30px;
      padding: 18px 26px 22px;
    }

    .compact-col {
      display: grid;
      gap: 10px;
      align-content: start;
    }

    .compact-row {
      display: grid;
      grid-template-columns: 170px 26px minmax(150px, 250px);
      gap: 10px;
      align-items: center;
    }

    .compact-row.right {
      grid-template-columns: 170px minmax(150px, 250px);
    }

    .compact-label {
      font-size: 15px;
      font-weight: 850;
      color: #f1f5f9;
    }

    .compact-sign {
      color: rgba(255,255,255,0.68);
      font-size: 22px;
      font-weight: 800;
      text-align: center;
    }

    .compact-row input,
    .compact-row select {
      height: 44px;
      padding: 9px 12px;
      border-radius: 0;
      text-align: right;
      font-size: 15px;
      font-weight: 800;
      background: rgba(15,23,42,0.64);
    }

    .compact-readonly {
      height: 44px;
      display: flex;
      align-items: center;
      justify-content: flex-end;
      border: 1px solid rgba(255,255,255,0.14);
      color: #f8fafc;
      background: rgba(148,163,184,0.12);
      padding: 9px 12px;
      font-size: 15px;
      font-weight: 900;
      font-variant-numeric: tabular-nums;
    }

    .compact-date {
      grid-column: 3;
      margin-top: -6px;
      color: #93c5fd;
      font-size: 12px;
      font-weight: 800;
      text-align: right;
      padding-right: 3px;
    }

    .approval-strip {
      margin: 14px 26px 0;
      padding: 14px;
      border: 1px solid rgba(255,255,255,0.10);
      border-radius: 14px;
      background: rgba(255,255,255,0.045);
      display: grid;
      grid-template-columns: repeat(4, minmax(150px, 1fr));
      gap: 12px;
    }

    .approval-strip input {
      height: 40px;
      padding: 8px 10px;
      font-size: 14px;
      text-align: right;
    }

    .approval-strip > div,
    .approval-strip > .lender-cps-only,
    .approval-strip > .lender-lendbuzz-only {
      min-width: 0;
    }

    .approval-strip label {
      margin-bottom: 6px;
      font-size: 10px;
    }

    .compact-results {
      grid-column: 1 / -1;
      display: grid;
      grid-template-columns: repeat(4, minmax(150px, 1fr));
      gap: 12px;
      margin-top: 12px;
      padding-top: 14px;
      border-top: 1px solid rgba(255,255,255,0.12);
    }

    .compact-result-card {
      background: rgba(15,23,42,0.52);
      border: 1px solid rgba(255,255,255,0.10);
      border-radius: 12px;
      padding: 12px;
    }

    .compact-result-label {
      color: var(--muted);
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: 0.07em;
      margin-bottom: 7px;
    }

    .compact-result-value {
      font-size: 17px;
      font-weight: 950;
      font-variant-numeric: tabular-nums;
    }

    .compact-profit {
      grid-column: auto;
      padding: 12px;
      border-radius: 12px;
    }

    .compact-profit .profit-label {
      font-size: 11px;
      margin-bottom: 5px;
    }

    .compact-profit .profit-value {
      font-size: 24px;
    }


    .ai-panel {
      grid-column: 1 / -1;
      clear: both;
      margin-top: 18px;
      width: 100%;
      max-width: 100%;
      border: 1px solid rgba(124,58,237,0.38);
      border-radius: 18px;
      padding: 18px;
      background:
        radial-gradient(circle at 12% 20%, rgba(124,58,237,0.22), transparent 30%),
        radial-gradient(circle at 88% 10%, rgba(56,189,248,0.20), transparent 28%),
        rgba(15,23,42,0.58);
      box-shadow: 0 22px 60px rgba(37,99,235,0.18);
      overflow: hidden;
      position: relative;
      isolation: isolate;
    }

    .ai-panel::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 32%;
      height: 100%;
      background: linear-gradient(120deg, transparent, rgba(56,189,248,0.16), rgba(124,58,237,0.18), transparent);
      animation: aiSweep 4.8s ease-in-out infinite;
      pointer-events: none;
      z-index: 0;
    }

    .ai-panel > * {
      position: relative;
      z-index: 1;
    }

    @keyframes aiSweep {
      0% { transform: translateX(-105%); opacity: 0; }
      12% { opacity: 0.7; }
      50% { opacity: 0.95; }
      88% { opacity: 0.7; }
      100% { transform: translateX(330%); opacity: 0; }
    }

    .ai-panel-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      margin-bottom: 14px;
    }

    .ai-title {
      font-size: clamp(18px, 2vw, 24px);
      font-weight: 950;
      letter-spacing: -0.02em;
      color: #ddd6fe;
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .ai-orb {
      width: 14px;
      height: 14px;
      border-radius: 999px;
      background: #38bdf8;
      box-shadow: 0 0 18px #38bdf8, 0 0 34px rgba(124,58,237,0.8);
      animation: aiPulse 1.4s ease-in-out infinite alternate;
    }

    @keyframes aiPulse {
      from { transform: scale(0.85); opacity: 0.65; }
      to { transform: scale(1.2); opacity: 1; }
    }

    .ai-close {
      min-width: 40px;
      padding: 8px 10px;
      background: rgba(255,255,255,0.10);
      box-shadow: none;
    }

    .ai-controls {
      display: grid;
      grid-template-columns: minmax(280px, 1.2fr) minmax(230px, 0.7fr) minmax(220px, 0.55fr) minmax(130px, 160px);
      gap: 14px;
      align-items: end;
      width: 100%;
      max-width: 100%;
    }

    .ai-controls > div,
    .ai-controls > button {
      min-width: 0;
    }

    .make-picker {
      max-height: 220px;
      overflow: auto;
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 14px;
      padding: 10px;
      background: rgba(2,6,23,0.35);
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 8px;
      width: 100%;
      max-width: 100%;
    }

    .make-choice {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 9px;
      border-radius: 10px;
      background: rgba(255,255,255,0.055);
      color: #e2e8f0;
      font-size: 13px;
      font-weight: 800;
      cursor: pointer;
    }

    .make-choice input {
      width: auto;
      accent-color: #38bdf8;
    }

    .ai-filter-toolbar {
      display: flex;
      gap: 8px;
      align-items: center;
      flex-wrap: wrap;
      margin-bottom: 10px;
    }

    .mini-ai-btn {
      border: 1px solid rgba(255,255,255,0.16);
      background: rgba(255,255,255,0.09);
      box-shadow: none;
      padding: 7px 10px;
      font-size: 12px;
      border-radius: 10px;
    }

    .type-picker {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
      gap: 8px;
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 14px;
      padding: 10px;
      background: rgba(2,6,23,0.35);
    }

    .type-choice {
      display: flex;
      align-items: center;
      gap: 8px;
      padding: 8px 9px;
      border-radius: 10px;
      background: rgba(255,255,255,0.055);
      color: #e2e8f0;
      font-size: 13px;
      font-weight: 800;
      cursor: pointer;
    }

    .type-choice input {
      width: auto;
      accent-color: #a78bfa;
    }

    .run-ai-btn {
      min-width: 0;
      width: 100%;
      max-width: 260px;
      height: 46px;
      background: linear-gradient(135deg, #9333ea, #2563eb, #06b6d4);
      position: relative;
      overflow: hidden;
      white-space: nowrap;
    }

    .run-ai-btn::after {
      content: "";
      position: absolute;
      inset: 0;
      background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
      transform: translateX(-100%);
      animation: btnShine 2.4s ease-in-out infinite;
    }

    @keyframes btnShine {
      0%, 45% { transform: translateX(-100%); }
      100% { transform: translateX(100%); }
    }

    .ai-status {
      margin-top: 12px;
      color: #bfdbfe;
      font-size: 13px;
      font-weight: 800;
    }

    .ai-results-wrap {
      margin-top: 14px;
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 14px;
      overflow: hidden;
      background: rgba(2,6,23,0.38);
    }

    .ai-results-scroll {
      max-height: 360px;
      overflow: auto;
    }

    .ai-results-table {
      min-width: 1250px;
    }

    .ai-results-table tbody tr {
      cursor: pointer;
    }

    .ai-results-table tbody tr:hover {
      background: rgba(124,58,237,0.22);
    }

    .ai-rank {
      color: #c4b5fd;
      font-weight: 950;
    }


    .print-approval-btn {
      padding: 9px 16px;
      min-width: 150px;
      justify-content: center;
      background: linear-gradient(135deg, #16a34a, #2563eb);
    }

    .approval-print-panel {
      margin-top: 18px;
      border: 1px solid rgba(34,197,94,0.32);
      border-radius: 18px;
      padding: 18px;
      background:
        radial-gradient(circle at 15% 10%, rgba(34,197,94,0.14), transparent 28%),
        rgba(15,23,42,0.58);
    }

    .approval-options-grid {
      display: grid;
      grid-template-columns: repeat(3, minmax(200px, 1fr));
      gap: 12px;
      margin-top: 14px;
    }

    .approval-option-card {
      border: 1px solid rgba(255,255,255,0.11);
      background: rgba(2,6,23,0.35);
      border-radius: 14px;
      padding: 12px;
    }

    .check-line {
      display: flex;
      align-items: center;
      gap: 9px;
      color: #e2e8f0;
      font-size: 13px;
      font-weight: 800;
      line-height: 1.35;
      cursor: pointer;
    }

    .check-line input {
      width: auto;
      accent-color: #38bdf8;
    }

    .inline-fields {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      margin-top: 10px;
    }

    .inline-fields input {
      padding: 10px 11px;
      font-size: 13px;
    }

    .print-panel-actions {
      display: flex;
      justify-content: flex-end;
      gap: 10px;
      margin-top: 16px;
      flex-wrap: wrap;
    }

    .approval-preview-overlay {
      position: fixed;
      inset: 0;
      z-index: 2147483647;
      background: rgba(2,6,23,0.86);
      backdrop-filter: blur(10px);
      display: none;
      padding: 20px;
      overflow: auto;
    }

    .approval-preview-overlay.open {
      display: block;
    }

    .approval-preview-shell {
      width: min(900px, 96vw);
      margin: 0 auto;
    }

    .approval-preview-actions {
      display: flex;
      justify-content: flex-end;
      gap: 10px;
      margin-bottom: 12px;
      flex-wrap: wrap;
    }

    .approval-preview-paper {
      background: #e5e7eb;
      padding: 16px;
      border-radius: 16px;
      overflow: auto;
    }

    .approval-preview-paper .print-page,
    #approvalPrintSheet .print-page {
      width: 794px;
      min-height: 1123px;
      margin: 0 auto;
      color: #111827;
      background: white;
      font-family: Arial, Helvetica, sans-serif;
      border: 2px solid #111827;
      padding: 18px;
      box-sizing: border-box;
    }

    .print-top {
      border-bottom: 2px solid #111827;
      padding-bottom: 8px;
      margin-bottom: 8px;
      display: flex;
      justify-content: space-between;
      gap: 14px;
      align-items: flex-start;
    }

    .print-title { font-size: 24px !important;
      font-size: 30px;
      font-weight: 900;
      text-transform: uppercase;
      letter-spacing: -0.5px;
      margin: 0;
    }

    .print-subtitle {
      font-size: 13px;
      margin-top: 3px;
      color: #374151;
      font-weight: 700;
    }

    .print-date {
      font-size: 13px;
      font-weight: 800;
      text-align: right;
    }

    .print-section {
      border: 1px solid #111827;
      margin-top: 8px;
    }

    .print-section-title {
      background: #111827;
      color: white;
      font-size: 13px;
      font-weight: 900;
      padding: 6px 8px;
      text-transform: uppercase;
      letter-spacing: 0.6px;
    }

    .print-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 0;
    }

    .print-cell {
      border-right: 1px solid #9ca3af;
      border-bottom: 1px solid #d1d5db;
      padding: 7px;
      min-height: 44px;
      box-sizing: border-box;
    }

    .print-cell:nth-child(4n) { border-right: 0; }

    .print-label {
      font-size: 10px;
      color: #4b5563;
      font-weight: 900;
      text-transform: uppercase;
      margin-bottom: 3px;
    }

    .print-value { font-size: 11px !important;
      font-size: 13px;
      font-weight: 900;
      color: #111827;
      line-height: 1.18;
    }

    .print-highlight { background: #eff6ff; }

    .print-note {
      padding: 8px;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.35;
    }

    .print-stips {
      padding: 8px 10px;
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 5px 14px;
      font-size: 12px;
      font-weight: 700;
    }

    .print-stip::before {
      content: "- ";
      font-weight: 900;
    }

    .payment-boxes {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 8px;
      padding: 8px;
    }

    .payment-box {
      border: 1px solid #111827;
      padding: 8px;
      text-align: center;
    }

    .payment-box .p-label {
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
      color: #374151;
    }

    .payment-box .p-value { font-size: 15px !important;
      font-size: 18px;
      font-weight: 900;
      margin-top: 4px;
    }

    .signature-row {
      display: grid;
      grid-template-columns: 1fr 1fr 150px;
      gap: 12px;
      margin-top: 28px;
      align-items: end;
    }

    .signature-box {
      border-top: 1.5px solid #111827;
      padding-top: 5px;
      font-size: 10px;
      font-weight: 900;
      text-transform: uppercase;
    }

    #approvalPrintSheet {
      display: none;
    }

    @media print {
      body > *:not(#approvalPrintSheet) {
        display: none !important;
      }

      body {
        background: white !important;
        padding: 0 !important;
        margin: 0 !important;
      }

      #approvalPrintSheet {
        display: block !important;
      }

      @page {
        size: A4;
        margin: 6mm;
      }

      #approvalPrintSheet .print-page {
        width: 100%;
        min-height: auto;
        padding: 11px;
      }
    }

    .panel-open { display: block !important; }



    .approval-three-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 0;
    }

    .approval-three-grid .print-cell {
      min-height: 72px;
    }

    .approval-three-grid .print-cell:nth-child(3n) {
      border-right: 0;
    }

    .approval-two-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 0;
    }

    .approval-two-grid .print-cell {
      min-height: 72px;
    }

    .approval-two-grid .print-cell:nth-child(2n) {
      border-right: 0;
    }

    .big-down-value {
      font-size: 24px !important;
      font-weight: 950 !important;
      letter-spacing: -0.4px;
    }

    .due-today {
      display: inline-block;
      margin-top: 5px;
      font-size: 11px;
      font-weight: 900;
      color: #b91c1c;
      text-transform: uppercase;
      letter-spacing: 0.3px;
    }


    .post-signature-space {
      height: 16px;
    }

    .approval-extra-table {
      width: 100%;
      max-width: 100%;
      table-layout: fixed;
      border-collapse: collapse;
      font-size: 9.5px;
      font-weight: 700;
      box-sizing: border-box;
    }

    .approval-extra-table th {
      background: #f3f4f6;
      border: 1px solid #111827;
      padding: 4px;
      text-align: left;
      font-size: 8.5px;
      text-transform: uppercase;
      overflow-wrap: anywhere;
    }

    .approval-extra-table td {
      border: 1px solid #9ca3af;
      padding: 5px 4px;
      height: 16px;
      overflow-wrap: anywhere;
    }

    .approval-extra-table.references-table th:nth-child(1),
    .approval-extra-table.references-table td:nth-child(1) {
      width: 28px;
      text-align: center;
    }

    .approval-extra-table.references-table th:nth-child(2),
    .approval-extra-table.references-table td:nth-child(2) {
      width: 38%;
    }

    .approval-extra-table.references-table th:nth-child(3),
    .approval-extra-table.references-table td:nth-child(3) {
      width: 28%;
    }

    .approval-extra-table.references-table th:nth-child(4),
    .approval-extra-table.references-table td:nth-child(4) {
      width: auto;
    }

    .approval-extra-table.auto-pay-table th {
      width: 34%;
    }


    .print-section {
      max-width: 100%;
      box-sizing: border-box;
      overflow: hidden;
    }

    .approval-extra-table,
    .approval-extra-table * {
      box-sizing: border-box;
    }

    .approval-extra-table {
      width: 100% !important;
      max-width: 100% !important;
      min-width: 0 !important;
      table-layout: fixed !important;
      border-collapse: collapse !important;
      overflow: hidden;
    }

    .approval-extra-table th,
    .approval-extra-table td {
      max-width: 0;
      white-space: normal !important;
      word-break: break-word;
      overflow-wrap: anywhere;
      line-height: 1.15;
    }

    .approval-extra-table.references-table col.ref-num { width: 6%; }
    .approval-extra-table.references-table col.ref-name { width: 36%; }
    .approval-extra-table.references-table col.ref-phone { width: 27%; }
    .approval-extra-table.references-table col.ref-rel { width: 31%; }

    .approval-extra-table.auto-pay-table col.auto-label { width: 34%; }
    .approval-extra-table.auto-pay-table col.auto-value { width: 66%; }

    @media print {
      body {
        zoom: 1;
      }

      #approvalPrintSheet .print-page {
        transform: scale(1);
        transform-origin: top left;
      }

      .approval-extra-table {
        page-break-inside: avoid;
        break-inside: avoid;
      }
    }


    .customer-workbar {
      margin: 0 0 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      flex-wrap: wrap;
      background: rgba(255,255,255,0.06);
      border: 1px solid var(--border);
      border-radius: 16px;
      padding: 10px;
      backdrop-filter: blur(10px);
    }

    .customer-tabs {
      display: flex;
      gap: 8px;
      align-items: center;
      flex-wrap: wrap;
      min-width: 0;
      flex: 1;
    }

    .customer-tab {
      border: 1px solid rgba(255,255,255,0.14);
      background: rgba(15,23,42,0.72);
      color: #cbd5e1;
      border-radius: 999px;
      padding: 8px 10px 8px 13px;
      display: inline-flex;
      align-items: center;
      gap: 8px;
      box-shadow: none;
      font-size: 12px;
      max-width: 230px;
    }

    .customer-tab.active {
      background: linear-gradient(135deg, rgba(37,99,235,0.95), rgba(56,189,248,0.8));
      color: white;
      border-color: rgba(255,255,255,0.24);
      box-shadow: 0 10px 26px rgba(37,99,235,0.22);
    }

    .customer-tab-name {
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    .customer-tab-close {
      width: 18px;
      height: 18px;
      border-radius: 999px;
      display: inline-grid;
      place-items: center;
      background: rgba(255,255,255,0.16);
      color: white;
      font-size: 12px;
      font-weight: 900;
      line-height: 1;
    }

    .another-customer-btn {
      min-width: 170px;
      background: linear-gradient(135deg, #0f766e, #2563eb);
    }


    .dn-logo-wordmark {
.dn-logo-wordmark {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
}

.dn-mark {
  order: 0 !important;
  flex-shrink: 0;
}

.dn-name {
  order: 1 !important;
}

.dn-name > div:first-child {
  font-size: 28px !important;
  font-weight: 900 !important;
}

      display: flex;
      align-items: center;
      gap: 12px;
    }

    .dn-mark {
      width: 54px;
      height: 54px;
      border-radius: 18px;
      display: grid;
      place-items: center;
      background:
        radial-gradient(circle at 28% 22%, rgba(255,255,255,0.36), transparent 25%),
        linear-gradient(135deg, #2563eb 0%, #38bdf8 52%, #22c55e 100%);
      box-shadow: 0 16px 44px rgba(37,99,235,0.42);
      border: 1px solid rgba(255,255,255,0.22);
      color: white;
      font-weight: 950;
      letter-spacing: -1px;
      position: relative;
      overflow: hidden;
    }

    .dn-mark::before {
      content: "";
      position: absolute;
      width: 74%;
      height: 74%;
      border: 3px solid rgba(255,255,255,0.88);
      border-radius: 15px;
      transform: rotate(-8deg);
    }

    .dn-mark::after {
      content: "N";
      position: relative;
      z-index: 1;
      font-size: 25px;
      text-shadow: 0 5px 14px rgba(0,0,0,0.32);
    }

    .dn-name {
      display: grid;
      gap: 3px;
    }


    .lender-cps-only,
    .lender-lendbuzz-only {
      display: block;
    }

    .lendbuzz-mode .lender-cps-only {
      display: none !important;
    }

    .cps-mode .lender-lendbuzz-only {
      display: none !important;
    }

    .approval-strip {
      align-items: end;
    }

    .cps-mode .approval-strip,
    .capital-one-mode .approval-strip {
      grid-template-columns: repeat(4, minmax(140px, 1fr));
    }

    .lendbuzz-mode .approval-strip {
      grid-template-columns: repeat(2, minmax(180px, 1fr));
    }


    .external-approval-card {
      margin-top: 14px;
      margin-bottom: 14px;
      border-color: rgba(56,189,248,0.35) !important;
      background: rgba(37,99,235,0.16) !important;
    }

    .external-approval-card .inline-fields {
      grid-template-columns: repeat(4, minmax(160px, 1fr));
    }

    @media (max-width: 900px) {
      .external-approval-card .inline-fields {
        grid-template-columns: 1fr;
      }
    }


    .calculator-icon-btn {
      width: 36px;
      height: 36px;
      min-width: 36px;
      padding: 0;
      border-radius: 12px;
      display: inline-grid;
      place-items: center;
      background: rgba(255,255,255,0.10);
      border: 1px solid rgba(255,255,255,0.18);
      box-shadow: none;
      line-height: 1;
    }

    .calculator-icon-btn:hover {
      background: rgba(56,189,248,0.18);
      box-shadow: 0 10px 24px rgba(56,189,248,0.18);
    }

    .ai-calculator-panel {
.ai-calculator-panel {
  margin-left: auto !important;
  align-self: flex-end !important;
  display: block !important;
}

      margin-left: auto;
      margin: 0 0 14px;
      width: min(360px, 100%);
      max-width: 360px;
      border: 1px solid rgba(124,58,237,0.36);
      border-radius: 18px;
      padding: 14px;
      background:
        radial-gradient(circle at 18% 10%, rgba(124,58,237,0.28), transparent 32%),
        radial-gradient(circle at 86% 20%, rgba(56,189,248,0.22), transparent 30%),
        rgba(2,6,23,0.70);
      box-shadow: 0 22px 60px rgba(37,99,235,0.20);
      position: relative;
      overflow: hidden;
      isolation: isolate;
    }

    .ai-calculator-panel::before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      width: 34%;
      height: 100%;
      background: linear-gradient(120deg, transparent, rgba(56,189,248,0.15), rgba(124,58,237,0.20), transparent);
      animation: calcSweep 4.5s ease-in-out infinite;
      pointer-events: none;
      z-index: 0;
    }

    @keyframes calcSweep {
      0% { transform: translateX(-110%); opacity: 0; }
      15% { opacity: .75; }
      55% { opacity: 1; }
      100% { transform: translateX(330%); opacity: 0; }
    }

    .ai-calculator-panel > * {
      position: relative;
      z-index: 1;
    }

    .calc-head {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 12px;
    }

    .calc-title {
      color: #ddd6fe;
      font-size: 16px;
      font-weight: 950;
      letter-spacing: -0.02em;
      display: flex;
      align-items: center;
      gap: 9px;
    }

    .calc-orb {
      width: 12px;
      height: 12px;
      border-radius: 999px;
      background: #38bdf8;
      box-shadow: 0 0 18px #38bdf8, 0 0 34px rgba(124,58,237,0.8);
      animation: aiPulse 1.4s ease-in-out infinite alternate;
    }

    .calc-close {
      min-width: 38px;
      width: 38px;
      height: 34px;
      padding: 0;
      background: rgba(255,255,255,0.10);
      box-shadow: none;
    }

    .calc-display {
      border: 1px solid rgba(255,255,255,0.14);
      background: rgba(15,23,42,0.72);
      border-radius: 14px;
      padding: 11px;
      margin-bottom: 10px;
      min-height: 78px;
    }

    .calc-equation {
      color: #93c5fd;
      font-size: 13px;
      font-weight: 800;
      min-height: 20px;
      overflow-wrap: anywhere;
      line-height: 1.35;
      margin-bottom: 8px;
    }

    .calc-result {
      color: #f8fafc;
      font-size: 26px;
      font-weight: 950;
      letter-spacing: -0.04em;
      text-align: right;
      font-variant-numeric: tabular-nums;
      overflow-wrap: anywhere;
    }

    .calc-grid {
      display: grid;
      grid-template-columns: repeat(4, minmax(50px, 1fr));
      gap: 7px;
    }

    .calc-key {
      height: 42px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,0.12);
      background: rgba(255,255,255,0.08);
      color: #f8fafc;
      font-size: 17px;
      font-weight: 900;
      box-shadow: none;
      padding: 0;
      display: grid;
      place-items: center;
      text-align: center;
      line-height: 1;
    }

    .calc-key:hover {
      filter: brightness(1.18);
      background: rgba(56,189,248,0.16);
    }

    .calc-key.op {
      background: rgba(37,99,235,0.34);
      color: #bfdbfe;
    }

    .calc-key.danger {
      background: rgba(239,68,68,0.22);
      color: #fecaca;
    }

    .calc-key.equals {
      background: linear-gradient(135deg, #7c3aed, #2563eb, #06b6d4);
      color: white;
    }

    .calc-key.zero {
      grid-column: span 2;
    }


    .calculator-right-wrap {
      width: 100%;
      display: flex !important;
      justify-content: flex-end !important;
      align-items: flex-start !important;
    }

    .calculator-right-wrap .ai-calculator-panel {
      margin-left: 0 !important;
      margin-right: 0 !important;
      flex: 0 0 auto !important;
    }


    .credit-panel {
      margin-top: 16px;
      border: 1px solid rgba(56,189,248,0.28);
      border-radius: 18px;
      padding: 16px;
      background:
        radial-gradient(circle at 12% 18%, rgba(37,99,235,0.18), transparent 28%),
        radial-gradient(circle at 88% 8%, rgba(124,58,237,0.18), transparent 30%),
        rgba(15,23,42,0.56);
      box-shadow: 0 18px 48px rgba(37,99,235,0.14);
      overflow: hidden;
      position: relative;
    }

    .credit-panel summary {
      cursor: pointer;
      list-style: none;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      color: #e0f2fe;
      font-weight: 950;
      font-size: 16px;
    }

    .credit-panel summary::-webkit-details-marker {
      display: none;
    }

    .credit-summary-title {
      display: flex;
      align-items: center;
      gap: 10px;
    }

    .credit-ai-dot {
      width: 12px;
      height: 12px;
      border-radius: 999px;
      background: #38bdf8;
      box-shadow: 0 0 18px #38bdf8, 0 0 30px rgba(124,58,237,0.65);
      animation: aiPulse 1.4s ease-in-out infinite alternate;
    }

    .credit-upload-row {
      margin-top: 14px;
      display: flex;
      gap: 10px;
      align-items: center;
      flex-wrap: wrap;
    }

    .credit-upload-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 10px 14px;
      border-radius: 12px;
      background: linear-gradient(135deg, #2563eb, #7c3aed);
      color: white;
      font-weight: 900;
      cursor: pointer;
      border: 1px solid rgba(255,255,255,0.16);
      box-shadow: 0 14px 34px rgba(37,99,235,0.22);
    }

    .credit-file-name {
      color: #bfdbfe;
      font-size: 12px;
      font-weight: 800;
    }

    .credit-score-card {
      margin-top: 14px;
      padding: 14px;
      border: 1px solid rgba(255,255,255,0.12);
      border-radius: 16px;
      background: rgba(2,6,23,0.40);
      display: grid;
      grid-template-columns: minmax(140px, 0.35fr) minmax(240px, 1fr);
      gap: 14px;
      align-items: center;
    }

    .credit-score-big {
      font-size: 42px;
      font-weight: 950;
      letter-spacing: -0.05em;
      color: #f8fafc;
      line-height: 1;
    }

    .credit-score-label {
      color: #93c5fd;
      font-size: 12px;
      font-weight: 900;
      text-transform: uppercase;
      margin-bottom: 5px;
    }

    .credit-status-text {
      color: #cbd5e1;
      font-size: 13px;
      font-weight: 800;
      line-height: 1.35;
    }

    .credit-grid {
      margin-top: 14px;
      display: grid;
      grid-template-columns: repeat(4, minmax(145px, 1fr));
      gap: 10px;
    }

    .credit-metric {
      border: 1px solid rgba(255,255,255,0.11);
      background: rgba(255,255,255,0.055);
      border-radius: 14px;
      padding: 12px;
      min-height: 84px;
    }

    .credit-metric-label {
      color: #94a3b8;
      font-size: 11px;
      font-weight: 900;
      text-transform: uppercase;
      line-height: 1.2;
      margin-bottom: 8px;
    }

    .credit-metric-value {
      color: #f8fafc;
      font-size: 18px;
      font-weight: 950;
      line-height: 1.2;
      overflow-wrap: anywhere;
    }

    

    .income-panel {
      margin: 18px 0 22px;
      border: 1px solid rgba(56,189,248,.22);
      background: linear-gradient(180deg, rgba(56,189,248,.08), rgba(255,255,255,.045));
      border-radius: 24px;
      padding: 18px;
      box-shadow: 0 20px 60px rgba(37,99,235,.10);
    }
    .income-panel-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:12px; }
    .income-kicker { color:#67e8f9; font-size:11px; font-weight:950; letter-spacing:.14em; text-transform:uppercase; margin-bottom:5px; }
    .income-note { color:#94a3b8; margin:6px 0 0; line-height:1.55; font-size:13px; }
    .income-upload-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:12px 0; }
    .income-controls { display:grid; grid-template-columns:repeat(3,minmax(180px,1fr)); gap:12px; margin:12px 0 14px; }
    .income-controls label { display:block; color:#cbd5e1; font-size:12px; font-weight:900; margin-bottom:6px; }
    .income-controls input, .income-controls select { width:100%; min-height:42px; border:1px solid rgba(255,255,255,.14); background:rgba(15,23,42,.82); color:#f8fafc; border-radius:13px; padding:10px 12px; outline:none; }
    .income-result-card { margin-top: 10px; }
    @media (max-width: 760px){ .income-controls{grid-template-columns:1fr;} .income-panel-head{flex-direction:column;} }

    .credit-ai-status-badge {
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-top:8px;
      padding:7px 10px;
      border-radius:999px;
      border:1px solid rgba(56,189,248,.24);
      background:rgba(56,189,248,.10);
      color:#bfdbfe;
      font-size:12px;
      font-weight:900;
    }

    .credit-alerts {
      margin-top: 14px;
      border: 1px solid rgba(251,191,36,0.22);
      background: rgba(251,191,36,0.08);
      border-radius: 14px;
      padding: 12px;
      color: #fde68a;
      font-size: 13px;
      font-weight: 800;
      line-height: 1.45;
    }

    .credit-raw-box {
      margin-top: 12px;
      display: none;
    }

    .credit-raw-box textarea {
      width: 100%;
      min-height: 120px;
      resize: vertical;
      font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
      font-size: 12px;
    }

    .credit-small-note {
      margin-top: 8px;
      color: #94a3b8;
      font-size: 12px;
      font-weight: 700;
      line-height: 1.35;
    }

    @media (max-width: 950px) {
      .credit-grid {
        grid-template-columns: repeat(2, minmax(140px, 1fr));
      }

      .credit-score-card {
        grid-template-columns: 1fr;
      }
    }

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


    .credit-panel {
      display: block !important;
    }

    .credit-panel .credit-top {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 12px;
      flex-wrap: wrap;
    }

    .credit-panel .credit-title {
      display: flex;
      align-items: center;
      gap: 10px;
      color: #e0f2fe;
      font-weight: 950;
      font-size: 18px;
    }

    .credit-error-note {
      margin-top: 10px;
      color: #fecaca;
      background: rgba(239,68,68,0.10);
      border: 1px solid rgba(239,68,68,0.24);
      border-radius: 12px;
      padding: 10px 12px;
      font-size: 12px;
      font-weight: 800;
      line-height: 1.35;
    }

    .hidden {
      display: none !important;
    }


    @media (max-width: 760px) {
      body { padding: 14px; }
      .topbar, .section-head { align-items: flex-start; flex-direction: column; }
      .form-row { grid-template-columns: 1fr; }
      .status-pill { white-space: normal; }
      .selected-grid { grid-template-columns: 1fr; }
      .deal-grid, .approval-grid, .structure-grid, .calculation-grid, .inventory-search-row { grid-template-columns: 1fr; }
      .cps-compact-body { grid-template-columns: 1fr; padding: 14px; }
      .approval-strip, .compact-results { grid-template-columns: 1fr; margin-left: 14px; margin-right: 14px; }
      .compact-row, .compact-row.right { grid-template-columns: 1fr; gap: 6px; }
      .compact-sign { display: none; }
      .compact-date { grid-column: auto; text-align: left; }
      .cps-compact-header { align-items: stretch; flex-direction: column; }
      .compact-actions { justify-content: stretch; flex-direction: column; }
      .auto-structure-btn, .ai-recommendation-btn { width: 100%; }
      .ai-controls { grid-template-columns: 1fr; }
      .approval-options-grid { grid-template-columns: 1fr; }
    }

    @media (max-width: 1100px) {
      .ai-controls {
        grid-template-columns: 1fr;
      }

      .ai-panel-head {
        align-items: flex-start;
      }

      .make-picker {
        grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
      }
    }
  



    /* ===== Public Plans Landing Page ===== */
    body.dn-public-locked .dn-login-overlay { display: none !important; }
    body:not(.dn-public-locked) .dn-public-landing { display: none !important; }
    .dn-public-landing {
      position: fixed;
      inset: 0;
      z-index: 2147483647;
      overflow: auto;
      padding: 28px;
      background:
        radial-gradient(circle at 15% 8%, rgba(37,99,235,0.42), transparent 32%),
        radial-gradient(circle at 88% 14%, rgba(56,189,248,0.25), transparent 30%),
        radial-gradient(circle at 50% 100%, rgba(34,197,94,0.16), transparent 34%),
        linear-gradient(135deg, #020617 0%, #0f172a 50%, #111827 100%);
      color: #f8fafc;
    }
    .dn-public-shell { width: min(1180px, 100%); margin: 0 auto; }
    .dn-public-nav { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:32px; }
    .dn-public-brand { display:flex; align-items:center; gap:12px; min-width:0; }
    .dn-public-mark { width:50px; height:50px; border-radius:17px; display:grid; place-items:center; background:linear-gradient(135deg,#2563eb,#38bdf8,#22c55e); box-shadow:0 18px 46px rgba(37,99,235,.38); font-weight:950; font-size:24px; }
    .dn-public-brand-title { font-size:20px; font-weight:950; letter-spacing:-.03em; }
    .dn-public-brand-sub { color:#94a3b8; font-size:12px; font-weight:800; margin-top:2px; }
    .dn-public-login-btn { height:46px; padding:0 18px !important; border-radius:15px !important; background:linear-gradient(135deg,#2563eb,#06b6d4) !important; box-shadow:0 16px 38px rgba(37,99,235,.28) !important; font-size:13px !important; }
    .dn-public-hero { display:grid; grid-template-columns:minmax(280px,1.05fr) minmax(280px,.95fr); gap:24px; align-items:stretch; }
    .dn-public-hero-card, .dn-public-plan-card, .dn-public-feature-card {
      border:1px solid rgba(255,255,255,.13);
      background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.055));
      border-radius:28px;
      box-shadow:0 28px 80px rgba(0,0,0,.33);
      backdrop-filter:blur(16px);
    }
    .dn-public-hero-card { padding:30px; }
    .dn-public-kicker { color:#67e8f9; font-size:12px; font-weight:950; letter-spacing:.16em; text-transform:uppercase; margin-bottom:12px; }
    .dn-public-title { margin:0; font-size:clamp(34px,5vw,62px); line-height:.95; letter-spacing:-.07em; }
    .dn-public-desc { color:#cbd5e1; font-size:16px; line-height:1.65; margin:18px 0 24px; max-width:720px; }
    .dn-public-cta-row { display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
    .dn-public-primary { min-height:50px; padding:0 20px !important; border-radius:16px !important; font-size:14px !important; background:linear-gradient(135deg,#2563eb,#7c3aed,#06b6d4) !important; }
    .dn-public-note { color:#94a3b8; font-size:13px; font-weight:700; }
    .dn-public-plans { display:grid; grid-template-columns:1fr; gap:14px; }
    .dn-public-plan-card { padding:22px; position:relative; overflow:hidden; }
    .dn-public-plan-card.featured { border-color:rgba(56,189,248,.45); box-shadow:0 28px 90px rgba(37,99,235,.25); }
    .dn-public-plan-card.featured::before { content:'Best Value'; position:absolute; top:16px; right:16px; color:#082f49; background:#67e8f9; border-radius:999px; padding:6px 10px; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; }
    .dn-public-plan-name { font-size:19px; font-weight:950; letter-spacing:-.03em; margin-bottom:6px; }
    .dn-public-plan-sub { color:#94a3b8; font-size:13px; min-height:18px; }
    .dn-public-price { margin:14px 0 14px; font-size:40px; font-weight:950; letter-spacing:-.06em; }
    .dn-public-price span { color:#94a3b8; font-size:14px; font-weight:800; letter-spacing:0; }
    .dn-public-list { display:grid; gap:9px; margin:0; padding:0; list-style:none; color:#e2e8f0; font-size:13px; font-weight:800; }
    .dn-public-list li::before { content:'+'; color:#38bdf8; font-weight:950; margin-right:8px; }
    .dn-public-section-title { margin:34px 0 14px; font-size:24px; font-weight:950; letter-spacing:-.04em; }
    .dn-public-features { display:grid; grid-template-columns:repeat(4,minmax(170px,1fr)); gap:14px; }
    .dn-public-feature-card { padding:18px; min-height:142px; }
    .dn-public-feature-icon { width:38px; height:38px; border-radius:13px; display:grid; place-items:center; background:rgba(56,189,248,.16); border:1px solid rgba(56,189,248,.22); margin-bottom:12px; font-size:19px; }
    .dn-public-feature-title { font-size:15px; font-weight:950; margin-bottom:7px; }
    .dn-public-feature-text { color:#94a3b8; font-size:12.5px; line-height:1.45; font-weight:700; }
    @media (max-width: 920px) { .dn-public-hero { grid-template-columns:1fr; } .dn-public-features { grid-template-columns:repeat(2,minmax(160px,1fr)); } }
    @media (max-width: 560px) { .dn-public-landing { padding:18px; } .dn-public-nav { align-items:flex-start; flex-direction:column; } .dn-public-features { grid-template-columns:1fr; } .dn-public-hero-card { padding:22px; } }

    /* ===== Dealer Nexus App Shell v4 ===== */
    body.dn-shell-ready { padding: 0 !important; overflow-x: hidden; }
    body.dn-auth-locked .dn-sidebar,
    body.dn-auth-locked .dn-page-home,
    body.dn-auth-locked .dn-page-inventory,
    body.dn-auth-locked .dn-page-customers,
    body.dn-auth-locked .dn-page-leads,
    body.dn-auth-locked .dn-page-appointments,
    body.dn-auth-locked .dn-page-reports,
    body.dn-auth-locked .dn-page-settings,
    body.dn-auth-locked .dn-page-todo,
    body.dn-auth-locked main.dn-deal-page { filter: blur(5px); pointer-events: none; user-select: none; }
    .dn-page-hidden { display: none !important; }
    .dn-login-overlay { position: fixed; inset: 0; z-index: 2147483647; display: grid; place-items: center; padding: 22px; background: radial-gradient(circle at 20% 15%, rgba(37,99,235,0.38), transparent 34%), radial-gradient(circle at 85% 20%, rgba(56,189,248,0.24), transparent 30%), rgba(2,6,23,0.88); backdrop-filter: blur(18px); }
    body:not(.dn-auth-locked) .dn-login-overlay { display: none !important; }
    .dn-login-card { width: min(430px, 94vw); border: 1px solid rgba(255,255,255,0.16); border-radius: 28px; padding: 26px; background: linear-gradient(180deg, rgba(255,255,255,0.13), rgba(255,255,255,0.065)), rgba(15,23,42,0.82); box-shadow: 0 30px 90px rgba(0,0,0,0.46); }
    .dn-login-mark { width: 62px; height: 62px; border-radius: 20px; display: grid; place-items: center; margin-bottom: 16px; background: linear-gradient(135deg, #2563eb, #38bdf8, #22c55e); color: white; font-size: 28px; font-weight: 950; box-shadow: 0 18px 44px rgba(37,99,235,0.38); }
    .dn-login-title { margin: 0; font-size: 31px; letter-spacing: -0.05em; }
    .dn-login-subtitle { margin: 8px 0 22px; color: #94a3b8; font-size: 14px; line-height: 1.45; }
    .dn-login-form { display: grid; gap: 14px; }
    .dn-login-error { color: #fecaca; background: rgba(239,68,68,0.13); border: 1px solid rgba(239,68,68,0.30); border-radius: 13px; padding: 10px 12px; font-size: 13px; font-weight: 800; display:none; }
    .dn-login-error.show { display:block; }
    .dn-remember-row { display: flex; align-items: center; gap: 10px; color: #cbd5e1; font-size: 13px; font-weight: 400; user-select: none; margin-top: -2px; }
    .dn-remember-row input { width: 17px; height: 17px; accent-color: #38bdf8; cursor: pointer; }
    .dn-remember-row span { line-height: 1.25; }
    .dn-login-btn { height: 48px; justify-content: center; font-size: 14px; border-radius: 14px !important; }
    .dn-sidebar { position: fixed; top: 0; left: 0; bottom: 0; width: 292px; z-index: 9999; padding: 16px; background: radial-gradient(circle at 20% 8%, rgba(37,99,235,0.20), transparent 30%), linear-gradient(180deg, rgba(15,23,42,0.98), rgba(2,6,23,0.96)); border-right: 1px solid rgba(148,163,184,0.18); backdrop-filter: blur(18px); box-shadow: 22px 0 60px rgba(0,0,0,0.28); display: flex; flex-direction: column; gap: 16px; transition: width .22s ease, padding .22s ease; }
    .dn-sidebar-top { display: flex; align-items: center; gap: 10px; min-height: 62px; }
    .dn-sidebar-toggle { width: 44px !important; height: 44px !important; min-width: 44px !important; padding: 0 !important; border-radius: 14px !important; justify-content: center !important; background: rgba(255,255,255,0.08) !important; border: 1px solid rgba(255,255,255,0.14) !important; box-shadow: none !important; font-size: 20px !important; line-height: 1 !important; }
    .dn-sidebar-brand { flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; padding: 9px; border-radius: 18px; background: rgba(255,255,255,0.055); border: 1px solid rgba(255,255,255,0.10); }
    .dn-sidebar-logo { width: 42px; height: 42px; flex: 0 0 42px; border-radius: 15px; display: grid; place-items: center; background: linear-gradient(135deg, #2563eb, #38bdf8, #22c55e); color: white; font-weight: 950; box-shadow: 0 14px 34px rgba(37,99,235,0.34); }
    .dn-sidebar-title { min-width:0; display:grid; gap:3px; }
    .dn-sidebar-title strong { font-size: 16px; letter-spacing: -0.02em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .dn-sidebar-title span { color:#94a3b8; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.09em; white-space:nowrap; }
    .dn-sidebar-nav { display:grid; gap:8px; }
    .dn-sidebar-section-label { color:#64748b; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.13em; padding: 7px 9px 3px; }
    .dn-sidebar-link { width:100%; height:52px; justify-content:flex-start; gap:12px; padding:0 13px !important; border-radius:17px !important; background:transparent !important; border:1px solid transparent !important; box-shadow:none !important; color:#cbd5e1 !important; font-size:14px !important; font-weight:900 !important; transition: .18s ease; }
    .dn-sidebar-link:hover { background: rgba(255,255,255,0.075) !important; border-color: rgba(255,255,255,0.12) !important; filter: none !important; transform: translateX(2px); }

    .dn-sidebar-link.dn-sub-link {
      height: 44px;
      margin-left: 24px;
      width: calc(100% - 24px);
      padding-left: 12px !important;
      font-size: 13px !important;
      font-weight: 850 !important;
      color: #a8c7ff !important;
      background: rgba(255,255,255,0.035) !important;
      border-color: rgba(255,255,255,0.06) !important;
    }
    .dn-sidebar-link.dn-sub-link .dn-sidebar-icon {
      width: 24px;
      height: 24px;
      flex-basis: 24px;
      font-size: 17px;
    }
    .dn-sidebar-link.dn-sub-link.active {
      color: #fff !important;
      background: linear-gradient(135deg, rgba(37,99,235,0.82), rgba(56,189,248,0.58)) !important;
    }
    body.dn-sidebar-collapsed .dn-sidebar-link.dn-sub-link {
      margin-left: 0;
      width: 100%;
      height: 48px;
      padding-left: 0 !important;
    }
    .dn-sidebar-link.active { color:#fff !important; background: linear-gradient(135deg, rgba(37,99,235,0.98), rgba(56,189,248,0.78)) !important; border-color: rgba(255,255,255,0.22) !important; box-shadow: 0 15px 34px rgba(37,99,235,0.25) !important; }
    .dn-sidebar-icon { width:30px; height:30px; flex: 0 0 30px; display:inline-grid; place-items:center; font-size:22px; line-height:1; }
    .dn-sidebar-footer { margin-top:auto; border:1px solid rgba(255,255,255,0.10); background: rgba(255,255,255,0.05); border-radius:18px; padding:13px; color:#94a3b8; font-size:12px; line-height:1.45; font-weight:750; }
    .dn-sidebar-user { margin-top:auto; border:1px solid rgba(56,189,248,0.22); background:linear-gradient(180deg, rgba(37,99,235,0.16), rgba(255,255,255,0.055)); border-radius:18px; padding:13px; display:grid; gap:10px; box-shadow: 0 14px 34px rgba(37,99,235,0.14); }
    .dn-user-label { color:#64748b; font-size:10px; font-weight:950; text-transform:uppercase; letter-spacing:.12em; }
    .dn-user-name { color:#f8fafc; font-size:14px; font-weight:850; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .dn-sidebar-logout { width:100%; justify-content:center !important; height:38px; padding:0 12px !important; border-radius:12px !important; background:linear-gradient(135deg, #ef4444, #991b1b) !important; box-shadow:none !important; font-size:12px !important; }
    .dn-page-home, .dn-page-inventory, .dn-page-customers, .dn-page-leads, .dn-page-appointments, .dn-page-reports, .dn-page-todo, .dn-page-settings, main.app.dn-deal-page { margin-left: 322px !important; margin-right: 28px !important; transition: margin-left .22s ease; }
    main.app.dn-deal-page { width: auto !important; max-width: none !important; padding-top: 26px; padding-bottom: 28px; }
    .dn-page-home, .dn-page-inventory, .dn-page-customers, .dn-page-leads, .dn-page-appointments, .dn-page-reports, .dn-page-todo, .dn-page-settings { min-height:100vh; padding: 28px 0; }
    .dn-home-hero, .dn-settings-card, .dn-todo-card, .dn-coming-soon-card { border:1px solid rgba(255,255,255,0.13); border-radius:30px; padding: clamp(22px, 3vw, 34px); background: radial-gradient(circle at 15% 18%, rgba(37,99,235,0.24), transparent 34%), radial-gradient(circle at 88% 12%, rgba(56,189,248,0.17), transparent 30%), rgba(255,255,255,0.075); box-shadow: 0 24px 70px rgba(0,0,0,0.30); backdrop-filter: blur(16px); max-width: 1120px; }
    .dn-kicker { color:#93c5fd; font-size:13px; font-weight:950; text-transform:uppercase; letter-spacing:.13em; margin-bottom:12px; }
    .dn-page-title { margin:0 0 12px; font-size:clamp(30px, 4.2vw, 48px); line-height:1; letter-spacing:-.045em; }
    .dn-page-home .dn-page-title { font-size:clamp(28px, 4vw, 44px); }
    .dn-page-inventory .dn-page-title, .dn-page-customers .dn-page-title, .dn-page-leads .dn-page-title, .dn-page-appointments .dn-page-title, .dn-page-reports .dn-page-title, .dn-page-todo .dn-page-title, .dn-page-settings .dn-page-title { font-size:clamp(28px, 3.8vw, 42px); }
    .dn-page-copy { margin:0; color:#94a3b8; font-size:15px; line-height:1.45; max-width:680px; }
    .dn-card-grid { display:grid; grid-template-columns:repeat(3, minmax(180px, 1fr)); gap:14px; max-width:1120px; margin-top:18px; }
    .dn-mini-card { border:1px solid rgba(255,255,255,.12); border-radius:20px; padding:18px; background:rgba(255,255,255,.06); }
    .dn-mini-card strong { display:block; font-size:16px; margin-bottom:7px; }
    .dn-mini-card span { display:block; color:#94a3b8; font-size:13px; line-height:1.45; }
    .dn-settings-grid { display:grid; grid-template-columns:repeat(2, minmax(220px, 1fr)); gap:14px; margin-top:18px; max-width:900px; }
    .dn-setting-box { border:1px solid rgba(255,255,255,.12); background:rgba(2,6,23,.35); border-radius:18px; padding:16px; }
    .dn-setting-box label { margin-bottom:8px; }
    .dn-logout-btn { margin-top:18px; background:linear-gradient(135deg, #ef4444, #7f1d1d) !important; }
    body.dn-sidebar-collapsed .dn-sidebar { width: 88px; padding-left: 14px; padding-right: 14px; }
    body.dn-sidebar-collapsed .dn-sidebar-brand { display:none; }
    body.dn-sidebar-collapsed .dn-sidebar-section-label, body.dn-sidebar-collapsed .dn-sidebar-label, body.dn-sidebar-collapsed .dn-sidebar-footer, body.dn-sidebar-collapsed .dn-sidebar-user { display:none; }
    body.dn-sidebar-collapsed .dn-sidebar-top, body.dn-sidebar-collapsed .dn-sidebar-link { justify-content:center; }
    body.dn-sidebar-collapsed .dn-sidebar-link { padding-left:0 !important; padding-right:0 !important; }
    body.dn-sidebar-collapsed .dn-page-home, body.dn-sidebar-collapsed .dn-page-inventory, body.dn-sidebar-collapsed .dn-page-customers, body.dn-sidebar-collapsed .dn-page-leads, body.dn-sidebar-collapsed .dn-page-appointments, body.dn-sidebar-collapsed .dn-page-reports, body.dn-sidebar-collapsed .dn-page-todo, body.dn-sidebar-collapsed .dn-page-settings, body.dn-sidebar-collapsed main.app.dn-deal-page { margin-left: 116px !important; }
    @media (max-width: 880px) { .dn-sidebar { width: 88px; padding-left:14px; padding-right:14px; } .dn-sidebar-brand, .dn-sidebar-section-label, .dn-sidebar-label, .dn-sidebar-footer, .dn-sidebar-user { display:none; } .dn-sidebar-top, .dn-sidebar-link { justify-content:center; } .dn-sidebar-link { padding-left:0 !important; padding-right:0 !important; } .dn-page-home, .dn-page-inventory, .dn-page-customers, .dn-page-leads, .dn-page-appointments, .dn-page-reports, .dn-page-todo, .dn-page-settings, main.app.dn-deal-page { margin-left: 108px !important; margin-right: 14px !important; } .dn-card-grid, .dn-settings-grid { grid-template-columns: 1fr; } }



    /* ===== Advanced Admin Settings Page ===== */
    .dn-admin-settings { max-width: 1220px; }
    .dn-admin-settings-head { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-bottom:20px; }
    .dn-admin-plan-card { min-width:180px; text-align:center; border:1px solid rgba(56,189,248,.32); background:linear-gradient(135deg, rgba(37,99,235,.44), rgba(56,189,248,.18)); border-radius:22px; padding:18px; box-shadow:0 20px 54px rgba(37,99,235,.20); }
    .dn-admin-plan-card span { display:block; font-size:22px; font-weight:950; letter-spacing:-.04em; }
    .dn-admin-plan-card small { display:block; color:#bfdbfe; margin-top:5px; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
    .dn-admin-settings-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:18px; }
    .dn-admin-card { border:1px solid rgba(255,255,255,.13); border-radius:26px; padding:22px; background:radial-gradient(circle at 12% 12%, rgba(37,99,235,.20), transparent 34%), rgba(255,255,255,.065); box-shadow:0 24px 70px rgba(0,0,0,.25); backdrop-filter:blur(16px); }
    .dn-admin-wide { grid-column:1 / -1; }
    .dn-admin-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; }
    .dn-admin-card-head h2 { margin:0; font-size:22px; letter-spacing:-.035em; }
    .dn-admin-card-head p { margin:6px 0 0; color:#94a3b8; font-size:13px; line-height:1.45; max-width:720px; }
    .dn-admin-form-grid { display:grid; grid-template-columns:repeat(3,minmax(160px,1fr)); gap:14px; align-items:end; }
    .dn-admin-one-col { grid-template-columns:1fr; }
    .dn-admin-span-2 { grid-column:span 2; }
    .dn-admin-form-grid input, .dn-admin-form-grid select { height:44px; font-size:14px; padding:10px 12px; }
    .dn-admin-toggle-list { display:grid; gap:12px; margin-bottom:16px; }
    .dn-admin-toggle-list label { display:flex; align-items:center; justify-content:space-between; gap:14px; background:rgba(2,6,23,.34); border:1px solid rgba(255,255,255,.10); border-radius:16px; padding:14px; color:#e2e8f0; font-size:13px; font-weight:900; text-transform:none; letter-spacing:0; margin:0; }
    .dn-admin-toggle-list input { width:20px; height:20px; accent-color:#38bdf8; }
    .dn-admin-table-wrap { overflow:auto; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(2,6,23,.30); }
    .dn-admin-users-table { min-width:900px; width:100%; }
    .dn-admin-users-table th { background:rgba(17,24,39,.98); }
    .dn-admin-users-table select { height:34px; min-width:120px; border-radius:10px; padding:6px 10px; font-size:13px; }
    .dn-admin-status { display:inline-flex; align-items:center; border-radius:999px; padding:6px 10px; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.07em; }
    .dn-admin-status.active { background:rgba(34,197,94,.18); color:#86efac; border:1px solid rgba(34,197,94,.28); }
    .dn-admin-status.inactive { background:rgba(239,68,68,.18); color:#fecaca; border:1px solid rgba(239,68,68,.30); }
    .dn-admin-action-danger { background:linear-gradient(135deg,#ef4444,#991b1b) !important; box-shadow:none !important; }
    .dn-admin-action-success { background:linear-gradient(135deg,#22c55e,#15803d) !important; box-shadow:none !important; }
    .dn-admin-protected { display:inline-flex; align-items:center; height:32px; padding:0 10px; border-radius:10px; color:#cbd5e1; background:rgba(255,255,255,.08); font-size:12px; font-weight:900; }
    .dn-admin-permissions-grid { display:grid; grid-template-columns:repeat(4,minmax(160px,1fr)); gap:12px; }
    .dn-admin-permissions-grid > div { border:1px solid rgba(255,255,255,.11); background:rgba(2,6,23,.32); border-radius:18px; padding:16px; }
    .dn-admin-permissions-grid h3 { margin:0 0 7px; font-size:16px; }
    .dn-admin-permissions-grid p { margin:0; color:#94a3b8; font-size:12.5px; font-weight:700; line-height:1.45; }
    .dn-admin-session-row { display:grid; grid-template-columns:repeat(4,minmax(180px,1fr)); gap:14px; }
    .dn-admin-modal { position:fixed; inset:0; z-index:2147483647; background:rgba(2,6,23,.78); backdrop-filter:blur(12px); display:grid; place-items:center; padding:20px; }
    .dn-admin-modal-card { width:min(460px,94vw); border:1px solid rgba(255,255,255,.16); border-radius:26px; padding:22px; background:linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,.07)), rgba(15,23,42,.94); box-shadow:0 30px 90px rgba(0,0,0,.48); }
    .dn-admin-modal-head { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; }
    .dn-admin-modal-head h2 { margin:0; font-size:23px; letter-spacing:-.035em; }
    .dn-admin-modal-head button { width:38px; height:38px; padding:0 !important; justify-content:center; background:rgba(255,255,255,.10) !important; box-shadow:none !important; font-size:24px; }
    @media (max-width:1100px){ .dn-admin-settings-grid { grid-template-columns:1fr; } .dn-admin-form-grid { grid-template-columns:1fr; } .dn-admin-span-2 { grid-column:auto; } .dn-admin-permissions-grid { grid-template-columns:repeat(2,minmax(160px,1fr)); } .dn-admin-session-row { grid-template-columns:1fr 1fr; } .dn-admin-settings-head { flex-direction:column; align-items:flex-start; } }
    @media (max-width:650px){ .dn-admin-permissions-grid, .dn-admin-session-row { grid-template-columns:1fr; } }


    /* ===== Todo Dashboard + Todo Page ===== */
    .dn-dashboard-layout { display:grid; grid-template-columns: minmax(320px, 1fr); gap:18px; max-width:1120px; margin-top:18px; }
    .dn-dashboard-panel, .dn-todo-panel { border:1px solid rgba(255,255,255,.12); border-radius:22px; padding:18px; background:rgba(255,255,255,.06); box-shadow: 0 18px 48px rgba(0,0,0,.18); }
    .dn-dashboard-panel h2, .dn-todo-panel h2 { margin:0 0 12px; font-size:18px; letter-spacing:-.025em; }
    .dn-todo-stats { display:grid; grid-template-columns: repeat(3, 1fr); gap:10px; margin-bottom:14px; }
    .dn-todo-stat { border:1px solid rgba(255,255,255,.10); background:rgba(2,6,23,.32); border-radius:16px; padding:12px; }
    .dn-todo-stat span { display:block; color:#94a3b8; font-size:11px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
    .dn-todo-stat strong { display:block; margin-top:5px; font-size:24px; letter-spacing:-.04em; }
    .dn-todo-form { display:grid; grid-template-columns: minmax(220px,1fr) 150px 145px auto; gap:10px; align-items:end; margin:14px 0; }
    .dn-todo-form input, .dn-todo-form select { height:46px; font-size:14px; padding:10px 12px; }
    .dn-todo-add-btn { height:46px; justify-content:center; white-space:nowrap; }
    .dn-todo-toolbar { display:flex; gap:8px; flex-wrap:wrap; margin:12px 0; }
    .dn-todo-filter { box-shadow:none !important; background:rgba(255,255,255,.08) !important; border:1px solid rgba(255,255,255,.12) !important; color:#cbd5e1 !important; }
    .dn-todo-filter.active { background:linear-gradient(135deg,#2563eb,#06b6d4) !important; color:white !important; }
    .dn-todo-list { display:grid; gap:10px; margin-top:12px; }
    .dn-todo-empty { color:#94a3b8; border:1px dashed rgba(255,255,255,.18); border-radius:16px; padding:18px; text-align:center; }
    .dn-todo-item { display:grid; grid-template-columns: 34px 1fr auto; gap:12px; align-items:center; border:1px solid rgba(255,255,255,.12); background:rgba(2,6,23,.34); border-radius:17px; padding:12px; }
    .dn-todo-check { width:24px; height:24px; accent-color:#22c55e; cursor:pointer; }
    .dn-todo-title { font-size:15px; font-weight:900; color:#f8fafc; overflow-wrap:anywhere; }
    .dn-todo-meta { margin-top:5px; display:flex; gap:8px; flex-wrap:wrap; color:#94a3b8; font-size:12px; font-weight:800; }
    .dn-todo-badge { border:1px solid rgba(255,255,255,.13); background:rgba(255,255,255,.07); color:#bfdbfe; border-radius:999px; padding:3px 8px; }
    .dn-todo-item.done { opacity:.62; }
    .dn-todo-item.done .dn-todo-title { text-decoration: line-through; color:#cbd5e1; }
    .dn-todo-delete { background:rgba(239,68,68,.16) !important; border:1px solid rgba(239,68,68,.30) !important; box-shadow:none !important; padding:8px 10px !important; }
    .dn-home-todo-list .dn-todo-item { grid-template-columns: 30px 1fr; }
    .dn-home-todo-list .dn-todo-delete { display:none !important; }
    .dn-home-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:12px; }
    .dn-dashboard-side { display:grid; gap:14px; }
    @media (max-width: 1050px) { .dn-dashboard-layout, .dn-todo-form { grid-template-columns:1fr; } .dn-todo-add-btn { width:100%; } }
    @media (max-width: 560px) { .dn-todo-stats { grid-template-columns:1fr; } }

    .dn-coming-soon-card { max-width: 900px; min-height: 360px; display:flex; flex-direction:column; justify-content:center; }
    .dn-coming-soon-badge { width:max-content; border:1px solid rgba(56,189,248,.26); background:rgba(56,189,248,.10); color:#bae6fd; border-radius:999px; padding:8px 12px; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.10em; margin-top:18px; }

    /* ===== User cleanup: sidebar branding + Deal Rehash clean header ===== */
    .dn-sidebar-title span {
      max-width: 178px;
      display: block;
      font-size: 12px !important;
      line-height: 1.3;
      letter-spacing: 0.01em;
      text-transform: none !important;
      font-weight: 700 !important;
      color: #bfdbfe !important;
      white-space: normal !important;
    }
    .dn-sidebar-footer {
      font-size: 11px !important;
      line-height: 1.35 !important;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }
    .dn-deal-clean-topbar {
      justify-content: flex-end !important;
      margin-bottom: 14px !important;
      min-height: 0 !important;
    }
    body.dn-sidebar-collapsed .dn-sidebar-title span { display:none !important; }

  
/* ===== Dealer Nexus Professional CRM / Leads / Deals Frontend ===== */
.dn-crm-page { margin-left: 316px; margin-right: 24px; padding: 28px 0 46px; }
body.dn-sidebar-collapsed .dn-crm-page { margin-left: 116px !important; }
.dn-crm-shell { max-width: 1320px; margin: 0 auto; }
.dn-crm-head { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; margin-bottom:18px; }
.dn-crm-title { margin:0; font-size: clamp(28px, 3vw, 42px); letter-spacing:-.055em; line-height:1; }
.dn-crm-copy { color:#94a3b8; margin:8px 0 0; line-height:1.5; max-width:780px; }
.dn-crm-actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.dn-crm-btn-secondary { background:rgba(255,255,255,.10) !important; border:1px solid rgba(255,255,255,.15) !important; box-shadow:none !important; }
.dn-crm-grid { display:grid; grid-template-columns: 1.05fr .95fr; gap:16px; align-items:start; }
.dn-crm-grid-wide { display:grid; grid-template-columns: repeat(4, minmax(160px, 1fr)); gap:14px; margin-bottom:16px; }
.dn-crm-card {
  border:1px solid rgba(255,255,255,.13);
  background:linear-gradient(180deg,rgba(255,255,255,.095),rgba(255,255,255,.052));
  border-radius:22px; padding:18px; box-shadow:0 22px 64px rgba(0,0,0,.22); backdrop-filter:blur(14px);
}
.dn-crm-card-title { margin:0 0 4px; font-size:19px; font-weight:950; letter-spacing:-.03em; }
.dn-crm-card-sub { color:#94a3b8; font-size:13px; line-height:1.42; margin-bottom:14px; }
.dn-crm-stat { min-height:112px; display:flex; flex-direction:column; justify-content:space-between; }
.dn-crm-stat span { color:#94a3b8; font-size:12px; font-weight:900; text-transform:uppercase; letter-spacing:.08em; }
.dn-crm-stat strong { font-size:34px; letter-spacing:-.055em; }
.dn-crm-toolbar { display:grid; grid-template-columns:minmax(260px,1fr) 170px 170px 140px; gap:10px; margin-bottom:12px; align-items:end; }
.dn-crm-toolbar input,.dn-crm-toolbar select,.dn-crm-field input,.dn-crm-field select,.dn-crm-field textarea {
  border:1px solid rgba(255,255,255,.14); background:rgba(15,23,42,.72); color:#f8fafc;
  border-radius:14px; padding:12px 13px; outline:none; width:100%;
}
.dn-crm-field textarea { min-height:92px; resize:vertical; font-family:inherit; }
.dn-crm-form-grid { display:grid; grid-template-columns:repeat(2,minmax(160px,1fr)); gap:12px; }
.dn-crm-field.full { grid-column:1/-1; }
.dn-crm-table-wrap { border:1px solid rgba(255,255,255,.12); border-radius:16px; overflow:hidden; background:rgba(2,6,23,.30); }
.dn-crm-table-scroll { max-height:570px; overflow:auto; }
.dn-crm-table { width:100%; min-width:980px; border-collapse:separate; border-spacing:0; }
.dn-crm-table th { position:sticky; top:0; z-index:1; background:rgba(17,24,39,.98); color:#cbd5e1; font-size:11px; text-align:left; text-transform:uppercase; letter-spacing:.07em; padding:12px; border-bottom:1px solid rgba(255,255,255,.13); }
.dn-crm-table td { padding:12px; border-bottom:1px solid rgba(255,255,255,.075); font-size:13px; color:#f1f5f9; vertical-align:middle; }
.dn-crm-table tr:hover { background:rgba(37,99,235,.14); }
.dn-crm-table tr.active { background:rgba(37,99,235,.30); }
.dn-crm-lead-name { font-weight:950; }
.dn-crm-muted { color:#94a3b8 !important; }
.dn-crm-pill { display:inline-flex; align-items:center; gap:5px; padding:5px 9px; border-radius:999px; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.04em; border:1px solid rgba(255,255,255,.13); background:rgba(255,255,255,.08); color:#dbeafe; white-space:nowrap; }
.dn-crm-pill.new { background:rgba(37,99,235,.22); color:#bfdbfe; }
.dn-crm-pill.contacted { background:rgba(14,165,233,.20); color:#bae6fd; }
.dn-crm-pill.appointment { background:rgba(168,85,247,.20); color:#e9d5ff; }
.dn-crm-pill.working { background:rgba(245,158,11,.18); color:#fde68a; }
.dn-crm-pill.sold { background:rgba(34,197,94,.20); color:#bbf7d0; }
.dn-crm-pill.lost { background:rgba(239,68,68,.20); color:#fecaca; }
.dn-crm-lead-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr); gap:16px; align-items:start; }
.dn-crm-detail-top { display:flex; justify-content:space-between; gap:12px; align-items:flex-start; margin-bottom:12px; }
.dn-crm-detail-name { font-size:24px; font-weight:950; letter-spacing:-.04em; }
.dn-crm-detail-meta { color:#94a3b8; font-size:13px; margin-top:4px; line-height:1.45; }
.dn-crm-mini-grid { display:grid; grid-template-columns:repeat(2,minmax(120px,1fr)); gap:10px; margin:12px 0; }
.dn-crm-mini { border:1px solid rgba(255,255,255,.10); background:rgba(2,6,23,.30); border-radius:14px; padding:11px; min-height:72px; }
.dn-crm-mini span { display:block; color:#94a3b8; font-size:10px; font-weight:950; letter-spacing:.08em; text-transform:uppercase; margin-bottom:6px; }
.dn-crm-mini strong { color:#f8fafc; font-size:14px; overflow-wrap:anywhere; }
.dn-crm-message-box { border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(2,6,23,.34); overflow:hidden; }
.dn-crm-message-log { height:300px; overflow:auto; padding:14px; display:flex; flex-direction:column; gap:10px; }
.dn-msg { max-width:86%; padding:10px 12px; border-radius:15px; font-size:13px; line-height:1.38; }
.dn-msg.out { margin-left:auto; background:linear-gradient(135deg,#2563eb,#0ea5e9); color:white; border-bottom-right-radius:5px; }
.dn-msg.in { margin-right:auto; background:rgba(255,255,255,.10); color:#e2e8f0; border-bottom-left-radius:5px; }
.dn-msg small { display:block; opacity:.72; margin-top:5px; font-size:10px; font-weight:800; }
.dn-crm-compose { border-top:1px solid rgba(255,255,255,.12); padding:12px; display:grid; gap:10px; }
.dn-crm-compose textarea { width:100%; min-height:86px; border-radius:14px; border:1px solid rgba(255,255,255,.14); background:rgba(15,23,42,.74); color:#f8fafc; padding:12px; font-family:inherit; resize:vertical; }
.dn-crm-compose-actions { display:flex; gap:8px; flex-wrap:wrap; justify-content:space-between; }
.dn-crm-ai-panel {
  border:1px solid rgba(124,58,237,.32); border-radius:16px; padding:14px; margin-top:12px;
  background:radial-gradient(circle at 10% 15%, rgba(124,58,237,.20), transparent 30%), rgba(15,23,42,.52);
}
.dn-crm-ai-title { color:#ddd6fe; font-weight:950; margin-bottom:8px; display:flex; align-items:center; gap:8px; }
.dn-crm-ai-dot { width:10px; height:10px; border-radius:999px; background:#38bdf8; box-shadow:0 0 16px #38bdf8; }
.dn-crm-kanban { display:grid; grid-template-columns:repeat(4,minmax(230px,1fr)); gap:14px; overflow:auto; padding-bottom:8px; }
.dn-crm-stage { border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(2,6,23,.28); min-height:420px; padding:12px; }
.dn-crm-stage-head { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:10px; color:#e2e8f0; font-weight:950; }
.dn-crm-deal-card { border:1px solid rgba(255,255,255,.12); border-radius:15px; padding:12px; background:rgba(255,255,255,.07); margin-bottom:10px; cursor:pointer; }
.dn-crm-deal-card:hover { background:rgba(37,99,235,.17); }
.dn-crm-deal-title { font-weight:950; margin-bottom:5px; }
.dn-crm-deal-meta { color:#94a3b8; font-size:12px; line-height:1.4; }
.dn-crm-lender-grid { display:grid; grid-template-columns:repeat(4,minmax(190px,1fr)); gap:12px; margin-top:12px; }
.dn-crm-lender { border:1px solid rgba(255,255,255,.12); border-radius:16px; padding:14px; background:rgba(255,255,255,.06); }
.dn-crm-lender h4 { margin:0 0 7px; font-size:15px; }
.dn-crm-lender p { margin:0; color:#94a3b8; font-size:12px; line-height:1.4; }
.dn-crm-import-box { display:grid; gap:10px; }
.dn-crm-import-box textarea { min-height:130px; font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; font-size:12px; }
.dn-crm-task-list { display:grid; gap:9px; max-height:420px; overflow:auto; }
.dn-crm-task { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; border:1px solid rgba(255,255,255,.10); background:rgba(255,255,255,.055); border-radius:14px; padding:11px; }
.dn-crm-task.done { opacity:.58; }
.dn-crm-task-title { font-weight:900; }
.dn-crm-task-meta { color:#94a3b8; font-size:11px; margin-top:3px; }
.dn-crm-modal { position:fixed; inset:0; z-index:2147483647; display:none; place-items:center; padding:22px; background:rgba(2,6,23,.78); backdrop-filter:blur(12px); }
.dn-crm-modal.open { display:grid; }
.dn-crm-modal-card { width:min(780px,96vw); max-height:92vh; overflow:auto; border:1px solid rgba(255,255,255,.16); border-radius:24px; padding:20px; background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.065)),#0f172a; box-shadow:0 30px 90px rgba(0,0,0,.42); }
.dn-crm-modal-head { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; }
.dn-crm-modal-head h2 { margin:0; font-size:24px; letter-spacing:-.04em; }
.dn-crm-close { background:rgba(255,255,255,.10)!important; box-shadow:none!important; width:38px; height:38px; justify-content:center; padding:0!important; }
.dn-crm-empty { color:#94a3b8; padding:18px; text-align:center; border:1px dashed rgba(255,255,255,.16); border-radius:14px; }
@media (max-width:1100px){
  .dn-crm-page { margin-left:108px !important; margin-right:14px !important; }
  .dn-crm-grid,.dn-crm-lead-layout { grid-template-columns:1fr; }
  .dn-crm-grid-wide { grid-template-columns:repeat(2,minmax(150px,1fr)); }
  .dn-crm-toolbar { grid-template-columns:1fr 1fr; }
  .dn-crm-lender-grid { grid-template-columns:repeat(2,minmax(180px,1fr)); }
}
@media (max-width:680px){
  .dn-crm-head { flex-direction:column; }
  .dn-crm-grid-wide,.dn-crm-toolbar,.dn-crm-form-grid,.dn-crm-mini-grid,.dn-crm-lender-grid { grid-template-columns:1fr; }
  .dn-crm-kanban { grid-template-columns:minmax(260px,1fr); }
}


    /* ===== Database Inventory Module ===== */
    .dn-db-inventory-shell { min-height: 100vh; padding: 28px 0; }
    .dn-db-inventory-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; margin-bottom:18px; }
    .dn-db-inventory-actions { display:flex; gap:10px; align-items:center; flex-wrap:wrap; justify-content:flex-end; }
    .dn-db-inventory-actions button, .dn-db-upload-btn, .dn-db-modal-actions button { min-height:42px; padding:0 15px; border-radius:14px; border:0; color:white; background:linear-gradient(135deg,#2563eb,#06b6d4); font-weight:900; cursor:pointer; box-shadow:0 14px 32px rgba(37,99,235,.22); font-size:13px; display:inline-flex; align-items:center; justify-content:center; }
    .dn-db-upload-btn { background:linear-gradient(135deg,#0f766e,#2563eb); }
    #dnDbInventoryCsv { position:absolute; width:1px; height:1px; opacity:0; pointer-events:none; }
    .dn-db-secondary { background:rgba(255,255,255,.10) !important; border:1px solid rgba(255,255,255,.14) !important; box-shadow:none !important; }
    .dn-db-danger { background:linear-gradient(135deg,#dc2626,#991b1b) !important; box-shadow:0 14px 32px rgba(220,38,38,.22) !important; }
    .dn-db-status-row { display:grid; grid-template-columns:repeat(5,minmax(130px,1fr)); gap:12px; margin-bottom:16px; }
    .dn-db-stat-card { border:1px solid rgba(255,255,255,.12); background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.045)); border-radius:18px; padding:15px; box-shadow:0 18px 46px rgba(0,0,0,.18); }
    .dn-db-stat-card span { display:block; color:#94a3b8; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; margin-bottom:7px; }
    .dn-db-stat-card strong { display:block; color:#f8fafc; font-size:24px; font-weight:950; letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
    .dn-db-inventory-card { border:1px solid rgba(255,255,255,.13); background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.045)); border-radius:24px; padding:18px; box-shadow:0 24px 70px rgba(0,0,0,.28); }
    .dn-db-toolbar { display:grid; grid-template-columns:minmax(280px,1fr) minmax(160px,.25fr) minmax(170px,.25fr); gap:14px; align-items:end; margin-bottom:14px; }
    .dn-db-toolbar label, .dn-db-form-grid label { display:block; color:#94a3b8; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; margin-bottom:7px; }
    .dn-db-toolbar input, .dn-db-toolbar select, .dn-db-form-grid input, .dn-db-form-grid select { width:100%; min-height:43px; border:1px solid rgba(255,255,255,.14); background:rgba(15,23,42,.78); color:#f8fafc; border-radius:13px; padding:10px 12px; outline:none; }
    .dn-db-message { color:#bfdbfe; font-size:13px; font-weight:800; margin:8px 0 12px; }
    .dn-db-table-wrap { border:1px solid rgba(255,255,255,.12); border-radius:18px; overflow:hidden; background:rgba(2,6,23,.32); }
    .dn-db-preview-card { margin:14px 0; border:1px solid rgba(56,189,248,.24); border-radius:18px; background:linear-gradient(180deg,rgba(56,189,248,.10),rgba(255,255,255,.045)); padding:18px; box-shadow:0 18px 46px rgba(37,99,235,.12); }
    .dn-db-preview-head { display:flex; align-items:flex-start; justify-content:space-between; gap:14px; margin-bottom:14px; }
    .dn-db-preview-title { margin:0; font-size:22px; font-weight:950; letter-spacing:-.03em; color:#f8fafc; }
    .dn-db-preview-sub { margin-top:5px; color:#93c5fd; font-size:13px; font-weight:850; }
    .dn-db-preview-actions { display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
    .dn-db-detail-tabs { display:flex; gap:8px; flex-wrap:wrap; margin:8px 0 14px; }
    .dn-db-detail-tabs button { min-height:36px; padding:0 12px; border-radius:999px; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.07); color:#cbd5e1; box-shadow:none; font-size:12px; }
    .dn-db-detail-tabs button.active { background:linear-gradient(135deg,#2563eb,#06b6d4); color:white; border-color:transparent; }
    .dn-db-edit-grid { display:grid; grid-template-columns:repeat(4,minmax(150px,1fr)); gap:12px; }
    .dn-db-edit-grid label { display:block; color:#94a3b8; font-size:10px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; margin-bottom:6px; }
    .dn-db-edit-grid input, .dn-db-edit-grid select, .dn-db-edit-grid textarea { width:100%; min-height:42px; border:1px solid rgba(255,255,255,.14); background:rgba(15,23,42,.82); color:#f8fafc; border-radius:13px; padding:10px 12px; outline:none; }
    .dn-db-edit-grid textarea { min-height:95px; resize:vertical; }
    .dn-db-readonly-value { min-height:42px; display:flex; align-items:center; border:1px solid rgba(255,255,255,.10); background:rgba(2,6,23,.35); border-radius:13px; padding:10px 12px; color:#f8fafc; font-weight:900; font-variant-numeric:tabular-nums; }
    .dn-db-click-row { cursor:pointer; }
    @media (max-width:1100px){ .dn-db-edit-grid{grid-template-columns:repeat(2,1fr);} }
    @media (max-width:620px){ .dn-db-edit-grid{grid-template-columns:1fr;} }
    .dn-db-preview-grid { display:grid; grid-template-columns:repeat(6,minmax(130px,1fr)); gap:10px; }
    .dn-db-preview-field { background:rgba(2,6,23,.34); border:1px solid rgba(255,255,255,.10); border-radius:14px; padding:12px; min-height:72px; }
    .dn-db-preview-label { color:#94a3b8; font-size:10px; font-weight:950; text-transform:uppercase; letter-spacing:.08em; margin-bottom:7px; }
    .dn-db-preview-value { color:#f8fafc; font-size:15px; font-weight:900; overflow-wrap:anywhere; }
    .dn-db-selected-row td { background:rgba(37,99,235,.28) !important; border-bottom-color:rgba(56,189,248,.24) !important; }
    @media (max-width:1100px){ .dn-db-preview-grid{grid-template-columns:repeat(3,1fr);} }
    @media (max-width:620px){ .dn-db-preview-grid{grid-template-columns:1fr;} .dn-db-preview-head{flex-direction:column;} .dn-db-preview-actions{justify-content:flex-start;} }
    .dn-db-table-scroll { max-height:650px; overflow:auto; }
    .dn-db-inventory-table { width:100%; min-width:1320px; border-collapse:separate; border-spacing:0; }
    .dn-db-inventory-table th { position:sticky; top:0; z-index:2; background:rgba(17,24,39,.98); color:#cbd5e1; text-align:left; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.07em; padding:13px 12px; border-bottom:1px solid rgba(255,255,255,.13); white-space:nowrap; }
    .dn-db-inventory-table td { padding:12px; border-bottom:1px solid rgba(255,255,255,.075); color:#f1f5f9; font-size:13px; white-space:nowrap; vertical-align:middle; }
    .dn-db-inventory-table tr:hover td { background:rgba(37,99,235,.13); }
    .dn-db-vin { font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace; color:#bfdbfe; }
    .dn-db-money { font-variant-numeric:tabular-nums; font-weight:850; }
    .dn-db-empty { color:#94a3b8 !important; padding:20px !important; }
    .dn-db-pill { display:inline-flex; align-items:center; padding:5px 10px; border-radius:999px; font-size:11px; font-weight:950; text-transform:uppercase; letter-spacing:.04em; }
    .dn-db-pill.available { background:rgba(34,197,94,.16); color:#86efac; border:1px solid rgba(34,197,94,.25); }
    .dn-db-pill.pending { background:rgba(234,179,8,.16); color:#fde68a; border:1px solid rgba(234,179,8,.25); }
    .dn-db-pill.sold { background:rgba(37,99,235,.18); color:#bfdbfe; border:1px solid rgba(37,99,235,.28); }
    .dn-db-pill.inactive { background:rgba(148,163,184,.13); color:#cbd5e1; border:1px solid rgba(148,163,184,.20); }
    .dn-db-row-actions { display:flex; gap:8px; align-items:center; }
    .dn-db-row-actions button { min-height:31px; padding:0 10px; border-radius:10px; box-shadow:none; font-size:12px; }
    .dn-db-danger { background:rgba(239,68,68,.22) !important; color:#fecaca !important; border:1px solid rgba(239,68,68,.28) !important; }
    .dn-db-modal { position:fixed; inset:0; z-index:2147483647; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(2,6,23,.82); backdrop-filter:blur(12px); overflow:auto; }
    .dn-db-modal.open { display:flex; }
    .dn-db-modal-card { width:min(980px,96vw); border:1px solid rgba(255,255,255,.16); border-radius:24px; padding:22px; background:linear-gradient(180deg,rgba(255,255,255,.12),rgba(255,255,255,.06)),#0f172a; box-shadow:0 30px 90px rgba(0,0,0,.48); }
    .dn-db-modal-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; }
    .dn-db-modal-head h2 { margin:0; font-size:25px; letter-spacing:-.04em; }
    .dn-db-modal-head p { margin:5px 0 0; color:#94a3b8; }
    .dn-db-close { width:38px; height:38px; border-radius:999px; background:rgba(255,255,255,.10); color:white; border:0; font-size:24px; cursor:pointer; }
    .dn-db-form-grid { display:grid; grid-template-columns:repeat(4,minmax(160px,1fr)); gap:14px; }
    .dn-db-wide { grid-column:span 2; }
    .dn-db-modal-actions { display:flex; gap:10px; justify-content:flex-end; margin-top:18px; }
    @media (max-width:1100px){ .dn-db-status-row{grid-template-columns:repeat(2,1fr);} .dn-db-toolbar{grid-template-columns:1fr;} .dn-db-form-grid{grid-template-columns:1fr 1fr;} .dn-db-wide{grid-column:span 2;} .dn-db-inventory-head{flex-direction:column;} }
    @media (max-width:620px){ .dn-db-status-row{grid-template-columns:1fr;} .dn-db-form-grid{grid-template-columns:1fr;} .dn-db-wide{grid-column:span 1;} }

  
/* ===== Dealer Nexus CRM Dashboard ===== */
.dn-dc-crm-page {
  background:
    radial-gradient(circle at 8% 4%, rgba(37,99,235,.24), transparent 34%),
    radial-gradient(circle at 92% 12%, rgba(34,211,238,.18), transparent 30%),
    linear-gradient(135deg, #020617 0%, #0f172a 48%, #111827 100%);
  color:#f8fafc;
  min-height:100vh;
  padding:20px !important;
}
.dn-dc-crm-page * { box-sizing:border-box; }
.dn-dc-topbar {
  min-height:72px;
  display:flex;
  align-items:center;
  gap:14px;
  padding:14px 16px;
  color:white;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg, rgba(15,23,42,.92), rgba(30,41,59,.74));
  border-radius:24px;
  box-shadow:0 22px 70px rgba(0,0,0,.28);
  backdrop-filter:blur(20px);
  margin-bottom:16px;
}
.dn-dc-brand {
  font-size:22px;
  font-weight:950;
  font-style:italic;
  letter-spacing:-.045em;
  white-space:nowrap;
  background:linear-gradient(135deg,#60a5fa,#22d3ee,#34d399);
  -webkit-background-clip:text;
  color:transparent;
}
.dn-dc-brand span { color:inherit; }
.dn-dc-search {
  display:flex;
  align-items:center;
  background:rgba(2,6,23,.58);
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  overflow:hidden;
  width:min(480px,38vw);
}
.dn-dc-search input {
  border:0;
  outline:0;
  height:44px;
  padding:0 14px;
  flex:1;
  font-size:14px;
  color:#f8fafc;
  background:transparent;
}
.dn-dc-search input::placeholder { color:#94a3b8; }
.dn-dc-search button {
  border:0;
  background:rgba(56,189,248,.14);
  width:44px;
  height:44px;
  cursor:pointer;
  font-size:18px;
  color:#e0f2fe;
}
.dn-dc-dealer-pill {
  margin-left:auto;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  line-height:1.1;
  padding:8px 12px;
  background:rgba(15,23,42,.52);
  border:1px solid rgba(255,255,255,.11);
  border-radius:16px;
}
.dn-dc-dealer-pill strong { font-size:17px; font-weight:950; color:#f8fafc; }
.dn-dc-dealer-pill small { font-size:11px; color:#93c5fd; }
.dn-dc-icon-btn, .dn-dc-user-btn {
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:white;
  min-height:40px;
  border-radius:14px;
  padding:0 12px;
  position:relative;
  cursor:pointer;
  font-weight:900;
}
.dn-dc-icon-btn span {
  position:absolute;
  top:-6px;
  right:-6px;
  background:#ef4444;
  color:white;
  min-width:18px;
  height:18px;
  border-radius:999px;
  display:grid;
  place-items:center;
  font-size:10px;
}
.dn-dc-user-btn {
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  border-color:rgba(255,255,255,.26);
  min-width:90px;
}
.dn-dc-shell { padding:0; }
.dn-dc-dashboard-row {
  border:1px solid rgba(255,255,255,.12);
  background:rgba(15,23,42,.70);
  border-radius:20px;
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:10px 12px;
  margin-bottom:12px;
  backdrop-filter:blur(18px);
}
.dn-dc-dashboard-title, .dn-dc-view-filter { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.dn-dc-dashboard-title select, .dn-dc-view-filter select {
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  font-weight:900;
  color:#f8fafc;
  background:rgba(2,6,23,.60);
  min-height:38px;
  padding:0 12px;
}
.dn-dc-dashboard-title button, .dn-dc-view-filter button {
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  color:#cbd5e1;
  font-size:13px;
  cursor:pointer;
  min-height:38px;
  border-radius:12px;
  padding:0 12px;
  font-weight:850;
}
.dn-dc-tabs {
  display:flex;
  background:rgba(15,23,42,.62);
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  margin-bottom:12px;
  overflow:auto;
  padding:6px;
  gap:6px;
  backdrop-filter:blur(18px);
}
.dn-dc-tabs button {
  flex:0 0 auto;
  border:0;
  background:transparent;
  min-height:38px;
  padding:0 14px;
  text-transform:uppercase;
  font-weight:950;
  font-size:11px;
  color:#94a3b8;
  cursor:pointer;
  border-radius:14px;
}
.dn-dc-tabs button.active {
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:white;
  box-shadow:0 12px 28px rgba(37,99,235,.28);
}
.dn-dc-grid {
  display:grid;
  grid-template-columns:32% 44% 24%;
  gap:14px;
  align-items:start;
}
.dn-dc-card {
  background:linear-gradient(180deg, rgba(15,23,42,.84), rgba(2,6,23,.62));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 60px rgba(0,0,0,.22);
  overflow:hidden;
  border-radius:22px;
  backdrop-filter:blur(18px);
}
.dn-dc-card h3 { margin:0; font-size:15px; font-weight:950; color:#f8fafc; }
.dn-dc-card-title {
  min-height:42px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 14px;
  color:white;
  font-weight:950;
  font-size:13px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.dn-dc-card-title.orange { background:linear-gradient(135deg,rgba(245,158,11,.85),rgba(249,115,22,.70)); }
.dn-dc-card-title.green { background:linear-gradient(135deg,rgba(16,185,129,.86),rgba(20,184,166,.70)); }
.dn-dc-card-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.dn-dc-card-head.slim { padding:12px 16px; }
.dn-dc-card-head button {
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.07);
  color:#cbd5e1;
  border-radius:12px;
  min-height:34px;
  cursor:pointer;
}
.dn-dc-appt-body { display:grid; grid-template-columns:1fr 96px; min-height:215px; }
.dn-dc-empty {
  color:#94a3b8;
  display:grid;
  place-items:center;
  text-align:center;
  font-size:13px;
  min-height:120px;
}
.dn-dc-empty.big { min-height:430px; }
.dn-dc-appt-stats {
  border-left:1px solid rgba(255,255,255,.10);
  display:grid;
  grid-template-rows:repeat(6,1fr);
  text-align:center;
  align-items:center;
  text-transform:uppercase;
  color:#94a3b8;
  font-size:10px;
}
.dn-dc-appt-stats strong { font-size:25px; color:#f8fafc; display:block; }
.dn-dc-activity { min-height:275px; }
.dn-dc-activity-grid { display:grid; grid-template-columns:1fr 1fr; gap:0; padding:6px 16px 12px; }
.dn-dc-activity-grid div {
  display:grid;
  grid-template-columns:38px 1fr auto;
  align-items:center;
  gap:9px;
  min-height:52px;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:#f8fafc;
  font-size:13px;
}
.dn-dc-activity-grid b { font-weight:950; }
.dn-dc-activity-grid em { font-style:normal; color:#94a3b8; font-size:12px; }
.dn-dc-activity-grid strong { font-size:18px; color:#f8fafc; }
.dn-dc-act-icon {
  width:32px;
  height:32px;
  border-radius:10px;
  display:grid;
  place-items:center;
  color:white;
  font-size:11px;
  font-weight:950;
}
.dn-dc-act-icon.blue { background:#2563eb; }
.dn-dc-act-icon.teal { background:#0891b2; }
.dn-dc-act-icon.cyan { background:#06b6d4; }
.dn-dc-act-icon.amber { background:#f59e0b; }
.dn-dc-act-icon.green { background:#16a34a; }
.dn-dc-act-icon.red { background:#ef4444; }
.dn-dc-points {
  display:grid;
  grid-template-columns:180px 1fr 1fr;
  padding:0 24px 14px;
  align-items:center;
  gap:10px;
  text-align:center;
  color:#94a3b8;
  text-transform:uppercase;
  font-size:10px;
}
.dn-dc-points > strong {
  background:linear-gradient(135deg,#0f766e,#06b6d4);
  color:white;
  padding:16px 10px;
  font-size:17px;
  text-transform:none;
  border-radius:14px;
}
.dn-dc-points b { color:#f8fafc; font-size:17px; display:block; }
.dn-dc-funnel { min-height:275px; padding-bottom:14px; }
.dn-dc-funnel h3 { padding:16px; }
.dn-dc-funnel-chart { width:240px; margin:6px auto 9px; color:white; text-transform:uppercase; text-align:center; }
.dn-dc-funnel-chart div { margin:0 auto; height:38px; display:grid; place-items:center; line-height:1; clip-path:polygon(7% 0,93% 0,84% 100%,16% 100%); box-shadow:0 10px 22px rgba(0,0,0,.12); }
.dn-dc-funnel-chart strong { font-size:18px; display:block; }
.dn-dc-funnel-chart span { font-size:11px; }
.dn-dc-funnel-chart .f1 { background:#22c55e; width:230px; }
.dn-dc-funnel-chart .f2 { background:#10b981; width:200px; }
.dn-dc-funnel-chart .f3 { background:#06b6d4; width:170px; }
.dn-dc-funnel-chart .f4 { background:#3b82f6; width:140px; }
.dn-dc-funnel-chart .f5 { background:#1d4ed8; width:110px; }
.dn-dc-conversion { text-align:center; font-size:13px; color:#cbd5e1; }
.dn-dc-conversion strong { font-size:18px; margin-right:4px; color:#f8fafc; }
.dn-dc-prospects { grid-row:span 2; }
.dn-dc-prospect-counts {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  text-align:center;
  padding:22px 0 20px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.dn-dc-prospect-counts strong { display:block; color:#f8fafc; font-size:27px; }
.dn-dc-prospect-counts span { text-transform:uppercase; color:#94a3b8; font-size:11px; }
.dn-dc-prospect-list { max-height:560px; overflow:auto; }
.dn-dc-prospect {
  padding:14px 16px;
  border-bottom:1px solid rgba(255,255,255,.07);
  cursor:pointer;
  position:relative;
}
.dn-dc-prospect:hover { background:rgba(37,99,235,.13); }
.dn-dc-prospect.active { background:rgba(37,99,235,.22); border-left:4px solid #38bdf8; }
.dn-dc-prospect strong { display:block; color:#60a5fa; font-size:13px; text-transform:uppercase; margin-bottom:2px; }
.dn-dc-prospect a, .dn-dc-prospect span { display:block; color:#93c5fd; font-size:12px; text-decoration:none; margin:1px 0; }
.dn-dc-prospect small { color:#94a3b8; display:block; margin-top:2px; }
.dn-dc-prospect .dn-dc-time { position:absolute; right:12px; top:18px; color:#f87171; font-size:12px; }
.dn-dc-todos { min-height:640px; }
.dn-dc-filter-tags { display:flex; gap:8px; flex-wrap:wrap; padding:10px 14px; border-bottom:1px solid rgba(255,255,255,.08); }
.dn-dc-filter-tags span { background:rgba(255,255,255,.09); color:#cbd5e1; border-radius:999px; padding:6px 10px; font-size:12px; }
.dn-dc-todo-form { display:grid; grid-template-columns:1fr 110px 70px; gap:8px; padding:12px 14px; border-bottom:1px solid rgba(255,255,255,.08); }
.dn-dc-todo-form input, .dn-dc-todo-form select {
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  min-height:36px;
  padding:6px 10px;
  color:#f8fafc;
  background:rgba(2,6,23,.50);
}
.dn-dc-todo-form button { border:0; background:linear-gradient(135deg,#2563eb,#06b6d4); color:white; border-radius:12px; font-weight:900; cursor:pointer; }
.dn-dc-todo-item { display:grid; grid-template-columns:22px 1fr auto; gap:8px; align-items:start; padding:11px 14px; border-bottom:1px solid rgba(255,255,255,.07); }
.dn-dc-todo-item.done { opacity:.55; text-decoration:line-through; }
.dn-dc-todo-item strong { color:#f8fafc; font-size:13px; }
.dn-dc-todo-item small { display:block; color:#94a3b8; }
.dn-dc-todo-item button { border:0; background:#ef4444; color:white; border-radius:10px; padding:5px 8px; cursor:pointer; }
.dn-dc-email { min-height:640px; }
.dn-dc-message-list { max-height:560px; overflow:auto; }
.dn-dc-message { display:grid; grid-template-columns:34px 1fr 22px; gap:8px; padding:12px 12px; border-bottom:1px solid rgba(255,255,255,.07); align-items:start; cursor:pointer; }
.dn-dc-message:hover { background:rgba(255,255,255,.05); }
.dn-dc-message .bubble { width:28px; height:28px; border:1px solid #60a5fa; color:#93c5fd; border-radius:50%; display:grid; place-items:center; font-size:10px; font-weight:950; }
.dn-dc-message strong { color:#f8fafc; font-size:12px; text-transform:uppercase; }
.dn-dc-message p { margin:5px 0 0; color:#cbd5e1; font-size:12px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.dn-dc-message .status { display:inline-block; background:rgba(148,163,184,.25); color:#e2e8f0; font-size:9px; padding:2px 6px; margin-left:4px; border-radius:999px; text-transform:uppercase; }
.dn-dc-message .badge { width:17px; height:17px; background:#ef4444; color:white; border-radius:50%; display:grid; place-items:center; font-size:10px; }
.dn-dc-calendar { margin-top:14px; padding:16px; }
.dn-dc-calendar-note { color:#fca5a5; font-size:12px; margin:8px 0; }
.dn-dc-calendar-toolbar { display:flex; align-items:center; gap:8px; background:rgba(2,6,23,.42); border:1px solid rgba(255,255,255,.10); padding:8px; border-radius:16px 16px 0 0; }
.dn-dc-calendar-toolbar button { border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.08); color:#f8fafc; border-radius:10px; padding:7px 10px; cursor:pointer; }
.dn-dc-calendar-toolbar strong { color:#f8fafc; }
.dn-dc-calendar-grid { display:grid; grid-template-columns:78px 1fr; border:1px solid rgba(255,255,255,.10); border-top:0; overflow:hidden; border-radius:0 0 16px 16px; }
.dn-dc-calendar-time, .dn-dc-calendar-slot { min-height:74px; border-bottom:1px solid rgba(255,255,255,.08); padding:8px; font-size:12px; }
.dn-dc-calendar-time { background:rgba(15,23,42,.62); font-weight:900; text-align:right; color:#cbd5e1; }
.dn-dc-calendar-slot { background:rgba(234,179,8,.11); position:relative; }
.dn-dc-calendar-event { background:linear-gradient(135deg,#2563eb,#06b6d4); color:white; padding:7px 9px; border-radius:10px; display:inline-block; font-size:12px; box-shadow:0 10px 24px rgba(37,99,235,.24); }
@media(max-width:1300px){ .dn-dc-grid{grid-template-columns:1fr;} .dn-dc-prospects{grid-row:auto;} .dn-dc-email,.dn-dc-todos{min-height:auto;} }
@media(max-width:800px){ .dn-dc-topbar{flex-wrap:wrap;height:auto;padding:12px;} .dn-dc-search{width:100%; order:5;} .dn-dc-points{grid-template-columns:1fr;} .dn-dc-appt-body{grid-template-columns:1fr;} .dn-dc-appt-stats{border-left:0; border-top:1px solid rgba(255,255,255,.10); grid-template-columns:repeat(3,1fr); grid-template-rows:1fr 1fr;} .dn-dc-todo-form{grid-template-columns:1fr;} }

/* ===== Dealer Nexus CRM Simplified Redesign ===== */
.dn-crm-command-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  margin:0 0 14px;
  padding:18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:
    radial-gradient(circle at 12% 15%, rgba(56,189,248,.20), transparent 34%),
    linear-gradient(135deg, rgba(15,23,42,.88), rgba(30,41,59,.62));
  box-shadow:0 24px 70px rgba(0,0,0,.24);
  backdrop-filter:blur(20px);
}
.dn-crm-kicker {
  color:#67e8f9;
  font-size:12px;
  font-weight:950;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.dn-crm-command-head h1 {
  margin:0;
  font-size:30px;
  line-height:1;
  letter-spacing:-.04em;
  color:#f8fafc;
}
.dn-crm-command-head p {
  margin:8px 0 0;
  color:#94a3b8;
  font-size:14px;
}
.dn-crm-head-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dn-crm-head-actions button {
  border:1px solid rgba(255,255,255,.14);
  color:#f8fafc;
  background:linear-gradient(135deg, rgba(37,99,235,.90), rgba(6,182,212,.78));
  border-radius:16px;
  min-height:44px;
  padding:0 16px;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(37,99,235,.18);
}
.dn-dc-grid {
  grid-template-columns:minmax(320px, .85fr) minmax(460px, 1.45fr) minmax(320px, .9fr) !important;
}
.dn-dc-activity {
  grid-column: span 1;
}
.dn-dc-todos {
  min-height:560px;
}
.dn-dc-email {
  min-height:560px;
}
.dn-dc-act-icon.nx {
  background:linear-gradient(135deg,#2563eb,#06b6d4,#22c55e) !important;
  border-radius:12px;
  box-shadow:0 10px 26px rgba(6,182,212,.18);
  font-weight:1000;
}
.dn-dc-topbar {
  background:
    radial-gradient(circle at 10% 15%, rgba(56,189,248,.22), transparent 40%),
    linear-gradient(135deg, rgba(2,6,23,.94), rgba(15,23,42,.84)) !important;
}
.dn-dc-brand {
  font-style:normal !important;
  letter-spacing:-.03em !important;
}
.dn-dc-brand::before {
  content:"N";
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  margin-right:9px;
  border-radius:12px;
  background:linear-gradient(135deg,#3b82f6,#22d3ee,#22c55e);
  color:white;
  font-style:normal;
  font-weight:1000;
  box-shadow:0 12px 28px rgba(6,182,212,.22);
}
.dn-dc-appointments .dn-dc-card-title.orange {
  background:linear-gradient(135deg,rgba(37,99,235,.88),rgba(6,182,212,.72)) !important;
}
.dn-dc-prospects .dn-dc-card-title.green {
  background:linear-gradient(135deg,rgba(16,185,129,.84),rgba(6,182,212,.72)) !important;
}
@media(max-width:1300px){
  .dn-dc-grid{grid-template-columns:1fr !important;}
}
@media(max-width:800px){
  .dn-crm-command-head{flex-direction:column;align-items:flex-start;}
  .dn-crm-head-actions{justify-content:flex-start;}
}


/* ===== Dealer Nexus CRM Topbar Cleanup ===== */
.dn-nexus-crm-topbar {
  display:grid !important;
  grid-template-columns:auto minmax(280px, 1fr) auto;
  gap:16px !important;
  align-items:center !important;
}
.dn-nexus-search-wrap {
  height:48px;
  display:grid;
  grid-template-columns:44px 1fr auto;
  align-items:center;
  border-radius:18px;
  border:1px solid rgba(125,211,252,.22);
  background:
    radial-gradient(circle at 10% 20%, rgba(56,189,248,.14), transparent 40%),
    rgba(2,6,23,.62);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.06),
    0 14px 34px rgba(0,0,0,.18);
  overflow:hidden;
}
.dn-nexus-search-icon {
  display:grid;
  place-items:center;
  height:48px;
  color:#67e8f9;
  font-size:20px;
  font-weight:950;
}
.dn-nexus-search-wrap input {
  height:48px;
  border:0;
  outline:0;
  background:transparent;
  color:#f8fafc;
  font-size:14px;
  font-weight:700;
  padding:0 12px 0 0;
}
.dn-nexus-search-wrap input::placeholder {
  color:#64748b;
  font-weight:800;
}
.dn-nexus-search-wrap button {
  height:36px;
  margin-right:6px;
  padding:0 15px;
  border:0;
  border-radius:14px;
  color:white;
  font-size:12px;
  font-weight:950;
  letter-spacing:.03em;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  cursor:pointer;
  box-shadow:0 10px 24px rgba(37,99,235,.24);
}
.dn-dc-search {
  display:none !important;
}
.dn-dc-icon-btn,
.dn-dc-user-btn {
  display:none !important;
}
@media(max-width:900px){
  .dn-nexus-crm-topbar {
    grid-template-columns:1fr !important;
  }
  .dn-dc-dealer-pill {
    margin-left:0 !important;
    align-items:flex-start !important;
  }
}


/* ===== FINAL CRM Search / Header Override ===== */
.dn-dc-crm-page .dn-dc-topbar.dn-nexus-crm-topbar {
  display:grid !important;
  grid-template-columns:auto minmax(360px, 1fr) auto !important;
  gap:18px !important;
  align-items:center !important;
  min-height:84px !important;
  padding:16px 18px !important;
  border-radius:28px !important;
  border:1px solid rgba(125,211,252,.18) !important;
  background:
    radial-gradient(circle at 12% 20%, rgba(56,189,248,.20), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(34,197,94,.11), transparent 28%),
    linear-gradient(135deg, rgba(2,6,23,.96), rgba(15,23,42,.90)) !important;
  box-shadow:0 26px 80px rgba(0,0,0,.32) !important;
  backdrop-filter:blur(22px) !important;
}
.dn-nexus-brand-block {
  display:flex;
  align-items:center;
  gap:12px;
  min-width:220px;
}
.dn-nexus-logo-mark {
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  color:white;
  font-size:23px;
  font-weight:1000;
  background:linear-gradient(135deg,#2563eb,#22d3ee,#22c55e);
  box-shadow:0 18px 38px rgba(6,182,212,.24);
}
.dn-dc-crm-page .dn-dc-brand {
  font-size:20px !important;
  font-style:normal !important;
  line-height:1 !important;
  letter-spacing:-.035em !important;
  background:linear-gradient(135deg,#eff6ff,#93c5fd,#67e8f9) !important;
  -webkit-background-clip:text !important;
  color:transparent !important;
}
.dn-dc-crm-page .dn-dc-brand::before {
  display:none !important;
  content:none !important;
}
.dn-nexus-brand-sub {
  margin-top:5px;
  color:#67e8f9;
  font-size:11px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.18em;
}
.dn-dc-crm-page .dn-nexus-search-wrap {
  display:grid !important;
  grid-template-columns:52px 1fr auto !important;
  align-items:center !important;
  height:54px !important;
  border-radius:20px !important;
  border:1px solid rgba(125,211,252,.24) !important;
  background:
    linear-gradient(135deg, rgba(15,23,42,.72), rgba(2,6,23,.62)) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.08),
    0 18px 48px rgba(0,0,0,.22) !important;
  overflow:hidden !important;
}
.dn-dc-crm-page .dn-nexus-search-icon {
  height:54px !important;
  display:grid !important;
  place-items:center !important;
  color:#67e8f9 !important;
  font-size:24px !important;
  font-weight:950 !important;
  background:rgba(56,189,248,.08) !important;
}
.dn-dc-crm-page .dn-nexus-search-wrap input,
.dn-dc-crm-page input#dnDcGlobalSearch {
  height:54px !important;
  width:100% !important;
  border:0 !important;
  outline:0 !important;
  box-shadow:none !important;
  background:transparent !important;
  color:#f8fafc !important;
  font-size:15px !important;
  font-weight:800 !important;
  padding:0 14px !important;
  -webkit-text-fill-color:#f8fafc !important;
}
.dn-dc-crm-page .dn-nexus-search-wrap input::placeholder,
.dn-dc-crm-page input#dnDcGlobalSearch::placeholder {
  color:#64748b !important;
  -webkit-text-fill-color:#64748b !important;
  font-weight:850 !important;
}
.dn-dc-crm-page .dn-nexus-search-wrap button {
  height:42px !important;
  margin-right:7px !important;
  padding:0 18px !important;
  border:0 !important;
  border-radius:16px !important;
  color:white !important;
  background:linear-gradient(135deg,#2563eb,#06b6d4) !important;
  font-size:12px !important;
  font-weight:1000 !important;
  letter-spacing:.04em !important;
  cursor:pointer !important;
  box-shadow:0 14px 30px rgba(37,99,235,.30) !important;
}
.dn-dc-crm-page .dn-dc-search {
  display:none !important;
  width:0 !important;
  height:0 !important;
  overflow:hidden !important;
  opacity:0 !important;
}
.dn-dc-crm-page .dn-dc-dealer-pill {
  margin-left:0 !important;
  min-width:170px !important;
  align-items:flex-end !important;
  padding:10px 14px !important;
  border-radius:18px !important;
  background:rgba(15,23,42,.58) !important;
  border:1px solid rgba(255,255,255,.11) !important;
}
.dn-dc-crm-page .dn-dc-dealer-pill strong {
  color:#f8fafc !important;
  font-size:16px !important;
  font-weight:950 !important;
}
.dn-dc-crm-page .dn-dc-dealer-pill small {
  color:#67e8f9 !important;
  font-size:11px !important;
  font-weight:850 !important;
}
.dn-crm-command-head h1 {
  font-size:32px !important;
}
@media(max-width:900px){
  .dn-dc-crm-page .dn-dc-topbar.dn-nexus-crm-topbar {
    grid-template-columns:1fr !important;
  }
  .dn-dc-crm-page .dn-dc-dealer-pill {
    align-items:flex-start !important;
  }
}


/* ===== CRM stray 0.00 box failsafe ===== */
#dnHomePage.dn-dc-crm-page input[value="0.00"],
#dnHomePage.dn-dc-crm-page input[value="$0.00"],
#dnHomePage.dn-dc-crm-page input[aria-hidden="true"],
#dnHomePage.dn-dc-crm-page .dn-dc-topbar > input,
#dnHomePage.dn-dc-crm-page .dn-dc-shell > input,
#dnHomePage.dn-dc-crm-page .dn-crm-command-head > input {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  position:absolute !important;
  pointer-events:none !important;
}
#dnHomePage.dn-dc-crm-page .dn-dc-topbar input:not(#dnDcGlobalSearch) {
  display:none !important;
}


/* ===== Final fix: remove calculator 0.00 box from CRM Dashboard ===== */
#aiCalculatorPanel.hidden,
.ai-calculator-panel.hidden {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#dnHomePage.dn-dc-crm-page ~ #aiCalculatorPanel,
#dnHomePage.dn-dc-crm-page .ai-calculator-panel,
body:has(#dnHomePage:not(.dn-page-hidden)) #aiCalculatorPanel {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
body.dn-crm-dashboard-active #aiCalculatorPanel,
body.dn-crm-dashboard-active .ai-calculator-panel,
body.dn-crm-dashboard-active #calcResult,
body.dn-crm-dashboard-active #calcEquation {
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}


/* ===== CRM search input value reset visual fix ===== */
#dnDcGlobalSearch {
  background: transparent !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}
#dnDcGlobalSearch::placeholder {
  color: #64748b !important;
  -webkit-text-fill-color: #64748b !important;
  opacity: 1 !important;
}


/* ===== Absolute final CRM search fix: no input field ===== */
.dn-nexus-search-field {
  min-height:54px !important;
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  outline:none !important;
  border:0 !important;
  background:transparent !important;
  color:#f8fafc !important;
  font-size:15px !important;
  font-weight:850 !important;
  padding:0 14px !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
.dn-nexus-search-field:empty::before {
  content:attr(data-placeholder);
  color:#64748b;
  font-weight:850;
}
.dn-nexus-search-field:focus::before {
  opacity:.75;
}
.dn-nexus-search-wrap input,
#dnDcGlobalSearch input {
  display:none !important;
}


/* ===== Dealer Nexus Add Customer Page ===== */
.dn-sidebar-sublink {
  margin-left:18px !important;
  width:calc(100% - 18px) !important;
  opacity:.92;
}
.dn-sidebar-sublink .dn-sidebar-icon {
  transform:scale(.9);
}
.dn-addcust-shell {
  padding:24px;
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 3%, rgba(37,99,235,.22), transparent 32%),
    radial-gradient(circle at 92% 8%, rgba(6,182,212,.16), transparent 30%),
    linear-gradient(135deg,#020617,#0f172a 54%,#111827);
}
.dn-addcust-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding:20px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(15,23,42,.86), rgba(2,6,23,.62));
  box-shadow:0 24px 70px rgba(0,0,0,.24);
  backdrop-filter:blur(20px);
  margin-bottom:16px;
}
.dn-addcust-actions {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dn-addcust-actions button,
.dn-addcust-form button {
  min-height:40px;
  border:0;
  border-radius:13px;
  padding:0 14px;
  color:white;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  font-weight:950;
  cursor:pointer;
  box-shadow:0 14px 32px rgba(37,99,235,.18);
}
.dn-addcust-form {
  display:grid;
  gap:14px;
}
.dn-addcust-customer-type {
  display:flex;
  align-items:center;
  gap:16px;
  padding:14px 18px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  background:rgba(15,23,42,.68);
  color:#e2e8f0;
  font-weight:900;
}
.dn-addcust-customer-type span {
  color:#94a3b8;
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.dn-addcust-customer-type label {
  display:flex;
  gap:7px;
  align-items:center;
  margin:0;
  color:#f8fafc;
  font-size:14px;
  text-transform:none;
  letter-spacing:0;
}
.dn-addcust-section {
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.52));
  box-shadow:0 20px 60px rgba(0,0,0,.18);
  overflow:hidden;
}
.dn-addcust-section-title {
  min-height:40px;
  display:flex;
  align-items:center;
  padding:0 16px;
  color:#f8fafc;
  background:linear-gradient(135deg,rgba(37,99,235,.55),rgba(6,182,212,.28));
  border-bottom:1px solid rgba(255,255,255,.10);
  font-weight:950;
}
.dn-addcust-grid {
  display:grid;
  grid-template-columns:repeat(8,minmax(100px,1fr));
  gap:12px;
  padding:16px;
}
.dn-addcust-grid > div { min-width:0; }
.dn-addcust-grid .span-2 { grid-column:span 2; }
.dn-addcust-grid .span-3 { grid-column:span 3; }
.dn-addcust-grid .span-4 { grid-column:span 4; }
.dn-addcust-grid label,
.dn-addcust-section > label {
  display:block;
  margin-bottom:6px;
  color:#cbd5e1;
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dn-addcust-grid input,
.dn-addcust-grid select,
.dn-addcust-section textarea {
  width:100%;
  min-height:42px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(2,6,23,.58);
  color:#f8fafc;
  padding:9px 11px;
  outline:none;
}
.dn-addcust-section textarea {
  min-height:105px;
  resize:vertical;
  margin:16px;
  width:calc(100% - 32px);
}
.dn-addcust-grid input:focus,
.dn-addcust-grid select:focus,
.dn-addcust-section textarea:focus {
  border-color:#38bdf8;
  box-shadow:0 0 0 4px rgba(56,189,248,.10);
}
.dn-addcust-button-row {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.dn-addcust-outline,
button.dn-addcust-outline {
  background:rgba(6,182,212,.08) !important;
  border:1px solid rgba(6,182,212,.35) !important;
  color:#bae6fd !important;
  box-shadow:none !important;
}
@media(max-width:1100px){
  .dn-addcust-grid{grid-template-columns:repeat(4,1fr);}
  .dn-addcust-grid .span-2,.dn-addcust-grid .span-3,.dn-addcust-grid .span-4{grid-column:span 4;}
}
@media(max-width:700px){
  .dn-addcust-shell{padding:14px;}
  .dn-addcust-top{flex-direction:column;}
  .dn-addcust-grid{grid-template-columns:1fr;}
  .dn-addcust-grid .span-2,.dn-addcust-grid .span-3,.dn-addcust-grid .span-4{grid-column:span 1;}
}


/* ===== Dealer Nexus Customer Report Page ===== */
.dn-cust-report-shell {
  padding:24px;
  min-height:100vh;
  background:
    radial-gradient(circle at 8% 3%, rgba(37,99,235,.20), transparent 32%),
    radial-gradient(circle at 92% 8%, rgba(6,182,212,.14), transparent 30%),
    linear-gradient(135deg,#020617,#0f172a 54%,#111827);
}
.dn-cust-report-top {
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(2,6,23,.58));
  box-shadow:0 24px 70px rgba(0,0,0,.22);
  padding:14px;
  margin-bottom:12px;
}
.dn-cust-view-left,
.dn-cust-view-actions {
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
}
.dn-cust-view-left select,
.dn-cust-view-left button,
.dn-cust-view-actions button {
  min-height:40px;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(2,6,23,.58);
  color:#f8fafc;
  padding:0 12px;
  font-weight:850;
}
.dn-cust-view-actions button {
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  border:0;
  font-weight:950;
}
.dn-cust-view-actions .dn-cust-icon-btn {
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
}
.dn-cust-filter-panel {
  display:grid;
  grid-template-columns:repeat(7,minmax(120px,1fr));
  gap:10px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:14px;
  background:rgba(15,23,42,.70);
  margin-bottom:12px;
}
.dn-cust-filter-panel label {
  color:#94a3b8;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.08em;
  display:block;
  margin-bottom:6px;
}
.dn-cust-filter-panel input,
.dn-cust-filter-panel select {
  width:100%;
  min-height:38px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:12px;
  background:rgba(2,6,23,.55);
  color:#f8fafc;
  padding:8px 10px;
  outline:none;
}
.dn-cust-filter-buttons {
  display:flex;
  align-items:end;
  gap:8px;
}
.dn-cust-filter-buttons button {
  min-height:38px;
  border:0;
  border-radius:12px;
  padding:0 13px;
  color:white;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  font-weight:950;
}
.dn-cust-report-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  color:#cbd5e1;
  padding:10px 4px;
  font-size:13px;
}
.dn-cust-report-meta label {
  display:flex;
  gap:7px;
  align-items:center;
  margin:0;
  color:#cbd5e1;
  font-size:13px;
  text-transform:none;
  letter-spacing:0;
}
#dnCustScheduleHint {
  background:rgba(234,179,8,.10);
  color:#fde68a;
  border:1px solid rgba(234,179,8,.18);
  border-radius:12px;
  padding:8px 12px;
}
#dnCustResultsFound {
  color:#f8fafc;
}
.dn-cust-report-table-card {
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  overflow:hidden;
  background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(2,6,23,.50));
  box-shadow:0 20px 70px rgba(0,0,0,.22);
}
.dn-cust-report-header {
  display:grid;
  grid-template-columns:1.35fr 1.2fr 1fr 1.2fr 1.45fr .95fr .7fr;
  gap:0;
  min-height:44px;
  align-items:center;
  background:rgba(56,189,248,.10);
  border-bottom:1px solid rgba(56,189,248,.22);
}
.dn-cust-report-header div {
  padding:0 12px;
  color:#bae6fd;
  font-size:12px;
  font-weight:950;
}
.dn-cust-report-row {
  display:grid;
  grid-template-columns:1.35fr 1.2fr 1fr 1.2fr 1.45fr .95fr .7fr;
  border-bottom:1px solid rgba(255,255,255,.08);
  min-height:112px;
  cursor:pointer;
}
.dn-cust-report-row:hover {
  background:rgba(37,99,235,.12);
}
.dn-cust-cell {
  padding:12px;
  color:#e2e8f0;
  font-size:12px;
  line-height:1.45;
  overflow:hidden;
}
.dn-cust-cell strong {
  display:block;
  color:#60a5fa;
  font-size:13px;
  text-transform:uppercase;
  margin-bottom:3px;
}
.dn-cust-cell a {
  display:block;
  color:#93c5fd;
}
.dn-cust-cell b {
  color:#f8fafc;
}
.dn-cust-status-badge {
  display:inline-flex;
  padding:3px 7px;
  border-radius:999px;
  background:rgba(148,163,184,.22);
  color:#e2e8f0;
  font-size:10px;
  font-weight:950;
  text-transform:uppercase;
}
.dn-cust-vehicle-card {
  display:grid;
  grid-template-columns:74px 1fr;
  gap:10px;
  align-items:center;
}
.dn-cust-car-thumb {
  height:48px;
  border-radius:12px;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  display:grid;
  place-items:center;
  color:white;
  font-size:22px;
}
.dn-cust-empty {
  min-height:220px;
  display:grid;
  place-items:center;
  color:#94a3b8;
}
.dn-inv-picker-modal {
  position:fixed;
  inset:0;
  background:rgba(2,6,23,.72);
  backdrop-filter:blur(12px);
  z-index:9999;
  padding:32px;
}
.dn-inv-picker-card {
  width:min(1000px,100%);
  max-height:88vh;
  overflow:hidden;
  margin:0 auto;
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(15,23,42,.96),rgba(2,6,23,.90));
  box-shadow:0 30px 100px rgba(0,0,0,.45);
}
.dn-inv-picker-head {
  display:flex;
  justify-content:space-between;
  gap:14px;
  align-items:flex-start;
  padding:18px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.dn-inv-picker-head h2 {
  margin:0;
  color:#f8fafc;
  letter-spacing:-.04em;
}
.dn-inv-picker-head p {
  margin:6px 0 0;
  color:#94a3b8;
}
.dn-inv-picker-head button {
  width:38px;
  height:38px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:white;
  cursor:pointer;
}
.dn-inv-picker-search {
  display:grid;
  grid-template-columns:1fr 180px;
  gap:10px;
  padding:14px 18px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.dn-inv-picker-search input,
.dn-inv-picker-search select {
  min-height:42px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:13px;
  background:rgba(2,6,23,.56);
  color:#f8fafc;
  padding:9px 12px;
}
.dn-inv-picker-rows {
  max-height:62vh;
  overflow:auto;
  padding:10px 18px 18px;
}
.dn-inv-picker-row {
  display:grid;
  grid-template-columns:90px 1fr 120px 120px 110px;
  gap:12px;
  align-items:center;
  padding:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  margin-bottom:9px;
  background:rgba(255,255,255,.04);
}
.dn-inv-picker-row:hover {
  background:rgba(37,99,235,.16);
}
.dn-inv-picker-row strong {
  color:#f8fafc;
}
.dn-inv-picker-row small {
  display:block;
  color:#94a3b8;
}
.dn-inv-picker-row button {
  min-height:36px;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:white;
  font-weight:950;
  cursor:pointer;
}
@media(max-width:1200px){
  .dn-cust-filter-panel{grid-template-columns:repeat(3,1fr);}
  .dn-cust-report-header,.dn-cust-report-row{grid-template-columns:1fr;}
  .dn-cust-report-header div:not(:first-child){display:none;}
  .dn-cust-report-row{min-height:auto;}
}
@media(max-width:700px){
  .dn-cust-report-shell{padding:14px;}
  .dn-cust-report-top{flex-direction:column;align-items:stretch;}
  .dn-cust-filter-panel{grid-template-columns:1fr;}
  .dn-inv-picker-search{grid-template-columns:1fr;}
  .dn-inv-picker-row{grid-template-columns:1fr;}
}


/* ===== Dealer Nexus Customer Jacket View ===== */
.dn-jacket-shell{padding:22px;min-height:100vh;background:radial-gradient(circle at 7% 3%,rgba(37,99,235,.20),transparent 32%),linear-gradient(135deg,#020617,#0f172a 55%,#111827)}
.dn-jacket-top{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.12);border-radius:24px;background:rgba(15,23,42,.78);padding:12px 14px;margin-bottom:12px}
.dn-jacket-namebar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dn-jacket-namebar strong{font-size:18px;color:#f8fafc}.dn-jacket-namebar span{background:rgba(168,85,247,.18);color:#e9d5ff;border:1px solid rgba(168,85,247,.24);padding:6px 9px;border-radius:999px;font-weight:950;font-size:12px}.dn-jacket-namebar select{min-height:36px;border-radius:12px;background:rgba(2,6,23,.6);color:#f8fafc;border:1px solid rgba(255,255,255,.14);padding:0 10px}
.dn-jacket-actions{display:flex;gap:8px;flex-wrap:wrap}.dn-jacket-actions button,.dn-jacket-action-row button,.dn-jacket-card button,.dn-jacket-right-card button{min-height:38px;border:0;border-radius:12px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;font-weight:950;padding:0 12px;cursor:pointer}
.dn-jacket-stagebar{display:flex;overflow:auto;gap:2px;margin-bottom:10px}.dn-jacket-stagebar span{min-width:130px;text-align:center;padding:10px 16px;background:rgba(255,255,255,.08);color:#cbd5e1;clip-path:polygon(0 0,88% 0,100% 50%,88% 100%,0 100%,10% 50%);font-size:12px;font-weight:950}.dn-jacket-stagebar .done{background:rgba(20,184,166,.22);color:#ccfbf1}.dn-jacket-stagebar .active{background:linear-gradient(135deg,#10b981,#06b6d4);color:white}
.dn-jacket-alertbar{display:flex;gap:8px;flex-wrap:wrap;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(15,23,42,.62);padding:9px;margin-bottom:10px}.dn-jacket-alertbar button{border:0;background:transparent;color:#93c5fd;font-weight:950;cursor:pointer}
.dn-jacket-summary{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(15,23,42,.68);padding:10px;margin-bottom:12px}.dn-jacket-summary div{border-right:1px solid rgba(255,255,255,.08);padding:4px 8px}.dn-jacket-summary span{display:block;color:#94a3b8;font-size:11px}.dn-jacket-summary b{display:block;color:#f8fafc;font-size:12px;margin-top:4px}
.dn-jacket-layout{display:grid;grid-template-columns:300px 1fr 320px;gap:12px}.dn-jacket-left,.dn-jacket-main,.dn-jacket-right{min-width:0}
.dn-jacket-left{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(15,23,42,.78);overflow:hidden}.dn-jacket-left-tabs{display:grid;grid-template-columns:1fr 1fr 1fr}.dn-jacket-left-tabs button{min-height:44px;border:0;background:rgba(59,130,246,.12);color:#cbd5e1;font-weight:950}.dn-jacket-left-tabs .active{background:rgba(2,6,23,.55);color:white;border-top:3px solid #38bdf8}
.dn-jacket-side-form{padding:14px;display:grid;gap:8px}.dn-jacket-side-form label,.dn-jacket-form-grid label{color:#cbd5e1;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.dn-jacket-side-form input,.dn-jacket-side-form select,.dn-jacket-side-form textarea,.dn-jacket-form-grid input,.dn-jacket-form-grid select,.dn-jacket-card textarea{width:100%;min-height:38px;border:1px solid rgba(255,255,255,.14);border-radius:11px;background:rgba(2,6,23,.58);color:#f8fafc;padding:8px 10px;outline:none}.dn-jacket-side-form textarea{min-height:88px}.dn-jacket-check{display:flex!important;align-items:center;gap:7px;text-transform:none!important;letter-spacing:0!important}.dn-jacket-outline{background:rgba(6,182,212,.08)!important;border:1px solid rgba(6,182,212,.32)!important;color:#bae6fd!important}
.dn-jacket-tabs{display:flex;gap:4px;overflow:auto;margin-bottom:0}.dn-jacket-tabs button{min-height:42px;border:0;border-radius:13px 13px 0 0;background:rgba(59,130,246,.16);color:#cbd5e1;font-weight:950;padding:0 14px;cursor:pointer}.dn-jacket-tabs button.active{background:rgba(15,23,42,.86);color:white;border-top:3px solid #38bdf8}
.dn-jacket-tab-panel{border:1px solid rgba(255,255,255,.12);border-radius:0 20px 20px 20px;background:rgba(15,23,42,.74);padding:14px;min-height:560px}.dn-jacket-action-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.dn-jacket-card,.dn-jacket-right-card,.dn-jacket-vehicle-card{border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(2,6,23,.45);padding:14px}.dn-jacket-card h3,.dn-jacket-right-card h3,.dn-jacket-vehicle-card h3{margin:0 0 12px;color:#f8fafc}.dn-jacket-mini-tabs{display:flex;gap:4px;margin-bottom:12px;overflow:auto}.dn-jacket-mini-tabs button{background:rgba(255,255,255,.07);color:#cbd5e1}.dn-jacket-mini-tabs .active{background:#2563eb}
.dn-jacket-activity-item{border:1px solid rgba(56,189,248,.2);background:rgba(56,189,248,.08);border-radius:14px;padding:12px}.dn-jacket-activity-item b{display:block;color:#f8fafc}.dn-jacket-activity-item span,.dn-jacket-activity-item small{display:block;color:#cbd5e1;margin-top:5px}
.dn-jacket-credit-layout{display:grid;grid-template-columns:1fr 230px;gap:12px}.dn-jacket-panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.dn-jacket-credit-status{margin:10px 0;padding:10px;border-radius:12px;background:rgba(34,197,94,.10);color:#bbf7d0;border:1px solid rgba(34,197,94,.18);font-weight:850}
.dn-jacket-section-title{margin:14px 0 10px;padding:9px 12px;border-radius:12px;background:rgba(56,189,248,.10);color:#bae6fd;font-weight:950}.dn-jacket-form-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.dn-jacket-form-grid .wide-2{grid-column:span 2}
.dn-credit-score-box{text-align:center;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.05);padding:16px;margin-bottom:12px}.dn-credit-score-box span{display:block;color:#94a3b8}.dn-credit-score-box strong{display:block;font-size:46px;color:#22c55e}.dn-credit-score-box small{display:block;color:#cbd5e1}
.dn-jacket-right{display:grid;gap:12px;align-content:start}.dn-jacket-right-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.dn-jacket-right-head button{border:0;background:transparent;color:#67e8f9;font-weight:950;cursor:pointer}.dn-jacket-vehicle-body{display:grid;grid-template-columns:86px 1fr;gap:12px;align-items:center}.dn-jacket-car-thumb{height:66px;border-radius:14px;background:linear-gradient(135deg,#2563eb,#06b6d4);display:grid;place-items:center;color:white;font-size:30px}.dn-jacket-vehicle-body strong,.dn-jacket-vehicle-body span{display:block;color:#e2e8f0;margin:3px 0}.dn-jacket-vehicle-body strong{color:#f8fafc}
.dn-jacket-evals{display:grid;grid-template-columns:1fr;gap:8px}.dn-jacket-evals div{border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:10px;background:rgba(255,255,255,.045)}.dn-jacket-evals b,.dn-jacket-evals span{display:block;color:#cbd5e1}.dn-jacket-evals strong{display:block;color:#60a5fa;font-size:18px;margin:4px 0}
@media(max-width:1350px){.dn-jacket-layout{grid-template-columns:1fr}.dn-jacket-summary{grid-template-columns:repeat(2,1fr)}.dn-jacket-credit-layout{grid-template-columns:1fr}.dn-jacket-form-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.dn-jacket-shell{padding:12px}.dn-jacket-top{flex-direction:column;align-items:stretch}.dn-jacket-form-grid{grid-template-columns:1fr}.dn-jacket-form-grid .wide-2{grid-column:span 1}.dn-jacket-summary{grid-template-columns:1fr}}


/* ===== Revamped Dealer Nexus Customer Profile ===== */
.dn-profile-shell{padding:24px;min-height:100vh;background:radial-gradient(circle at 9% 4%,rgba(37,99,235,.22),transparent 34%),radial-gradient(circle at 90% 8%,rgba(6,182,212,.16),transparent 30%),linear-gradient(135deg,#020617,#0f172a 55%,#111827)}
.dn-profile-hero{display:flex;justify-content:space-between;align-items:center;gap:18px;border:1px solid rgba(255,255,255,.12);border-radius:30px;padding:20px;background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(2,6,23,.62));box-shadow:0 28px 80px rgba(0,0,0,.28);margin-bottom:16px}
.dn-profile-main{display:flex;align-items:center;gap:16px}.dn-profile-avatar{width:64px;height:64px;border-radius:22px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4,#22c55e);font-size:30px;font-weight:1000;color:white;box-shadow:0 18px 42px rgba(6,182,212,.24)}
.dn-profile-kicker{color:#67e8f9;font-size:12px;font-weight:1000;text-transform:uppercase;letter-spacing:.16em}.dn-profile-main h1{margin:5px 0 0;color:#f8fafc;font-size:34px;letter-spacing:-.05em}.dn-profile-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.dn-profile-meta span{padding:6px 10px;border:1px solid rgba(255,255,255,.12);border-radius:999px;background:rgba(255,255,255,.07);color:#cbd5e1;font-size:12px;font-weight:900}
.dn-profile-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.dn-profile-actions button,.dn-profile-card button{min-height:40px;border:0;border-radius:14px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;font-weight:950;padding:0 14px;cursor:pointer}.dn-profile-actions .secondary{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14)}
.dn-profile-grid{display:grid;grid-template-columns:300px 1fr 280px;gap:14px;align-items:start}.dn-profile-card{border:1px solid rgba(255,255,255,.12);border-radius:26px;background:linear-gradient(180deg,rgba(15,23,42,.80),rgba(2,6,23,.54));box-shadow:0 22px 60px rgba(0,0,0,.22);padding:16px;min-width:0}
.dn-profile-section-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.dn-profile-section-head h2{margin:0;color:#f8fafc;font-size:17px;letter-spacing:-.03em}.dn-profile-section-head span{color:#94a3b8;font-size:12px}.dn-profile-section-head.lower{margin-top:22px}
.dn-profile-contact-line{border:1px solid rgba(255,255,255,.08);border-radius:15px;padding:10px;margin-bottom:8px;background:rgba(255,255,255,.04)}.dn-profile-contact-line span{display:block;color:#94a3b8;font-size:10px;text-transform:uppercase;font-weight:950;letter-spacing:.08em}.dn-profile-contact-line b{display:block;color:#f8fafc;margin-top:4px;overflow-wrap:anywhere}
.dn-profile-mini-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:12px 0}.dn-profile-mini-actions button{min-height:36px;font-size:12px;padding:0}.dn-profile-divider{height:1px;background:rgba(255,255,255,.10);margin:16px 0}.dn-profile-notes{width:100%;min-height:155px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(2,6,23,.58);color:#f8fafc;padding:12px;resize:vertical}
.dn-profile-tabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:16px}.dn-profile-tabs button{min-height:38px;border:1px solid rgba(255,255,255,.10);border-radius:999px;background:rgba(255,255,255,.07);color:#94a3b8;font-weight:950;padding:0 13px;cursor:pointer}.dn-profile-tabs button.active{background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;border-color:transparent}
.dn-profile-form-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dn-profile-form-grid .wide-2{grid-column:span 2}.dn-profile-form-grid .wide-4{grid-column:span 4}.dn-profile-form-grid label{display:block;color:#94a3b8;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.dn-profile-form-grid input,.dn-profile-form-grid select{width:100%;min-height:42px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(2,6,23,.58);color:#f8fafc;padding:9px 11px;outline:none}
.dn-profile-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.dn-profile-metrics div{border:1px solid rgba(56,189,248,.14);border-radius:18px;padding:14px;background:rgba(56,189,248,.06)}.dn-profile-metrics span{display:block;color:#94a3b8;font-size:10px;text-transform:uppercase;font-weight:950}.dn-profile-metrics strong{display:block;color:#f8fafc;font-size:20px;margin-top:8px}
.dn-profile-vehicle-large{display:grid;grid-template-columns:100px 1fr;gap:16px;align-items:center;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(255,255,255,.045);padding:16px;margin-bottom:16px}.dn-profile-car-icon{height:80px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;font-size:36px}.dn-profile-vehicle-large h3{margin:0;color:#f8fafc;font-size:22px}.dn-profile-vehicle-large p{margin:5px 0;color:#cbd5e1}
.dn-profile-timeline{display:grid;gap:10px}.dn-profile-timeline div,.dn-profile-file-grid div{border:1px solid rgba(255,255,255,.10);border-radius:16px;padding:14px;background:rgba(255,255,255,.045)}.dn-profile-timeline b{display:block;color:#f8fafc}.dn-profile-timeline span{display:block;color:#94a3b8;margin-top:5px}.dn-profile-file-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;color:#cbd5e1}
.dn-profile-score{text-align:center;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:rgba(255,255,255,.045);padding:18px;margin-bottom:12px}.dn-profile-score span{color:#94a3b8}.dn-profile-score strong{display:block;color:#22c55e;font-size:52px;line-height:1;margin:10px 0}.dn-profile-score small{color:#cbd5e1}.dn-profile-right button{width:100%;margin-bottom:8px}.dn-profile-actions-list{padding-left:18px;color:#cbd5e1;line-height:1.9}
@media(max-width:1300px){.dn-profile-grid{grid-template-columns:1fr}.dn-profile-form-grid{grid-template-columns:repeat(2,1fr)}.dn-profile-form-grid .wide-4{grid-column:span 2}.dn-profile-right{order:3}}
@media(max-width:700px){.dn-profile-shell{padding:12px}.dn-profile-hero{flex-direction:column;align-items:flex-start}.dn-profile-actions{justify-content:flex-start}.dn-profile-form-grid,.dn-profile-metrics,.dn-profile-file-grid{grid-template-columns:1fr}.dn-profile-form-grid .wide-2,.dn-profile-form-grid .wide-4{grid-column:span 1}}


/* ===== Customer to Deal Rehash Integration ===== */
.dn-deal-customer-info-panel{margin:14px 0 8px;border:1px solid rgba(56,189,248,.18);border-radius:18px;background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(2,6,23,.54));overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.16)}
#dnDealCustomerInfoHeader{width:100%;min-height:54px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;border:0;background:rgba(56,189,248,.08);color:#f8fafc;cursor:pointer;text-align:left}
#dnDealCustomerInfoHeader strong{display:block;font-size:15px;font-weight:950}#dnDealCustomerInfoHeader small{display:block;color:#94a3b8;margin-top:2px;font-size:12px}
#dnDealCustomerInfoIcon{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white}
.dn-deal-customer-info-body{display:grid;grid-template-columns:repeat(4,minmax(140px,1fr));gap:10px;padding:14px}
.dn-deal-customer-info-body div{border:1px solid rgba(255,255,255,.10);border-radius:14px;padding:10px;background:rgba(255,255,255,.045);min-width:0}
.dn-deal-customer-info-body span{display:block;color:#94a3b8;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.dn-deal-customer-info-body strong{display:block;margin-top:5px;color:#f8fafc;overflow-wrap:anywhere}
.dn-deal-customer-collapsed .dn-deal-customer-info-body{display:none}
@media(max-width:900px){.dn-deal-customer-info-body{grid-template-columns:1fr}}


/* ===== Dealer Nexus Deals Module ===== */
.dn-deals-shell,.dn-dealdesk-shell{padding:24px;min-height:100vh;background:radial-gradient(circle at 8% 3%,rgba(37,99,235,.20),transparent 32%),radial-gradient(circle at 92% 8%,rgba(6,182,212,.14),transparent 30%),linear-gradient(135deg,#020617,#0f172a 54%,#111827)}
.dn-deals-head,.dn-dealdesk-top{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;border:1px solid rgba(255,255,255,.12);border-radius:26px;background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(2,6,23,.58));box-shadow:0 24px 70px rgba(0,0,0,.22);padding:18px;margin-bottom:14px}
.dn-deals-actions,.dn-dealdesk-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}.dn-deals-actions button,.dn-dealdesk-actions button,.dn-deals-filter-actions button,.dn-dealdesk-card button{min-height:40px;border:0;border-radius:13px;padding:0 14px;color:white;background:linear-gradient(135deg,#2563eb,#06b6d4);font-weight:950;cursor:pointer}
.dn-deals-filters{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:10px;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(15,23,42,.70);padding:14px;margin-bottom:12px}.dn-deals-filters label,.dn-dealdesk-status label,.dn-dealdesk-form label{display:block;color:#94a3b8;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px}.dn-deals-filters input,.dn-deals-filters select,.dn-dealdesk-status input,.dn-dealdesk-status select,.dn-dealdesk-form input,.dn-dealdesk-card textarea{width:100%;min-height:38px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(2,6,23,.55);color:#f8fafc;padding:8px 10px;outline:none}
.dn-deals-filter-actions{display:flex;align-items:end;gap:8px}.dn-deals-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:12px}.dn-deals-stats div{border:1px solid rgba(56,189,248,.14);border-radius:18px;padding:14px;background:rgba(56,189,248,.06)}.dn-deals-stats span{display:block;color:#94a3b8;font-size:10px;text-transform:uppercase;font-weight:950}.dn-deals-stats strong{display:block;color:#f8fafc;font-size:24px;margin-top:7px}
.dn-deals-report-card{border:1px solid rgba(255,255,255,.12);border-radius:24px;overflow:hidden;background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(2,6,23,.50));box-shadow:0 20px 70px rgba(0,0,0,.22)}.dn-deals-report-meta{display:flex;justify-content:space-between;gap:10px;padding:12px 14px;color:#cbd5e1;border-bottom:1px solid rgba(255,255,255,.08)}.dn-deals-table-wrap{overflow:auto;max-height:68vh}.dn-deals-table{width:100%;border-collapse:collapse;min-width:1550px}.dn-deals-table th{position:sticky;top:0;background:rgba(56,189,248,.12);color:#bae6fd;font-size:11px;text-align:left;padding:10px;font-weight:950}.dn-deals-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.07);color:#e2e8f0;font-size:12px;white-space:nowrap}.dn-deals-table tr:hover td{background:rgba(37,99,235,.13)}.dn-deals-table button{border:0;border-radius:10px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;font-weight:900;padding:6px 10px;cursor:pointer}.dn-deal-status-pill{display:inline-flex;border-radius:999px;padding:4px 8px;background:rgba(168,85,247,.16);color:#e9d5ff;font-weight:950;font-size:10px}
.dn-dealdesk-top{display:grid;grid-template-columns:1.1fr 1fr 320px}.dn-dealdesk-vehicle,.dn-dealdesk-customer{display:flex;gap:14px;align-items:center}.dn-dealdesk-car{width:72px;height:72px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4);font-size:32px;color:white}.dn-dealdesk-change{border:0;background:transparent;color:#67e8f9;font-weight:950;cursor:pointer;padding:0}.dn-dealdesk-vehicle h2,.dn-dealdesk-customer h2{margin:4px 0;color:#f8fafc}.dn-dealdesk-vehicle p,.dn-dealdesk-customer p{margin:3px 0;color:#cbd5e1}.dn-dealdesk-status{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dn-dealdesk-tabs{display:flex;gap:6px;overflow:auto;margin:12px 0 0}.dn-dealdesk-tabs button{min-height:40px;border:1px solid rgba(255,255,255,.10);border-radius:14px 14px 0 0;background:rgba(255,255,255,.07);color:#94a3b8;font-weight:950;padding:0 14px;cursor:pointer}.dn-dealdesk-tabs .active{background:rgba(15,23,42,.84);color:white;border-top:3px solid #38bdf8}
.dn-dealdesk-grid{display:grid;grid-template-columns:1fr 1fr 320px;gap:12px;border:1px solid rgba(255,255,255,.12);border-radius:0 22px 22px 22px;background:rgba(15,23,42,.70);padding:14px}.dn-dealdesk-card,.dn-dealdesk-summary{border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(2,6,23,.46);padding:14px}.dn-dealdesk-card h3,.dn-dealdesk-summary h3{margin:0 0 12px;color:#f8fafc}.dn-dealdesk-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dn-dealdesk-summary div{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid rgba(255,255,255,.08);padding:9px 0;color:#cbd5e1}.dn-dealdesk-summary strong{color:#f8fafc}.dn-dealdesk-summary .big strong{font-size:24px;color:#22c55e}.dn-dealdesk-panel-hidden{display:none}.dn-dealdesk-card[data-dealdesk-panel]{margin-top:0;border-radius:0 22px 22px 22px;background:rgba(15,23,42,.70)}.dn-dealdesk-card textarea{min-height:160px;resize:vertical}
.dn-create-deal-from-rehash-wrap{margin:14px 0;border:1px solid rgba(34,197,94,.18);border-radius:18px;padding:14px;background:rgba(34,197,94,.07);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.dn-create-deal-from-rehash-wrap button{min-height:42px;border:0;border-radius:14px;background:linear-gradient(135deg,#16a34a,#22c55e);color:white;font-weight:950;padding:0 16px;cursor:pointer}.dn-create-deal-from-rehash-wrap span{color:#bbf7d0;font-weight:850}
@media(max-width:1200px){.dn-deals-filters{grid-template-columns:repeat(2,1fr)}.dn-deals-stats{grid-template-columns:repeat(2,1fr)}.dn-dealdesk-top,.dn-dealdesk-grid{grid-template-columns:1fr}.dn-dealdesk-status{grid-template-columns:1fr}}
@media(max-width:700px){.dn-deals-shell,.dn-dealdesk-shell{padding:12px}.dn-deals-head{flex-direction:column}.dn-deals-filters,.dn-deals-stats,.dn-dealdesk-form{grid-template-columns:1fr}}


/* ===== Dealer Nexus DB Todo Connection ===== */
.dn-todo-db-status {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0;
  padding:10px 12px;
  border:1px solid rgba(56,189,248,.18);
  border-radius:14px;
  background:rgba(56,189,248,.07);
  color:#bae6fd;
  font-size:12px;
  font-weight:850;
}
.dn-todo-db-status button {
  min-height:32px;
  border:0;
  border-radius:10px;
  padding:0 10px;
  color:white;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  font-weight:900;
  cursor:pointer;
}



/* ===== Dealer Nexus Modern Loading Screen ===== */
.dn-nexus-loader {
  position: fixed;
  inset: 0;
  z-index: 2147483647;
  display: grid;
  place-items: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 12%, rgba(37,99,235,.34), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(34,211,238,.22), transparent 30%),
    radial-gradient(circle at 50% 100%, rgba(34,197,94,.14), transparent 38%),
    linear-gradient(135deg, #020617 0%, #0f172a 48%, #111827 100%);
  transition: opacity .55s ease, visibility .55s ease;
}
.dn-nexus-loader.dn-nexus-loader-hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.dn-nexus-loader-orb {
  position: absolute;
  width: 520px;
  height: 520px;
  border-radius: 999px;
  background:
    conic-gradient(from 180deg, rgba(37,99,235,.0), rgba(37,99,235,.32), rgba(6,182,212,.38), rgba(34,197,94,.28), rgba(37,99,235,.0));
  filter: blur(10px);
  opacity: .75;
  animation: dnNexusLoaderSpin 5.5s linear infinite;
}
.dn-nexus-loader-card {
  position: relative;
  width: min(430px, calc(100vw - 44px));
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 34px;
  padding: 30px;
  text-align: center;
  background:
    linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,.06)),
    rgba(15,23,42,.82);
  box-shadow:
    0 34px 120px rgba(0,0,0,.48),
    inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter: blur(24px);
}
.dn-nexus-loader-logo {
  width: 86px;
  height: 86px;
  margin: 0 auto 16px;
  border-radius: 28px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, #2563eb, #22d3ee, #22c55e);
  box-shadow: 0 22px 54px rgba(6,182,212,.28);
  animation: dnNexusLoaderPulse 1.7s ease-in-out infinite;
}
.dn-nexus-loader-logo span {
  color: white;
  font-size: 43px;
  font-weight: 1000;
  letter-spacing: -.08em;
}
.dn-nexus-loader-brand strong {
  display: block;
  color: #f8fafc;
  font-size: 29px;
  font-weight: 1000;
  letter-spacing: -.055em;
}
.dn-nexus-loader-brand small {
  display: block;
  margin-top: 7px;
  color: #93c5fd;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.dn-nexus-loader-bar {
  height: 10px;
  margin: 24px 0 16px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(2,6,23,.68);
  border: 1px solid rgba(255,255,255,.10);
}
.dn-nexus-loader-bar i {
  display: block;
  width: 45%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, #2563eb, #22d3ee, #22c55e);
  box-shadow: 0 0 28px rgba(34,211,238,.45);
  animation: dnNexusLoaderBar 1.45s ease-in-out infinite;
}
.dn-nexus-loader-steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 8px;
}
.dn-nexus-loader-steps span {
  min-height: 30px;
  display: grid;
  place-items: center;
  border-radius: 999px;
  color: #cbd5e1;
  font-size: 11px;
  font-weight: 950;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.09);
}
@keyframes dnNexusLoaderSpin {
  from { transform: rotate(0deg) scale(1); }
  50% { transform: rotate(180deg) scale(1.06); }
  to { transform: rotate(360deg) scale(1); }
}
@keyframes dnNexusLoaderPulse {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-4px) scale(1.045); }
}
@keyframes dnNexusLoaderBar {
  0% { transform: translateX(-120%); width: 38%; }
  50% { width: 62%; }
  100% { transform: translateX(260%); width: 38%; }
}
@media (prefers-reduced-motion: reduce) {
  .dn-nexus-loader-orb,
  .dn-nexus-loader-logo,
  .dn-nexus-loader-bar i {
    animation: none !important;
  }
}



/* ===== Dealer Nexus Tab Switch Loader ===== */
.dn-nexus-loader.dn-nexus-loader-tab {
  background:
    radial-gradient(circle at 20% 15%, rgba(37,99,235,.18), transparent 30%),
    radial-gradient(circle at 80% 20%, rgba(34,211,238,.14), transparent 28%),
    rgba(2,6,23,.58);
  backdrop-filter: blur(10px);
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-card {
  width: min(310px, calc(100vw - 44px));
  padding: 22px;
  border-radius: 28px;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-logo {
  width: 62px;
  height: 62px;
  border-radius: 21px;
  margin-bottom: 12px;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-logo span {
  font-size: 32px;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-brand strong {
  font-size: 23px;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-brand small {
  font-size: 10px;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-bar {
  margin: 18px 0 0;
}
.dn-nexus-loader.dn-nexus-loader-tab .dn-nexus-loader-steps {
  display: none;
}



/* ===== Dealer Nexus Deal Package PDF Preview ===== */
.dn-pdf-package-modal {
  position: fixed;
  inset: 0;
  z-index: 2147483600;
  display: none;
  background: rgba(2,6,23,.82);
  backdrop-filter: blur(14px);
}
.dn-pdf-package-modal.active {
  display: grid;
  grid-template-rows: auto 1fr;
}
.dn-pdf-package-topbar {
  min-height: 74px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.88));
  color: #f8fafc;
}
.dn-pdf-package-title {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}
.dn-pdf-package-icon {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg,#2563eb,#06b6d4,#22c55e);
  color: #fff;
  font-weight: 1000;
}
.dn-pdf-package-title strong {
  display: block;
  font-size: 17px;
  font-weight: 1000;
  letter-spacing: -.03em;
}
.dn-pdf-package-title small {
  display: block;
  margin-top: 2px;
  color: #94a3b8;
  font-weight: 800;
}
.dn-pdf-package-actions {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.dn-pdf-package-actions button,
.dn-pdf-package-actions a {
  min-height: 40px;
  border: 0;
  border-radius: 13px;
  padding: 0 14px;
  color: white;
  background: linear-gradient(135deg,#2563eb,#06b6d4);
  font-weight: 950;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  text-decoration: none;
}
.dn-pdf-package-actions .secondary {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.14);
}
.dn-pdf-package-body {
  display: grid;
  grid-template-columns: 310px 1fr;
  min-height: 0;
}
.dn-pdf-package-side {
  border-right: 1px solid rgba(255,255,255,.10);
  background: rgba(15,23,42,.72);
  padding: 16px;
  overflow: auto;
}
.dn-pdf-package-side h3 {
  margin: 0 0 12px;
  color: #f8fafc;
}
.dn-pdf-package-summary {
  display: grid;
  gap: 9px;
}
.dn-pdf-package-summary div {
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  padding: 10px;
  background: rgba(255,255,255,.045);
}
.dn-pdf-package-summary span {
  display: block;
  color: #94a3b8;
  font-size: 10px;
  font-weight: 950;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.dn-pdf-package-summary strong {
  display: block;
  margin-top: 5px;
  color: #f8fafc;
  overflow-wrap: anywhere;
}
.dn-pdf-package-frame-wrap {
  min-height: 0;
  background: #0f172a;
}
#dnPdfPackageFrame {
  width: 100%;
  height: 100%;
  border: 0;
  background: #111827;
}
.dn-pdf-package-note {
  margin-top: 12px;
  color: #bae6fd;
  font-size: 12px;
  line-height: 1.5;
}
@media(max-width: 900px) {
  .dn-pdf-package-body {
    grid-template-columns: 1fr;
  }
  .dn-pdf-package-side {
    display: none;
  }
}


/* Dealer Nexus deal desk revamp */
.dn-dealdesk-shell{
  padding:28px !important;
  min-height:100vh;
  background:
    radial-gradient(circle at 9% 2%,rgba(59,130,246,.24),transparent 34%),
    radial-gradient(circle at 92% 10%,rgba(14,165,233,.18),transparent 32%),
    linear-gradient(135deg,#020617,#0b1120 52%,#111827) !important;
}
.dn-dealdesk-hero{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  border:1px solid rgba(148,163,184,.24);
  border-radius:30px;
  padding:24px;
  margin-bottom:16px;
  background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(30,41,59,.62));
  box-shadow:0 28px 80px rgba(0,0,0,.28);
}
.dn-dealdesk-kicker{
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(56,189,248,.35);
  border-radius:999px;
  padding:6px 10px;
  color:#67e8f9;
  font-size:11px;
  font-weight:950;
  letter-spacing:.12em;
  text-transform:uppercase;
  background:rgba(8,47,73,.45);
}
.dn-dealdesk-hero h1{
  margin:10px 0 8px;
  max-width:900px;
  color:#f8fafc;
  font-size:clamp(26px,3vw,42px);
  line-height:1.05;
  letter-spacing:-.04em;
}
.dn-dealdesk-hero p{margin:0;color:#cbd5e1;max-width:780px}
.dn-dealdesk-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.dn-dealdesk-hero-actions button{
  min-height:44px;
  border:0;
  border-radius:15px;
  padding:0 16px;
  color:white;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  font-weight:950;
  cursor:pointer;
}
.dn-dealdesk-top{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  padding:0 !important;
  margin-bottom:14px !important;
  display:grid !important;
  grid-template-columns:1.15fr 1fr 360px !important;
}
.dn-dealdesk-tile{
  border:1px solid rgba(148,163,184,.22);
  border-radius:26px;
  padding:18px;
  background:linear-gradient(180deg,rgba(15,23,42,.86),rgba(2,6,23,.58));
  box-shadow:0 22px 60px rgba(0,0,0,.18);
}
.dn-dealdesk-avatar,.dn-dealdesk-car{
  width:72px;
  height:72px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  color:#fff;
  font-size:28px;
  box-shadow:0 16px 34px rgba(37,99,235,.28);
}
.dn-dealdesk-status{grid-template-columns:1fr 1fr !important;align-items:end}
.dn-dealdesk-wide{grid-column:1/-1}
.dn-dealdesk-card{
  border-color:rgba(148,163,184,.22) !important;
  background:linear-gradient(180deg,rgba(15,23,42,.82),rgba(2,6,23,.55)) !important;
  box-shadow:0 18px 55px rgba(0,0,0,.16);
}
.dn-dealdesk-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
}
.dn-dealdesk-card-head h3{margin:0 0 5px;color:#f8fafc}
.dn-dealdesk-card-head p{margin:0;color:#94a3b8}
.dn-dealdesk-cobuyer{
  margin-bottom:14px;
  border-radius:24px !important;
}
.dn-dealdesk-form-wide{
  grid-template-columns:repeat(4,minmax(150px,1fr)) !important;
}
.dn-dealdesk-form input:focus,.dn-dealdesk-status input:focus,.dn-dealdesk-status select:focus,.dn-dealdesk-card textarea:focus{
  border-color:rgba(56,189,248,.72) !important;
  box-shadow:0 0 0 3px rgba(56,189,248,.12);
}
.dn-dealdesk-actions{
  justify-content:flex-start !important;
  border:1px solid rgba(148,163,184,.18);
  border-radius:22px;
  padding:10px;
  margin-bottom:12px;
  background:rgba(15,23,42,.55);
}
@media(max-width:1200px){
  .dn-dealdesk-hero,.dn-dealdesk-top{grid-template-columns:1fr !important}
  .dn-dealdesk-hero-actions{justify-content:flex-start}
  .dn-dealdesk-form-wide{grid-template-columns:repeat(2,minmax(150px,1fr)) !important}
}
@media(max-width:700px){
  .dn-dealdesk-shell{padding:12px !important}
  .dn-dealdesk-form-wide{grid-template-columns:1fr !important}
  .dn-dealdesk-card-head{flex-direction:column}
}


/* Dealer Nexus lender profit breakdown refresh */
.capital-one-mode .cps-compact,
.cps-mode .cps-compact {
  border: 1px solid rgba(59, 130, 246, 0.28);
  box-shadow: 0 22px 70px rgba(15, 23, 42, 0.32);
}
.capital-one-mode .cps-compact-header,
.cps-mode .cps-compact-header {
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.96), rgba(30, 64, 175, 0.62));
  border-bottom: 1px solid rgba(148, 163, 184, 0.18);
}
.profit-breakdown-card {
  border: 1px solid rgba(148, 163, 184, 0.18);
  border-radius: 18px;
  padding: 14px;
  background: linear-gradient(180deg, rgba(15,23,42,0.92), rgba(15,23,42,0.72));
}
.profit-breakdown-card .compact-result-value {
  font-size: 22px;
  font-weight: 900;
  letter-spacing: -0.02em;
}
.profit-breakdown-card.profit-negative,
.profit-breakdown-card.profit-orange,
.profit-breakdown-card.profit-yellow,
.profit-breakdown-card.profit-green {
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.profit-breakdown-card.profit-negative .compact-result-label,
.profit-breakdown-card.profit-orange .compact-result-label,
.profit-breakdown-card.profit-yellow .compact-result-label,
.profit-breakdown-card.profit-green .compact-result-label {
  color: rgba(255,255,255,0.82);
}
.backend-cost-field label {
  color: #bfdbfe;
}
.capital-one-mode .cps-title::after {
  content: " · Capital One";
  color: #93c5fd;
  font-weight: 800;
}
.cps-mode .cps-title::after {
  content: " · CPS";
  color: #93c5fd;
  font-weight: 800;
}
.lendbuzz-mode .profit-breakdown-card {
  display: none !important;
}


/* Robust profit color application: colors both profit cards and value text. */
.profit-breakdown-card.profit-negative,
.profit-box.profit-negative {
  background: rgba(239,68,68,0.22) !important;
  border-color: rgba(248,113,113,0.55) !important;
  box-shadow: 0 16px 38px rgba(239,68,68,0.16) !important;
}
.profit-breakdown-card.profit-orange,
.profit-box.profit-orange {
  background: rgba(249,115,22,0.24) !important;
  border-color: rgba(251,146,60,0.58) !important;
  box-shadow: 0 16px 38px rgba(249,115,22,0.16) !important;
}
.profit-breakdown-card.profit-yellow,
.profit-box.profit-yellow {
  background: rgba(234,179,8,0.25) !important;
  border-color: rgba(250,204,21,0.62) !important;
  box-shadow: 0 16px 38px rgba(234,179,8,0.16) !important;
}
.profit-breakdown-card.profit-green,
.profit-box.profit-green {
  background: rgba(34,197,94,0.24) !important;
  border-color: rgba(74,222,128,0.62) !important;
  box-shadow: 0 16px 38px rgba(34,197,94,0.16) !important;
}
.profit-negative .compact-result-value,
.compact-result-value.profit-negative,
.profit-value.profit-negative {
  color: #fecaca !important;
}
.profit-orange .compact-result-value,
.compact-result-value.profit-orange,
.profit-value.profit-orange {
  color: #fed7aa !important;
}
.profit-yellow .compact-result-value,
.compact-result-value.profit-yellow,
.profit-value.profit-yellow {
  color: #fef08a !important;
}
.profit-green .compact-result-value,
.compact-result-value.profit-green,
.profit-value.profit-green {
  color: #bbf7d0 !important;
}


/* Dealer Nexus profit color cleanup: one unified color per profit box. */
.profit-breakdown-card.profit-negative .compact-result-value,
.profit-breakdown-card.profit-orange .compact-result-value,
.profit-breakdown-card.profit-yellow .compact-result-value,
.profit-breakdown-card.profit-green .compact-result-value,
.profit-box.profit-negative .profit-value,
.profit-box.profit-orange .profit-value,
.profit-box.profit-yellow .profit-value,
.profit-box.profit-green .profit-value {
  color: #ffffff !important;
  text-shadow: 0 1px 2px rgba(0,0,0,0.18) !important;
}
.backend-total-card,
.backend-total-card.profit-negative,
.backend-total-card.profit-orange,
.backend-total-card.profit-yellow,
.backend-total-card.profit-green {
  background: linear-gradient(180deg, rgba(15,23,42,0.92), rgba(15,23,42,0.72)) !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
  box-shadow: none !important;
}
.backend-total-card .compact-result-label {
  color: rgba(226,232,240,0.72) !important;
}
.backend-total-card .compact-result-value {
  color: #e5e7eb !important;
}
.lendbuzz-mode .backend-total-card {
  display: none !important;
}

.total-backend-approval-card {
  display: grid;
  gap: 6px;
}

.approval-readonly-money {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 8px 10px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.06);
  color: rgba(255,255,255,0.94);
  font-size: 14px;
  font-weight: 900;
  letter-spacing: -0.01em;
  font-variant-numeric: tabular-nums;
}

/* Total Backend sits beside Max LTV Amount and stays neutral. */
.total-backend-result-card,
.total-backend-result-card.profit-negative,
.total-backend-result-card.profit-orange,
.total-backend-result-card.profit-yellow,
.total-backend-result-card.profit-green {
  background: linear-gradient(180deg, rgba(15,23,42,0.92), rgba(15,23,42,0.72)) !important;
  border-color: rgba(148, 163, 184, 0.18) !important;
  box-shadow: none !important;
}
.total-backend-result-card .compact-result-label {
  color: rgba(226,232,240,0.72) !important;
}
.total-backend-result-card .compact-result-value,
.total-backend-result-card .compact-result-value.profit-negative,
.total-backend-result-card .compact-result-value.profit-orange,
.total-backend-result-card .compact-result-value.profit-yellow,
.total-backend-result-card .compact-result-value.profit-green {
  color: #e5e7eb !important;
  text-shadow: none !important;
}
.lendbuzz-mode .total-backend-result-card {
  display: none !important;
}


/* Rehash customer required search modal */
.dn-rehash-customer-modal{position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;background:rgba(2,6,23,.72);backdrop-filter:blur(10px);padding:22px;}
.dn-rehash-customer-card{width:min(880px,96vw);max-height:86vh;overflow:hidden;background:linear-gradient(145deg,rgba(15,23,42,.98),rgba(17,24,39,.98));border:1px solid rgba(148,163,184,.25);border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.45);color:#f8fafc;}
.dn-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px 22px 14px;border-bottom:1px solid rgba(148,163,184,.18);}
.dn-modal-head h3{margin:0;font-size:22px;letter-spacing:-.02em;}
.dn-modal-head p{margin:6px 0 0;color:#cbd5e1;font-size:13px;}
.dn-modal-close{border:0;border-radius:14px;background:rgba(255,255,255,.1);color:#fff;width:38px;height:38px;font-size:18px;cursor:pointer;}
.dn-rehash-customer-search-row{display:grid;grid-template-columns:1fr auto;gap:10px;padding:16px 22px 8px;}
.dn-rehash-customer-search-row input{width:100%;border-radius:16px;border:1px solid rgba(148,163,184,.28);background:rgba(15,23,42,.88);color:#fff;padding:13px 14px;font-size:15px;outline:none;}
.dn-rehash-customer-search-row button,.dn-rehash-customer-result em{border:0;border-radius:16px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:800;padding:0 18px;cursor:pointer;font-style:normal;display:inline-flex;align-items:center;justify-content:center;}
.dn-rehash-customer-search-status{padding:0 22px 10px;color:#94a3b8;font-size:13px;}
.dn-rehash-customer-results{padding:0 22px 22px;max-height:55vh;overflow:auto;display:grid;gap:10px;}
.dn-rehash-customer-result{display:grid;grid-template-columns:1.3fr 1.2fr 1.4fr auto;align-items:center;gap:12px;text-align:left;width:100%;border:1px solid rgba(148,163,184,.2);background:rgba(15,23,42,.72);color:#fff;border-radius:18px;padding:14px;cursor:pointer;}
.dn-rehash-customer-result:hover{border-color:rgba(96,165,250,.7);background:rgba(30,41,59,.9);}
.dn-rehash-customer-result strong{font-size:15px;}
.dn-rehash-customer-result span{color:#cbd5e1;font-size:13px;}
.dn-rehash-customer-result small{color:#94a3b8;font-size:12px;}
.dn-rehash-customer-empty{border:1px dashed rgba(148,163,184,.35);border-radius:18px;padding:18px;color:#cbd5e1;text-align:center;}
#incomeRawBox{display:none!important;visibility:hidden!important;}
@media (max-width:760px){.dn-rehash-customer-search-row{grid-template-columns:1fr}.dn-rehash-customer-result{grid-template-columns:1fr}.dn-rehash-customer-result em{padding:10px 14px;}}


/* Dealer Nexus Credit AI revamp */
.credit-panel {
  border-color: rgba(59,130,246,.32) !important;
  background: linear-gradient(180deg, rgba(15,23,42,.88), rgba(2,6,23,.72)) !important;
}
.credit-upload-btn { background: linear-gradient(135deg,#1d4ed8,#0ea5e9) !important; }
.credit-ai-breakdown {
  margin-top: 14px;
  display: grid;
  grid-template-columns: repeat(3, minmax(190px, 1fr));
  gap: 10px;
}
.credit-breakdown-card {
  border: 1px solid rgba(148,163,184,.18);
  background: rgba(15,23,42,.68);
  border-radius: 14px;
  padding: 12px;
  min-height: 108px;
}
.credit-breakdown-card span {
  display:block;
  color:#93c5fd;
  font-size:11px;
  font-weight:950;
  letter-spacing:.05em;
  text-transform:uppercase;
  margin-bottom:8px;
}
.credit-breakdown-card p {
  margin:0;
  color:#e5e7eb;
  font-size:13px;
  font-weight:750;
  line-height:1.45;
  white-space:pre-wrap;
}
.credit-breakdown-wide { grid-column: span 3; min-height: 80px; }
.credit-raw-box { display:none !important; visibility:hidden !important; height:0 !important; overflow:hidden !important; }
#creditRawText { display:none !important; }
@media(max-width:1100px){ .credit-ai-breakdown{grid-template-columns:repeat(2,minmax(170px,1fr));}.credit-breakdown-wide{grid-column:span 2;} }
@media(max-width:720px){ .credit-ai-breakdown{grid-template-columns:1fr;}.credit-breakdown-wide{grid-column:span 1;} }


/* Credit panel minimized-until-upload flow */
.credit-panel-header{cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:6px 2px 14px;}
.credit-header-left{min-width:230px;}
.credit-header-kicker{color:#67e8f9;font-size:11px;font-weight:950;letter-spacing:.18em;text-transform:uppercase;margin-bottom:4px;}
.credit-header-title{color:#f8fafc;font-size:20px;font-weight:950;letter-spacing:-.02em;}
.credit-header-subtitle{color:#9ca3af;font-size:12px;font-weight:700;margin-top:4px;}
.credit-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;}
.credit-toggle-icon{width:28px;height:28px;border-radius:10px;display:grid;place-items:center;color:#e5e7eb;border:1px solid rgba(148,163,184,.25);background:rgba(15,23,42,.7);font-weight:950;}
.credit-panel.credit-collapsed{padding-bottom:18px!important;}
.credit-panel.credit-collapsed #creditPanelContent{display:none!important;}
.credit-panel:not(.credit-has-report) #creditReparseBtn{display:none!important;}
.credit-panel.credit-has-report #creditReparseBtn{display:inline-flex!important;}
.credit-panel.credit-has-report .credit-header-subtitle{color:#bae6fd;}
@media(max-width:850px){.credit-panel-header{align-items:flex-start;flex-direction:column}.credit-header-actions{justify-content:flex-start}}

/* Income Analysis: upload-only default state */
.income-panel.income-upload-only .income-analysis-body[hidden] { display: none !important; }
.income-panel.income-upload-only .income-upload-row.always-visible { display: flex !important; }
.income-action-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin:10px 0 14px; }
.income-hint { color:#93a4bd; font-size:12px; font-weight:800; }
.income-paystub-hold { border:1px solid rgba(251,191,36,.35) !important; box-shadow:0 0 0 1px rgba(251,191,36,.12) inset; }

/* === Dealer Nexus Predictive Approval AI === */
.predictive-approval-panel{margin:18px 0 22px;padding:22px;border:1px solid rgba(60,120,255,.24);border-radius:24px;background:radial-gradient(circle at top left,rgba(58,117,255,.24),transparent 34%),linear-gradient(135deg,#071328,#0b1220 48%,#101827);box-shadow:0 20px 60px rgba(0,0,0,.28);color:#eef5ff;overflow:hidden;position:relative}.predictive-approval-panel:before{content:"";position:absolute;inset:-1px;background:linear-gradient(120deg,transparent,rgba(101,163,255,.16),transparent);pointer-events:none}.predictive-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative;z-index:1}.predictive-hero h2{margin:4px 0 6px;font-size:25px;letter-spacing:-.03em}.predictive-hero p{margin:0;max-width:820px;color:#aebdd4;font-size:14px;line-height:1.45}.predictive-score-ring{width:112px;height:112px;border-radius:999px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:conic-gradient(#58d68d var(--dn-conf,0deg),rgba(255,255,255,.13) 0);box-shadow:inset 0 0 0 9px rgba(3,8,20,.86),0 0 28px rgba(88,214,141,.18);flex:0 0 auto}.predictive-score-ring span{font-size:25px;font-weight:900}.predictive-score-ring small{font-size:11px;text-transform:uppercase;color:#b9c7da;letter-spacing:.1em}.predictive-controls{display:flex;align-items:center;gap:12px;margin-top:18px;flex-wrap:wrap;position:relative;z-index:1}.predictive-primary-btn,.predictive-secondary-btn{border:0;border-radius:16px;padding:12px 16px;font-weight:850;cursor:pointer}.predictive-primary-btn{background:linear-gradient(135deg,#1f7aff,#7c3aed);color:white;box-shadow:0 10px 24px rgba(31,122,255,.24)}.predictive-secondary-btn{background:rgba(255,255,255,.1);color:#eaf2ff;border:1px solid rgba(255,255,255,.16)}.predictive-secondary-btn:disabled{opacity:.45;cursor:not-allowed}.predictive-hint{font-size:13px;color:#b8c7dc}.predictive-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px;position:relative;z-index:1}.predictive-card,.predictive-structure-grid>div{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.075);border-radius:18px;padding:14px;backdrop-filter:blur(10px)}.predictive-card span,.predictive-structure-grid label{display:block;color:#9fb0ca;font-size:11px;text-transform:uppercase;letter-spacing:.09em;margin-bottom:8px}.predictive-card strong{display:block;color:#fff;font-size:18px;line-height:1.2}.predictive-card small{display:block;margin-top:8px;color:#b8c7dc;line-height:1.35}.predictive-structure-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-top:12px;position:relative;z-index:1}.predictive-readonly{font-size:16px;font-weight:850;color:#fff}.predictive-reasons{margin-top:14px;border-radius:18px;padding:14px;background:rgba(3,8,20,.52);border:1px solid rgba(255,255,255,.1);color:#d3deef;font-size:13px;line-height:1.5;position:relative;z-index:1}.predictive-reasons ul{margin:6px 0 0 18px;padding:0}.predictive-reasons li{margin:3px 0}.predictive-risk-high{color:#ffb4b4!important}.predictive-risk-mid{color:#ffe08a!important}.predictive-risk-good{color:#9ef2bd!important}@media(max-width:1100px){.predictive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.predictive-structure-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.predictive-hero{align-items:flex-start}.predictive-score-ring{width:96px;height:96px}}@media(max-width:700px){.predictive-hero{flex-direction:column}.predictive-grid,.predictive-structure-grid{grid-template-columns:1fr}}

/* === Approval AI Training Center === */
.dn-ai-training-card{
  background:
    radial-gradient(circle at 12% 12%, rgba(37,99,235,.28), transparent 36%),
    radial-gradient(circle at 88% 6%, rgba(56,189,248,.18), transparent 32%),
    linear-gradient(145deg, rgba(15,23,42,.92), rgba(2,6,23,.82)) !important;
  border:1px solid rgba(148,163,184,.18)!important;
  box-shadow:0 26px 80px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.08)!important;
  color:#e5edf7!important;
}
.dn-ai-training-card .dn-admin-card-head h2{color:#f8fafc!important;}
.dn-ai-training-card .dn-admin-card-head p{color:#9fb0c7!important;}
.dn-ai-training-card label{color:#cbd5e1!important;}
.dn-training-stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:12px 0 18px;
}
.dn-training-stats>div{
  border-radius:18px;
  background:linear-gradient(145deg, rgba(15,23,42,.72), rgba(30,41,59,.58))!important;
  border:1px solid rgba(148,163,184,.18)!important;
  padding:14px;
  box-shadow:0 18px 40px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.dn-training-stats span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:#93a4bc!important;
}
.dn-training-stats strong{
  display:block;
  font-size:24px;
  color:#ffffff!important;
  margin-top:4px;
}
.dn-training-stats small{
  display:block;
  color:#93a4bc!important;
  font-size:11px;
  margin-top:2px;
}
.dn-ai-training-card input,
.dn-ai-training-card select,
.dn-ai-training-card textarea{
  width:100%;
  border:1px solid rgba(148,163,184,.22)!important;
  border-radius:14px;
  padding:12px;
  font-family:inherit;
  resize:vertical;
  background:rgba(15,23,42,.72)!important;
  color:#f8fafc!important;
  outline:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.dn-ai-training-card input::placeholder,
.dn-ai-training-card textarea::placeholder{color:#64748b!important;}
.dn-ai-training-card input:focus,
.dn-ai-training-card select:focus,
.dn-ai-training-card textarea:focus{
  border-color:rgba(56,189,248,.55)!important;
  box-shadow:0 0 0 3px rgba(56,189,248,.12), inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.dn-training-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin-top:14px;
}
.dn-training-actions button,
.dn-ai-training-card .dn-admin-card-head button{
  border:0!important;
  border-radius:14px!important;
  padding:11px 15px!important;
  font-weight:800!important;
  cursor:pointer!important;
  background:linear-gradient(135deg,#2563eb,#06b6d4)!important;
  color:#fff!important;
  box-shadow:0 14px 32px rgba(37,99,235,.28)!important;
}
.dn-training-secondary{
  background:rgba(30,41,59,.96)!important;
  color:#e2e8f0!important;
  border:1px solid rgba(148,163,184,.22)!important;
  box-shadow:none!important;
}
.dn-training-actions span{
  font-size:13px;
  color:#9fb0c7!important;
}
@media(max-width:900px){.dn-training-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* ===== Dealer Nexus AI Command Center Upgrade ===== */
.dn-ai-command-dashboard,.dn-ai-deal-command{border:1px solid rgba(56,189,248,.24);border-radius:28px;background:radial-gradient(circle at 0% 0%,rgba(37,99,235,.28),transparent 35%),linear-gradient(180deg,rgba(15,23,42,.92),rgba(2,6,23,.78));box-shadow:0 24px 80px rgba(0,0,0,.32);padding:22px;margin:20px 0;color:#f8fafc}.dn-ai-command-hero,.dn-ai-deal-head{display:flex;align-items:center;justify-content:space-between;gap:18px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:18px;margin-bottom:18px}.dn-ai-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(34,211,238,.28);background:rgba(6,182,212,.12);color:#67e8f9;border-radius:999px;padding:7px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:1000}.dn-ai-command-hero h2,.dn-ai-deal-head h2{font-size:30px;line-height:1;margin:10px 0 8px;letter-spacing:-.04em;color:#fff}.dn-ai-command-hero p,.dn-ai-deal-head p{margin:0;color:#cbd5e1;line-height:1.55;max-width:820px}.dn-ai-main-btn,.dn-ai-ghost-btn{border:0;border-radius:16px;min-height:46px;padding:0 18px;font-weight:1000;cursor:pointer}.dn-ai-main-btn{background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;box-shadow:0 16px 36px rgba(37,99,235,.28)}.dn-ai-ghost-btn{background:rgba(255,255,255,.08);color:#e2e8f0;border:1px solid rgba(255,255,255,.14)}.dn-ai-deal-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.dn-ai-kpi-grid,.dn-ai-score-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:14px}.dn-ai-score-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.dn-ai-kpi-grid>div,.dn-ai-score-grid>div{border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.055);padding:15px}.dn-ai-kpi-grid span,.dn-ai-score-grid span{display:block;color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.dn-ai-kpi-grid strong,.dn-ai-score-grid strong{display:inline-block;font-size:25px;margin-top:8px;color:#fff}.dn-ai-kpi-grid small,.dn-ai-score-grid small{display:block;color:#67e8f9;margin-top:5px;font-weight:800}.dn-ai-command-grid,.dn-ai-deal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.dn-ai-deal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dn-ai-command-card{border:1px solid rgba(255,255,255,.12);border-radius:22px;background:rgba(2,6,23,.46);padding:17px;min-height:100px}.dn-ai-wide-card{grid-column:1/-1}.dn-ai-card-title{font-size:15px;font-weight:1000;color:#fff;margin-bottom:12px}.dn-ai-command-card ul{margin:0;padding-left:18px;color:#cbd5e1;line-height:1.55}.dn-ai-mini-table,.dn-ai-bank-list,.dn-ai-inventory-match{display:grid;gap:9px}.dn-ai-mini-table>div,.dn-ai-bank-list>div,.dn-ai-inventory-match>div,.dn-ai-rec-line{border:1px solid rgba(255,255,255,.10);border-radius:15px;background:rgba(255,255,255,.045);padding:10px}.dn-ai-mini-table b,.dn-ai-bank-list b,.dn-ai-inventory-match b{display:block;color:#f8fafc}.dn-ai-mini-table span,.dn-ai-bank-list em,.dn-ai-inventory-match span,.dn-ai-inventory-match em{display:block;color:#94a3b8;font-size:12px;margin-top:3px}.dn-ai-bank-list span{float:right;color:#bbf7d0;font-weight:1000}.dn-ai-lender-bars{display:grid;gap:12px}.dn-ai-lender-bars div{display:grid;grid-template-columns:82px 1fr 42px;align-items:center;gap:9px;color:#cbd5e1}.dn-ai-lender-bars i{height:9px;border-radius:999px;background:linear-gradient(90deg,#2563eb,#22c55e);width:var(--w);max-width:100%;display:block}.dn-ai-rec-line{display:flex;justify-content:space-between;gap:12px}.dn-ai-rec-line span{color:#94a3b8}.dn-ai-rec-line b{color:#fff;text-align:right}.dn-ai-recommendation-card p{color:#cbd5e1;line-height:1.55;margin:12px 0 0}.dn-ai-strategy-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dn-ai-strategy-grid button{border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.06);color:#e2e8f0;text-align:left;padding:12px;cursor:pointer}.dn-ai-strategy-grid button b{display:block}.dn-ai-strategy-grid button span{display:block;font-size:12px;color:#94a3b8;margin-top:3px}.dn-ai-timeline{display:flex;flex-wrap:wrap;gap:8px}.dn-ai-timeline span{border:1px solid rgba(56,189,248,.24);background:rgba(6,182,212,.08);color:#bae6fd;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:900}.dn-ai-funding-box{margin-top:12px;color:#cbd5e1}.dn-ai-compliance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dn-ai-compliance-grid label{border:1px solid rgba(255,255,255,.11);border-radius:14px;background:rgba(255,255,255,.045);padding:10px;color:#e2e8f0;text-transform:none;letter-spacing:0;font-size:13px;margin:0}.dn-ai-training-upload-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0 18px}.dn-ai-upload-tile{border:1px solid rgba(56,189,248,.20);border-radius:18px;background:rgba(2,6,23,.55);padding:14px;color:#e2e8f0}.dn-ai-upload-tile b{display:block;color:#fff;margin-bottom:6px}.dn-ai-upload-tile span{display:block;color:#94a3b8;font-size:12px;line-height:1.45;margin-bottom:10px}.dn-ai-upload-tile input{width:100%;font-size:12px;color:#cbd5e1;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:8px}.dn-floating-ai-btn{position:fixed;right:20px;bottom:20px;z-index:4000;border:0;border-radius:999px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:#fff;padding:14px 18px;font-weight:1000;box-shadow:0 18px 45px rgba(0,0,0,.35);cursor:pointer}@media(max-width:1100px){.dn-ai-kpi-grid{grid-template-columns:repeat(3,1fr)}.dn-ai-score-grid,.dn-ai-training-upload-grid{grid-template-columns:repeat(2,1fr)}.dn-ai-command-grid,.dn-ai-deal-grid{grid-template-columns:1fr}}@media(max-width:680px){.dn-ai-command-hero,.dn-ai-deal-head{display:block}.dn-ai-kpi-grid,.dn-ai-score-grid,.dn-ai-training-upload-grid,.dn-ai-compliance-grid{grid-template-columns:1fr}.dn-ai-strategy-grid{grid-template-columns:1fr}.dn-ai-deal-actions{justify-content:flex-start;margin-top:12px}}


/* ===== DealerNexus Simple AI Final Structure Revamp 2026-05-03 ===== */
#predictiveApprovalPanel,#dnAiDealCommandCenter{display:none!important;}
.dn-simple-ai-shell{margin:18px 0 22px;border:1px solid rgba(59,130,246,.35);border-radius:22px;background:linear-gradient(135deg,rgba(9,18,35,.98),rgba(12,22,45,.95));box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden;color:#e5eefc;}
.dn-simple-ai-shell.is-collapsed .dn-simple-ai-body{display:none;}
.dn-simple-ai-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;cursor:pointer;background:linear-gradient(90deg,rgba(37,99,235,.22),rgba(20,184,166,.10));}
.dn-simple-ai-title{display:flex;align-items:center;gap:14px;min-width:0;}
.dn-simple-ai-orb{width:42px;height:42px;border-radius:16px;background:radial-gradient(circle at 30% 20%,#8bdcff,#2563eb 48%,#071123 100%);box-shadow:0 0 28px rgba(37,99,235,.65);display:grid;place-items:center;font-weight:900;color:white;}
.dn-simple-ai-title h2{margin:0;font-size:20px;letter-spacing:-.02em;color:#fff;}
.dn-simple-ai-title p{margin:4px 0 0;color:#9fb2d2;font-size:13px;}
.dn-simple-ai-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.dn-simple-ai-pill{border:1px solid rgba(148,163,184,.32);background:rgba(15,23,42,.8);border-radius:999px;padding:8px 11px;font-size:12px;color:#dbeafe;white-space:nowrap;}
.dn-simple-ai-pill strong{color:#67e8f9;}
.dn-simple-ai-toggle{border:1px solid rgba(148,163,184,.35);background:#0f172a;color:#fff;border-radius:12px;padding:9px 12px;font-weight:800;}
.dn-simple-ai-body{padding:18px 20px 20px;}
.dn-simple-ai-actions{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px;}
.dn-simple-ai-primary,.dn-simple-ai-secondary{border:0;border-radius:14px;padding:12px 16px;font-weight:900;cursor:pointer;box-shadow:0 14px 26px rgba(0,0,0,.22);}
.dn-simple-ai-primary{background:linear-gradient(135deg,#38bdf8,#2563eb);color:#fff;}
.dn-simple-ai-secondary{background:rgba(30,41,59,.95);color:#dbeafe;border:1px solid rgba(148,163,184,.25);}
.dn-simple-ai-note{font-size:12px;color:#a7b7d5;align-self:center;}
.dn-final-structure{display:grid;grid-template-columns:1.1fr .9fr;gap:14px;}
.dn-final-card{border:1px solid rgba(148,163,184,.24);background:rgba(15,23,42,.74);border-radius:18px;padding:16px;}
.dn-final-card h3{margin:0 0 12px;color:#fff;font-size:16px;}
.dn-final-big{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.dn-final-metric{border:1px solid rgba(59,130,246,.20);background:rgba(2,6,23,.55);border-radius:14px;padding:12px;}
.dn-final-metric span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#93a4c4;margin-bottom:5px;}
.dn-final-metric b{display:block;font-size:18px;color:#fff;}
.dn-final-metric small{display:block;margin-top:3px;color:#9fb2d2;}
.dn-ai-ready-box{margin-top:12px;border:1px solid rgba(34,197,94,.32);background:rgba(20,83,45,.20);border-radius:16px;padding:12px;color:#dcfce7;}
.dn-simple-ai-list{display:grid;gap:8px;}
.dn-simple-ai-list div{border:1px solid rgba(148,163,184,.22);background:rgba(2,6,23,.42);border-radius:13px;padding:10px;}
.dn-simple-ai-list b{display:block;color:#fff;margin-bottom:3px;}
.dn-simple-ai-list span,.dn-simple-ai-list em{display:block;color:#9fb2d2;font-size:12px;font-style:normal;}
.dn-simple-ai-loading{opacity:.72;pointer-events:none;}
.dn-simple-ai-warning{border-color:rgba(245,158,11,.35)!important;background:rgba(120,53,15,.20)!important;color:#fde68a!important;}
@media(max-width:900px){.dn-final-structure{grid-template-columns:1fr}.dn-final-big{grid-template-columns:1fr}.dn-simple-ai-head{align-items:flex-start;flex-direction:column}.dn-simple-ai-status{justify-content:flex-start}}

/* ===== DealerNexus AI Final Structure V2 - required inputs, confidence circle, profit panel ===== */
#predictiveApprovalPanel,#dnAiDealCommandCenter{display:none!important;}
.dn-simple-ai-shell{margin:16px 0 22px!important;border:1px solid rgba(56,189,248,.30)!important;border-radius:26px!important;background:radial-gradient(circle at 0 0,rgba(59,130,246,.28),transparent 38%),linear-gradient(145deg,rgba(5,12,28,.98),rgba(12,22,45,.96))!important;box-shadow:0 26px 80px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.06)!important;overflow:hidden!important;color:#e5eefc!important;}
.dn-simple-ai-shell.is-collapsed .dn-simple-ai-body{display:none!important;}
.dn-simple-ai-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:16px!important;padding:16px 18px!important;cursor:pointer!important;background:linear-gradient(90deg,rgba(37,99,235,.25),rgba(6,182,212,.10))!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
.dn-simple-ai-title{display:flex!important;align-items:center!important;gap:13px!important;min-width:0!important;}
.dn-simple-ai-orb{width:44px!important;height:44px!important;border-radius:17px!important;background:radial-gradient(circle at 30% 20%,#cffafe,#38bdf8 36%,#2563eb 70%,#020617)!important;box-shadow:0 0 30px rgba(56,189,248,.55)!important;display:grid!important;place-items:center!important;font-weight:1000!important;color:#fff!important;}
.dn-simple-ai-title h2{margin:0!important;font-size:20px!important;letter-spacing:-.03em!important;color:#fff!important;}
.dn-simple-ai-title p{margin:3px 0 0!important;color:#a9bbd7!important;font-size:12px!important;}
.dn-simple-ai-status{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
.dn-simple-ai-pill{border:1px solid rgba(148,163,184,.25)!important;background:rgba(15,23,42,.78)!important;border-radius:999px!important;padding:8px 11px!important;font-size:12px!important;color:#dbeafe!important;white-space:nowrap!important;}
.dn-simple-ai-pill strong{color:#67e8f9!important;}
.dn-simple-ai-toggle{border:1px solid rgba(148,163,184,.30)!important;background:#0f172a!important;color:#fff!important;border-radius:12px!important;padding:9px 12px!important;font-weight:900!important;cursor:pointer!important;}
.dn-simple-ai-body{padding:18px!important;}
.dn-ai-required-row{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:12px!important;align-items:end!important;margin-bottom:16px!important;}
.dn-ai-required-row label{display:block!important;color:#cbd5e1!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important;margin:0!important;}
.dn-ai-required-row select,.dn-ai-required-row input{width:100%!important;margin-top:7px!important;border:1px solid rgba(148,163,184,.25)!important;background:rgba(2,6,23,.68)!important;color:#f8fafc!important;border-radius:14px!important;padding:12px!important;outline:none!important;}
.dn-simple-ai-needs-input .dn-ai-required-row select,.dn-simple-ai-needs-input .dn-ai-required-row input{border-color:rgba(245,158,11,.75)!important;box-shadow:0 0 0 3px rgba(245,158,11,.12)!important;}
.dn-ai-top-grid{display:grid!important;grid-template-columns:180px 1fr!important;gap:14px!important;align-items:stretch!important;margin-bottom:14px!important;}
.dn-ai-confidence-wrap{border:1px solid rgba(148,163,184,.20)!important;background:rgba(2,6,23,.48)!important;border-radius:20px!important;display:grid!important;place-items:center!important;padding:14px!important;}
.dn-ai-confidence-circle{--score:0;width:132px!important;height:132px!important;border-radius:50%!important;display:grid!important;place-items:center!important;position:relative!important;background:conic-gradient(#38bdf8 calc(var(--score)*1%),rgba(30,41,59,.9) 0)!important;box-shadow:0 0 28px rgba(56,189,248,.22)!important;}
.dn-ai-confidence-circle:before{content:"";position:absolute;inset:11px;border-radius:50%;background:linear-gradient(145deg,#061126,#111c36);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);}
.dn-ai-confidence-circle strong,.dn-ai-confidence-circle span{position:relative;z-index:1;text-align:center;display:block!important;}
.dn-ai-confidence-circle strong{font-size:34px!important;color:#fff!important;line-height:1!important;}
.dn-ai-confidence-circle span{font-size:11px!important;color:#a9bbd7!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;margin-top:4px!important;}
.dn-ai-confidence-circle.high{background:conic-gradient(#22c55e calc(var(--score)*1%),rgba(30,41,59,.9) 0)!important;box-shadow:0 0 30px rgba(34,197,94,.24)!important;}
.dn-ai-confidence-circle.mid{background:conic-gradient(#38bdf8 calc(var(--score)*1%),rgba(30,41,59,.9) 0)!important;}
.dn-ai-confidence-circle.low{background:conic-gradient(#f59e0b calc(var(--score)*1%),rgba(30,41,59,.9) 0)!important;box-shadow:0 0 30px rgba(245,158,11,.20)!important;}
.dn-ai-final-summary,.dn-final-card{border:1px solid rgba(148,163,184,.22)!important;background:rgba(15,23,42,.70)!important;border-radius:20px!important;padding:15px!important;}
.dn-ai-final-summary h3,.dn-final-card h3{margin:0 0 12px!important;color:#fff!important;font-size:15px!important;letter-spacing:-.01em!important;}
.dn-final-big{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.dn-final-metric{border:1px solid rgba(59,130,246,.20)!important;background:rgba(2,6,23,.55)!important;border-radius:15px!important;padding:11px!important;}
.dn-final-metric span,.dn-profit-grid span{display:block!important;font-size:10px!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:#8ea2c2!important;margin-bottom:5px!important;font-weight:900!important;}
.dn-final-metric b{display:block!important;font-size:17px!important;color:#fff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.dn-simple-ai-actions{display:flex!important;flex-wrap:wrap!important;gap:9px!important;align-items:center!important;margin:10px 0 15px!important;}
.dn-simple-ai-primary,.dn-simple-ai-secondary{border:0!important;border-radius:14px!important;padding:12px 15px!important;font-weight:1000!important;cursor:pointer!important;box-shadow:0 14px 26px rgba(0,0,0,.22)!important;}
.dn-simple-ai-primary{background:linear-gradient(135deg,#38bdf8,#2563eb)!important;color:#fff!important;}
.dn-simple-ai-secondary{background:rgba(30,41,59,.95)!important;color:#dbeafe!important;border:1px solid rgba(148,163,184,.22)!important;}
.dn-simple-ai-note{font-size:12px!important;color:#a7b7d5!important;align-self:center!important;}
.dn-final-structure{display:grid!important;grid-template-columns:1.1fr .9fr!important;gap:14px!important;margin-top:14px!important;}
.dn-ai-bottom-grid{grid-template-columns:1fr 1fr!important;}
.dn-ai-ready-box{margin-top:12px!important;border:1px solid rgba(34,197,94,.30)!important;background:rgba(20,83,45,.18)!important;border-radius:16px!important;padding:12px!important;color:#dcfce7!important;line-height:1.45!important;}
.dn-profit-panel{background:radial-gradient(circle at 100% 0,rgba(34,197,94,.16),transparent 38%),rgba(15,23,42,.72)!important;}
.dn-profit-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
.dn-profit-grid div{border:1px solid rgba(34,197,94,.20)!important;background:rgba(2,6,23,.48)!important;border-radius:15px!important;padding:12px!important;}
.dn-profit-grid b{display:block!important;color:#fff!important;font-size:20px!important;}
.dn-profit-panel small{display:block!important;color:#93a4c4!important;margin-top:10px!important;}
.dn-simple-ai-list{display:grid!important;gap:8px!important;margin-bottom:12px!important;}
.dn-simple-ai-list div{border:1px solid rgba(148,163,184,.20)!important;background:rgba(2,6,23,.42)!important;border-radius:13px!important;padding:10px!important;}
.dn-simple-ai-list b{display:block!important;color:#fff!important;margin-bottom:3px!important;}
.dn-simple-ai-list span,.dn-simple-ai-list em{display:block!important;color:#9fb2d2!important;font-size:12px!important;font-style:normal!important;}
.dn-simple-ai-loading{opacity:.72!important;pointer-events:none!important;}
@media(max-width:980px){.dn-ai-required-row,.dn-ai-top-grid,.dn-final-structure,.dn-ai-bottom-grid{grid-template-columns:1fr!important}.dn-final-big{grid-template-columns:repeat(2,minmax(0,1fr))!important}.dn-simple-ai-head{align-items:flex-start!important;flex-direction:column!important}.dn-simple-ai-status{justify-content:flex-start!important}}
@media(max-width:620px){.dn-final-big,.dn-profit-grid{grid-template-columns:1fr!important}}


/* ===== DealerNexus AI Final Structure V3 targeted revamp ===== */
#dnAiCommandDashboard{display:none!important;}
.predictive-approval-panel,#predictiveApprovalPanel,#dnAiDealCommandCenter{display:none!important;}
.dn-simple-ai-shell{margin:18px 0 22px;border:1px solid rgba(56,189,248,.28);background:linear-gradient(135deg,rgba(2,6,23,.98),rgba(15,23,42,.94));border-radius:24px;box-shadow:0 24px 70px rgba(0,0,0,.36), inset 0 1px rgba(255,255,255,.06);overflow:hidden;color:#e5f4ff;}
.dn-simple-ai-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px 18px;cursor:pointer;background:linear-gradient(90deg,rgba(14,165,233,.18),rgba(99,102,241,.08),rgba(34,197,94,.06));}
.dn-simple-ai-title{display:flex;align-items:center;gap:13px}.dn-simple-ai-title h2{margin:0;font-size:20px;letter-spacing:-.02em}.dn-simple-ai-title p{margin:3px 0 0;color:#93a4b8;font-size:13px}.dn-simple-ai-orb{width:42px;height:42px;border-radius:16px;background:radial-gradient(circle at 35% 20%,#67e8f9,#2563eb 45%,#0f172a 78%);display:grid;place-items:center;font-weight:900;box-shadow:0 0 28px rgba(56,189,248,.45)}
.dn-simple-ai-status{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.dn-simple-ai-pill{border:1px solid rgba(148,163,184,.25);background:rgba(15,23,42,.65);padding:8px 10px;border-radius:999px;font-size:12px;color:#b9c6d8}.dn-simple-ai-pill strong{color:#fff}.dn-simple-ai-toggle,.dn-simple-ai-secondary,.dn-simple-ai-primary{border:none;border-radius:14px;padding:10px 13px;font-weight:800;cursor:pointer}.dn-simple-ai-toggle,.dn-simple-ai-secondary{background:rgba(255,255,255,.08);color:#e5f4ff;border:1px solid rgba(255,255,255,.12)}.dn-simple-ai-primary{background:linear-gradient(135deg,#06b6d4,#2563eb);color:white;box-shadow:0 12px 30px rgba(37,99,235,.25)}
.dn-simple-ai-body{padding:17px;display:block}.dn-simple-ai-shell.is-collapsed .dn-simple-ai-body{display:none}.dn-ai-required-row{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}.dn-ai-required-row label{font-size:12px;color:#93a4b8;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.dn-ai-required-row input,.dn-ai-required-row select{width:100%;margin-top:6px;background:rgba(15,23,42,.9);border:1px solid rgba(148,163,184,.28);color:#f8fafc;border-radius:13px;padding:10px 11px;outline:none}.dn-ai-required-row input:focus,.dn-ai-required-row select:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.13)}
.dn-ai-inventory-mode-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}.dn-ai-check{display:flex;gap:8px;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);padding:10px 12px;border-radius:14px;color:#dbeafe;font-size:13px}.dn-ai-alert{background:rgba(14,165,233,.1);border:1px solid rgba(14,165,233,.24);color:#bae6fd;border-radius:16px;padding:11px 13px;margin:10px 0 14px;font-weight:700}.dn-simple-ai-needs-input .dn-ai-alert{background:rgba(239,68,68,.12);border-color:rgba(239,68,68,.35);color:#fecaca}
.dn-ai-top-grid{display:grid;grid-template-columns:210px 1fr;gap:16px;align-items:stretch}.dn-ai-confidence-wrap,.dn-ai-final-summary,.dn-final-card{background:rgba(15,23,42,.72);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:16px}.dn-ai-confidence-wrap{display:grid;place-items:center}.dn-ai-confidence-circle{--score:0;width:142px;height:142px;border-radius:50%;display:grid;place-items:center;position:relative;background:conic-gradient(#38bdf8 calc(var(--score)*1%),rgba(51,65,85,.85) 0);box-shadow:0 0 35px rgba(56,189,248,.16)}.dn-ai-confidence-circle:after{content:"";position:absolute;inset:12px;border-radius:50%;background:#07111f;border:1px solid rgba(255,255,255,.08)}.dn-ai-confidence-circle strong,.dn-ai-confidence-circle span{position:relative;z-index:1}.dn-ai-confidence-circle strong{font-size:30px}.dn-ai-confidence-circle span{font-size:11px;color:#94a3b8;text-transform:uppercase;font-weight:900}.dn-ai-confidence-circle.high{background:conic-gradient(#22c55e calc(var(--score)*1%),rgba(51,65,85,.85) 0)}.dn-ai-confidence-circle.mid{background:conic-gradient(#38bdf8 calc(var(--score)*1%),rgba(51,65,85,.85) 0)}.dn-ai-confidence-circle.low{background:conic-gradient(#f97316 calc(var(--score)*1%),rgba(51,65,85,.85) 0)}
.dn-ai-final-summary h3,.dn-final-card h3{margin:0 0 12px;font-size:15px}.dn-final-big{display:grid;grid-template-columns:repeat(3,minmax(120px,1fr));gap:10px}.dn-final-metric,.dn-profit-grid div{background:rgba(2,6,23,.52);border:1px solid rgba(148,163,184,.14);border-radius:15px;padding:11px}.dn-final-metric span,.dn-profit-grid span{display:block;color:#94a3b8;font-size:11px;text-transform:uppercase;font-weight:900}.dn-final-metric b,.dn-profit-grid b{display:block;margin-top:3px;color:#fff;font-size:16px}.dn-simple-ai-actions{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}.dn-final-structure{display:grid;grid-template-columns:1.25fr .75fr;gap:14px;margin-top:14px}.dn-profit-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dn-ai-ready-box{margin-top:12px;padding:13px;border-radius:16px;background:rgba(6,182,212,.09);border:1px solid rgba(6,182,212,.18);color:#c7d2fe}.dn-simple-ai-list{display:grid;gap:8px}.dn-simple-ai-list div{display:flex;justify-content:space-between;gap:10px;background:rgba(2,6,23,.42);border:1px solid rgba(148,163,184,.13);border-radius:13px;padding:10px}.dn-simple-ai-list b{color:#fff}.dn-simple-ai-list span{color:#a9b8cc;font-size:12px;text-align:right}.dn-simple-ai-loading{opacity:.72;pointer-events:none}.dn-simple-ai-loading .dn-simple-ai-head{position:relative}.dn-simple-ai-loading .dn-simple-ai-head:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,#38bdf8,transparent);animation:dnAiScan 1s linear infinite}@keyframes dnAiScan{from{transform:translateX(-50%)}to{transform:translateX(50%)}}
@media(max-width:900px){.dn-ai-required-row,.dn-ai-top-grid,.dn-final-structure{grid-template-columns:1fr}.dn-final-big{grid-template-columns:1fr 1fr}.dn-simple-ai-head{align-items:flex-start;flex-direction:column}}


/* ===== DealerNexus AI Final Structure V4 polish ===== */
.dn-ai-source-compact{display:grid;grid-template-columns:minmax(260px,1fr) auto;gap:12px;align-items:end;margin:12px 0 10px!important}
.dn-ai-source-compact label{display:grid;gap:7px;color:#cfe3ff;font-weight:900;font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.dn-ai-source-compact select{height:46px;border-radius:16px;border:1px solid rgba(59,130,246,.36);background:rgba(5,13,30,.88);color:#eaf4ff;padding:0 14px;font-weight:900;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}
.dn-ai-inventory-mode-row{display:none!important}
.dn-ai-confidence-circle{display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;text-align:center!important;overflow:hidden!important}
.dn-ai-confidence-circle strong{display:block!important;width:100%!important;text-align:center!important;margin:0!important;line-height:1.05!important;font-variant-numeric:tabular-nums!important}
.dn-ai-confidence-circle span{display:block!important;width:100%!important;text-align:center!important;margin-top:5px!important;line-height:1.1!important}
.dn-final-vehicle-used{grid-column:span 2;background:linear-gradient(135deg,rgba(14,165,233,.16),rgba(34,197,94,.10))!important;border-color:rgba(56,189,248,.28)!important}
.dn-lender-row{background:rgba(2,8,23,.48);border:1px solid rgba(148,163,184,.14);border-radius:16px;padding:10px 12px;margin-bottom:10px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.dn-lender-line{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#dbeafe;font-weight:900}
.dn-lender-line span{color:#a8c7ee;font-size:12px;white-space:nowrap}.dn-lender-bar{height:9px;border-radius:999px;background:rgba(51,65,85,.9);overflow:hidden;margin-top:9px;border:1px solid rgba(255,255,255,.06)}
.dn-lender-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ef4444,#f59e0b,#22c55e);box-shadow:0 0 18px rgba(34,197,94,.24)}
.dn-lender-row.good .dn-lender-line b{color:#bbf7d0}.dn-lender-row.workable .dn-lender-line b{color:#bae6fd}.dn-lender-row.risk .dn-lender-line b{color:#fed7aa}
.dn-simple-ai-shell{border-color:rgba(56,189,248,.28)!important;box-shadow:0 20px 60px rgba(0,0,0,.36),0 0 0 1px rgba(255,255,255,.04) inset!important}.dn-simple-ai-head{background:linear-gradient(135deg,rgba(15,23,42,.96),rgba(8,47,73,.84))!important}
.dn-simple-ai-primary{box-shadow:0 12px 34px rgba(14,165,233,.24)!important}.dn-simple-ai-secondary{transition:.18s ease!important}.dn-simple-ai-secondary:hover{transform:translateY(-1px);border-color:rgba(125,211,252,.7)!important;color:#fff!important}
@media(max-width:900px){.dn-ai-source-compact{grid-template-columns:1fr}.dn-final-vehicle-used{grid-column:auto}}


/* ===== DealerNexus AI Training Center V5 ===== */
.dn-ai-training-v5{position:relative;overflow:hidden;border-color:rgba(56,189,248,.28)!important;background:radial-gradient(circle at 0 0,rgba(37,99,235,.24),transparent 34%),linear-gradient(180deg,rgba(15,23,42,.96),rgba(2,6,23,.9))!important;}
.dn-ai-training-v5:before{content:"";position:absolute;inset:-1px;pointer-events:none;background:linear-gradient(120deg,transparent,rgba(56,189,248,.12),transparent);opacity:.7;}
.dn-ai-training-v5>*{position:relative;z-index:1;}
.dn-training-stats-v5{grid-template-columns:repeat(4,minmax(0,1fr));}
.dn-ai-training-block{border:1px solid rgba(148,163,184,.18);background:rgba(15,23,42,.58);border-radius:22px;padding:16px;margin:16px 0;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.dn-ai-training-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.dn-ai-training-title b{display:block;color:#fff;font-size:16px}.dn-ai-training-title span{display:block;color:#93a4bb;font-size:12px;line-height:1.45;margin-top:3px}.dn-lender-guide-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.dn-lender-guide-card{border:1px solid rgba(56,189,248,.18);background:linear-gradient(180deg,rgba(30,41,59,.92),rgba(15,23,42,.78));border-radius:18px;padding:13px;display:grid;gap:10px;min-height:172px}.dn-lender-guide-head{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center}.dn-lender-guide-head span{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#2563eb,#06b6d4);color:#fff;font-size:11px;font-weight:1000;box-shadow:0 12px 24px rgba(37,99,235,.25)}.dn-lender-guide-head b{color:#fff;font-size:13px;line-height:1.15}.dn-lender-guide-head small{grid-column:2;color:#94a3b8;font-size:11px;margin-top:-6px}.dn-lender-guide-card input,.dn-package-trainer input,.dn-package-trainer select{width:100%;border:1px solid rgba(255,255,255,.12);background:rgba(2,6,23,.55);color:#dbeafe;border-radius:12px;padding:9px;font-size:12px}.dn-lender-guide-card button,.dn-package-trainer button{border:0;border-radius:14px;background:linear-gradient(135deg,#2563eb,#06b6d4);color:white;font-weight:1000;padding:11px 12px;cursor:pointer;box-shadow:0 14px 30px rgba(37,99,235,.22)}.dn-package-trainer{display:grid;grid-template-columns:1fr 1fr 1.4fr auto;gap:12px;align-items:end}.dn-package-trainer label{display:block;color:#cbd5e1!important;font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px}.dn-training-result{border:1px dashed rgba(56,189,248,.25);border-radius:16px;background:rgba(2,6,23,.48);color:#bfdbfe;padding:12px;margin-top:12px;font-weight:800;font-size:13px}.dn-guide-ready{color:#86efac!important}.dn-guide-missing{color:#fbbf24!important}.dn-package-ok{color:#86efac}.dn-package-error{color:#fecaca}@media(max-width:1100px){.dn-lender-guide-grid{grid-template-columns:repeat(2,1fr)}.dn-package-trainer{grid-template-columns:1fr 1fr}}@media(max-width:680px){.dn-training-stats-v5,.dn-lender-guide-grid,.dn-package-trainer{grid-template-columns:1fr}}

/* ===== DealerNexus AI Training Memory V6 ===== */
.dn-ai-training-v5 .dn-training-result small{display:block;margin-top:8px;color:#a9d7ff;font-weight:700;line-height:1.45}.dn-ai-training-v5 .dn-guide-ready{color:#7fffd4!important}.dn-ai-training-v5 .dn-guide-missing{color:#ffb4b4!important}.dn-lender-guide-card{position:relative;overflow:hidden}.dn-lender-guide-card:after{content:"DB MEMORY";position:absolute;right:12px;top:12px;font-size:10px;letter-spacing:.12em;color:rgba(125,211,252,.45);font-weight:900}.dn-package-ok{border-color:rgba(34,197,94,.45)!important;background:linear-gradient(135deg,rgba(14,165,233,.13),rgba(34,197,94,.10))!important}.dn-package-error{border-color:rgba(248,113,113,.55)!important;background:rgba(127,29,29,.18)!important}.dn-ai-training-title span{max-width:980px}.dn-training-stats-v5 div{box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}


/* ===== DealerNexus AI Deal Structure V7 Premium Input + Deal Desk ===== */
.dn-ai-input-card{margin:0 0 14px!important;border:1px solid rgba(56,189,248,.20)!important;background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(2,6,23,.72))!important;border-radius:22px!important;padding:16px!important;box-shadow:0 18px 42px rgba(0,0,0,.25)!important}
.dn-ai-input-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;margin-bottom:14px!important}.dn-ai-input-head h3{margin:0!important;color:#eaf6ff!important;font-size:18px!important;letter-spacing:.02em!important}.dn-ai-input-head p{margin:4px 0 0!important;color:#8fb3cc!important;font-size:12px!important}.dn-ai-input-badge{font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.08em!important;border:1px solid rgba(56,189,248,.35)!important;background:rgba(14,165,233,.12)!important;color:#bdeaff!important;border-radius:999px!important;padding:7px 10px!important}
.dn-ai-picker-grid{display:grid!important;grid-template-columns:minmax(260px,1.1fr) minmax(320px,1.4fr) minmax(190px,.75fr) minmax(220px,.85fr)!important;gap:12px!important;align-items:stretch!important}.dn-ai-field-block,.dn-ai-number-card{display:block!important;border:1px solid rgba(148,163,184,.16)!important;background:rgba(2,6,23,.46)!important;border-radius:18px!important;padding:13px!important}.dn-ai-field-title,.dn-ai-number-card{color:#dbeafe!important;font-size:12px!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.06em!important}.dn-ai-chip-grid{margin-top:9px!important;display:flex!important;flex-wrap:wrap!important;gap:8px!important}.dn-ai-chip-grid label{cursor:pointer!important;margin:0!important}.dn-ai-chip-grid input{position:absolute!important;opacity:0!important;pointer-events:none!important}.dn-ai-chip-grid span{display:inline-flex!important;align-items:center!important;justify-content:center!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.25)!important;background:rgba(15,23,42,.78)!important;color:#cbd5e1!important;font-size:12px!important;font-weight:900!important;padding:9px 12px!important;transition:.18s ease!important}.dn-ai-chip-grid input:checked+span{border-color:rgba(56,189,248,.9)!important;background:linear-gradient(135deg,rgba(14,165,233,.35),rgba(37,99,235,.32))!important;color:#fff!important;box-shadow:0 0 0 3px rgba(56,189,248,.13)!important}.dn-ai-number-card input{width:100%!important;margin-top:10px!important;background:rgba(15,23,42,.88)!important;border:1px solid rgba(148,163,184,.28)!important;color:#f8fafc!important;border-radius:14px!important;padding:12px!important;outline:none!important}.dn-ai-number-card small{display:block!important;margin-top:7px!important;color:#8fa6bc!important;font-size:11px!important;text-transform:none!important;letter-spacing:0!important;font-weight:700!important}.dn-ai-number-card input:focus{border-color:#38bdf8!important;box-shadow:0 0 0 3px rgba(56,189,248,.14)!important}.dn-ai-why-box{margin-top:12px!important;border:1px solid rgba(34,197,94,.18)!important;background:linear-gradient(135deg,rgba(20,83,45,.20),rgba(15,23,42,.56))!important;border-radius:16px!important;padding:12px!important}.dn-ai-why-box h4{margin:0 0 6px!important;color:#bbf7d0!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:.06em!important}.dn-ai-why-box p{margin:0!important;color:#dff7e8!important;font-size:13px!important;line-height:1.45!important}.dn-deal-desk-panel{margin-top:14px!important;border:1px solid rgba(56,189,248,.18)!important;background:rgba(2,6,23,.35)!important;border-radius:16px!important;padding:12px!important}.dn-deal-desk-head{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;margin-bottom:9px!important}.dn-deal-desk-head h4{margin:0!important;color:#e0f2fe!important;font-size:13px!important;text-transform:uppercase!important;letter-spacing:.07em!important}.dn-deal-desk-head span{color:#93c5fd!important;font-size:11px!important;font-weight:900!important}.dn-deal-desk-table{display:grid!important;gap:6px!important}.dn-deal-desk-row{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:8px!important;align-items:center!important;border:1px solid rgba(148,163,184,.13)!important;background:rgba(15,23,42,.55)!important;border-radius:12px!important;padding:8px 9px!important;color:#dbeafe!important;font-size:12px!important;font-weight:800!important}.dn-deal-desk-row.head{background:transparent!important;border-color:transparent!important;color:#93a4b8!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-size:10px!important;padding-bottom:0!important}.dn-deal-desk-row.best{border-color:rgba(34,197,94,.45)!important;background:rgba(34,197,94,.12)!important}.dn-deal-desk-row.warn{border-color:rgba(245,158,11,.35)!important;background:rgba(245,158,11,.09)!important}.dn-deal-desk-empty{color:#93a4b8!important;font-size:12px!important;border:1px dashed rgba(148,163,184,.25)!important;border-radius:12px!important;padding:12px!important;text-align:center!important}.dn-simple-ai-needs-input .dn-ai-input-card{border-color:rgba(245,158,11,.55)!important;box-shadow:0 0 0 3px rgba(245,158,11,.10)!important}
@media(max-width:1200px){.dn-ai-picker-grid{grid-template-columns:1fr 1fr!important}}@media(max-width:760px){.dn-ai-picker-grid{grid-template-columns:1fr!important}.dn-deal-desk-row{grid-template-columns:repeat(2,1fr)!important}}

/* ===== DealerNexus AI Deal Structure V8 refinements ===== */
.dn-deal-desk-row{grid-template-columns:repeat(5,1fr)!important;text-align:left!important;width:100%!important;cursor:pointer!important;font-family:inherit!important}
.dn-deal-desk-row:not(.head):hover{transform:translateY(-1px)!important;border-color:rgba(56,189,248,.55)!important;box-shadow:0 10px 22px rgba(2,6,23,.28),0 0 0 3px rgba(56,189,248,.10)!important}
.dn-deal-desk-row.head{cursor:default!important}
.dn-ai-ready-box small{display:block!important;margin-top:8px!important;color:#bfdbfe!important;font-weight:800!important;line-height:1.45!important}
.dn-simple-ai-primary{box-shadow:0 14px 32px rgba(14,165,233,.20)!important}
.dn-final-vehicle-used b{white-space:normal!important;line-height:1.25!important}
@media(max-width:760px){.dn-deal-desk-row{grid-template-columns:repeat(2,1fr)!important}.dn-deal-desk-row.head{display:none!important}}


/* ===== DealerNexus AI V9 decline + deal desk fixes ===== */
.dn-ai-decline-bar{display:none;margin:14px 0;padding:14px 16px;border:1px solid rgba(255,67,67,.55);border-radius:18px;background:linear-gradient(135deg,rgba(185,28,28,.95),rgba(127,29,29,.82));box-shadow:0 18px 42px rgba(127,29,29,.28);color:#fff;letter-spacing:.01em}
.dn-ai-decline-bar b{display:inline-flex;align-items:center;justify-content:center;margin-right:12px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.18);font-weight:900;font-size:12px;letter-spacing:.12em}
.dn-ai-decline-bar span{font-weight:700;line-height:1.35}
.dn-simple-ai-shell.dn-ai-declined{border-color:rgba(255,67,67,.35);box-shadow:0 18px 70px rgba(127,29,29,.18)}
.dn-ai-confidence-circle.declined{background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.15),rgba(185,28,28,.52) 54%,rgba(127,29,29,.88));border-color:rgba(255,110,110,.68);color:#fff}
.dn-ai-confidence-circle.declined strong{font-size:28px;line-height:1;text-align:center;width:100%;display:block}
.dn-deal-desk-row{cursor:pointer;transition:transform .14s ease, box-shadow .14s ease, border-color .14s ease}
.dn-deal-desk-row:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(0,0,0,.22);border-color:rgba(49,185,255,.45)}
.dn-deal-desk-empty.decline{border:1px solid rgba(255,67,67,.35);background:rgba(127,29,29,.18);color:#fecaca;border-radius:14px;padding:12px 14px;font-weight:800}
.dn-lender-row.risk .dn-lender-bar i{background:linear-gradient(90deg,#ef4444,#f97316)}
.dn-lender-row.workable .dn-lender-bar i{background:linear-gradient(90deg,#f59e0b,#22c55e)}
.dn-lender-row.good .dn-lender-bar i{background:linear-gradient(90deg,#22c55e,#06b6d4)}

/* ===== DealerNexus AI Deal Structure V11 polish ===== */
.dn-ai-final-summary{border:1px solid rgba(56,189,248,.16)!important;background:linear-gradient(135deg,rgba(2,6,23,.42),rgba(15,23,42,.58))!important;border-radius:22px!important;padding:14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
.dn-ai-decision-summary{margin-top:12px!important;background:linear-gradient(135deg,rgba(6,182,212,.13),rgba(34,197,94,.10))!important;border-color:rgba(56,189,248,.26)!important;color:#dff7ff!important}
.dn-ai-decision-summary b{display:block!important;color:#fff!important;font-size:13px!important;margin-bottom:6px!important}
.dn-ai-decision-summary span{display:block!important;color:#c7f9ff!important;font-weight:800!important;line-height:1.42!important}
.dn-ai-why-box-top{margin-top:10px!important;background:linear-gradient(135deg,rgba(20,83,45,.24),rgba(8,47,73,.30))!important;border-color:rgba(34,197,94,.24)!important}
.dn-simple-ai-submit{display:none;align-items:center;justify-content:center;border:0!important;border-radius:14px!important;padding:12px 16px!important;font-weight:1000!important;cursor:pointer!important;background:linear-gradient(135deg,#22c55e,#06b6d4)!important;color:#052e16!important;box-shadow:0 14px 32px rgba(34,197,94,.24)!important;text-transform:uppercase;letter-spacing:.03em}
.dn-simple-ai-submit:hover{transform:translateY(-1px);filter:brightness(1.04)}
.dn-deal-desk-row.active{border-color:rgba(56,189,248,.92)!important;background:linear-gradient(135deg,rgba(14,165,233,.25),rgba(34,197,94,.14))!important;box-shadow:0 0 0 3px rgba(56,189,248,.16),0 14px 30px rgba(2,6,23,.30)!important}
.dn-lender-row.decline{border-color:rgba(239,68,68,.48)!important;background:linear-gradient(135deg,rgba(127,29,29,.34),rgba(2,6,23,.50))!important}
.dn-lender-row.decline .dn-lender-line b{color:#fecaca!important}.dn-lender-row.decline .dn-lender-line span{color:#fecaca!important;font-weight:1000!important;background:rgba(239,68,68,.16);border:1px solid rgba(239,68,68,.28);border-radius:999px;padding:3px 8px}
.dn-lender-row.decline .dn-lender-bar i{background:linear-gradient(90deg,#991b1b,#ef4444)!important}
.dn-lender-row.good{border-color:rgba(34,197,94,.38)!important}.dn-lender-row.workable{border-color:rgba(245,158,11,.36)!important}.dn-lender-row.risk{border-color:rgba(249,115,22,.36)!important}
.dn-final-card .dn-ai-ready-box:empty,.dn-final-card .dn-ai-why-box:empty{display:none!important}
@media(max-width:760px){.dn-simple-ai-submit{width:100%}}

/* AI Training Center revamp: per-lender stats grid + warning state */
.dn-training-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:10px}
.dn-stat-pill{background:rgba(15,23,42,.55);border:1px solid rgba(103,232,249,.18);border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}
.dn-stat-pill span{color:#94a3b8;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.dn-stat-pill b{color:#e2e8f0;font-size:18px;font-weight:800}

/* AI Deal Structuring: Credit History Impact section */
.dn-credit-impact-box{margin-top:8px}
.dn-credit-impact-list{margin:6px 0 0 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:4px 14px}
.dn-credit-impact-list li{font-size:12px;line-height:1.45;padding:2px 0;border-left:2px solid rgba(148,163,184,.3);padding-left:8px}
.dn-credit-impact-pos{border-left-color:rgba(34,197,94,.6)!important;color:#bbf7d0}
.dn-credit-impact-neg{border-left-color:rgba(239,68,68,.6)!important;color:#fecaca}
.dn-credit-impact-flat{color:#cbd5e1}
.dn-credit-impact-delta{color:#94a3b8;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.dn-credit-impact-warn{color:#fbbf24}

/* AI Deal Structuring: active strategy button state */
.dn-simple-ai-secondary.dn-strategy-active,
#dnSimpleBuildBtn.dn-strategy-active{
  background:linear-gradient(135deg, rgba(34,197,94,.85) 0%, rgba(16,185,129,.85) 100%) !important;
  color:#0f172a !important; border-color:rgba(34,197,94,.6) !important;
  box-shadow:0 0 0 2px rgba(34,197,94,.35), 0 4px 16px rgba(16,185,129,.25) !important;
}

/* Per-lender decline reason inline below score bar */
.dn-lender-decline-reason{
  font-size:11px;line-height:1.4;color:#fecaca;margin-top:6px;padding:6px 8px;
  background:rgba(239,68,68,.10);border-left:2px solid rgba(239,68,68,.55);border-radius:4px;
}
.dn-lender-row.good .dn-lender-decline-reason,
.dn-lender-row.workable .dn-lender-decline-reason{display:none}

/* AI Decision Center: lender comparison + fix actions + vehicle picks + guideline rules */
.dn-decision-center{display:flex;flex-direction:column;gap:12px;margin-top:10px}
.dn-decision-section{background:rgba(15,23,42,.55);border:1px solid rgba(103,232,249,.18);border-radius:10px;padding:12px}
.dn-decision-section > b{display:block;color:#67e8f9;font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-weight:800}
.dn-rules-pills{display:flex;flex-wrap:wrap;gap:6px}
.dn-rule-pill{background:rgba(103,232,249,.12);border:1px solid rgba(103,232,249,.3);color:#cbd5e1;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600}
.dn-lender-table-wrap{overflow-x:auto}
.dn-lender-table{width:100%;border-collapse:collapse;font-size:12px}
.dn-lender-table th{background:rgba(103,232,249,.10);color:#94a3b8;text-align:left;padding:6px 8px;font-size:11px;text-transform:uppercase;font-weight:700;letter-spacing:.04em;border-bottom:1px solid rgba(103,232,249,.2)}
.dn-lender-table td{padding:7px 8px;border-bottom:1px solid rgba(148,163,184,.12);color:#cbd5e1;vertical-align:top}
.dn-lender-table tr.dn-cell-approve td{background:rgba(34,197,94,.05)}
.dn-lender-table tr.dn-cell-conditional td{background:rgba(245,158,11,.05)}
.dn-lender-table tr.dn-cell-decline td{background:rgba(239,68,68,.04)}
.dn-status-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10px;font-weight:800;letter-spacing:.04em}
.dn-status-pill.dn-cell-approve{background:rgba(34,197,94,.18);color:#bbf7d0}
.dn-status-pill.dn-cell-conditional{background:rgba(245,158,11,.18);color:#fde68a}
.dn-status-pill.dn-cell-decline{background:rgba(239,68,68,.18);color:#fecaca}
.dn-cell-na{color:#475569}
.dn-lender-table-reason{font-size:11px;color:#94a3b8}
.dn-fix-actions{margin:0;padding-left:18px;color:#e2e8f0;font-size:12px;line-height:1.6}
.dn-fix-actions li{margin:2px 0}
.dn-vehicle-picks-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}
.dn-vehicle-pick{background:rgba(15,23,42,.7);border:1px solid rgba(103,232,249,.2);border-radius:8px;padding:9px 11px}
.dn-vehicle-pick-label{color:#67e8f9;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.05em}
.dn-vehicle-pick-ymm{color:#e2e8f0;font-size:13px;font-weight:700;margin-top:3px}
.dn-vehicle-pick-meta{color:#94a3b8;font-size:11px;margin-top:4px}

/* Settings: per-lender extracted rules + edit panel */
.dn-guide-rules-box{margin-top:8px;padding-top:8px;border-top:1px dashed rgba(103,232,249,.2)}
.dn-guide-rules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:4px 12px;font-size:11px}
.dn-guide-rules-grid label{display:block;color:#94a3b8;font-size:10px;font-weight:700;text-transform:uppercase}
.dn-guide-rules-grid span{color:#e2e8f0;font-weight:700}
.dn-guide-edit-toggle{margin-top:8px;background:transparent;border:1px solid rgba(103,232,249,.35);color:#67e8f9;font-size:11px;padding:4px 10px;border-radius:6px;cursor:pointer}
.dn-guide-edit-panel{margin-top:8px;padding:10px;background:rgba(15,23,42,.55);border:1px solid rgba(103,232,249,.2);border-radius:8px}
.dn-guide-edit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}
.dn-guide-edit-grid label{display:block;color:#94a3b8;font-size:10px;font-weight:700;text-transform:uppercase;margin-bottom:2px}
.dn-guide-edit-grid input,.dn-guide-edit-grid select{width:100%;background:rgba(15,23,42,.8);border:1px solid rgba(103,232,249,.25);color:#e2e8f0;padding:5px 7px;border-radius:6px;font-size:12px}
.dn-guide-rules-save{margin-top:8px;background:linear-gradient(135deg,rgba(34,197,94,.85),rgba(16,185,129,.85));color:#0f172a;border:0;font-weight:800;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:11px}
.dn-guide-rules-status{margin-left:8px;color:#94a3b8;font-size:11px}

/* =====================================================================
   DealerNexus v1.0.30 — Decision Center, Version Banner, Paste-Guideline,
   Admin Debug. Added 2026-05-05. Matches the existing dark/modern theme.
   ===================================================================== */

/* Settings: app version banner */
.dn-version-banner{
  display:flex; gap:18px; align-items:stretch; margin-top:14px;
  padding:14px 18px; background:linear-gradient(135deg,#0b1120 0%,#0f172a 100%);
  border:1px solid #1e293b; border-radius:14px; color:#e2e8f0;
  box-shadow:0 8px 32px rgba(2,6,23,.45);
}
.dn-version-banner > div{ display:flex; flex-direction:column; min-width:160px; }
.dn-version-banner .dn-version-label{ color:#67e8f9; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.dn-version-banner strong{ font-size:18px; color:#f8fafc; margin-top:4px; }
.dn-version-banner small{ color:#94a3b8; font-size:11px; margin-top:2px; }
.dn-version-banner .dn-version-mismatch{ color:#fbbf24; }

/* Settings: paste guidelines (no-file) panel */
.dn-paste-guideline-panel{
  margin-top:14px; padding:16px; background:#0b1220; border:1px solid #1e293b;
  border-radius:12px; color:#e2e8f0;
}
.dn-paste-guideline-head{ display:flex; flex-direction:column; gap:4px; margin-bottom:10px; }
.dn-paste-guideline-head b{ color:#f1f5f9; font-size:14px; }
.dn-paste-guideline-head span{ color:#94a3b8; font-size:12px; }
.dn-paste-guideline-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.dn-paste-guideline-grid label{ display:flex; flex-direction:column; font-size:12px; color:#cbd5e1; gap:4px; }
.dn-paste-guideline-grid label small{ color:#64748b; font-weight:400; }
.dn-paste-guideline-grid input,
.dn-paste-guideline-grid select,
.dn-paste-guideline-grid textarea{
  background:#0f172a; border:1px solid #1e293b; color:#f1f5f9;
  border-radius:8px; padding:8px 10px; font:inherit;
}
.dn-paste-guideline-grid .dn-paste-guideline-text{ grid-column:1/-1; }
.dn-paste-guideline-actions{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin-top:10px; }
.dn-paste-guideline-actions button{
  background:#67e8f9; color:#082f49; border:none; border-radius:8px;
  font-weight:800; padding:8px 14px; cursor:pointer;
}
.dn-paste-guideline-actions .dn-training-secondary{ background:#1e293b; color:#cbd5e1; }
.dn-paste-guideline-actions #dnPasteGuideStatus{ color:#94a3b8; font-size:12px; }

/* Settings: admin/debug panel */
.dn-admin-debug-card{ background:#0b1220; }
.dn-admin-debug-grid{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr));
  gap:10px; margin-top:8px;
}
.dn-admin-debug-grid > div{
  background:#0f172a; border:1px solid #1e293b; border-radius:10px;
  padding:10px 12px; display:flex; flex-direction:column; gap:4px;
}
.dn-admin-debug-grid label{ color:#67e8f9; font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.dn-admin-debug-grid strong{ color:#f1f5f9; font-size:14px; word-break:break-all; }
.dn-admin-debug-actions{ display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
.dn-admin-debug-actions button{
  background:#67e8f9; color:#082f49; border:none; border-radius:8px;
  font-weight:800; padding:8px 14px; cursor:pointer;
}
.dn-admin-debug-actions .dn-training-secondary{ background:#1e293b; color:#cbd5e1; }
@media (max-width:1100px){ .dn-admin-debug-grid{ grid-template-columns:repeat(2, minmax(0,1fr)); } }
@media (max-width:640px){ .dn-admin-debug-grid{ grid-template-columns:1fr; } .dn-paste-guideline-grid{ grid-template-columns:1fr; } }

/* Deal Rehash: AI Decision Center */
.dn-decision-center{
  margin:18px 0; padding:18px 20px; border-radius:16px; color:#e2e8f0;
  background:linear-gradient(135deg,#06121f 0%,#0a1a2f 60%,#082f49 100%);
  border:1px solid #1e293b; box-shadow:0 16px 48px rgba(2,6,23,.55);
}
.dn-dc-head{ display:flex; gap:16px; justify-content:space-between; align-items:flex-start; margin-bottom:14px; }
.dn-dc-head h2{ margin:6px 0 4px; color:#f1f5f9; font-size:22px; }
.dn-dc-head p{ margin:0; color:#94a3b8; font-size:13px; max-width:640px; }
.dn-dc-chip{
  display:inline-block; padding:3px 10px; border-radius:999px;
  background:#67e8f9; color:#082f49; font-weight:800; font-size:11px;
  letter-spacing:.06em; text-transform:uppercase;
}
.dn-dc-version-pill{
  background:#0b1220; border:1px solid #1e293b; padding:8px 12px;
  border-radius:10px; font-size:11px; color:#94a3b8; letter-spacing:.04em;
}
.dn-dc-version-pill strong{ color:#67e8f9; margin-left:6px; }
.dn-dc-warn{
  background:#3f1d1d; color:#fecaca; border:1px solid #7f1d1d;
  padding:10px 14px; border-radius:10px; margin-bottom:12px; font-size:13px;
}
.dn-dc-warn a{ color:#fde68a; font-weight:800; }
.dn-dc-grid{
  display:grid; grid-template-columns:repeat(5, minmax(0,1fr)); gap:10px;
  margin-bottom:14px;
}
.dn-dc-tile{
  background:rgba(2,6,23,.55); border:1px solid #1e293b; border-radius:12px;
  padding:12px 14px; display:flex; flex-direction:column; gap:4px; min-height:84px;
}
.dn-dc-tile label{ color:#67e8f9; font-size:10px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.dn-dc-tile strong{ color:#f8fafc; font-size:18px; word-break:break-word; }
.dn-dc-tile small{ color:#64748b; font-size:11px; }
.dn-dc-tile-wide{ grid-column:span 2; }
@media (max-width:1280px){ .dn-dc-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); } .dn-dc-tile-wide{ grid-column:span 3; } }
@media (max-width:720px){ .dn-dc-grid{ grid-template-columns:1fr 1fr; } .dn-dc-tile-wide{ grid-column:span 2; } }
.dn-dc-actions{ display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.dn-dc-lender-pick{ display:flex; flex-direction:column; gap:4px; color:#94a3b8; font-size:11px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.dn-dc-lender-pick select{ background:#0b1220; border:1px solid #1e293b; color:#f1f5f9; border-radius:8px; padding:6px 10px; font:inherit; min-width:200px; text-transform:none; letter-spacing:0; font-weight:500; }
.dn-dc-actions button{
  border:none; border-radius:10px; padding:9px 14px; font-weight:800;
  cursor:pointer; font-size:13px;
}
.dn-dc-primary{ background:#67e8f9; color:#082f49; }
.dn-dc-secondary{ background:#1e293b; color:#cbd5e1; }
.dn-dc-status{ color:#94a3b8; font-size:12px; margin-left:auto; }

/* DealerNexus v1.0.30 — Decision Center extras (sub-sections populated by
   the existing AI render code in app.js around line 9500). */
.dn-dc-extras{ display:grid; grid-template-columns:1fr; gap:10px; margin-top:14px; }
.dn-decision-section{ background:rgba(2,6,23,.55); border:1px solid #1e293b; border-radius:12px; padding:10px 14px; color:#e2e8f0; }
.dn-decision-section b{ display:block; color:#67e8f9; font-size:11px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; margin-bottom:6px; }
.dn-rules-pills{ display:flex; flex-wrap:wrap; gap:6px; }
.dn-rule-pill{ background:#0f172a; border:1px solid #1e293b; color:#cbd5e1; border-radius:999px; padding:4px 10px; font-size:12px; }
.dn-fix-actions{ margin:0; padding-left:18px; color:#cbd5e1; }
.dn-fix-actions li{ margin:3px 0; font-size:13px; }
.dn-lender-table-wrap{ overflow-x:auto; }
.dn-lender-table{ width:100%; border-collapse:collapse; color:#cbd5e1; font-size:12px; }
.dn-lender-table th, .dn-lender-table td{ padding:6px 8px; border-bottom:1px solid #1e293b; text-align:left; }
.dn-lender-table th{ color:#67e8f9; text-transform:uppercase; font-size:10px; letter-spacing:.06em; }
.dn-vehicle-picks-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:8px; }
.dn-credit-impact-flat{ color:#94a3b8; font-size:12px; }
.dn-credit-impact-warn{ color:#fbbf24; font-size:12px; }
.dn-status-pill{ padding:2px 8px; border-radius:999px; font-weight:800; font-size:10px; }
.dn-cell-approve, .dn-cell-approve .dn-status-pill{ color:#bbf7d0; }
.dn-cell-conditional, .dn-cell-conditional .dn-status-pill{ color:#fde68a; }
.dn-cell-decline, .dn-cell-decline .dn-status-pill{ color:#fecaca; }
.dn-cell-na{ color:#475569; }
.dn-lender-table-reason{ color:#94a3b8; font-size:11px; }

/* =====================================================================
   DealerNexus v1.0.32 — Compact themed AI Decision Center revamp
   Scoped overrides to prevent old dashboard .dn-dc-grid rules from stretching
   the Deal Rehash AI panel vertically.
   ===================================================================== */
.deal-page #dnDecisionCenter.dn-dc-compact,
#dnDecisionCenter.dn-dc-compact{
  position:relative;
  margin:18px 0;
  padding:16px;
  border-radius:20px;
  color:var(--text,#f8fafc);
  background:
    radial-gradient(circle at 0% 0%, rgba(56,189,248,.18), transparent 34%),
    radial-gradient(circle at 100% 0%, rgba(37,99,235,.16), transparent 30%),
    linear-gradient(135deg, rgba(15,23,42,.94), rgba(17,24,39,.92));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 22px 70px rgba(0,0,0,.34);
  overflow:hidden;
}
#dnDecisionCenter.dn-dc-compact::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  background:linear-gradient(90deg,var(--accent,#2563eb),var(--accent-2,#38bdf8),rgba(34,197,94,.8));
  opacity:.9;
}
#dnDecisionCenter .dn-dc-topline{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  margin-bottom:12px;
}
#dnDecisionCenter .dn-dc-title-wrap h2{
  margin:4px 0 2px;
  font-size:20px;
  letter-spacing:-.03em;
  color:#f8fafc;
}
#dnDecisionCenter .dn-dc-title-wrap p{
  margin:0;
  color:#94a3b8;
  font-size:12.5px;
  line-height:1.35;
}
#dnDecisionCenter .dn-dc-chip{
  display:inline-flex;
  align-items:center;
  width:max-content;
  padding:4px 9px;
  border-radius:999px;
  background:rgba(56,189,248,.13);
  color:#7dd3fc;
  border:1px solid rgba(56,189,248,.28);
  font-size:10px;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
#dnDecisionCenter .dn-dc-head-right{
  display:flex;
  flex-direction:column;
  gap:8px;
  align-items:flex-end;
}
#dnDecisionCenter .dn-dc-version-pill{
  white-space:nowrap;
  background:rgba(2,6,23,.48);
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  padding:7px 10px;
  color:#94a3b8;
  font-size:11px;
}
#dnDecisionCenter .dn-dc-version-pill strong{ color:#67e8f9; }
#dnDecisionCenter .dn-dc-status{
  margin:0;
  color:#cbd5e1;
  background:rgba(34,197,94,.10);
  border:1px solid rgba(34,197,94,.20);
  border-radius:999px;
  padding:6px 10px;
  font-size:11px;
  max-width:280px;
  text-align:right;
}
#dnDecisionCenter .dn-dc-warn{
  background:rgba(127,29,29,.35);
  color:#fecaca;
  border:1px solid rgba(248,113,113,.32);
  border-radius:14px;
  padding:10px 12px;
  margin:0 0 12px;
  font-size:12px;
}
#dnDecisionCenter .dn-dc-action-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin:10px 0 12px;
  padding:10px;
  border-radius:16px;
  background:rgba(2,6,23,.30);
  border:1px solid rgba(255,255,255,.08);
}
#dnDecisionCenter .dn-dc-action-row button,
#dnDecisionCenter .dn-dc-actions button{
  min-height:34px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:12px;
  padding:8px 12px;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  transition:transform .16s ease, border-color .16s ease, filter .16s ease;
}
#dnDecisionCenter .dn-dc-action-row button:hover{ transform:translateY(-1px); filter:brightness(1.08); }
#dnDecisionCenter .dn-dc-primary{ background:linear-gradient(135deg,var(--accent,#2563eb),var(--accent-2,#38bdf8)); color:#fff; }
#dnDecisionCenter .dn-dc-secondary{ background:rgba(30,41,59,.72); color:#e2e8f0; }
#dnDecisionCenter .dn-dc-ghost{ background:rgba(15,23,42,.42); color:#94a3b8; }
#dnDecisionCenter .dn-dc-kpi-strip{
  display:grid;
  grid-template-columns:1.25fr .75fr 1fr 1fr 1fr;
  gap:9px;
  margin-bottom:12px;
}
#dnDecisionCenter .dn-dc-kpi,
#dnDecisionCenter .dn-dc-tile,
#dnDecisionCenter .dn-dc-structure-grid > div{
  background:rgba(15,23,42,.62);
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  padding:10px 11px;
  min-height:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
#dnDecisionCenter .dn-dc-kpi label,
#dnDecisionCenter .dn-dc-tile label,
#dnDecisionCenter .dn-dc-structure-grid label{
  display:block;
  color:#7dd3fc;
  font-size:9.5px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  margin-bottom:4px;
}
#dnDecisionCenter .dn-dc-kpi strong,
#dnDecisionCenter .dn-dc-tile strong,
#dnDecisionCenter .dn-dc-structure-grid strong{
  display:block;
  color:#f8fafc;
  font-size:15px;
  line-height:1.15;
  overflow-wrap:anywhere;
}
#dnDecisionCenter .dn-dc-kpi small,
#dnDecisionCenter .dn-dc-tile small{
  display:block;
  color:#94a3b8;
  font-size:10.5px;
  margin-top:3px;
}
#dnDecisionCenter .dn-dc-kpi-profit{
  background:linear-gradient(135deg,rgba(34,197,94,.13),rgba(15,23,42,.62));
  border-color:rgba(34,197,94,.28);
}
#dnDecisionCenter .dn-dc-main-grid{
  display:grid;
  grid-template-columns:1.12fr .88fr;
  gap:12px;
  align-items:start;
}
#dnDecisionCenter .dn-dc-card{
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  padding:12px;
  background:rgba(2,6,23,.30);
  box-shadow:none;
}
#dnDecisionCenter .dn-dc-card-headline,
#dnDecisionCenter .dn-dc-section-head{
  display:flex;
  align-items:center;
  gap:8px;
  margin:0 0 10px;
}
#dnDecisionCenter .dn-dc-card-headline span,
#dnDecisionCenter .dn-dc-section-head span,
#dnDecisionCenter .dn-dc-details summary span{
  width:24px;
  height:24px;
  border-radius:9px;
  display:grid;
  place-items:center;
  background:rgba(56,189,248,.14);
  border:1px solid rgba(56,189,248,.24);
  color:#67e8f9;
  font-size:11px;
  font-weight:950;
}
#dnDecisionCenter .dn-dc-card-headline h3,
#dnDecisionCenter .dn-dc-section-head h3{
  margin:0;
  color:#f8fafc;
  font-size:14px;
  letter-spacing:-.01em;
}
#dnDecisionCenter .dn-dc-mini-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#dnDecisionCenter .dn-dc-tile-wide{ grid-column:1/-1; }
#dnDecisionCenter .dn-dc-inputs-compact{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:10px;
}
#dnDecisionCenter .dn-dc-input-block,
#dnDecisionCenter .dn-dc-number-card{
  background:rgba(15,23,42,.48);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:10px;
  color:#cbd5e1;
  font-size:11px;
  font-weight:900;
}
#dnDecisionCenter .dn-dc-input-wide{ grid-column:1/-1; }
#dnDecisionCenter .dn-dc-input-title{
  display:block;
  color:#7dd3fc;
  font-size:9.5px;
  font-weight:950;
  letter-spacing:.07em;
  text-transform:uppercase;
  margin-bottom:7px;
}
#dnDecisionCenter .dn-dc-chip-grid{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
}
#dnDecisionCenter .dn-dc-chip-grid label{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.09);
  color:#cbd5e1;
  font-size:11px;
  font-weight:800;
}
#dnDecisionCenter .dn-dc-number-card input,
#dnDecisionCenter .dn-dc-number-card select{
  width:100%;
  margin-top:6px;
  background:rgba(2,6,23,.55);
  color:#f8fafc;
  border:1px solid rgba(255,255,255,.13);
  border-radius:10px;
  padding:8px 9px;
  font:inherit;
}
#dnDecisionCenter .dn-dc-number-card small{
  display:block;
  color:#64748b;
  font-size:10px;
  margin-top:5px;
}
#dnDecisionCenter .dn-dc-structure-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
#dnDecisionCenter .dn-dc-card-structure,
#dnDecisionCenter .dn-dc-card-vehicle{ align-self:stretch; }
#dnDecisionCenter .dn-dc-details{
  margin-top:12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(2,6,23,.22);
  overflow:hidden;
}
#dnDecisionCenter .dn-dc-details summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  gap:9px;
  padding:11px 12px;
  color:#e2e8f0;
  font-weight:950;
  font-size:13px;
}
#dnDecisionCenter .dn-dc-details summary::-webkit-details-marker{ display:none; }
#dnDecisionCenter .dn-dc-details summary::after{
  content:"Show / hide";
  margin-left:auto;
  color:#64748b;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
#dnDecisionCenter .dn-dc-detail-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 12px 12px;
}
#dnDecisionCenter .dn-decision-section{
  background:rgba(15,23,42,.55);
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  padding:11px;
  color:#e2e8f0;
}
#dnDecisionCenter .dn-decision-section > b{
  display:block;
  color:#7dd3fc;
  font-size:10px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:8px;
}
#dnDecisionCenter .dn-dc-guideline-row{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  margin-bottom:8px;
}
#dnDecisionCenter .dn-dc-guideline-row strong{ color:#f8fafc; }
#dnDecisionCenter .dn-dc-guideline-row small{ color:#94a3b8; }
#dnDecisionCenter .dn-lender-table th,
#dnDecisionCenter .dn-lender-table td{ padding:7px 8px; }
#dnDecisionCenter .dn-vehicle-picks-grid{ grid-template-columns:repeat(auto-fit,minmax(175px,1fr)); }
#dnDecisionCenter .dn-dc-engine-bridge{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
}
@media (max-width:1200px){
  #dnDecisionCenter .dn-dc-main-grid{ grid-template-columns:1fr; }
  #dnDecisionCenter .dn-dc-kpi-strip{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  #dnDecisionCenter .dn-dc-detail-grid{ grid-template-columns:1fr; }
}
@media (max-width:720px){
  #dnDecisionCenter .dn-dc-topline{ grid-template-columns:1fr; }
  #dnDecisionCenter .dn-dc-head-right{ align-items:flex-start; }
  #dnDecisionCenter .dn-dc-kpi-strip,
  #dnDecisionCenter .dn-dc-mini-grid,
  #dnDecisionCenter .dn-dc-inputs-compact,
  #dnDecisionCenter .dn-dc-structure-grid{ grid-template-columns:1fr; }
  #dnDecisionCenter .dn-dc-action-row button{ flex:1 1 160px; }
}

/* =====================================================================
   v1.0.33 — Adam-designed DealerNexus AI Decision Center
   Reverts the panel to the older DealerNexus command-card feel, removes
   light-blue typography, keeps text white, and compresses the layout.
   ===================================================================== */
#dnDecisionCenter.dn-ai-command-panel{
  margin:16px 0 20px;
  color:#fff;
}
#dnDecisionCenter .dn-ai-old-pro{
  margin:0!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 14% 0%, rgba(255,255,255,.08), transparent 25%),
    radial-gradient(circle at 100% 0%, rgba(148,163,184,.12), transparent 30%),
    linear-gradient(145deg, rgba(3,7,18,.98), rgba(15,23,42,.96) 52%, rgba(17,24,39,.97))!important;
  box-shadow:0 24px 70px rgba(0,0,0,.48), inset 0 1px 0 rgba(255,255,255,.08)!important;
  overflow:hidden!important;
  color:#fff!important;
}
#dnDecisionCenter .dn-simple-ai-head{
  padding:14px 16px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  background:linear-gradient(135deg, rgba(15,23,42,.98), rgba(31,41,55,.82))!important;
}
#dnDecisionCenter .dn-simple-ai-title h2{
  color:#fff!important;
  font-size:21px!important;
  letter-spacing:-.035em!important;
  margin:0!important;
}
#dnDecisionCenter .dn-simple-ai-title p{
  color:rgba(255,255,255,.68)!important;
  font-size:12.5px!important;
  margin:3px 0 0!important;
}
#dnDecisionCenter .dn-simple-ai-orb{
  background:linear-gradient(135deg,#111827,#374151)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.16)!important;
}
#dnDecisionCenter .dn-simple-ai-pill,
#dnDecisionCenter .dn-ai-status-pill{
  color:#fff!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
}
#dnDecisionCenter .dn-simple-ai-pill strong{color:#fff!important;}
#dnDecisionCenter .dn-ai-guideline-warn{
  margin:12px 14px 0!important;
  border-radius:14px!important;
  color:#fff!important;
  background:rgba(127,29,29,.34)!important;
  border:1px solid rgba(248,113,113,.30)!important;
}
#dnDecisionCenter .dn-ai-guideline-warn a{color:#fff!important;text-decoration:underline;}
#dnDecisionCenter .dn-ai-pro-body{
  display:grid;
  grid-template-columns:minmax(340px,.9fr) minmax(520px,1.5fr);
  gap:13px;
  padding:14px;
  align-items:start;
}
#dnDecisionCenter .dn-ai-left-stack,
#dnDecisionCenter .dn-ai-right-stack{
  display:flex;
  flex-direction:column;
  gap:10px;
}
#dnDecisionCenter .dn-ai-pro-card,
#dnDecisionCenter .dn-final-card,
#dnDecisionCenter .dn-ai-final-summary,
#dnDecisionCenter .dn-ai-confidence-wrap,
#dnDecisionCenter .dn-decision-section{
  background:rgba(255,255,255,.055)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  border-radius:18px!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
#dnDecisionCenter .dn-ai-input-head{margin-bottom:10px!important;}
#dnDecisionCenter .dn-ai-input-head h3,
#dnDecisionCenter .dn-final-card h3,
#dnDecisionCenter .dn-ai-final-summary h3,
#dnDecisionCenter .dn-decision-section>b,
#dnDecisionCenter .dn-ai-why-box h4{
  color:#fff!important;
}
#dnDecisionCenter .dn-ai-input-head p,
#dnDecisionCenter .dn-ai-ready-box span,
#dnDecisionCenter .dn-ai-ready-box small,
#dnDecisionCenter .dn-ai-why-box p,
#dnDecisionCenter .dn-final-metric span,
#dnDecisionCenter .dn-profit-grid span,
#dnDecisionCenter .dn-ai-micro-line span,
#dnDecisionCenter .dn-ai-guideline-mini span{
  color:rgba(255,255,255,.68)!important;
}
#dnDecisionCenter .dn-ai-input-badge,
#dnDecisionCenter .dn-ai-field-title{
  color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.12)!important;
}
#dnDecisionCenter .dn-ai-picker-grid-pro{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:9px!important;
}
#dnDecisionCenter .dn-ai-chip-grid{gap:6px!important;}
#dnDecisionCenter .dn-ai-chip-grid label{
  color:#fff!important;
  background:rgba(255,255,255,.07)!important;
  border:1px solid rgba(255,255,255,.12)!important;
}
#dnDecisionCenter .dn-ai-number-card,
#dnDecisionCenter .dn-ai-field-block{
  color:#fff!important;
  background:rgba(3,7,18,.35)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:14px!important;
}
#dnDecisionCenter input,
#dnDecisionCenter select{
  color:#fff!important;
  background:rgba(3,7,18,.62)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:12px!important;
}
#dnDecisionCenter input::placeholder{color:rgba(255,255,255,.48)!important;}
#dnDecisionCenter .dn-ai-source-select{grid-column:auto!important;}
#dnDecisionCenter .dn-ai-pro-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  margin:0!important;
}
#dnDecisionCenter .dn-ai-pro-actions button{
  min-height:38px!important;
  border-radius:13px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  color:#fff!important;
  font-weight:900!important;
  box-shadow:none!important;
}
#dnDecisionCenter .dn-ai-pro-actions .dn-simple-ai-primary{
  grid-column:1/-1!important;
  background:linear-gradient(135deg,#ffffff,#cbd5e1)!important;
  color:#020617!important;
}
#dnDecisionCenter .dn-ai-pro-actions .dn-simple-ai-secondary{
  background:rgba(255,255,255,.08)!important;
}
#dnDecisionCenter .dn-ai-clear-btn{background:rgba(127,29,29,.30)!important;}
#dnDecisionCenter #dnSimpleRunNote{
  color:#fff!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  margin:0!important;
  border-radius:14px!important;
}
#dnDecisionCenter .dn-ai-pro-top-grid{
  display:grid!important;
  grid-template-columns:170px minmax(0,1fr)!important;
  gap:12px!important;
  margin:0!important;
}
#dnDecisionCenter .dn-ai-confidence-wrap{
  padding:12px!important;
  align-items:center!important;
}
#dnDecisionCenter .dn-ai-confidence-circle{
  background:conic-gradient(from 180deg, #fff var(--score,0%), rgba(255,255,255,.12) 0)!important;
  box-shadow:0 16px 40px rgba(0,0,0,.32)!important;
}
#dnDecisionCenter .dn-ai-confidence-circle::before{background:#111827!important;}
#dnDecisionCenter .dn-ai-confidence-circle strong,
#dnDecisionCenter .dn-ai-confidence-circle span{color:#fff!important;}
#dnDecisionCenter .dn-ai-micro-line{
  width:100%;
  display:flex;
  justify-content:space-between;
  gap:8px;
  margin-top:7px;
  padding:7px 8px;
  border-radius:10px;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.08);
  font-size:11px;
}
#dnDecisionCenter .dn-ai-micro-line b{color:#fff!important;}
#dnDecisionCenter .dn-ai-summary-head{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:flex-start;
  margin-bottom:10px;
}
#dnDecisionCenter .dn-ai-summary-head span{
  color:#fff!important;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  padding:5px 8px;
  font-size:10px;
  font-weight:900;
}
#dnDecisionCenter .dn-final-big-pro,
#dnDecisionCenter .dn-final-big-small{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
}
#dnDecisionCenter .dn-final-metric,
#dnDecisionCenter .dn-profit-grid>div{
  background:rgba(3,7,18,.38)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:13px!important;
  padding:9px 10px!important;
}
#dnDecisionCenter .dn-final-metric b,
#dnDecisionCenter .dn-profit-grid b,
#dnDecisionCenter .dn-ai-ready-box b,
#dnDecisionCenter .dn-ai-guideline-mini b{
  color:#fff!important;
}
#dnDecisionCenter .dn-ai-ready-box,
#dnDecisionCenter .dn-ai-why-box,
#dnDecisionCenter .dn-ai-guideline-mini{
  background:rgba(3,7,18,.34)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  color:#fff!important;
}
#dnDecisionCenter .dn-ai-pro-bottom-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:13px;
  padding:0 14px 14px;
}
#dnDecisionCenter .dn-profit-grid-pro{
  margin-top:9px;
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
}
#dnDecisionCenter .dn-ai-details-pro{
  margin:0 14px 14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  background:rgba(255,255,255,.045);
  overflow:hidden;
}
#dnDecisionCenter .dn-ai-details-pro summary{
  color:#fff;
  cursor:pointer;
  padding:11px 13px;
  font-weight:900;
  list-style:none;
}
#dnDecisionCenter .dn-ai-details-pro summary::-webkit-details-marker{display:none;}
#dnDecisionCenter .dn-ai-detail-grid-pro{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:0 12px 12px;
}
#dnDecisionCenter .dn-dc-guideline-row strong,
#dnDecisionCenter .dn-dc-guideline-row small,
#dnDecisionCenter .dn-credit-impact-flat,
#dnDecisionCenter .dn-credit-impact-warn,
#dnDecisionCenter .dn-rules-pills span{
  color:#fff!important;
}
#dnDecisionCenter .dn-dc-compat-values,
#dnDecisionCenter .dn-dc-engine-buttons{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
}
@media (max-width:1280px){
  #dnDecisionCenter .dn-ai-pro-body,
  #dnDecisionCenter .dn-ai-pro-bottom-grid{grid-template-columns:1fr!important;}
}
@media (max-width:760px){
  #dnDecisionCenter .dn-simple-ai-head,
  #dnDecisionCenter .dn-ai-pro-top-grid,
  #dnDecisionCenter .dn-final-big-pro,
  #dnDecisionCenter .dn-final-big-small,
  #dnDecisionCenter .dn-profit-grid-pro,
  #dnDecisionCenter .dn-ai-detail-grid-pro,
  #dnDecisionCenter .dn-ai-pro-actions{grid-template-columns:1fr!important;}
  #dnDecisionCenter .dn-simple-ai-status{align-items:flex-start!important;}
}

/* ===== DealerNexus v1.0.35 — Adam-designed AI Decision Center cleanup ===== */
#dnDecisionCenter.dn-ai-command-panel,
#dnDecisionCenter .dn-simple-ai-shell{
  color:#f8fafc!important;
  background:linear-gradient(180deg,rgba(8,13,27,.98),rgba(5,10,22,.96))!important;
  border:1px solid rgba(148,163,184,.18)!important;
  border-radius:22px!important;
  box-shadow:0 18px 50px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.045)!important;
  overflow:hidden!important;
}
#dnDecisionCenter *,
#dnDecisionCenter *::before,
#dnDecisionCenter *::after{box-sizing:border-box;}
#dnDecisionCenter .dn-simple-ai-head{
  background:linear-gradient(135deg,rgba(15,23,42,.92),rgba(2,6,23,.86))!important;
  border-bottom:1px solid rgba(148,163,184,.14)!important;
  padding:16px 18px!important;
}
#dnDecisionCenter .dn-simple-ai-title h2,
#dnDecisionCenter .dn-final-card h3,
#dnDecisionCenter .dn-ai-final-summary h3,
#dnDecisionCenter .dn-ai-input-card h3{
  color:#fff!important;
  letter-spacing:-.02em!important;
}
#dnDecisionCenter .dn-simple-ai-title p,
#dnDecisionCenter .dn-ai-input-card p,
#dnDecisionCenter small,
#dnDecisionCenter .dn-ai-field-title,
#dnDecisionCenter .dn-final-metric span,
#dnDecisionCenter .dn-profit-grid span{
  color:rgba(226,232,240,.72)!important;
}
#dnDecisionCenter .dn-simple-ai-pill{
  color:#fff!important;
  background:rgba(15,23,42,.72)!important;
  border:1px solid rgba(148,163,184,.18)!important;
}
#dnDecisionCenter .dn-ai-pro-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:8px!important;
  margin:12px 0!important;
}
#dnDecisionCenter .dn-ai-pro-actions button,
#dnDecisionCenter .dn-simple-ai-primary,
#dnDecisionCenter .dn-simple-ai-secondary{
  border-radius:12px!important;
  min-height:38px!important;
  padding:0 14px!important;
  font-weight:900!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
#dnDecisionCenter .dn-simple-ai-primary{
  background:linear-gradient(135deg,#1d4ed8,#0f766e)!important;
  border:1px solid rgba(96,165,250,.28)!important;
  color:#fff!important;
}
#dnDecisionCenter .dn-simple-ai-secondary{
  background:rgba(15,23,42,.82)!important;
  border:1px solid rgba(148,163,184,.18)!important;
  color:#fff!important;
}
#dnDecisionCenter .dn-simple-ai-secondary:hover,
#dnDecisionCenter .dn-simple-ai-primary:hover{filter:brightness(1.08);transform:translateY(-1px);}
#dnDecisionCenter .dn-ai-alert{
  color:#f8fafc!important;
  background:rgba(14,116,144,.10)!important;
  border:1px solid rgba(56,189,248,.16)!important;
  border-radius:14px!important;
}
#dnDecisionCenter .dn-ai-pro-bottom-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(340px,.75fr)!important;
  gap:12px!important;
  padding:0 14px 12px!important;
}
#dnDecisionCenter .dn-final-card,
#dnDecisionCenter .dn-ai-input-card,
#dnDecisionCenter .dn-ai-final-summary,
#dnDecisionCenter .dn-ai-confidence-wrap{
  background:rgba(15,23,42,.44)!important;
  border:1px solid rgba(148,163,184,.14)!important;
  border-radius:18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
#dnDecisionCenter .dn-final-metric,
#dnDecisionCenter .dn-profit-grid>div{
  background:rgba(2,6,23,.50)!important;
  border:1px solid rgba(148,163,184,.12)!important;
  border-radius:14px!important;
}
#dnDecisionCenter .dn-final-metric b,
#dnDecisionCenter .dn-profit-grid b,
#dnDecisionCenter .dn-ai-ready-box b,
#dnDecisionCenter .dn-ai-why-box b,
#dnDecisionCenter .dn-ai-guideline-mini b{
  color:#fff!important;
}
#dnDecisionCenter .dn-ai-ready-box,
#dnDecisionCenter .dn-ai-why-box,
#dnDecisionCenter .dn-ai-guideline-mini{
  background:linear-gradient(135deg,rgba(6,78,59,.23),rgba(8,47,73,.18))!important;
  border:1px solid rgba(45,212,191,.15)!important;
  border-radius:16px!important;
  color:#f8fafc!important;
}
#dnDecisionCenter .dn-ai-advanced-shell{
  margin:0 14px 14px!important;
  border:1px solid rgba(148,163,184,.16)!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,rgba(15,23,42,.78),rgba(2,6,23,.72))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
#dnDecisionCenter .dn-ai-advanced-toggle{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:100%!important;
  border:0!important;
  outline:0!important;
  background:rgba(15,23,42,.78)!important;
  color:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:13px 16px!important;
  cursor:pointer!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  text-align:left!important;
}
#dnDecisionCenter .dn-ai-advanced-toggle span{color:#fff!important;font-size:14px!important;}
#dnDecisionCenter .dn-ai-advanced-toggle small{
  color:rgba(226,232,240,.68)!important;
  font-size:12px!important;
  font-weight:700!important;
  margin-left:auto!important;
}
#dnDecisionCenter .dn-ai-advanced-chevron{
  color:rgba(248,250,252,.72)!important;
  font-style:normal!important;
  transition:transform .18s ease!important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-chevron{transform:rotate(180deg)!important;}
#dnDecisionCenter .dn-ai-advanced-body{
  display:none!important;
  border-top:1px solid rgba(148,163,184,.12)!important;
  padding:14px!important;
  background:rgba(2,6,23,.45)!important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-body{display:block!important;}
#dnDecisionCenter .dn-ai-detail-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
#dnDecisionCenter .dn-ai-detail-card{
  border:1px solid rgba(148,163,184,.14)!important;
  border-radius:16px!important;
  background:rgba(15,23,42,.64)!important;
  padding:14px!important;
  min-height:92px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;
}
#dnDecisionCenter .dn-ai-detail-title{
  color:#fff!important;
  font-weight:900!important;
  font-size:12px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  margin-bottom:8px!important;
}
#dnDecisionCenter .dn-ai-detail-content,
#dnDecisionCenter .dn-ai-detail-content *,
#dnDecisionCenter .dn-rules-pills,
#dnDecisionCenter .dn-fix-actions,
#dnDecisionCenter .dn-credit-impact-flat{
  color:rgba(248,250,252,.84)!important;
  font-size:13px!important;
  line-height:1.45!important;
}
#dnDecisionCenter .dn-fix-actions{margin:0!important;padding-left:16px!important;}
#dnDecisionCenter .dn-dc-engine-buttons,
#dnDecisionCenter .dn-dc-engine-buttons *,
#dnDecisionCenter .dn-dc-compat-values{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
  position:absolute!important;
  left:-99999px!important;
  top:auto!important;
  width:0!important;
  height:0!important;
  max-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  opacity:0!important;
}
@media (max-width:1280px){
  #dnDecisionCenter .dn-ai-pro-bottom-grid{grid-template-columns:1fr!important;}
}
@media (max-width:900px){
  #dnDecisionCenter .dn-ai-detail-grid{grid-template-columns:1fr!important;}
  #dnDecisionCenter .dn-ai-advanced-toggle{flex-wrap:wrap!important;}
  #dnDecisionCenter .dn-ai-advanced-toggle small{margin-left:0!important;width:100%!important;}
  #dnDecisionCenter .dn-ai-pro-actions button{flex:1 1 180px!important;}
}

/* =====================================================================
   v1.0.36 — HARD UI OVERRIDE: DealerNexus AI Decision Center cleanup
   Purpose: force the advanced drawer, borders, inner spacing, and legacy
   engine controls to render correctly even if older CSS rules load first.
   ===================================================================== */
#dnDecisionCenter,
#dnDecisionCenter *{ box-sizing:border-box !important; }
#dnDecisionCenter.dn-ai-command-panel{
  margin:18px 0 24px !important;
  padding:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  border-radius:24px !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-ai-old-pro,
#dnDecisionCenter #dnSimpleAiPanel{
  overflow:hidden !important;
  border:1px solid rgba(148,163,184,.18) !important;
  border-radius:24px !important;
  background:linear-gradient(145deg, rgba(2,6,23,.98), rgba(15,23,42,.96) 52%, rgba(17,24,39,.96)) !important;
  box-shadow:0 22px 60px rgba(0,0,0,.46), inset 0 1px 0 rgba(255,255,255,.06) !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-simple-ai-head,
#dnDecisionCenter .dn-ai-pro-body,
#dnDecisionCenter .dn-ai-pro-bottom-grid,
#dnDecisionCenter .dn-decision-reasoning,
#dnDecisionCenter .dn-ai-advanced-shell,
#dnDecisionCenter .dn-simple-ai-actions,
#dnDecisionCenter #dnSimpleRunNote{ max-width:100% !important; }
#dnDecisionCenter .dn-ai-pro-body{ padding:16px !important; gap:14px !important; }
#dnDecisionCenter .dn-ai-pro-bottom-grid{ padding:0 16px 16px !important; gap:14px !important; }
#dnDecisionCenter .dn-final-card,
#dnDecisionCenter .dn-ai-final-summary,
#dnDecisionCenter .dn-ai-confidence-wrap,
#dnDecisionCenter .dn-decision-section,
#dnDecisionCenter .dn-ai-pro-card{
  border:1px solid rgba(148,163,184,.14) !important;
  background:rgba(15,23,42,.62) !important;
  border-radius:18px !important;
  color:#f8fafc !important;
  padding:14px !important;
}
#dnDecisionCenter .dn-final-metric,
#dnDecisionCenter .dn-profit-grid > div,
#dnDecisionCenter .dn-ai-ready-box,
#dnDecisionCenter .dn-ai-why-box{
  border:1px solid rgba(148,163,184,.13) !important;
  background:rgba(2,6,23,.58) !important;
  border-radius:15px !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-final-metric{ padding:13px 14px !important; min-height:58px !important; }
#dnDecisionCenter h2,
#dnDecisionCenter h3,
#dnDecisionCenter h4,
#dnDecisionCenter b,
#dnDecisionCenter strong,
#dnDecisionCenter .dn-final-metric b{ color:#ffffff !important; }
#dnDecisionCenter p,
#dnDecisionCenter small,
#dnDecisionCenter span,
#dnDecisionCenter label,
#dnDecisionCenter .dn-final-metric span{ color:rgba(248,250,252,.78) !important; }
#dnDecisionCenter .dn-simple-ai-actions,
#dnDecisionCenter .dn-ai-pro-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:10px !important;
  margin:0 !important;
  padding:0 !important;
}
#dnDecisionCenter .dn-simple-ai-actions button,
#dnDecisionCenter .dn-ai-pro-actions button{
  flex:0 0 auto !important;
  min-height:38px !important;
  padding:0 15px !important;
  border-radius:12px !important;
  border:1px solid rgba(148,163,184,.18) !important;
  background:rgba(15,23,42,.92) !important;
  color:#ffffff !important;
  font-weight:900 !important;
  box-shadow:none !important;
  white-space:nowrap !important;
}
#dnDecisionCenter .dn-simple-ai-actions .dn-simple-ai-primary,
#dnDecisionCenter .dn-ai-pro-actions .dn-simple-ai-primary,
#dnDecisionCenter #dnDcRunBtn{
  background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
  color:#ffffff !important;
  border-color:rgba(96,165,250,.42) !important;
}
/* Remove/neutralize every legacy engine button row that leaked into the UI. */
#dnDecisionCenter .dn-dc-engine-buttons,
#dnDecisionCenter .dn-dc-engine-buttons *,
#dnDecisionCenter [id="dnSimpleAiToggle"],
#dnDecisionCenter [id="dnSimpleBuildBtn"],
#dnDecisionCenter [id="dnSimpleSafeBtn"],
#dnDecisionCenter [id="dnSimpleLowDownBtn"],
#dnDecisionCenter [id="dnSubmitToLenderBtn"],
#dnDecisionCenter [id="dnSimpleChooseInventoryBtn"],
#dnDecisionCenter #dnIncomeUsedBox{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  height:0 !important;
  min-width:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
}
/* Advanced drawer: never let native details/default button styles leak in. */
#dnDecisionCenter .dn-ai-advanced-shell{
  display:block !important;
  margin:14px 16px 16px !important;
  border:1px solid rgba(148,163,184,.16) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.72)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
#dnDecisionCenter .dn-ai-advanced-toggle{
  appearance:none !important;
  -webkit-appearance:none !important;
  width:100% !important;
  border:0 !important;
  outline:none !important;
  background:rgba(15,23,42,.88) !important;
  color:#ffffff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:13px 16px !important;
  cursor:pointer !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
  border-radius:0 !important;
  box-shadow:none !important;
}
#dnDecisionCenter .dn-ai-advanced-toggle span:first-child{ color:#ffffff !important; font-size:14px !important; }
#dnDecisionCenter .dn-ai-advanced-toggle small{
  color:rgba(226,232,240,.68) !important;
  font-size:12px !important;
  font-weight:700 !important;
  margin-left:auto !important;
}
#dnDecisionCenter .dn-ai-advanced-chevron{
  color:rgba(248,250,252,.72) !important;
  transition:transform .18s ease !important;
  font-style:normal !important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-chevron{ transform:rotate(180deg) !important; }
#dnDecisionCenter .dn-ai-advanced-body{
  display:none !important;
  border-top:1px solid rgba(148,163,184,.12) !important;
  padding:14px !important;
  background:rgba(2,6,23,.45) !important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-body{ display:block !important; }
#dnDecisionCenter .dn-ai-detail-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#dnDecisionCenter .dn-ai-detail-card{
  border:1px solid rgba(148,163,184,.14) !important;
  border-radius:16px !important;
  background:rgba(15,23,42,.64) !important;
  padding:14px !important;
  min-height:92px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-ai-detail-title{
  color:#ffffff !important;
  font-weight:900 !important;
  font-size:12px !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
  margin-bottom:8px !important;
}
#dnDecisionCenter .dn-ai-detail-content,
#dnDecisionCenter .dn-ai-detail-content *{
  color:rgba(248,250,252,.84) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
#dnDecisionCenter .dn-ai-detail-content ul{ margin:0 !important; padding-left:18px !important; }
#dnDecisionCenter .dn-ai-detail-content li{ margin:4px 0 !important; }
@media (max-width:900px){
  #dnDecisionCenter .dn-ai-pro-body{ grid-template-columns:1fr !important; }
  #dnDecisionCenter .dn-ai-pro-top-grid{ grid-template-columns:1fr !important; }
  #dnDecisionCenter .dn-ai-detail-grid{ grid-template-columns:1fr !important; }
  #dnDecisionCenter .dn-ai-advanced-toggle{ flex-wrap:wrap !important; align-items:flex-start !important; }
  #dnDecisionCenter .dn-ai-advanced-toggle small{ flex:1 1 100% !important; margin-left:0 !important; }
}

/* ======================================================================
   v1.0.37 ADAM FINAL AI PANEL REDESIGN OVERRIDE
   Purpose: force the AI Decision Center to match DealerNexus dark theme,
   fix inner spacing, remove legacy button leakage, and replace raw/default
   advanced-section styling no matter which older rules are still present.
   ====================================================================== */
#dnDecisionCenter,
#dnDecisionCenter *{
  box-sizing:border-box !important;
}
#dnDecisionCenter.dn-ai-command-panel{
  width:100% !important;
  max-width:100% !important;
  margin:18px 0 22px !important;
  padding:18px !important;
  overflow:hidden !important;
  border:1px solid rgba(59,130,246,.22) !important;
  border-radius:26px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(37,99,235,.14), transparent 34%),
    linear-gradient(180deg, rgba(15,23,42,.94), rgba(2,6,23,.96)) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.34), inset 0 1px 0 rgba(255,255,255,.05) !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-simple-ai-shell{
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:22px !important;
  background:transparent !important;
  overflow:hidden !important;
  color:#f8fafc !important;
}
#dnDecisionCenter .dn-simple-ai-head{
  margin:0 0 14px !important;
  padding:16px 18px !important;
  border:1px solid rgba(148,163,184,.14) !important;
  border-radius:20px !important;
  background:linear-gradient(135deg, rgba(15,23,42,.90), rgba(2,6,23,.72)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
}
#dnDecisionCenter .dn-simple-ai-title h2,
#dnDecisionCenter .dn-simple-ai-title p,
#dnDecisionCenter h2,
#dnDecisionCenter h3,
#dnDecisionCenter h4{
  color:#ffffff !important;
}
#dnDecisionCenter .dn-simple-ai-title p,
#dnDecisionCenter p,
#dnDecisionCenter small,
#dnDecisionCenter span{
  color:rgba(226,232,240,.82) !important;
}
#dnDecisionCenter .dn-simple-ai-orb{
  color:#ffffff !important;
  background:linear-gradient(135deg,#2563eb,#0f172a) !important;
  box-shadow:0 0 0 5px rgba(37,99,235,.12), 0 12px 28px rgba(37,99,235,.22) !important;
}
#dnDecisionCenter .dn-ai-pro-body,
#dnDecisionCenter .dn-ai-pro-bottom-grid{
  width:100% !important;
  min-width:0 !important;
  padding:16px !important;
  margin:0 0 14px !important;
  gap:16px !important;
  border:1px solid rgba(148,163,184,.12) !important;
  border-radius:22px !important;
  background:rgba(2,6,23,.38) !important;
  overflow:hidden !important;
}
#dnDecisionCenter .dn-ai-left-stack,
#dnDecisionCenter .dn-ai-right-stack,
#dnDecisionCenter .dn-ai-final-summary,
#dnDecisionCenter .dn-final-card{
  min-width:0 !important;
}
#dnDecisionCenter .dn-ai-input-card,
#dnDecisionCenter .dn-final-card,
#dnDecisionCenter .dn-ai-final-summary,
#dnDecisionCenter .dn-ai-confidence-wrap{
  border:1px solid rgba(148,163,184,.14) !important;
  border-radius:18px !important;
  background:rgba(15,23,42,.58) !important;
  padding:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  overflow:hidden !important;
}
#dnDecisionCenter .dn-final-big,
#dnDecisionCenter .dn-profit-grid{
  gap:10px !important;
}
#dnDecisionCenter .dn-final-metric,
#dnDecisionCenter .dn-profit-grid > div,
#dnDecisionCenter .dn-ai-number-card{
  min-width:0 !important;
  border:1px solid rgba(148,163,184,.13) !important;
  border-radius:15px !important;
  background:rgba(2,6,23,.54) !important;
  color:#ffffff !important;
  overflow:hidden !important;
}
#dnDecisionCenter .dn-final-metric b,
#dnDecisionCenter .dn-profit-grid b,
#dnDecisionCenter b,
#dnDecisionCenter strong{
  color:#ffffff !important;
}
#dnDecisionCenter .dn-final-metric span,
#dnDecisionCenter .dn-profit-grid span,
#dnDecisionCenter .dn-ai-field-title{
  color:rgba(226,232,240,.70) !important;
}
#dnDecisionCenter .dn-simple-ai-actions{
  margin:0 0 12px !important;
  padding:10px !important;
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:10px !important;
  border:1px solid rgba(148,163,184,.12) !important;
  border-radius:18px !important;
  background:rgba(2,6,23,.35) !important;
}
#dnDecisionCenter .dn-simple-ai-actions button{
  min-height:38px !important;
  border-radius:13px !important;
  padding:0 15px !important;
  font-weight:900 !important;
  color:#ffffff !important;
  border:1px solid rgba(148,163,184,.15) !important;
  box-shadow:none !important;
}
#dnDecisionCenter .dn-simple-ai-primary{
  background:linear-gradient(135deg,#2563eb,#1d4ed8) !important;
}
#dnDecisionCenter .dn-simple-ai-secondary{
  background:rgba(15,23,42,.86) !important;
}
#dnDecisionCenter .dn-ai-alert,
#dnDecisionCenter .dn-ai-ready-box,
#dnDecisionCenter .dn-ai-why-box{
  margin:0 !important;
  border:1px solid rgba(20,184,166,.18) !important;
  border-radius:16px !important;
  background:linear-gradient(135deg, rgba(20,184,166,.11), rgba(15,23,42,.44)) !important;
  color:#f8fafc !important;
}
/* Remove all legacy bridge/output leakage from layout completely. */
#dnDecisionCenter .dn-dc-engine-buttons,
#dnDecisionCenter .dn-dc-engine-buttons *,
#dnDecisionCenter #dnSimpleAiToggle,
#dnDecisionCenter #dnSimpleBuildBtn,
#dnDecisionCenter #dnSimpleSafeBtn,
#dnDecisionCenter #dnSimpleLowDownBtn,
#dnDecisionCenter #dnSubmitToLenderBtn,
#dnDecisionCenter #dnSimpleChooseInventoryBtn,
#dnDecisionCenter #dnFinalInventory,
#dnDecisionCenter #dnFinalLenders,
#dnDecisionCenter #dnFinalStips,
#dnDecisionCenter #dnIncomeUsedBox,
#dnDecisionCenter #dnIncomeUsedText{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important;
  max-width:0 !important;
  min-width:0 !important;
  height:0 !important;
  max-height:0 !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
  position:absolute !important;
  left:-99999px !important;
  top:auto !important;
  clip:rect(0 0 0 0) !important;
  clip-path:inset(50%) !important;
  white-space:nowrap !important;
  font-size:0 !important;
  line-height:0 !important;
}
/* Custom advanced drawer: fully reset button/default browser styling. */
#dnDecisionCenter .dn-ai-advanced-shell{
  width:100% !important;
  margin:14px 0 0 !important;
  border:1px solid rgba(148,163,184,.15) !important;
  border-radius:20px !important;
  background:linear-gradient(180deg, rgba(15,23,42,.82), rgba(2,6,23,.80)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045) !important;
  overflow:hidden !important;
}
#dnDecisionCenter button.dn-ai-advanced-toggle,
#dnDecisionCenter .dn-ai-advanced-toggle{
  all:unset !important;
  box-sizing:border-box !important;
  width:100% !important;
  min-height:52px !important;
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:14px 16px !important;
  cursor:pointer !important;
  background:rgba(15,23,42,.80) !important;
  color:#ffffff !important;
  border:0 !important;
  outline:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  font-family:inherit !important;
  font-weight:900 !important;
  text-align:left !important;
}
#dnDecisionCenter .dn-ai-advanced-toggle span:first-child{
  color:#ffffff !important;
  font-size:14px !important;
  font-weight:950 !important;
  letter-spacing:.01em !important;
  flex:0 0 auto !important;
}
#dnDecisionCenter .dn-ai-advanced-toggle small{
  color:rgba(226,232,240,.66) !important;
  font-size:12px !important;
  font-weight:750 !important;
  margin-left:auto !important;
  min-width:0 !important;
}
#dnDecisionCenter .dn-ai-advanced-chevron{
  color:#ffffff !important;
  margin-left:4px !important;
  transition:transform .18s ease !important;
  font-style:normal !important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-chevron{
  transform:rotate(180deg) !important;
}
#dnDecisionCenter .dn-ai-advanced-body{
  display:none !important;
  padding:14px !important;
  border-top:1px solid rgba(148,163,184,.12) !important;
  background:rgba(2,6,23,.46) !important;
}
#dnDecisionCenter .dn-ai-advanced-shell.is-open .dn-ai-advanced-body{
  display:block !important;
}
#dnDecisionCenter .dn-ai-detail-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#dnDecisionCenter .dn-ai-detail-card{
  min-width:0 !important;
  min-height:96px !important;
  padding:14px !important;
  border:1px solid rgba(148,163,184,.14) !important;
  border-radius:17px !important;
  background:rgba(15,23,42,.66) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
  overflow:hidden !important;
}
#dnDecisionCenter .dn-ai-detail-title{
  margin:0 0 8px !important;
  color:#ffffff !important;
  font-size:12px !important;
  line-height:1.2 !important;
  letter-spacing:.075em !important;
  text-transform:uppercase !important;
  font-weight:950 !important;
}
#dnDecisionCenter .dn-ai-detail-content,
#dnDecisionCenter .dn-ai-detail-content *{
  color:rgba(248,250,252,.84) !important;
  font-size:13px !important;
  line-height:1.45 !important;
}
@media (max-width:900px){
  #dnDecisionCenter.dn-ai-command-panel{padding:12px !important;border-radius:20px !important;}
  #dnDecisionCenter .dn-ai-pro-body,
  #dnDecisionCenter .dn-ai-pro-bottom-grid{padding:12px !important;}
  #dnDecisionCenter .dn-ai-detail-grid{grid-template-columns:1fr !important;}
  #dnDecisionCenter .dn-ai-advanced-toggle{flex-wrap:wrap !important;align-items:flex-start !important;}
  #dnDecisionCenter .dn-ai-advanced-toggle small{margin-left:0 !important;flex:1 1 100% !important;}
}

/* ============================================================
   v1.0.39 ADAM COMPLETE AI DECISION CENTER REDESIGN
   Final override: no old Simple AI panel visuals, no leaked buttons.
   ============================================================ */
#dnDecisionCenter.dn-adam-ai-panel,
#dnDecisionCenter.dn-ai-command-panel.dn-adam-ai-panel{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  margin:18px 0 22px!important;
  padding:18px!important;
  border-radius:28px!important;
  border:1px solid rgba(148,163,184,.18)!important;
  background:
    radial-gradient(circle at 12% -8%, rgba(37,99,235,.25), transparent 34%),
    radial-gradient(circle at 96% 10%, rgba(14,165,233,.13), transparent 28%),
    linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.94))!important;
  box-shadow:0 22px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.06)!important;
  color:#fff!important;
}
#dnDecisionCenter.dn-adam-ai-panel,
#dnDecisionCenter.dn-adam-ai-panel *{box-sizing:border-box!important;}
#dnDecisionCenter .dn-adam-ai-bg{position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(135deg,rgba(255,255,255,.035),transparent 34%,rgba(37,99,235,.035));}
#dnDecisionCenter .dn-adam-ai-header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;padding:4px 4px 16px!important;margin:0 0 14px!important;border-bottom:1px solid rgba(148,163,184,.13)!important;}
#dnDecisionCenter .dn-adam-ai-brand{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important;}
#dnDecisionCenter .dn-adam-ai-logo{width:48px!important;height:48px!important;border-radius:17px!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;background:linear-gradient(135deg,#1d4ed8,#0f172a)!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 14px 30px rgba(37,99,235,.22)!important;color:#fff!important;font-weight:1000!important;letter-spacing:-.04em!important;}
#dnDecisionCenter .dn-adam-ai-eyebrow{color:rgba(226,232,240,.7)!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.18em!important;font-weight:900!important;margin-bottom:5px!important;}
#dnDecisionCenter .dn-adam-ai-header h2{margin:0!important;color:#fff!important;font-size:26px!important;line-height:1.05!important;font-weight:1000!important;letter-spacing:-.035em!important;}
#dnDecisionCenter .dn-adam-ai-header p{margin:7px 0 0!important;color:rgba(226,232,240,.74)!important;font-size:13px!important;line-height:1.45!important;max-width:760px!important;}
#dnDecisionCenter .dn-adam-ai-header-right{display:flex!important;align-items:center!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important;}
#dnDecisionCenter .dn-adam-ai-version,
#dnDecisionCenter .dn-adam-ai-status,
#dnDecisionCenter .dn-adam-ai-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;padding:7px 10px!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.18)!important;background:rgba(15,23,42,.72)!important;color:#fff!important;font-size:11px!important;font-weight:900!important;letter-spacing:.02em!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-adam-ai-status{background:rgba(22,163,74,.13)!important;border-color:rgba(34,197,94,.22)!important;color:#dcfce7!important;}
#dnDecisionCenter .dn-adam-ai-warning{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px;padding:12px 14px;border-radius:16px;border:1px solid rgba(245,158,11,.22);background:rgba(245,158,11,.09);color:#fff;}
#dnDecisionCenter .dn-adam-ai-warning a{color:#fff!important;text-decoration:underline!important;font-weight:900!important;}
#dnDecisionCenter .dn-adam-ai-actionbar{display:grid!important;grid-template-columns:1.2fr repeat(4,1fr)!important;gap:10px!important;margin:0 0 14px!important;padding:10px!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:20px!important;background:rgba(2,6,23,.46)!important;}
#dnDecisionCenter .dn-adam-ai-btn{height:42px!important;border-radius:14px!important;border:1px solid rgba(148,163,184,.16)!important;background:rgba(15,23,42,.78)!important;color:#fff!important;font-size:13px!important;font-weight:900!important;cursor:pointer!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-adam-ai-btn:hover{transform:translateY(-1px)!important;border-color:rgba(59,130,246,.36)!important;background:rgba(30,41,59,.88)!important;}
#dnDecisionCenter .dn-adam-ai-btn-primary{background:linear-gradient(135deg,#1d4ed8,#2563eb)!important;border-color:rgba(147,197,253,.28)!important;box-shadow:0 14px 30px rgba(37,99,235,.22)!important;}
#dnDecisionCenter .dn-adam-ai-btn-muted{background:rgba(15,23,42,.52)!important;color:rgba(248,250,252,.82)!important;}
#dnDecisionCenter .dn-adam-ai-summary-strip{display:grid!important;grid-template-columns:1.35fr repeat(3,1fr)!important;gap:10px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-adam-ai-kpi{min-width:0!important;border:1px solid rgba(148,163,184,.14)!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(15,23,42,.72),rgba(15,23,42,.46))!important;padding:14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;}
#dnDecisionCenter .dn-adam-ai-kpi span,
#dnDecisionCenter .dn-adam-ai-mini-card span,
#dnDecisionCenter .dn-adam-ai-metrics span{display:block!important;color:rgba(203,213,225,.68)!important;font-size:10.5px!important;letter-spacing:.1em!important;text-transform:uppercase!important;font-weight:900!important;margin-bottom:7px!important;}
#dnDecisionCenter .dn-adam-ai-kpi b{display:block!important;color:#fff!important;font-size:22px!important;line-height:1.08!important;font-weight:1000!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-adam-ai-kpi small{display:block!important;margin-top:5px!important;color:rgba(226,232,240,.62)!important;font-size:12px!important;font-weight:750!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-adam-ai-grid{display:grid!important;grid-template-columns:minmax(330px,.9fr) minmax(0,1.45fr)!important;gap:14px!important;margin:0 0 14px!important;align-items:stretch!important;}
#dnDecisionCenter .dn-adam-ai-card{min-width:0!important;border:1px solid rgba(148,163,184,.14)!important;border-radius:22px!important;background:rgba(15,23,42,.58)!important;padding:15px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;}
#dnDecisionCenter .dn-adam-ai-card-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin-bottom:13px!important;}
#dnDecisionCenter .dn-adam-ai-card h3{margin:0!important;color:#fff!important;font-size:16px!important;font-weight:1000!important;letter-spacing:-.015em!important;}
#dnDecisionCenter .dn-adam-ai-card p{margin:4px 0 0!important;color:rgba(226,232,240,.65)!important;font-size:12px!important;line-height:1.4!important;}
#dnDecisionCenter .dn-adam-ai-chip-green{background:rgba(22,163,74,.12)!important;border-color:rgba(34,197,94,.2)!important;color:#fff!important;}
#dnDecisionCenter .dn-adam-ai-form-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:12px!important;}
#dnDecisionCenter .dn-adam-ai-inputbox{display:flex!important;flex-direction:column!important;gap:7px!important;margin:0!important;padding:12px!important;border:1px solid rgba(148,163,184,.13)!important;border-radius:16px!important;background:rgba(2,6,23,.35)!important;color:#fff!important;font-size:12px!important;font-weight:900!important;letter-spacing:0!important;text-transform:none!important;}
#dnDecisionCenter .dn-adam-ai-inputbox-wide{grid-column:1/-1!important;}
#dnDecisionCenter .dn-adam-ai-inputbox input,
#dnDecisionCenter .dn-adam-ai-inputbox select{width:100%!important;min-height:38px!important;border-radius:12px!important;border:1px solid rgba(148,163,184,.16)!important;background:rgba(15,23,42,.86)!important;color:#fff!important;padding:8px 10px!important;outline:none!important;}
#dnDecisionCenter .dn-adam-ai-inputbox small{color:rgba(203,213,225,.62)!important;font-size:11px!important;line-height:1.3!important;font-weight:700!important;}
#dnDecisionCenter .dn-adam-ai-chip-section{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
#dnDecisionCenter .dn-adam-ai-field-title{display:block!important;color:rgba(248,250,252,.9)!important;font-size:11px!important;letter-spacing:.1em!important;text-transform:uppercase!important;font-weight:900!important;margin:0 0 8px!important;}
#dnDecisionCenter .dn-adam-ai-chip-grid{display:flex!important;gap:7px!important;flex-wrap:wrap!important;}
#dnDecisionCenter .dn-adam-ai-chip-grid label{display:inline-flex!important;align-items:center!important;gap:6px!important;min-height:32px!important;padding:6px 9px!important;margin:0!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.14)!important;background:rgba(15,23,42,.62)!important;color:#fff!important;font-size:12px!important;font-weight:850!important;text-transform:none!important;letter-spacing:0!important;}
#dnDecisionCenter .dn-adam-ai-chip-grid input{accent-color:#2563eb!important;}
#dnDecisionCenter .dn-adam-ai-metrics{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;}
#dnDecisionCenter .dn-adam-ai-metrics>div,
#dnDecisionCenter .dn-adam-ai-mini-card{min-width:0!important;border:1px solid rgba(148,163,184,.13)!important;border-radius:16px!important;background:rgba(2,6,23,.32)!important;padding:12px!important;}
#dnDecisionCenter .dn-adam-ai-metrics b,
#dnDecisionCenter .dn-adam-ai-mini-card b{display:block!important;color:#fff!important;font-size:15px!important;font-weight:1000!important;line-height:1.2!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-adam-ai-reason{margin-top:12px!important;border:1px solid rgba(59,130,246,.16)!important;border-radius:17px!important;background:rgba(37,99,235,.08)!important;padding:13px!important;color:#fff!important;}
#dnDecisionCenter .dn-adam-ai-reason strong{display:block!important;color:#fff!important;font-size:14px!important;margin-bottom:4px!important;}
#dnDecisionCenter .dn-adam-ai-reason span{display:block!important;color:rgba(248,250,252,.82)!important;font-size:13px!important;line-height:1.45!important;}
#dnDecisionCenter .dn-adam-ai-reason small{display:block!important;color:rgba(203,213,225,.7)!important;font-size:12px!important;margin-top:5px!important;}
#dnDecisionCenter .dn-adam-ai-mini-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-adam-ai-why{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr)!important;gap:12px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-adam-ai-why>div{border:1px solid rgba(148,163,184,.13)!important;border-radius:18px!important;background:rgba(15,23,42,.5)!important;padding:14px!important;color:#fff!important;}
#dnDecisionCenter .dn-adam-ai-why h3{margin:0 0 7px!important;color:#fff!important;font-size:15px!important;font-weight:1000!important;}
#dnDecisionCenter .dn-adam-ai-why p,
#dnDecisionCenter #dnSimpleRunNote{margin:0!important;color:rgba(226,232,240,.74)!important;font-size:13px!important;line-height:1.45!important;}
#dnDecisionCenter .dn-adam-ai-drawer{border:1px solid rgba(148,163,184,.14)!important;border-radius:20px!important;overflow:hidden!important;background:rgba(2,6,23,.42)!important;margin:0!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;}
#dnDecisionCenter .dn-adam-ai-drawer-toggle{width:100%!important;border:0!important;outline:none!important;background:rgba(15,23,42,.72)!important;color:#fff!important;min-height:48px!important;padding:12px 14px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;cursor:pointer!important;}
#dnDecisionCenter .dn-adam-ai-drawer-toggle span{color:#fff!important;font-size:14px!important;font-weight:1000!important;}
#dnDecisionCenter .dn-adam-ai-drawer-toggle small{margin-left:auto!important;color:rgba(226,232,240,.64)!important;font-size:12px!important;font-weight:750!important;}
#dnDecisionCenter .dn-adam-ai-drawer-toggle i{font-style:normal!important;color:#fff!important;transition:transform .18s ease!important;}
#dnDecisionCenter .dn-adam-ai-drawer.is-open .dn-adam-ai-drawer-toggle i{transform:rotate(180deg)!important;}
#dnDecisionCenter .dn-adam-ai-drawer-body{display:none!important;padding:14px!important;border-top:1px solid rgba(148,163,184,.12)!important;background:rgba(2,6,23,.38)!important;}
#dnDecisionCenter .dn-adam-ai-drawer.is-open .dn-adam-ai-drawer-body{display:block!important;}
#dnDecisionCenter .dn-adam-ai-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
#dnDecisionCenter .dn-adam-ai-detail-card{min-width:0!important;min-height:90px!important;border:1px solid rgba(148,163,184,.13)!important;border-radius:17px!important;background:rgba(15,23,42,.58)!important;padding:13px!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;}
#dnDecisionCenter .dn-adam-ai-detail-card h4{margin:0 0 8px!important;color:#fff!important;font-size:11px!important;letter-spacing:.1em!important;text-transform:uppercase!important;font-weight:1000!important;}
#dnDecisionCenter .dn-adam-ai-detail-card div,
#dnDecisionCenter .dn-adam-ai-detail-card *{color:rgba(248,250,252,.84)!important;font-size:13px!important;line-height:1.45!important;}
#dnDecisionCenter .dn-adam-ai-engine-bridge,
#dnDecisionCenter .dn-adam-ai-engine-bridge *,
#dnDecisionCenter .dn-dc-engine-buttons,
#dnDecisionCenter .dn-dc-engine-buttons *{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;max-width:0!important;max-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;left:-99999px!important;clip-path:inset(50%)!important;font-size:0!important;line-height:0!important;}
@media(max-width:1180px){#dnDecisionCenter .dn-adam-ai-grid{grid-template-columns:1fr!important;}#dnDecisionCenter .dn-adam-ai-actionbar{grid-template-columns:repeat(2,1fr)!important;}#dnDecisionCenter .dn-adam-ai-summary-strip{grid-template-columns:repeat(2,1fr)!important;}#dnDecisionCenter .dn-adam-ai-metrics,#dnDecisionCenter .dn-adam-ai-mini-grid{grid-template-columns:repeat(2,1fr)!important;}}
@media(max-width:760px){#dnDecisionCenter.dn-adam-ai-panel{padding:12px!important;border-radius:20px!important;}#dnDecisionCenter .dn-adam-ai-header{display:block!important;}#dnDecisionCenter .dn-adam-ai-header-right{justify-content:flex-start!important;margin-top:12px!important;}#dnDecisionCenter .dn-adam-ai-actionbar,#dnDecisionCenter .dn-adam-ai-summary-strip,#dnDecisionCenter .dn-adam-ai-form-grid,#dnDecisionCenter .dn-adam-ai-mini-grid,#dnDecisionCenter .dn-adam-ai-why,#dnDecisionCenter .dn-adam-ai-detail-grid,#dnDecisionCenter .dn-adam-ai-metrics{grid-template-columns:1fr!important;}#dnDecisionCenter .dn-adam-ai-drawer-toggle{flex-wrap:wrap!important;align-items:flex-start!important;}#dnDecisionCenter .dn-adam-ai-drawer-toggle small{margin-left:0!important;width:100%!important;}}

/* dn-ai-command-redesign-v1040-css */


#dnDecisionCenter.dn-ai-command-redesign,
section#dnDecisionCenter.dn-ai-command-redesign{
  position:relative!important;width:calc(100% - 28px)!important;max-width:1560px!important;margin:18px 14px 26px!important;padding:22px!important;overflow:hidden!important;
  border:1px solid rgba(96,165,250,.22)!important;border-radius:28px!important;color:#f8fafc!important;
  background:
    radial-gradient(circle at 12% 0%, rgba(37,99,235,.18), transparent 32%),
    radial-gradient(circle at 86% 12%, rgba(14,165,233,.10), transparent 28%),
    linear-gradient(180deg, rgba(15,23,42,.94), rgba(2,6,23,.96))!important;
  box-shadow:0 24px 70px rgba(0,0,0,.36), inset 0 1px 0 rgba(255,255,255,.06)!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
#dnDecisionCenter *,#dnDecisionCenter *::before,#dnDecisionCenter *::after{box-sizing:border-box!important;color:inherit;}
#dnDecisionCenter .dn-ai-neural-orb{position:absolute!important;right:-120px!important;top:-160px!important;width:420px!important;height:420px!important;border-radius:50%!important;background:radial-gradient(circle, rgba(59,130,246,.16), transparent 68%)!important;pointer-events:none!important;}
#dnDecisionCenter .dn-ai-topbar{position:relative!important;z-index:1!important;display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:18px!important;margin:0 0 18px!important;padding:0 0 16px!important;border-bottom:1px solid rgba(148,163,184,.14)!important;}
#dnDecisionCenter .dn-ai-eyebrow-line{display:flex!important;align-items:center!important;gap:8px!important;color:rgba(226,232,240,.72)!important;font:900 11px/1 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.18em!important;margin-bottom:8px!important;}
#dnDecisionCenter .dn-ai-dot{width:8px!important;height:8px!important;border-radius:999px!important;background:#38bdf8!important;box-shadow:0 0 20px rgba(56,189,248,.65)!important;}
#dnDecisionCenter h2{margin:0!important;color:#fff!important;font:1000 27px/1.05 Inter,system-ui!important;letter-spacing:-.04em!important;}
#dnDecisionCenter p{margin:7px 0 0!important;color:rgba(226,232,240,.76)!important;font:750 13px/1.45 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-top-actions{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:9px!important;}
#dnDecisionCenter .dn-ai-version-pill,#dnDecisionCenter .dn-ai-live-pill,#dnDecisionCenter .dn-ai-chip{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;padding:8px 11px!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.18)!important;background:rgba(15,23,42,.68)!important;color:#fff!important;font:900 11px/1 Inter,system-ui!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-ai-live-pill{background:rgba(34,197,94,.12)!important;border-color:rgba(34,197,94,.25)!important;color:#dcfce7!important;}
#dnDecisionCenter .dn-ai-warning{margin:0 0 14px!important;padding:13px 15px!important;border:1px solid rgba(245,158,11,.24)!important;border-radius:18px!important;background:rgba(120,53,15,.20)!important;color:#fff!important;}
#dnDecisionCenter .dn-ai-customer-fit-top{position:relative!important;z-index:1!important;display:grid!important;grid-template-columns:minmax(340px,.72fr) minmax(0,1.28fr)!important;gap:14px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-ai-confidence-wrap,#dnDecisionCenter .dn-ai-fit-grid,#dnDecisionCenter .dn-ai-card,#dnDecisionCenter .dn-ai-reasoning-card,#dnDecisionCenter .dn-ai-requirement-card,#dnDecisionCenter .dn-ai-advanced-modern{border:1px solid rgba(148,163,184,.14)!important;border-radius:22px!important;background:rgba(15,23,42,.62)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;}
#dnDecisionCenter .dn-ai-confidence-wrap{display:flex!important;align-items:center!important;gap:18px!important;min-height:156px!important;padding:18px!important;}
#dnDecisionCenter .dn-ai-confidence-circle{--score:0;position:relative!important;width:130px!important;height:130px!important;flex:0 0 130px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:conic-gradient(#38bdf8 calc(var(--score)*1%), rgba(30,41,59,.88) 0)!important;box-shadow:0 0 34px rgba(56,189,248,.18)!important;}
#dnDecisionCenter .dn-ai-confidence-circle::before{content:"";position:absolute!important;inset:12px!important;border-radius:50%!important;background:linear-gradient(180deg,#020617,#0f172a)!important;border:1px solid rgba(148,163,184,.16)!important;box-shadow:inset 0 0 28px rgba(0,0,0,.42)!important;}
#dnDecisionCenter .dn-ai-confidence-circle.high{background:conic-gradient(#22c55e calc(var(--score)*1%), rgba(30,41,59,.88) 0)!important;box-shadow:0 0 34px rgba(34,197,94,.20)!important;}
#dnDecisionCenter .dn-ai-confidence-circle.mid{background:conic-gradient(#38bdf8 calc(var(--score)*1%), rgba(30,41,59,.88) 0)!important;}
#dnDecisionCenter .dn-ai-confidence-circle.low{background:conic-gradient(#f59e0b calc(var(--score)*1%), rgba(30,41,59,.88) 0)!important;box-shadow:0 0 34px rgba(245,158,11,.20)!important;}
#dnDecisionCenter .dn-ai-confidence-circle.declined{background:conic-gradient(#ef4444 calc(var(--score)*1%), rgba(30,41,59,.88) 0)!important;box-shadow:0 0 38px rgba(239,68,68,.26)!important;}
#dnDecisionCenter .dn-ai-confidence-inner{position:relative!important;z-index:1!important;display:grid!important;place-items:center!important;text-align:center!important;padding:10px!important;}
#dnDecisionCenter .dn-ai-confidence-inner strong{display:block!important;color:#fff!important;font:1000 26px/1 Inter,system-ui!important;letter-spacing:-.04em!important;}
#dnDecisionCenter .dn-ai-confidence-inner span{display:block!important;color:rgba(226,232,240,.72)!important;font:900 10px/1 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.14em!important;margin-top:6px!important;}
#dnDecisionCenter .dn-ai-confidence-inner small{display:block!important;color:rgba(248,250,252,.74)!important;font:800 10px/1.1 Inter,system-ui!important;margin-top:5px!important;}
#dnDecisionCenter .dn-ai-fit-status span,#dnDecisionCenter .dn-ai-fit-tile span,#dnDecisionCenter .dn-ai-hero-structure span,#dnDecisionCenter .dn-ai-structure-grid span,#dnDecisionCenter .dn-ai-profit-grid span,#dnDecisionCenter .dn-ai-chip-block>span{display:block!important;color:rgba(203,213,225,.68)!important;font:900 10px/1.2 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.12em!important;margin:0 0 7px!important;}
#dnDecisionCenter .dn-ai-fit-status b{display:block!important;color:#fff!important;font:1000 18px/1.25 Inter,system-ui!important;margin-bottom:7px!important;}
#dnDecisionCenter .dn-ai-fit-status small{display:block!important;color:rgba(226,232,240,.78)!important;font:760 13px/1.4 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-fit-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;padding:14px!important;}
#dnDecisionCenter .dn-ai-fit-tile{min-width:0!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:16px!important;background:rgba(2,6,23,.36)!important;padding:13px!important;}
#dnDecisionCenter .dn-ai-fit-tile b,#dnDecisionCenter .dn-ai-hero-structure b,#dnDecisionCenter .dn-ai-structure-grid b,#dnDecisionCenter .dn-ai-profit-grid b{display:block!important;color:#fff!important;font:1000 17px/1.2 Inter,system-ui!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
#dnDecisionCenter .dn-ai-fit-tile-wide{grid-column:span 2!important;}
#dnDecisionCenter .dn-ai-actionbar{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:0 0 14px!important;padding:10px!important;border-radius:18px!important;border:1px solid rgba(96,165,250,.14)!important;background:rgba(2,6,23,.38)!important;}
#dnDecisionCenter .dn-ai-action{appearance:none!important;height:42px!important;min-width:142px!important;padding:0 16px!important;border:1px solid rgba(148,163,184,.18)!important;border-radius:14px!important;background:rgba(15,23,42,.82)!important;color:#fff!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;font:950 12px/1 Inter,system-ui!important;cursor:pointer!important;}
#dnDecisionCenter .dn-ai-action-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:rgba(147,197,253,.30)!important;box-shadow:0 12px 28px rgba(37,99,235,.22), inset 0 1px 0 rgba(255,255,255,.08)!important;}
#dnDecisionCenter .dn-ai-action-muted{background:rgba(15,23,42,.50)!important;color:rgba(248,250,252,.82)!important;}
#dnDecisionCenter .dn-ai-command-grid{display:grid!important;grid-template-columns:minmax(360px,.82fr) minmax(0,1.18fr)!important;gap:14px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-ai-card{padding:16px!important;}
#dnDecisionCenter .dn-ai-card-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:12px!important;margin:0 0 14px!important;}
#dnDecisionCenter h3{margin:0!important;color:#fff!important;font:1000 17px/1.15 Inter,system-ui!important;letter-spacing:-.02em!important;}
#dnDecisionCenter .dn-ai-chip-green{background:rgba(34,197,94,.12)!important;border-color:rgba(34,197,94,.22)!important;color:#dcfce7!important;}
#dnDecisionCenter .dn-ai-input-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;margin-bottom:13px!important;}
#dnDecisionCenter .dn-ai-field{display:flex!important;flex-direction:column!important;gap:7px!important;margin:0!important;padding:12px!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:16px!important;background:rgba(2,6,23,.34)!important;color:#fff!important;font:900 11px/1.25 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.08em!important;}
#dnDecisionCenter .dn-ai-field-wide{grid-column:1/-1!important;}
#dnDecisionCenter input,#dnDecisionCenter select{width:100%!important;min-height:38px!important;border:1px solid rgba(148,163,184,.16)!important;border-radius:12px!important;background:rgba(15,23,42,.90)!important;color:#fff!important;padding:8px 10px!important;outline:none!important;font:850 13px/1.2 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-field small{color:rgba(203,213,225,.65)!important;font:750 10.5px/1.3 Inter,system-ui!important;text-transform:none!important;letter-spacing:0!important;}
#dnDecisionCenter .dn-ai-chip-block{margin-top:12px!important;}
#dnDecisionCenter .dn-ai-checks{display:flex!important;flex-wrap:wrap!important;gap:8px!important;}
#dnDecisionCenter .dn-ai-checks label{display:inline-flex!important;align-items:center!important;gap:7px!important;min-height:31px!important;margin:0!important;padding:7px 10px!important;border-radius:999px!important;border:1px solid rgba(148,163,184,.13)!important;background:rgba(15,23,42,.62)!important;color:#fff!important;font:850 12px/1 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-checks input{width:14px!important;min-height:14px!important;padding:0!important;accent-color:#2563eb!important;}
#dnDecisionCenter .dn-ai-checks em{font-style:normal!important;color:#fff!important;}
#dnDecisionCenter .dn-ai-hero-structure{display:grid!important;grid-template-columns:1.25fr 1fr 1fr!important;gap:10px!important;margin:0 0 10px!important;}
#dnDecisionCenter .dn-ai-hero-structure>div,#dnDecisionCenter .dn-ai-structure-grid>div,#dnDecisionCenter .dn-ai-profit-grid>div{min-width:0!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:16px!important;background:rgba(2,6,23,.35)!important;padding:13px!important;}
#dnDecisionCenter .dn-ai-hero-structure small{display:block!important;margin-top:5px!important;color:rgba(226,232,240,.62)!important;font:750 11px/1.2 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-structure-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:0 0 10px!important;}
#dnDecisionCenter .dn-ai-profit-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
#dnDecisionCenter .dn-ai-reasoning-row{display:grid!important;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)!important;gap:14px!important;margin:0 0 14px!important;}
#dnDecisionCenter .dn-ai-reasoning-card,#dnDecisionCenter .dn-ai-requirement-card{padding:15px!important;}
#dnDecisionCenter .dn-ai-reasoning-card span{display:block!important;color:#fff!important;font:1000 13px/1 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.11em!important;margin-bottom:8px!important;}
#dnDecisionCenter .dn-ai-reasoning-card p,#dnDecisionCenter .dn-ai-reasoning-card small,#dnDecisionCenter .dn-ai-requirement-card{color:rgba(226,232,240,.80)!important;font:800 13px/1.45 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-reasoning-card small{display:block!important;margin-top:7px!important;}
#dnDecisionCenter .dn-ai-advanced-modern{margin:0!important;overflow:hidden!important;}
#dnDecisionCenter .dn-ai-advanced-head{appearance:none!important;width:100%!important;min-height:50px!important;border:0!important;background:linear-gradient(180deg,rgba(15,23,42,.90),rgba(15,23,42,.72))!important;color:#fff!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:13px 16px!important;cursor:pointer!important;text-align:left!important;}
#dnDecisionCenter .dn-ai-advanced-head span{color:#fff!important;font:1000 14px/1 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-advanced-head small{margin-left:auto!important;color:rgba(226,232,240,.66)!important;font:800 12px/1.2 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-advanced-head i{font-style:normal!important;color:#fff!important;transition:transform .18s ease!important;}
#dnDecisionCenter .dn-ai-advanced-modern.is-open .dn-ai-advanced-head i{transform:rotate(180deg)!important;}
#dnDecisionCenter .dn-ai-advanced-body{display:block!important;padding:14px!important;border-top:1px solid rgba(148,163,184,.12)!important;background:rgba(2,6,23,.40)!important;}
#dnDecisionCenter .dn-ai-detail-grid-modern{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
#dnDecisionCenter .dn-ai-detail-card-modern{min-width:0!important;min-height:96px!important;border:1px solid rgba(148,163,184,.13)!important;border-radius:18px!important;background:rgba(15,23,42,.60)!important;padding:14px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)!important;}
#dnDecisionCenter .dn-ai-detail-card-modern h4{margin:0 0 9px!important;color:#fff!important;font:1000 12px/1 Inter,system-ui!important;text-transform:uppercase!important;letter-spacing:.11em!important;}
#dnDecisionCenter .dn-ai-detail-card-modern div,#dnDecisionCenter .dn-ai-detail-card-modern *{color:rgba(248,250,252,.86)!important;font:760 13px/1.45 Inter,system-ui!important;}
#dnDecisionCenter .dn-ai-detail-card-modern table{width:100%!important;border-collapse:collapse!important;}
#dnDecisionCenter .dn-ai-detail-card-modern td,#dnDecisionCenter .dn-ai-detail-card-modern th{border-bottom:1px solid rgba(148,163,184,.11)!important;padding:7px!important;text-align:left!important;}
#dnDecisionCenter .dn-adam-ai-engine-bridge,#dnDecisionCenter .dn-adam-ai-engine-bridge *,#dnDecisionCenter .dn-dc-engine-buttons,#dnDecisionCenter .dn-dc-engine-buttons *{display:none!important;visibility:hidden!important;opacity:0!important;width:0!important;height:0!important;max-width:0!important;max-height:0!important;margin:0!important;padding:0!important;border:0!important;overflow:hidden!important;pointer-events:none!important;position:absolute!important;left:-99999px!important;clip-path:inset(50%)!important;font-size:0!important;line-height:0!important;}
@media(max-width:1180px){#dnDecisionCenter .dn-ai-customer-fit-top,#dnDecisionCenter .dn-ai-command-grid,#dnDecisionCenter .dn-ai-reasoning-row{grid-template-columns:1fr!important;}#dnDecisionCenter .dn-ai-fit-grid,#dnDecisionCenter .dn-ai-structure-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
@media(max-width:760px){section#dnDecisionCenter.dn-ai-command-redesign{width:calc(100% - 12px)!important;margin:12px 6px 18px!important;padding:14px!important;border-radius:22px!important;}#dnDecisionCenter .dn-ai-topbar{display:block!important;}#dnDecisionCenter .dn-ai-top-actions{justify-content:flex-start!important;margin-top:12px!important;}#dnDecisionCenter .dn-ai-confidence-wrap{display:grid!important;text-align:center!important;justify-items:center!important;}#dnDecisionCenter .dn-ai-fit-grid,#dnDecisionCenter .dn-ai-input-grid,#dnDecisionCenter .dn-ai-hero-structure,#dnDecisionCenter .dn-ai-structure-grid,#dnDecisionCenter .dn-ai-profit-grid,#dnDecisionCenter .dn-ai-detail-grid-modern{grid-template-columns:1fr!important;}#dnDecisionCenter .dn-ai-fit-tile-wide{grid-column:auto!important;}#dnDecisionCenter .dn-ai-action{width:100%!important;}#dnDecisionCenter .dn-ai-advanced-head{flex-wrap:wrap!important;}#dnDecisionCenter .dn-ai-advanced-head small{margin-left:0!important;width:100%!important;}}

/* ====================================================================
   DealerNexus AI Decision Center  v1.0.41
   Final professional redesign per Adam/ChatGPT spec.
   Namespaced under .dn-aic-v41 so it overrides every legacy v1.0.32-40
   rule without removing them. Keep this block at the very END of app.css.
   ==================================================================== */

/* Outer panel ---------------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41{
  position:relative;
  margin:18px 0 22px !important;
  padding:18px !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(37,99,235,.22), transparent 34%),
    radial-gradient(circle at 85% 15%, rgba(14,165,233,.12), transparent 30%),
    linear-gradient(180deg, rgba(15,23,42,.94), rgba(2,6,23,.96)) !important;
  border:1px solid rgba(148,163,184,.18) !important;
  box-shadow:
    0 22px 70px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(255,255,255,.045) !important;
  color:#f8fafc !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}
#dnDecisionCenter.dn-aic-v41 *,
#dnDecisionCenter.dn-aic-v41 *::before,
#dnDecisionCenter.dn-aic-v41 *::after{ box-sizing:border-box !important; }
#dnDecisionCenter.dn-aic-v41 h2,
#dnDecisionCenter.dn-aic-v41 h3,
#dnDecisionCenter.dn-aic-v41 h4{ color:#f8fafc !important; margin:0 !important; }
#dnDecisionCenter.dn-aic-v41 p,
#dnDecisionCenter.dn-aic-v41 small,
#dnDecisionCenter.dn-aic-v41 span,
#dnDecisionCenter.dn-aic-v41 b,
#dnDecisionCenter.dn-aic-v41 strong,
#dnDecisionCenter.dn-aic-v41 label,
#dnDecisionCenter.dn-aic-v41 li{ color:inherit !important; }
#dnDecisionCenter.dn-aic-v41 button{ font-family:inherit !important; }

/* 1. HERO ------------------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-hero{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:18px !important;
  padding:6px 4px 14px !important;
  border-bottom:1px solid rgba(148,163,184,.14) !important;
  margin-bottom:16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-hero-text{ flex:1 1 auto; min-width:0; position:relative; }
#dnDecisionCenter.dn-aic-v41 .dn-aic-hero-text::before{
  content:""; position:absolute; left:-30px; top:-20px;
  width:160px; height:80px; pointer-events:none;
  background:radial-gradient(closest-side, rgba(59,130,246,.22), transparent 70%);
  filter:blur(6px); z-index:0;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-hero-text > *{ position:relative; z-index:1; }
#dnDecisionCenter.dn-aic-v41 .dn-aic-eyebrow{
  display:inline-flex; align-items:center; gap:7px;
  font-size:11px !important; font-weight:900 !important;
  letter-spacing:.14em !important; text-transform:uppercase !important;
  color:#bae6fd !important;
  border:1px solid rgba(56,189,248,.32);
  background:rgba(14,165,233,.12);
  padding:6px 10px; border-radius:999px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-eyebrow-dot{
  width:6px; height:6px; border-radius:50%;
  background:#38bdf8; box-shadow:0 0 8px rgba(56,189,248,.7);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-title{
  font-size:24px !important; line-height:1.15 !important;
  letter-spacing:-.02em !important; font-weight:900 !important;
  margin:10px 0 6px !important; color:#ffffff !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-subtitle{
  margin:0 !important; font-size:13px !important; line-height:1.55 !important;
  color:rgba(203,213,225,.78) !important; max-width:680px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-hero-pills{
  display:flex; flex-direction:column; align-items:flex-end; gap:8px; flex:0 0 auto;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-version-pill,
#dnDecisionCenter.dn-aic-v41 .dn-aic-status-pill{
  display:inline-flex; align-items:center;
  font-size:11px !important; font-weight:900 !important;
  letter-spacing:.10em !important; text-transform:uppercase !important;
  padding:6px 12px; border-radius:999px;
  border:1px solid rgba(148,163,184,.22);
  background:rgba(15,23,42,.74);
  color:rgba(226,232,240,.84) !important;
  white-space:nowrap;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-status-pill[data-status="idle"]{ color:#cbd5e1 !important; border-color:rgba(148,163,184,.32); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-status-pill[data-status="analyzing"]{ color:#bae6fd !important; border-color:rgba(56,189,248,.45); background:rgba(14,165,233,.18); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-status-pill[data-status="approved"]{ color:#bbf7d0 !important; border-color:rgba(34,197,94,.55); background:rgba(34,197,94,.16); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-status-pill[data-status="declined"]{ color:#fecaca !important; border-color:rgba(239,68,68,.55); background:rgba(239,68,68,.16); }

/* Guideline warning --------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-warn{
  margin:0 0 14px !important; padding:11px 14px !important;
  border:1px solid rgba(245,158,11,.34) !important;
  background:rgba(245,158,11,.10) !important;
  border-radius:14px !important;
  color:#fde68a !important; font-size:13px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-warn a{
  color:#bae6fd !important; text-decoration:underline; margin-left:6px;
}

/* 2. CUSTOMER FIT + CONFIDENCE --------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-fit{
  display:grid !important;
  grid-template-columns:200px 1fr !important;
  gap:14px !important;
  margin:0 0 16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-card{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:10px; padding:14px; min-height:200px;
  border:1px solid rgba(148,163,184,.18) !important;
  background:rgba(2,6,23,.55) !important;
  border-radius:20px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-ring{
  --dn-confidence-percent:var(--dn-confidence-percent, 0%);
  --dn-confidence-color:var(--dn-confidence-color, rgba(148,163,184,.5));
  position:relative; width:138px; height:138px; border-radius:50%;
  background:conic-gradient(var(--dn-confidence-color) var(--dn-confidence-percent), rgba(30,41,59,.85) 0);
  display:grid; place-items:center;
  box-shadow:0 0 28px rgba(56,189,248,.10);
  transition:background .35s ease;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-ring::before{
  content:""; position:absolute; inset:10px; border-radius:50%;
  background:linear-gradient(160deg, #0b1426, #060d1d);
  border:1px solid rgba(255,255,255,.05);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-ring-inner{
  position:relative; z-index:1; text-align:center; line-height:1;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-ring-inner strong{
  display:block !important; font-size:32px !important; font-weight:900 !important;
  color:#ffffff !important; line-height:1 !important;
  font-variant-numeric:tabular-nums;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-ring-inner span{
  display:block !important; margin-top:4px !important;
  font-size:10px !important; letter-spacing:.14em !important;
  text-transform:uppercase !important;
  color:rgba(203,213,225,.70) !important; font-weight:900 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-caption{
  text-align:center;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-caption b{
  display:block; font-size:13px !important; font-weight:900 !important;
  color:#f8fafc !important; letter-spacing:.01em;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-caption small{
  display:block; margin-top:3px; font-size:11px !important;
  color:rgba(203,213,225,.66) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-card[data-status="approved"]{ border-color:rgba(34,197,94,.32); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-card[data-status="review"]{ border-color:rgba(245,158,11,.32); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-confidence-card[data-status="declined"]{ border-color:rgba(239,68,68,.36); }

#dnDecisionCenter.dn-aic-v41 .dn-aic-fit-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-cell{
  border:1px solid rgba(148,163,184,.14) !important;
  background:rgba(15,23,42,.62) !important;
  border-radius:14px !important;
  padding:11px 12px !important;
  display:flex; flex-direction:column; gap:4px;
  min-height:64px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-cell span{
  font-size:10px !important; letter-spacing:.10em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:rgba(203,213,225,.66) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-cell b{
  font-size:14px !important; font-weight:900 !important;
  color:#ffffff !important; word-break:break-word;
}

/* AI INPUTS subsection ------------------------------------------------ */
#dnDecisionCenter.dn-aic-v41 .dn-aic-inputs{
  margin:0 0 16px !important;
  padding:14px !important;
  border:1px solid rgba(56,189,248,.18) !important;
  background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.55)) !important;
  border-radius:18px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-head{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:12px; flex-wrap:wrap; margin-bottom:12px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-head h3{
  font-size:14px !important; font-weight:900 !important; color:#ffffff !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-head small{
  color:rgba(203,213,225,.62) !important; font-size:12px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-field{
  display:flex !important; flex-direction:column !important; gap:6px !important;
  font-size:11px !important; font-weight:900 !important;
  letter-spacing:.08em !important; text-transform:uppercase !important;
  color:rgba(203,213,225,.72) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-field input,
#dnDecisionCenter.dn-aic-v41 .dn-aic-field select{
  width:100% !important; height:40px !important;
  border:1px solid rgba(148,163,184,.20) !important;
  background:rgba(2,6,23,.70) !important;
  color:#f8fafc !important;
  border-radius:12px !important;
  padding:0 12px !important;
  font-size:13px !important; font-weight:700 !important; letter-spacing:0 !important;
  text-transform:none !important;
  outline:none !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-field input:focus,
#dnDecisionCenter.dn-aic-v41 .dn-aic-field select:focus{
  border-color:rgba(59,130,246,.55) !important;
  box-shadow:0 0 0 2px rgba(59,130,246,.20) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-row{
  display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-block{
  border:1px solid rgba(148,163,184,.14);
  background:rgba(15,23,42,.62);
  border-radius:14px; padding:10px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-label{
  display:block; font-size:10px !important; letter-spacing:.12em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:rgba(203,213,225,.66) !important; margin-bottom:8px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list{
  display:flex; flex-wrap:wrap; gap:6px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list label{
  display:inline-flex; align-items:center; gap:6px;
  border:1px solid rgba(148,163,184,.16);
  background:rgba(2,6,23,.58);
  border-radius:999px; padding:5px 10px;
  font-size:11px !important; font-weight:800 !important;
  color:rgba(226,232,240,.86) !important;
  cursor:pointer; text-transform:none !important; letter-spacing:0 !important;
  transition:border-color .15s ease, background .15s ease;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list label:hover{
  border-color:rgba(56,189,248,.45);
}
/* v1.0.49: explicitly draw a small uniform square so Bank Statements /
   Fixed Income don't render with the OS default huge checkbox when
   accent-color isn't honored. */
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list input[type="checkbox"]{
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  width:14px !important;
  height:14px !important;
  min-width:14px !important;
  min-height:14px !important;
  max-width:14px !important;
  max-height:14px !important;
  flex:0 0 14px !important;
  margin:0 !important;
  padding:0 !important;
  border:1px solid rgba(148,163,184,.45) !important;
  border-radius:4px !important;
  background:rgba(2,6,23,.65) !important;
  cursor:pointer !important;
  position:relative !important;
  vertical-align:middle !important;
  transition:border-color .12s ease, background .12s ease;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list input[type="checkbox"]:checked{
  background:#3b82f6 !important;
  border-color:#3b82f6 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list input[type="checkbox"]:checked::after{
  content:'';
  position:absolute;
  left:3px; top:0px;
  width:5px; height:9px;
  border:solid #fff;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list label:has(input:checked){
  border-color:rgba(59,130,246,.65);
  background:rgba(37,99,235,.18);
  color:#bfdbfe !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-chip-list em{ font-style:normal; }

/* ===== v1.0.53 DealerNexus Customer Lookup + Rehash theme wrappers =====
   Additive only. Existing Deal Rehash classes unchanged so math/IDs are
   preserved. Set body class .dn-rehash-legacy-mode to roll back the v53
   theme — the search bar + AI collapse + workspace isolation still work.
*/
#dnCustomerLookup.dn-rehash-card{
  margin:14px 0 !important;
  padding:14px 16px !important;
  border:1px solid rgba(148,163,184,.16) !important;
  border-radius:18px !important;
  background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.62)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 6px 22px rgba(2,6,23,.45) !important;
  color:#e2e8f0 !important;
}
.dn-rehash-card-head{
  display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:10px;
}
.dn-rehash-eyebrow{
  font-size:11px !important; letter-spacing:.10em; text-transform:uppercase;
  font-weight:900 !important; color:#bae6fd !important; margin-bottom:2px;
}
.dn-rehash-muted{ color:rgba(203,213,225,.66) !important; font-size:11px !important; font-weight:600; }
.dn-rehash-actions{ display:flex; gap:8px; flex-wrap:wrap; }
.dn-rehash-pill{
  appearance:none; -webkit-appearance:none;
  display:inline-flex; align-items:center; gap:6px;
  height:32px; padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.30);
  background:rgba(15,23,42,.72);
  color:#e2e8f0 !important;
  font:800 11px/1 Inter,system-ui;
  letter-spacing:.04em; text-transform:uppercase;
  cursor:pointer;
  transition:border-color .12s ease, background .12s ease, color .12s ease;
}
.dn-rehash-pill:hover{ border-color:rgba(56,189,248,.5); color:#fff !important; }
.dn-rehash-pill-primary{
  background:linear-gradient(180deg, #2563eb, #1d4ed8) !important;
  border-color:#3b82f6 !important; color:#fff !important;
}
.dn-rehash-pill-secondary{
  background:rgba(14,165,233,.16) !important;
  border-color:rgba(56,189,248,.45) !important;
  color:#bae6fd !important;
}
.dn-rehash-search-row{
  display:flex; gap:8px; flex-wrap:wrap; align-items:center;
}
.dn-rehash-search-row input[type="search"]{
  flex:1 1 320px; min-width:240px;
  height:38px; padding:0 12px;
  border-radius:10px;
  border:1px solid rgba(148,163,184,.28);
  background:rgba(2,6,23,.65);
  color:#f8fafc;
  font:600 13px/1 Inter,system-ui;
  outline:none;
  transition:border-color .12s ease, box-shadow .12s ease;
}
.dn-rehash-search-row input[type="search"]:focus{
  border-color:rgba(56,189,248,.65);
  box-shadow:0 0 0 2px rgba(56,189,248,.20);
}
.dn-rehash-search-results{
  display:none;
  margin-top:10px;
  border:1px solid rgba(148,163,184,.18);
  background:rgba(2,6,23,.68);
  border-radius:12px;
  max-height:340px;
  overflow:auto;
}
.dn-rehash-search-results.is-open{ display:block; }
.dn-rehash-customer-row{
  display:flex; align-items:center; justify-content:space-between; gap:10px;
  padding:10px 12px;
  border-bottom:1px solid rgba(148,163,184,.10);
}
.dn-rehash-customer-row:last-child{ border-bottom:0; }
.dn-rehash-customer-row strong{ color:#fff; font-weight:900; }
.dn-rehash-customer-row .dn-rehash-customer-meta{ color:rgba(203,213,225,.70); font-size:11px; }
.dn-rehash-customer-row .dn-rehash-pill{ flex:0 0 auto; }

/* AI Decision Center collapse / expand toggle (v1.0.53) ----------------- */
#dnDecisionCenter .dn-aic-collapse-btn{
  appearance:none; -webkit-appearance:none;
  height:26px; padding:0 12px; border-radius:999px;
  border:1px solid rgba(56,189,248,.35);
  background:rgba(14,165,233,.16);
  color:#bae6fd; font:900 10.5px/1 Inter,system-ui;
  letter-spacing:.08em; text-transform:uppercase; cursor:pointer;
  transition:background .12s ease, color .12s ease;
}
#dnDecisionCenter .dn-aic-collapse-btn:hover{ background:rgba(14,165,233,.28); color:#fff; }
/* Hide deeper sections while collapsed. The hero, missing banner, AI Inputs,
   Action Bar, loading line, and Customer Fit / Confidence remain visible. */
#dnDecisionCenter.dn-aic-collapsed .dn-aic-kpis,
#dnDecisionCenter.dn-aic-collapsed .dn-aic-deal,
#dnDecisionCenter.dn-aic-collapsed .dn-aic-match,
#dnDecisionCenter.dn-aic-collapsed .dn-aic-reasoning,
#dnDecisionCenter.dn-aic-collapsed .dn-ai-advanced-shell{
  display:none !important;
}

/* Per-customer workspace tabs already exist; v1.0.53 just leaves them in place
   and styles the bar a touch nicer when in v53 mode. */
body:not(.dn-rehash-legacy-mode) .customer-workbar{
  border:1px solid rgba(148,163,184,.14);
  border-radius:14px;
  background:linear-gradient(180deg, rgba(15,23,42,.62), rgba(2,6,23,.55));
  padding:8px 10px;
}

/* Legacy-mode rollback — neutralizes ONLY the v1.0.53 theme wrappers. The
   AI collapse / customer search / workspace isolation still work. */
body.dn-rehash-legacy-mode #dnCustomerLookup{
  border-radius:8px !important;
  background:#fff !important;
  color:#111 !important;
  border:1px solid #cbd5e1 !important;
}
body.dn-rehash-legacy-mode #dnCustomerLookup .dn-rehash-eyebrow,
body.dn-rehash-legacy-mode #dnCustomerLookup .dn-rehash-muted{ color:#475569 !important; }
body.dn-rehash-legacy-mode #dnCustomerLookup input[type="search"]{
  background:#fff !important; color:#0f172a !important;
}
body.dn-rehash-legacy-mode .customer-workbar{
  border:0; background:transparent; padding:0;
}

/* v1.0.50 — AI missing-data banner (red dark glass). -------------------- */
#dnDecisionCenter .dn-ai-missing-banner{
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:12px 14px;
  margin:0 0 14px;
  border-radius:14px;
  border:1px solid rgba(239,68,68,.35);
  background:linear-gradient(180deg, rgba(60,9,11,.55), rgba(15,23,42,.78));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04), 0 6px 22px rgba(239,68,68,.12);
}
#dnDecisionCenter .dn-ai-missing-banner[data-state="loading"]{
  border-color:rgba(56,189,248,.35);
  background:linear-gradient(180deg, rgba(8,47,73,.55), rgba(15,23,42,.78));
}
#dnDecisionCenter .dn-ai-missing-banner-icon{
  flex:0 0 26px;
  width:26px; height:26px;
  border-radius:999px;
  background:rgba(239,68,68,.18);
  border:1px solid rgba(239,68,68,.50);
  color:#fecaca;
  font-weight:900;
  display:flex; align-items:center; justify-content:center;
  font-size:14px;
  margin-top:2px;
}
#dnDecisionCenter .dn-ai-missing-banner[data-state="loading"] .dn-ai-missing-banner-icon{
  background:rgba(56,189,248,.18);
  border-color:rgba(56,189,248,.50);
  color:#bae6fd;
}
#dnDecisionCenter .dn-ai-missing-banner-text{
  flex:1 1 auto;
  min-width:0;
}
#dnDecisionCenter .dn-ai-missing-banner-text strong{
  display:block;
  color:#ffffff !important;
  font-size:13px !important;
  font-weight:900 !important;
  letter-spacing:.04em;
  text-transform:uppercase;
  margin-bottom:6px;
}
#dnDecisionCenter .dn-ai-missing-banner-body{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:6px;
}
#dnDecisionCenter .dn-ai-missing-chip{
  display:inline-block;
  padding:3px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
  color:#fecaca !important;
  background:rgba(239,68,68,.14);
  border:1px solid rgba(239,68,68,.40);
}
#dnDecisionCenter .dn-ai-missing-chip-soft{
  color:#fde68a !important;
  background:rgba(245,158,11,.14);
  border-color:rgba(245,158,11,.40);
}
#dnDecisionCenter .dn-ai-missing-chip-info{
  color:#bae6fd !important;
  background:rgba(56,189,248,.14);
  border-color:rgba(56,189,248,.40);
}
#dnDecisionCenter .dn-ai-missing-banner-text small{
  display:block;
  color:rgba(226,232,240,.78) !important;
  font-size:11px !important;
  font-weight:700 !important;
}

/* v1.0.49 — AI loading line (animated cyan/blue gradient bar). ----------- */
#dnDecisionCenter .dn-ai-loading-line{
  display:none;
  margin:-8px 0 14px;
  padding:0;
  height:auto;
}
#dnDecisionCenter .dn-ai-loading-line.is-active{
  display:flex;
  align-items:center;
  gap:10px;
}
#dnDecisionCenter .dn-ai-loading-line-bar{
  flex:1 1 auto;
  height:3px;
  border-radius:999px;
  position:relative;
  overflow:hidden;
  background:rgba(15,23,42,.75);
  border:1px solid rgba(56,189,248,.18);
}
#dnDecisionCenter .dn-ai-loading-line-bar::before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, transparent 0%, rgba(34,211,238,.10) 30%, rgba(56,189,248,.85) 50%, rgba(34,211,238,.10) 70%, transparent 100%);
  background-size:200% 100%;
  animation:dn-ai-loading-shimmer 1.4s linear infinite;
}
#dnDecisionCenter .dn-ai-loading-line-label{
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(186,230,253,.86) !important;
  white-space:nowrap;
}
@keyframes dn-ai-loading-shimmer{
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* v1.0.49 — full-width Lender Comparison and stacked Advanced cards. ---- */
#dnDecisionCenter .dn-aic-compare-full{
  grid-column:1 / -1 !important;
}
#dnDecisionCenter .dn-aic-compare-full .dn-ai-detail-content{
  width:100% !important;
}
#dnDecisionCenter #dnLenderTableWrap table{
  width:100% !important;
  table-layout:auto;
}

/* v1.0.49 — per-vehicle Apply button + Fix Deal button. ---------------- */
#dnDecisionCenter .dn-aic-vehicle-apply-btn{
  margin-top:6px;
  padding:5px 10px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  border-radius:8px;
  border:1px solid rgba(56,189,248,.45);
  background:rgba(14,165,233,.14);
  color:#bae6fd;
  cursor:pointer;
  transition:background .12s ease, border-color .12s ease;
}
#dnDecisionCenter .dn-aic-vehicle-apply-btn:hover{
  background:rgba(14,165,233,.28);
  border-color:#38bdf8;
  color:#fff;
}
#dnDecisionCenter .dn-aic-fix-deal-btn{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
}

/* 3. AI ACTION BAR ---------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-actions{
  display:flex !important; flex-wrap:wrap !important; gap:8px !important;
  margin:0 0 16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn{
  height:40px !important;
  padding:0 16px !important;
  border-radius:12px !important;
  border:1px solid rgba(148,163,184,.22) !important;
  background:rgba(15,23,42,.74) !important;
  color:#f8fafc !important;
  font-size:13px !important; font-weight:900 !important;
  letter-spacing:.01em !important;
  cursor:pointer !important;
  transition:transform .12s ease, border-color .15s ease, background .15s ease, box-shadow .15s ease;
  display:inline-flex; align-items:center; gap:8px;
  text-transform:none !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn:hover{ transform:translateY(-1px); }
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn:focus-visible{
  outline:2px solid rgba(59,130,246,.55); outline-offset:1px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-primary{
  background:linear-gradient(135deg, #2563eb, #38bdf8) !important;
  border-color:rgba(59,130,246,.55) !important;
  color:#ffffff !important;
  box-shadow:0 12px 30px rgba(37,99,235,.28);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-primary:hover{
  box-shadow:0 16px 36px rgba(37,99,235,.40);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-secondary{
  background:rgba(15,23,42,.74) !important;
  border-color:rgba(148,163,184,.22) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-secondary:hover{
  border-color:rgba(56,189,248,.45) !important;
  background:rgba(15,23,42,.92) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-danger{
  background:rgba(15,23,42,.74) !important;
  border-color:rgba(148,163,184,.22) !important;
  color:rgba(226,232,240,.86) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-btn-danger:hover{
  border-color:rgba(239,68,68,.55) !important;
  color:#fecaca !important;
}

/* 4. KPI STRIP -------------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-kpis{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:10px !important;
  margin:0 0 16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-kpi{
  border:1px solid rgba(148,163,184,.16) !important;
  background:rgba(2,6,23,.55) !important;
  border-radius:18px !important;
  padding:14px 14px !important;
  display:flex; flex-direction:column; gap:4px;
  min-height:84px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-kpi span{
  font-size:10px !important; letter-spacing:.12em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:rgba(203,213,225,.66) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-kpi b{
  font-size:22px !important; font-weight:900 !important;
  color:#ffffff !important;
  margin-top:2px;
  font-variant-numeric:tabular-nums;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-kpi small{
  font-size:11px !important;
  color:rgba(186,230,253,.72) !important;
  font-weight:700 !important; margin-top:2px;
}

/* 5. DEAL STRUCTURE + APPROVAL LIMITS --------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-deal{
  display:grid !important;
  grid-template-columns:1.35fr 1fr !important;
  gap:12px !important;
  margin:0 0 16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-deal-card,
#dnDecisionCenter.dn-aic-v41 .dn-aic-match-card{
  border:1px solid rgba(148,163,184,.16) !important;
  background:rgba(15,23,42,.62) !important;
  border-radius:18px !important;
  padding:14px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-section-head{
  display:flex; flex-direction:column; gap:3px; margin-bottom:10px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-section-head h3{
  font-size:13px !important; font-weight:900 !important;
  letter-spacing:.06em !important; text-transform:uppercase !important;
  color:#ffffff !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-section-head small{
  font-size:11px !important;
  color:rgba(203,213,225,.62) !important; font-weight:700 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid-2col{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid > div{
  border:1px solid rgba(148,163,184,.12);
  background:rgba(2,6,23,.55);
  border-radius:12px;
  padding:10px;
  display:flex; flex-direction:column; gap:3px;
  min-height:54px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid > div span{
  font-size:9.5px !important; letter-spacing:.10em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:rgba(203,213,225,.62) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid > div b{
  font-size:14px !important; font-weight:900 !important;
  color:#ffffff !important; word-break:break-word;
  font-variant-numeric:tabular-nums;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-decline-row{
  margin-top:10px; padding:10px 12px; border-radius:12px;
  border:1px solid rgba(239,68,68,.30);
  background:rgba(127,29,29,.20);
  display:flex; flex-direction:column; gap:3px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-decline-row span{
  font-size:10px !important; letter-spacing:.10em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:#fecaca !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-decline-row b{
  font-size:13px !important; color:#fee2e2 !important;
}

/* 6. VEHICLE / LENDER MATCH ------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-match{
  display:grid !important;
  grid-template-columns:1fr 1fr !important;
  gap:12px !important;
  margin:0 0 16px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reason{
  margin-top:10px; padding:10px 12px; border-radius:12px;
  background:rgba(2,6,23,.62);
  border:1px solid rgba(148,163,184,.12);
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reason b{
  display:block; font-size:11px !important; letter-spacing:.10em !important;
  text-transform:uppercase !important; color:#bae6fd !important; font-weight:900 !important;
  margin-bottom:4px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reason p{
  margin:0 !important; font-size:13px !important; line-height:1.5 !important;
  color:rgba(248,250,252,.86) !important; font-weight:600 !important;
}

/* 7. DECISION REASONING ----------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-reasoning{
  margin:0 0 16px !important;
  padding:14px 16px !important;
  border:1px solid rgba(34,197,94,.22) !important;
  background:
    linear-gradient(135deg, rgba(20,83,45,.18), rgba(15,23,42,.6)) !important;
  border-radius:18px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reasoning-label{
  display:inline-block;
  font-size:10px !important; letter-spacing:.14em !important;
  text-transform:uppercase !important; font-weight:900 !important;
  color:#86efac !important; margin-bottom:6px;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reasoning p{
  margin:0 !important; font-size:14px !important; line-height:1.55 !important;
  color:#f8fafc !important; font-weight:600 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-aic-reasoning small{
  display:block; margin-top:6px;
  font-size:12px !important; color:rgba(203,213,225,.62) !important;
}

/* 8. ADVANCED DRAWER -------------------------------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-shell{
  margin:0 0 4px !important;
  border:1px solid rgba(148,163,184,.16) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:linear-gradient(180deg, rgba(15,23,42,.78), rgba(2,6,23,.72)) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-toggle{
  width:100% !important;
  border:0 !important;
  background:rgba(15,23,42,.74) !important;
  color:#f8fafc !important;
  display:flex !important; align-items:center !important;
  justify-content:space-between !important; gap:12px !important;
  padding:13px 16px !important;
  cursor:pointer !important;
  font-weight:900 !important; letter-spacing:.01em !important;
  text-align:left !important; text-transform:none !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-toggle:hover{ background:rgba(15,23,42,.88) !important; }
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-title-block{
  display:flex; flex-direction:column; gap:2px; flex:1 1 auto;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-title{
  font-size:13px !important; font-weight:900 !important;
  letter-spacing:.06em !important; text-transform:uppercase !important;
  color:#ffffff !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-toggle small{
  color:rgba(226,232,240,.68) !important;
  font-size:12px !important; font-weight:700 !important;
  text-transform:none !important; letter-spacing:0 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-chevron{
  color:rgba(248,250,252,.72) !important;
  transition:transform .18s ease;
  font-size:20px; line-height:1; font-style:normal;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-shell.is-open .dn-ai-advanced-chevron{
  transform:rotate(180deg);
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-body{
  display:none;
  border-top:1px solid rgba(148,163,184,.12);
  padding:14px;
  background:rgba(2,6,23,.45);
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-advanced-shell.is-open .dn-ai-advanced-body{
  display:block;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-grid{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:12px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-card{
  border:1px solid rgba(148,163,184,.14) !important;
  border-radius:16px !important;
  background:rgba(15,23,42,.64) !important;
  padding:14px !important;
  min-height:92px !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-title{
  color:#ffffff !important; font-weight:900 !important;
  font-size:12px !important; letter-spacing:.10em !important;
  text-transform:uppercase !important; margin-bottom:8px !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-content{
  color:rgba(248,250,252,.84) !important;
  font-size:13px !important; line-height:1.45 !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-content *{ color:inherit !important; }
#dnDecisionCenter.dn-aic-v41 ul.dn-ai-detail-content{ list-style:disc; padding-left:18px; margin:0; }
#dnDecisionCenter.dn-aic-v41 ul.dn-ai-detail-content li{ margin-bottom:4px; }
/* Tables inside advanced cards */
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-card table{
  width:100% !important; border-collapse:collapse !important;
  font-size:12px !important; color:rgba(248,250,252,.84) !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-card th,
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-card td{
  border-bottom:1px solid rgba(148,163,184,.12) !important;
  padding:6px 7px !important; text-align:left !important;
  background:transparent !important;
}
#dnDecisionCenter.dn-aic-v41 .dn-ai-detail-card th{
  color:rgba(186,230,253,.78) !important; font-weight:900 !important;
  font-size:11px !important; letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

/* 9. HIDDEN ENGINE BRIDGE — TRULY INVISIBLE -------------------------- */
#dnDecisionCenter.dn-aic-v41 .dn-aic-bridge,
#dnDecisionCenter.dn-aic-v41 .dn-aic-bridge *{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  width:0 !important; height:0 !important;
  max-width:0 !important; max-height:0 !important;
  margin:0 !important; padding:0 !important;
  border:0 !important;
  overflow:hidden !important;
  pointer-events:none !important;
  position:absolute !important;
  left:-99999px !important; top:-99999px !important;
  clip-path:inset(50%) !important;
  font-size:0 !important; line-height:0 !important;
}

/* RESPONSIVE ---------------------------------------------------------- */
@media (max-width:1000px){
  #dnDecisionCenter.dn-aic-v41 .dn-aic-fit{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-fit-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-kpis{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-deal{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-match{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-grid{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:640px){
  #dnDecisionCenter.dn-aic-v41{ padding:14px !important; border-radius:20px !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-hero{ flex-direction:column; align-items:flex-start; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-hero-pills{ flex-direction:row; flex-wrap:wrap; align-items:flex-start; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-fit-grid{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-kpis{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid,
  #dnDecisionCenter.dn-aic-v41 .dn-aic-metric-grid-2col,
  #dnDecisionCenter.dn-aic-v41 .dn-aic-inputs-grid,
  #dnDecisionCenter.dn-aic-v41 .dn-aic-chip-row,
  #dnDecisionCenter.dn-aic-v41 .dn-ai-detail-grid{ grid-template-columns:1fr !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-actions{ display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  #dnDecisionCenter.dn-aic-v41 .dn-aic-btn{ width:100% !important; justify-content:center; }
}

/* ====================================================================
   v1.0.43 AI Training Center Styles
   Dark glass theme, responsive grid, lender cards, drawer, modals
   ==================================================================== */

.dn-train-root {
  background: linear-gradient(135deg, rgba(15,23,42,0.8), rgba(30,41,59,0.6));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.3);
}

.dn-train-hero {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 32px;
  gap: 24px;
}

.dn-train-hero > div {
  flex: 1;
}

.dn-train-kicker {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.8px;
  color: #0ea5e9;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.dn-train-hero h2 {
  font-size: 28px;
  font-weight: 700;
  color: #f1f5f9;
  margin: 0 0 8px 0;
}

.dn-train-hero > div > p {
  font-size: 14px;
  color: #cbd5e1;
  margin: 0;
  line-height: 1.5;
}

.dn-train-pills {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}

.dn-train-btn-secondary,
.dn-train-version-pill,
.dn-train-status-pill {
  background: rgba(148,163,184,0.12);
  border: 1px solid rgba(148,163,184,0.24);
  border-radius: 6px;
  padding: 8px 14px;
  font-size: 12px;
  font-weight: 600;
  color: #cbd5e1;
  cursor: pointer;
  transition: all 0.2s;
}

.dn-train-btn-secondary:hover {
  background: rgba(148,163,184,0.18);
  color: #e2e8f0;
}

.dn-train-version-pill {
  cursor: default;
  background: rgba(56,189,248,0.08);
  border-color: rgba(56,189,248,0.24);
  color: #7dd3fc;
}

.dn-train-status-pill {
  cursor: default;
  background: rgba(34,197,94,0.12);
  border-color: rgba(34,197,94,0.28);
  color: #86efac;
}

.dn-train-status-pill.error {
  background: rgba(239,68,68,0.12);
  border-color: rgba(239,68,68,0.28);
  color: #fca5a5;
}

.dn-train-status-pill.partial {
  background: rgba(245,158,11,0.12);
  border-color: rgba(245,158,11,0.28);
  color: #fcd34d;
}

/* KPIs */
.dn-train-kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-bottom: 32px;
}

.dn-train-kpi-card {
  background: rgba(30,41,59,0.6);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 8px;
  padding: 16px;
  text-align: center;
}

.dn-train-kpi-value {
  font-size: 24px;
  font-weight: 700;
  color: #22c55e;
  margin-bottom: 6px;
}

.dn-train-kpi-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.6px;
  color: #94a3b8;
  text-transform: uppercase;
  margin-bottom: 4px;
}

.dn-train-kpi-card small {
  font-size: 12px;
  color: #cbd5e1;
}

/* Matrix */
.dn-train-matrix {
  margin-bottom: 32px;
}

.dn-train-matrix > div:first-child {
  margin-bottom: 16px;
}

.dn-train-matrix h3 {
  font-size: 18px;
  font-weight: 700;
  color: #f1f5f9;
  margin: 0 0 4px 0;
}

.dn-train-matrix p {
  font-size: 14px;
  color: #cbd5e1;
  margin: 0;
  line-height: 1.4;
}

.dn-train-lender-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.dn-train-lender-card {
  background: rgba(30,41,59,0.5);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  min-height: 300px;
  transition: all 0.3s;
}

.dn-train-lender-card:hover {
  background: rgba(30,41,59,0.8);
  border-color: rgba(56,189,248,0.28);
  box-shadow: 0 4px 16px rgba(56,189,248,0.1);
}

.dn-train-lender-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: rgba(56,189,248,0.16);
  border: 1px solid rgba(56,189,248,0.24);
  border-radius: 6px;
  font-size: 11px;
  font-weight: 700;
  color: #38bdf8;
  margin-bottom: 12px;
}

.dn-train-lender-name {
  font-size: 14px;
  font-weight: 700;
  color: #f1f5f9;
  margin-bottom: 4px;
}

.dn-train-status {
  display: inline-block;
  font-size: 11px;
  font-weight: 600;
  padding: 4px 8px;
  border-radius: 4px;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  margin-bottom: 12px;
}

.dn-train-status[data-status="ready"] {
  background: rgba(34,197,94,0.16);
  border: 1px solid rgba(34,197,94,0.28);
  color: #bbf7d0;
}

.dn-train-status[data-status="partial"] {
  background: rgba(245,158,11,0.14);
  border: 1px solid rgba(245,158,11,0.28);
  color: #fde68a;
}

.dn-train-status[data-status="missing"] {
  background: rgba(148,163,184,0.14);
  border: 1px solid rgba(148,163,184,0.24);
  color: #cbd5e1;
}

.dn-train-status[data-status="error"] {
  background: rgba(239,68,68,0.16);
  border: 1px solid rgba(239,68,68,0.28);
  color: #fecaca;
}

.dn-train-lender-stats {
  font-size: 12px;
  color: #94a3b8;
  margin-bottom: 12px;
  flex: 1;
}

.dn-train-lender-stats div {
  display: flex;
  justify-content: space-between;
  padding: 4px 0;
  border-bottom: 1px solid rgba(148,163,184,0.08);
}

.dn-train-lender-stats div:last-child {
  border-bottom: none;
}

.dn-train-lender-stats span:first-child {
  color: #94a3b8;
}

.dn-train-lender-stats span:last-child {
  color: #cbd5e1;
  font-weight: 600;
}

.dn-train-lender-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.dn-train-lender-actions button {
  background: rgba(56,189,248,0.12);
  border: 1px solid rgba(56,189,248,0.24);
  border-radius: 4px;
  padding: 8px;
  font-size: 11px;
  font-weight: 600;
  color: #7dd3fc;
  cursor: pointer;
  transition: all 0.2s;
  text-align: center;
}

.dn-train-lender-actions button:hover {
  background: rgba(56,189,248,0.18);
  border-color: rgba(56,189,248,0.32);
  color: #38bdf8;
}

/* Deal Training */
.dn-train-deals,
.dn-train-manual {
  margin-bottom: 32px;
}

.dn-train-deals > div:first-child,
.dn-train-manual > div:first-child {
  margin-bottom: 16px;
}

.dn-train-deals h3,
.dn-train-manual h3 {
  font-size: 18px;
  font-weight: 700;
  color: #f1f5f9;
  margin: 0 0 4px 0;
}

.dn-train-deals p,
.dn-train-manual p {
  font-size: 14px;
  color: #cbd5e1;
  margin: 0 0 16px 0;
  line-height: 1.4;
}

.dn-train-deal-form,
.dn-train-deal-notes {
  margin-bottom: 12px;
}

.dn-train-deal-form {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.dn-train-deal-form > div {
  display: flex;
  flex-direction: column;
}

.dn-train-deal-form label,
.dn-train-deal-notes label {
  font-size: 12px;
  font-weight: 600;
  color: #cbd5e1;
  margin-bottom: 6px;
}

.dn-train-deal-form select,
.dn-train-deal-form input,
.dn-train-deal-notes textarea {
  background: rgba(30,41,59,0.8);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 4px;
  padding: 8px 10px;
  font-size: 13px;
  color: #f1f5f9;
  outline: none;
}

.dn-train-deal-form select:focus,
.dn-train-deal-form input:focus,
.dn-train-deal-notes textarea:focus {
  border-color: rgba(56,189,248,0.32);
  box-shadow: 0 0 8px rgba(56,189,248,0.12);
}

.dn-train-deal-notes {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.dn-train-deal-notes textarea {
  min-height: 80px;
  resize: vertical;
}

.dn-train-btn {
  background: linear-gradient(135deg, #0ea5e9, #06b6d4);
  border: 1px solid rgba(56,189,248,0.24);
  border-radius: 6px;
  padding: 10px 16px;
  font-size: 13px;
  font-weight: 600;
  color: #ffffff;
  cursor: pointer;
  transition: all 0.2s;
  margin-bottom: 12px;
}

.dn-train-btn:hover {
  background: linear-gradient(135deg, #0284c7, #0891b2);
  box-shadow: 0 4px 16px rgba(56,189,248,0.2);
}

.dn-train-btn-danger {
  background: rgba(239,68,68,0.16);
  border: 1px solid rgba(239,68,68,0.28);
  color: #fecaca;
}

.dn-train-btn-danger:hover {
  background: rgba(239,68,68,0.24);
  color: #fca5a5;
}

.dn-train-status-msg {
  font-size: 12px;
  color: #cbd5e1;
  padding: 8px 12px;
  background: rgba(148,163,184,0.08);
  border-left: 2px solid rgba(56,189,248,0.24);
  border-radius: 4px;
  margin-top: 8px;
  display: none;
}

.dn-train-status-msg.show {
  display: block;
}

.dn-train-status-msg.success {
  background: rgba(34,197,94,0.08);
  border-left-color: rgba(34,197,94,0.28);
  color: #bbf7d0;
}

.dn-train-status-msg.error {
  background: rgba(239,68,68,0.08);
  border-left-color: rgba(239,68,68,0.28);
  color: #fecaca;
}

.dn-train-manual-actions {
  display: flex;
  gap: 8px;
  margin-bottom: 12px;
}

.dn-train-manual-actions button {
  flex: 1;
}

/* Drawer */
.dn-train-drawer {
  position: fixed;
  right: -450px;
  top: 0;
  width: 420px;
  height: 100vh;
  background: rgba(2,6,23,0.96);
  border-left: 1px solid rgba(56,189,248,0.22);
  box-shadow: -32px 0 80px rgba(0,0,0,0.5);
  z-index: 1000;
  transition: right 0.3s ease;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.dn-train-drawer[aria-hidden="false"] {
  right: 0;
}

.dn-train-drawer-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  border-bottom: 1px solid rgba(148,163,184,0.16);
}

.dn-train-drawer-head h3 {
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: #f1f5f9;
}

.dn-train-drawer-close {
  background: transparent;
  border: none;
  font-size: 20px;
  color: #94a3b8;
  cursor: pointer;
  transition: color 0.2s;
}

.dn-train-drawer-close:hover {
  color: #cbd5e1;
}

.dn-train-drawer-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
}

.dn-train-drawer-meta {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid rgba(148,163,184,0.16);
}

.dn-train-drawer-meta div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dn-train-drawer-meta span {
  font-size: 11px;
  color: #94a3b8;
  text-transform: uppercase;
  font-weight: 600;
  letter-spacing: 0.4px;
}

.dn-train-drawer-meta strong {
  font-size: 13px;
  color: #f1f5f9;
}

.dn-train-drawer-tabs {
  display: flex;
  gap: 4px;
  margin-bottom: 16px;
  border-bottom: 1px solid rgba(148,163,184,0.16);
}

.dn-train-drawer-tab {
  background: transparent;
  border: none;
  padding: 10px 12px;
  font-size: 12px;
  font-weight: 600;
  color: #94a3b8;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  transition: all 0.2s;
}

.dn-train-drawer-tab.active {
  color: #38bdf8;
  border-bottom-color: #0ea5e9;
}

.dn-train-drawer-tab:hover {
  color: #cbd5e1;
}

.dn-train-drawer-tab-body {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.dn-train-drawer-tab-body label {
  font-size: 12px;
  font-weight: 600;
  color: #cbd5e1;
}

.dn-train-drawer-tab-body input,
.dn-train-drawer-tab-body textarea {
  background: rgba(30,41,59,0.8);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 4px;
  padding: 8px 10px;
  font-size: 13px;
  color: #f1f5f9;
  outline: none;
}

.dn-train-drawer-tab-body input:focus,
.dn-train-drawer-tab-body textarea:focus {
  border-color: rgba(56,189,248,0.32);
  box-shadow: 0 0 8px rgba(56,189,248,0.12);
}

.dn-train-drawer-tab-body textarea {
  min-height: 200px;
  resize: vertical;
  font-family: 'Monaco', 'Courier New', monospace;
  font-size: 12px;
}

.dn-train-file-input {
  position: absolute;
  left: -9999px;
  opacity: 0;
}

/* v1.0.46: extracted-text preview inside the guideline drawer */
.dn-train-preview {
  margin: 10px 0 0;
  max-height: 240px;
  overflow: auto;
  padding: 10px 12px;
  font-family: 'SF Mono', Menlo, Monaco, 'Courier New', monospace;
  font-size: 11px;
  line-height: 1.45;
  color: rgba(226,232,240,0.86);
  background: rgba(2,6,23,0.62);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 12px;
  white-space: pre-wrap;
  word-break: break-word;
}

/* v1.0.44: styled Choose File row inside the guideline drawer (replaces the
   raw browser file input). Matches the existing dark-glass theme. */
.dn-train-drawer-help {
  margin: 0 0 8px;
  font-size: 12px;
  color: rgba(203,213,225,0.66);
  line-height: 1.45;
}
.dn-train-file-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 10px;
  flex-wrap: wrap;
}
.dn-train-file-pill {
  display: inline-flex;
  align-items: center;
  font-size: 12px;
  font-weight: 700;
  color: rgba(226,232,240,0.84);
  background: rgba(15,23,42,0.62);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 999px;
  padding: 6px 12px;
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.dn-train-rules-preview {
  background: rgba(30,41,59,0.6);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 4px;
  padding: 12px;
  max-height: 400px;
  overflow-y: auto;
  font-size: 12px;
  color: #cbd5e1;
  line-height: 1.6;
}

.dn-train-rules-preview div {
  display: flex;
  justify-content: space-between;
  padding: 4px 0;
  border-bottom: 1px solid rgba(148,163,184,0.08);
}

.dn-train-rules-preview div:last-child {
  border-bottom: none;
}

.dn-train-rules-preview strong {
  color: #f1f5f9;
  font-weight: 600;
}

.dn-train-drawer-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 16px;
  border-top: 1px solid rgba(148,163,184,0.16);
}

.dn-train-drawer-actions button {
  padding: 8px 12px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s;
  border: none;
}

.dn-train-drawer-actions .dn-train-btn-secondary {
  background: rgba(148,163,184,0.12);
  color: #cbd5e1;
}

.dn-train-drawer-actions .dn-train-btn-secondary:hover {
  background: rgba(148,163,184,0.18);
}

.dn-train-drawer-actions .dn-train-btn-danger {
  background: rgba(239,68,68,0.16);
  color: #fecaca;
}

.dn-train-drawer-actions .dn-train-btn-danger:hover {
  background: rgba(239,68,68,0.24);
}

/* Debug */
.dn-train-debug {
  margin-bottom: 32px;
}

.dn-train-debug details {
  background: rgba(30,41,59,0.5);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 6px;
  padding: 12px;
}

.dn-train-debug summary {
  font-size: 13px;
  font-weight: 600;
  color: #cbd5e1;
  cursor: pointer;
  user-select: none;
}

.dn-train-debug-content {
  margin-top: 12px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(148,163,184,0.16);
}

.dn-train-debug-content div {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.dn-train-debug-content span {
  font-size: 11px;
  color: #94a3b8;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.4px;
}

.dn-train-debug-content strong {
  font-size: 12px;
  color: #cbd5e1;
}

.dn-train-debug-actions {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(148,163,184,0.16);
}

.dn-train-debug-actions button {
  background: rgba(56,189,248,0.12);
  border: 1px solid rgba(56,189,248,0.24);
  border-radius: 4px;
  padding: 6px;
  font-size: 11px;
  font-weight: 600;
  color: #7dd3fc;
  cursor: pointer;
  transition: all 0.2s;
}

.dn-train-debug-actions button:hover {
  background: rgba(56,189,248,0.18);
  color: #38bdf8;
}

/* Responsive */
@media (max-width: 1200px) {
  .dn-train-lender-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .dn-train-kpis {
    grid-template-columns: repeat(2, 1fr);
  }
  .dn-train-deal-form {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px) {
  .dn-train-lender-grid {
    grid-template-columns: 1fr;
  }
  .dn-train-kpis {
    grid-template-columns: 1fr;
  }
  .dn-train-hero {
    flex-direction: column;
  }
  .dn-train-pills {
    justify-content: flex-start;
  }
  .dn-train-drawer {
    width: 100%;
    right: -100%;
  }
  .dn-train-debug-content {
    grid-template-columns: 1fr;
  }
  .dn-train-debug-actions {
    grid-template-columns: 1fr;
  }
}


/* v1.0.45: Extraction method detail in training drawer */
.dn-train-status-detail {
  display: block;
  font-size: 11px;
  color: rgba(203,213,225,0.62);
  margin-top: 4px;
  font-weight: normal;
}

/* =====================================================================
   v2.0.0-phase1 — DealerNexus SaaS Design System (additive only).
   Namespace: .dnx-*  ·  shell class: .dnx-shell-v2
   These classes do not modify any existing pages. Apply them on new
   page wrappers / components going forward. Theme matches AI Decision
   Center dark glass.
   ===================================================================== */
.dnx-shell-v2 {
  --dnx-bg:        rgba(2,6,23,0.55);
  --dnx-panel:     rgba(15,23,42,0.78);
  --dnx-panel-2:   rgba(15,23,42,0.62);
  --dnx-border:    rgba(148,163,184,0.16);
  --dnx-text:      #e2e8f0;
  --dnx-text-soft: rgba(203,213,225,0.78);
  --dnx-muted:     rgba(203,213,225,0.55);
  --dnx-accent:    #38bdf8;
  --dnx-accent-2:  #3b82f6;
  --dnx-success:   #22c55e;
  --dnx-warning:   #f59e0b;
  --dnx-danger:    #ef4444;
  color: var(--dnx-text);
}

/* page wrapper -------------------------------------------------------- */
.dnx-page {
  display: block;
  padding: 18px 22px 28px;
  min-height: 100%;
}
.dnx-page-header {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 16px; margin: 0 0 18px;
}
.dnx-page-eyebrow {
  display: inline-block; font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; font-weight: 900;
  color: #bae6fd; margin-bottom: 4px;
}
.dnx-page-title {
  font-size: 22px; font-weight: 900; color: #f8fafc;
  margin: 0; letter-spacing: -.01em;
}
.dnx-page-subtitle {
  margin: 4px 0 0; font-size: 13px; color: var(--dnx-text-soft);
}
.dnx-page-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* card ---------------------------------------------------------------- */
.dnx-card {
  border: 1px solid var(--dnx-border);
  background: linear-gradient(180deg, var(--dnx-panel), var(--dnx-bg));
  border-radius: 18px;
  padding: 14px 16px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 22px rgba(2,6,23,0.45);
  margin: 0 0 14px;
}
.dnx-card-header {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 12px; margin-bottom: 10px;
}
.dnx-card-title {
  font-size: 13px; font-weight: 900; letter-spacing: .04em;
  text-transform: uppercase; color: #fff; margin: 0;
}
.dnx-card-subtitle {
  font-size: 11px; color: var(--dnx-muted); margin: 2px 0 0;
}

/* grid ---------------------------------------------------------------- */
.dnx-grid    { display: grid; gap: 12px; }
.dnx-grid-2  { grid-template-columns: repeat(2, minmax(0,1fr)); }
.dnx-grid-3  { grid-template-columns: repeat(3, minmax(0,1fr)); }
.dnx-grid-4  { grid-template-columns: repeat(4, minmax(0,1fr)); }
@media (max-width: 1100px) {
  .dnx-grid-3, .dnx-grid-4 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 720px) {
  .dnx-grid-2, .dnx-grid-3, .dnx-grid-4 { grid-template-columns: minmax(0,1fr); }
}

/* form ---------------------------------------------------------------- */
.dnx-field {
  display: flex; flex-direction: column; gap: 4px;
  font-size: 12px; color: var(--dnx-text-soft); font-weight: 800;
  letter-spacing: .02em;
}
.dnx-input,
.dnx-select {
  height: 36px; padding: 0 10px;
  border-radius: 10px;
  border: 1px solid rgba(148,163,184,0.28);
  background: rgba(2,6,23,0.62);
  color: #f8fafc;
  font: 600 13px/1 Inter, system-ui, sans-serif;
  outline: none;
  transition: border-color .12s ease, box-shadow .12s ease;
}
.dnx-input:focus,
.dnx-select:focus {
  border-color: rgba(56,189,248,0.65);
  box-shadow: 0 0 0 2px rgba(56,189,248,0.20);
}
.dnx-input::placeholder { color: rgba(148,163,184,0.55); }

/* buttons ------------------------------------------------------------- */
.dnx-btn {
  appearance: none; -webkit-appearance: none;
  display: inline-flex; align-items: center; justify-content: center; gap: 6px;
  height: 36px; padding: 0 14px;
  border-radius: 10px;
  border: 1px solid rgba(148,163,184,0.30);
  background: rgba(15,23,42,0.72);
  color: var(--dnx-text) !important;
  font: 800 12px/1 Inter, system-ui, sans-serif;
  letter-spacing: .04em; text-transform: uppercase;
  cursor: pointer;
  transition: border-color .12s ease, background .12s ease, color .12s ease;
}
.dnx-btn:hover { border-color: var(--dnx-accent); color: #fff !important; }
.dnx-btn-primary {
  background: linear-gradient(180deg, var(--dnx-accent-2), #1d4ed8) !important;
  border-color: var(--dnx-accent-2) !important; color: #fff !important;
}
.dnx-btn-secondary {
  background: rgba(14,165,233,0.16) !important;
  border-color: rgba(56,189,248,0.45) !important;
  color: #bae6fd !important;
}
.dnx-btn-danger {
  background: rgba(239,68,68,0.16) !important;
  border-color: rgba(239,68,68,0.45) !important;
  color: #fecaca !important;
}
.dnx-btn[disabled],
.dnx-btn[aria-disabled="true"] { opacity: .55; cursor: not-allowed; }

/* pills --------------------------------------------------------------- */
.dnx-pill {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 2px 10px; border-radius: 999px;
  font: 900 10.5px/1 Inter, system-ui, sans-serif;
  letter-spacing: .08em; text-transform: uppercase;
  border: 1px solid rgba(148,163,184,0.30);
  background: rgba(2,6,23,0.62);
  color: var(--dnx-text);
}
.dnx-pill-success { background: rgba(34,197,94,0.14); border-color: rgba(34,197,94,0.45); color: #bbf7d0; }
.dnx-pill-warning { background: rgba(245,158,11,0.14); border-color: rgba(245,158,11,0.45); color: #fde68a; }
.dnx-pill-danger  { background: rgba(239,68,68,0.14); border-color: rgba(239,68,68,0.45); color: #fecaca; }

/* states -------------------------------------------------------------- */
.dnx-empty-state,
.dnx-loading-state {
  display: flex; align-items: center; justify-content: center;
  flex-direction: column; gap: 6px;
  padding: 32px 20px; text-align: center;
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 14px;
  background: rgba(2,6,23,0.45);
}
.dnx-empty-state strong,
.dnx-loading-state strong {
  color: #fff; font-size: 14px; letter-spacing: .04em;
}
.dnx-empty-state small,
.dnx-loading-state small {
  color: var(--dnx-muted); font-size: 12px;
}

/* table --------------------------------------------------------------- */
.dnx-table {
  width: 100%; border-collapse: collapse;
  font-size: 12px; color: rgba(248,250,252,0.86);
}
.dnx-table thead th {
  text-align: left; padding: 8px 10px;
  border-bottom: 1px solid rgba(148,163,184,0.18);
  color: #bae6fd; font-size: 11px; letter-spacing: .08em;
  text-transform: uppercase; font-weight: 900;
}
.dnx-table tbody td {
  padding: 8px 10px;
  border-bottom: 1px solid rgba(148,163,184,0.10);
}

/* toolbar ------------------------------------------------------------- */
.dnx-toolbar {
  display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
  padding: 10px 12px; margin-bottom: 12px;
  border: 1px solid var(--dnx-border);
  border-radius: 12px;
  background: rgba(15,23,42,0.62);
}

/* KPI card ------------------------------------------------------------ */
.dnx-kpi-card {
  border: 1px solid var(--dnx-border);
  background: linear-gradient(180deg, var(--dnx-panel), var(--dnx-bg));
  border-radius: 14px;
  padding: 14px 16px;
}
.dnx-kpi-card span {
  display: block; font-size: 10px; letter-spacing: .12em;
  text-transform: uppercase; color: var(--dnx-muted); font-weight: 800;
}
.dnx-kpi-card b {
  display: block; margin-top: 4px; font-size: 22px;
  font-weight: 900; color: #fff; letter-spacing: -.01em;
}
.dnx-kpi-card small {
  display: block; margin-top: 2px; font-size: 11px; color: var(--dnx-text-soft);
}

/* debug panel --------------------------------------------------------- */
.dnx-debug-panel {
  border: 1px solid rgba(245,158,11,0.30);
  background: linear-gradient(180deg, rgba(60,40,8,0.55), rgba(15,23,42,0.78));
  border-radius: 14px;
  padding: 12px 14px; margin: 14px 0;
}
.dnx-debug-panel h3 {
  margin: 0 0 6px; font-size: 12px; color: #fde68a;
  letter-spacing: .08em; text-transform: uppercase;
}
.dnx-debug-panel pre {
  margin: 8px 0 0; padding: 10px;
  border-radius: 10px;
  background: rgba(2,6,23,0.65);
  color: #e2e8f0;
  font: 600 11px/1.45 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  max-height: 360px; overflow: auto;
}

/* =====================================================================
   v2.0.0-settings-v1 — Settings sub-tabs (scoped to #dnSettingsPage).
   ===================================================================== */
#dnSettingsPage .dnx-settings-center {
  padding: 18px 22px 28px; color: #e2e8f0;
}
#dnSettingsPage .dnx-settings-hero {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 14px; margin-bottom: 16px;
  padding: 16px 18px;
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 22px rgba(2,6,23,0.45);
}
#dnSettingsPage .dnx-settings-eyebrow {
  display: inline-block; font-size: 11px; letter-spacing: .12em;
  text-transform: uppercase; font-weight: 900; color: #bae6fd; margin-bottom: 4px;
}
#dnSettingsPage .dnx-settings-hero h1 {
  margin: 0; font-size: 22px; font-weight: 900; color: #f8fafc; letter-spacing: -.01em;
}
#dnSettingsPage .dnx-settings-hero p {
  margin: 6px 0 0; font-size: 13px; color: rgba(203,213,225,.78);
}
#dnSettingsPage .dnx-settings-version {
  display: inline-flex; align-items: center; gap: 6px;
}
#dnSettingsPage #dnSettingsVersionPill {
  display: inline-block; padding: 5px 12px; border-radius: 999px;
  font: 900 11px/1 Inter, system-ui, sans-serif; letter-spacing: .08em; text-transform: uppercase;
  color: #bae6fd;
  background: rgba(14,165,233,0.14);
  border: 1px solid rgba(56,189,248,0.45);
}

/* tab bar */
#dnSettingsPage .dnx-settings-tabs {
  display: flex; gap: 6px; flex-wrap: wrap; padding: 6px;
  border: 1px solid rgba(148,163,184,0.14);
  background: rgba(15,23,42,0.62);
  border-radius: 14px; margin-bottom: 14px; overflow-x: auto;
}
#dnSettingsPage .dnx-settings-tab {
  appearance: none; -webkit-appearance: none;
  display: inline-flex; align-items: center; gap: 6px;
  height: 32px; padding: 0 14px;
  border-radius: 10px;
  border: 1px solid transparent;
  background: transparent;
  color: rgba(226,232,240,0.78) !important;
  font: 800 12px/1 Inter, system-ui, sans-serif;
  letter-spacing: .04em; text-transform: uppercase;
  cursor: pointer; white-space: nowrap;
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}
#dnSettingsPage .dnx-settings-tab:hover {
  background: rgba(14,165,233,0.10); color: #fff !important;
}
#dnSettingsPage .dnx-settings-tab.is-active {
  background: linear-gradient(180deg, #2563eb, #1d4ed8) !important;
  border-color: #3b82f6 !important; color: #fff !important;
  box-shadow: 0 4px 16px rgba(59,130,246,0.30);
}
#dnSettingsPage .dnx-settings-tab[aria-disabled="true"] { opacity: .45; cursor: not-allowed; }
#dnSettingsPage .dnx-settings-tab .dnx-settings-pill {
  display: inline-block; padding: 1px 6px; margin-left: 4px;
  border-radius: 999px;
  background: rgba(56,189,248,0.20); color: #bae6fd;
  font: 900 9.5px/1 Inter, system-ui, sans-serif;
}

/* panels */
#dnSettingsPage .dnx-settings-panels { display: block; }
#dnSettingsPage .dnx-settings-panel { display: none; }
#dnSettingsPage .dnx-settings-panel.is-active { display: block; }
#dnSettingsPage .dnx-settings-panel > section,
#dnSettingsPage .dnx-settings-panel > div.dn-admin-card,
#dnSettingsPage .dnx-settings-panel > div.dnx-card {
  margin-bottom: 14px;
}

/* hide legacy duplicates that v2 replaces */
#dnSettingsPage.dnx-settings-active .dn-admin-settings > .dn-admin-settings-head,
#dnSettingsPage.dnx-settings-active .dn-admin-settings > .dn-admin-settings-grid,
#dnSettingsPage.dnx-settings-active #dnAppVersionBanner {
  display: none !important;
}

/* mobile / tablet */
@media (max-width: 880px) {
  #dnSettingsPage .dnx-settings-hero { flex-direction: column; }
  #dnSettingsPage .dnx-settings-tabs { flex-wrap: nowrap; }
}

/* =====================================================================
   v2.0.0-phase3-home — Home Dashboard (scoped to #dnHomePage .dnx-home-v3).
   ===================================================================== */
#dnHomePage .dnx-home-v3 { padding: 18px 22px 28px; color: #e2e8f0; }

#dnHomePage .dnx-home-hero {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 14px; margin-bottom: 16px; padding: 16px 18px;
  border: 1px solid rgba(148,163,184,0.16); border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 22px rgba(2,6,23,0.45);
}
#dnHomePage .dnx-home-hero h1 { margin: 0; font: 900 22px/1.1 Inter,system-ui; color: #f8fafc; letter-spacing: -.01em; }
#dnHomePage .dnx-home-hero p { margin: 6px 0 0; font: 600 13px/1.4 Inter,system-ui; color: rgba(203,213,225,.78); }
#dnHomePage .dnx-home-eyebrow { display: inline-block; font: 900 11px/1 Inter,system-ui; letter-spacing: .12em; text-transform: uppercase; color: #bae6fd; margin-bottom: 4px; }
#dnHomePage .dnx-home-hero-actions { display: flex; flex-wrap: wrap; gap: 8px; }

#dnHomePage .dnx-home-kpi-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 10px; margin-bottom: 14px; }
@media (max-width: 1240px) { #dnHomePage .dnx-home-kpi-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 720px)  { #dnHomePage .dnx-home-kpi-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
#dnHomePage .dnx-home-kpi {
  border: 1px solid rgba(148,163,184,0.16); border-radius: 14px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  padding: 12px 14px;
}
#dnHomePage .dnx-home-kpi span {
  display: block; font: 800 10px/1 Inter,system-ui; letter-spacing: .14em;
  text-transform: uppercase; color: rgba(203,213,225,.55);
}
#dnHomePage .dnx-home-kpi b { display: block; margin-top: 4px; font: 900 22px/1.1 Inter,system-ui; color: #fff; letter-spacing: -.01em; }
#dnHomePage .dnx-home-kpi small { display: block; margin-top: 2px; font: 700 11px/1.2 Inter,system-ui; color: rgba(203,213,225,.66); }

#dnHomePage .dnx-home-main-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(0,1fr); gap: 14px; margin-bottom: 14px; }
@media (max-width: 1080px) { #dnHomePage .dnx-home-main-grid { grid-template-columns: minmax(0,1fr); } }

#dnHomePage .dnx-home-card {
  border: 1px solid rgba(148,163,184,0.16); border-radius: 16px;
  background: linear-gradient(180deg, rgba(15,23,42,0.74), rgba(2,6,23,0.50));
  padding: 14px 16px; margin-bottom: 12px;
}
#dnHomePage .dnx-home-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
#dnHomePage .dnx-home-card-head h3 { margin: 0; font: 900 13px/1 Inter,system-ui; letter-spacing: .04em; text-transform: uppercase; color: #fff; }
#dnHomePage .dnx-home-card-head small { display: block; margin-top: 2px; font: 700 11px/1.2 Inter,system-ui; color: rgba(203,213,225,.55); }

#dnHomePage .dnx-home-list { display: flex; flex-direction: column; gap: 6px; }
#dnHomePage .dnx-home-list-item {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  padding: 8px 10px; border-radius: 10px;
  background: rgba(2,6,23,0.55); border: 1px solid rgba(148,163,184,0.10);
  font: 700 12px/1.3 Inter,system-ui; color: #e2e8f0;
}
#dnHomePage .dnx-home-list-item strong { color: #fff; font-weight: 900; }
#dnHomePage .dnx-home-list-item small  { color: rgba(203,213,225,.62); font-size: 11px; }

#dnHomePage .dnx-home-alert {
  display: flex; align-items: flex-start; gap: 10px;
  padding: 10px 12px; border-radius: 12px; margin-bottom: 8px;
  border: 1px solid rgba(148,163,184,.20);
  background: rgba(2,6,23,.50);
}
#dnHomePage .dnx-home-alert[data-tone="info"]    { border-color: rgba(56,189,248,.45);  background: rgba(14,165,233,.10); }
#dnHomePage .dnx-home-alert[data-tone="warning"] { border-color: rgba(245,158,11,.45);  background: rgba(245,158,11,.10); }
#dnHomePage .dnx-home-alert[data-tone="danger"]  { border-color: rgba(239,68,68,.45);   background: rgba(239,68,68,.10); }
#dnHomePage .dnx-home-alert[data-tone="success"] { border-color: rgba(34,197,94,.45);   background: rgba(34,197,94,.10); }
#dnHomePage .dnx-home-alert .dnx-home-alert-body { flex: 1 1 auto; }
#dnHomePage .dnx-home-alert strong { display: block; color: #fff; font: 900 12px/1.2 Inter,system-ui; letter-spacing: .04em; text-transform: uppercase; }
#dnHomePage .dnx-home-alert small  { display: block; margin-top: 2px; font: 600 12px/1.4 Inter,system-ui; color: rgba(226,232,240,.86); }

#dnHomePage .dnx-home-action-grid { display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 8px; }
@media (max-width: 1080px) { #dnHomePage .dnx-home-action-grid { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 600px)  { #dnHomePage .dnx-home-action-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }

#dnHomePage .dnx-home-skeleton {
  height: 14px; border-radius: 6px;
  background: linear-gradient(90deg, rgba(15,23,42,.6), rgba(56,189,248,.18), rgba(15,23,42,.6));
  background-size: 200% 100%;
  animation: dnxHomeShimmer 1.4s linear infinite;
}
@keyframes dnxHomeShimmer { 0% { background-position: 200% 0; } 100% { background-position: -200% 0; } }

#dnHomePage .dnx-home-source-line {
  margin-top: 14px; padding: 8px 10px;
  border-radius: 10px; border: 1px dashed rgba(148,163,184,.20);
  background: rgba(2,6,23,.45);
  font: 700 10.5px/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  color: rgba(203,213,225,.62);
}

/* hide legacy CRM mockup once v3 dashboard is mounted */
#dnHomePage.dnx-home-active > :not(#dnxHomeDashboard) { display: none !important; }

/* =====================================================================
   v2.0.0-phase4-leads — Leads & BDC (scoped to #dnLeadsPage / #dnCrmDealsPage).
   ===================================================================== */
#dnLeadsPage .dnx-leads-v4,
#dnCrmDealsPage .dnx-bdc-v4 { padding: 18px 22px 28px; color: #e2e8f0; }

#dnLeadsPage .dnx-leads-hero,
#dnCrmDealsPage .dnx-bdc-hero {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 14px; margin-bottom: 16px; padding: 16px 18px;
  border: 1px solid rgba(148,163,184,0.16); border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 22px rgba(2,6,23,0.45);
}
#dnLeadsPage .dnx-leads-hero h1,
#dnCrmDealsPage .dnx-bdc-hero h1 { margin: 0; font: 900 22px/1.1 Inter,system-ui; color: #f8fafc; letter-spacing: -.01em; }
#dnLeadsPage .dnx-leads-hero p,
#dnCrmDealsPage .dnx-bdc-hero p { margin: 6px 0 0; font: 600 13px/1.4 Inter,system-ui; color: rgba(203,213,225,.78); }
#dnLeadsPage .dnx-leads-eyebrow,
#dnCrmDealsPage .dnx-bdc-eyebrow { display:inline-block; font:900 11px/1 Inter,system-ui; letter-spacing:.12em; text-transform:uppercase; color:#bae6fd; margin-bottom:4px; }

#dnLeadsPage .dnx-leads-kpis,
#dnCrmDealsPage .dnx-bdc-kpis {
  display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 10px; margin-bottom: 14px;
}
@media (max-width: 1240px) { #dnLeadsPage .dnx-leads-kpis, #dnCrmDealsPage .dnx-bdc-kpis { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 720px)  { #dnLeadsPage .dnx-leads-kpis, #dnCrmDealsPage .dnx-bdc-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }

#dnLeadsPage .dnx-leads-toolbar {
  display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
  padding: 10px 12px; margin-bottom: 12px;
  border: 1px solid rgba(148,163,184,0.14); border-radius: 12px;
  background: rgba(15,23,42,0.62);
}
#dnLeadsPage .dnx-leads-toolbar input[type="search"],
#dnLeadsPage .dnx-leads-toolbar select {
  height: 34px; padding: 0 10px;
  border-radius: 9px;
  border: 1px solid rgba(148,163,184,.28);
  background: rgba(2,6,23,.62); color: #f8fafc;
  font: 600 12px/1 Inter,system-ui; outline: none;
}
#dnLeadsPage .dnx-leads-toolbar input[type="search"] { min-width: 240px; flex: 1 1 280px; }

#dnLeadsPage .dnx-leads-board {
  display: grid; grid-template-columns: repeat(5, minmax(220px,1fr));
  gap: 10px; overflow-x: auto; padding-bottom: 4px;
}
@media (max-width: 1280px) { #dnLeadsPage .dnx-leads-board { grid-template-columns: repeat(3, minmax(220px,1fr)); } }
@media (max-width: 720px)  { #dnLeadsPage .dnx-leads-board { grid-template-columns: repeat(2, minmax(180px,1fr)); } }

#dnLeadsPage .dnx-leads-column {
  background: rgba(2,6,23,.55);
  border: 1px solid rgba(148,163,184,.14);
  border-radius: 14px; padding: 8px;
  min-height: 240px;
}
#dnLeadsPage .dnx-leads-column-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 6px 8px 8px; margin-bottom: 6px;
  border-bottom: 1px solid rgba(148,163,184,.10);
}
#dnLeadsPage .dnx-leads-column-head strong {
  font: 900 11px/1 Inter,system-ui; letter-spacing: .10em; text-transform: uppercase; color: #bae6fd;
}
#dnLeadsPage .dnx-leads-column-head small { font: 800 10.5px/1 Inter,system-ui; color: rgba(203,213,225,.66); }

#dnLeadsPage .dnx-lead-card {
  display: block; width: 100%;
  text-align: left; cursor: pointer;
  padding: 10px;
  margin-bottom: 8px;
  border-radius: 10px;
  border: 1px solid rgba(148,163,184,.18);
  background: linear-gradient(180deg, rgba(15,23,42,.86), rgba(2,6,23,.62));
  transition: border-color .12s ease, transform .12s ease;
}
#dnLeadsPage .dnx-lead-card:hover { border-color: rgba(56,189,248,.55); transform: translateY(-1px); }
#dnLeadsPage .dnx-lead-card strong { display: block; color: #fff; font: 900 13px/1.2 Inter,system-ui; }
#dnLeadsPage .dnx-lead-card small  { display: block; color: rgba(203,213,225,.66); font: 700 11px/1.3 Inter,system-ui; margin-top: 2px; }
#dnLeadsPage .dnx-lead-card .dnx-lead-card-meta { display:flex; flex-wrap:wrap; gap:4px; margin-top:6px; }

/* drawer */
#dnLeadsPage .dnx-lead-drawer-shade {
  position: fixed; inset: 0; background: rgba(2,6,23,.66); backdrop-filter: blur(2px);
  display: none; z-index: 12000;
}
#dnLeadsPage .dnx-lead-drawer-shade.is-open { display: block; }
#dnLeadsPage .dnx-lead-drawer {
  position: fixed; top: 0; right: 0; height: 100vh;
  width: min(560px, 92vw);
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.96));
  border-left: 1px solid rgba(148,163,184,.20);
  box-shadow: -16px 0 40px rgba(2,6,23,.55);
  display: none; flex-direction: column;
  z-index: 12010;
}
#dnLeadsPage .dnx-lead-drawer.is-open { display: flex; }
#dnLeadsPage .dnx-lead-drawer-head {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 10px; padding: 14px 16px;
  border-bottom: 1px solid rgba(148,163,184,.14);
}
#dnLeadsPage .dnx-lead-drawer-head h3 { margin: 0; font: 900 16px/1.1 Inter,system-ui; color: #fff; }
#dnLeadsPage .dnx-lead-drawer-body { padding: 12px 16px; overflow: auto; flex: 1 1 auto; }
#dnLeadsPage .dnx-lead-drawer-body section { margin-bottom: 14px; }
#dnLeadsPage .dnx-lead-drawer-foot { padding: 10px 16px; border-top: 1px solid rgba(148,163,184,.14); display: flex; gap: 8px; flex-wrap: wrap; }

#dnLeadsPage .dnx-lead-message {
  padding: 8px 10px; border-radius: 10px; margin-bottom: 6px;
  font: 600 12.5px/1.45 Inter,system-ui;
  border: 1px solid rgba(148,163,184,.14);
  background: rgba(2,6,23,.55);
  color: #e2e8f0;
}
#dnLeadsPage .dnx-lead-message[data-direction="inbound"]  { background: rgba(56,189,248,.10);  border-color: rgba(56,189,248,.35);  color: #bae6fd; }
#dnLeadsPage .dnx-lead-message[data-direction="outbound"] { background: rgba(34,197,94,.10);   border-color: rgba(34,197,94,.35);  color: #bbf7d0; }
#dnLeadsPage .dnx-lead-message[data-direction="ai_draft"] { background: rgba(245,158,11,.10);  border-color: rgba(245,158,11,.45); color: #fde68a; }
#dnLeadsPage .dnx-lead-message small { display: block; font: 700 10px/1.2 Inter,system-ui; color: rgba(203,213,225,.55); margin-top: 4px; letter-spacing:.06em; text-transform: uppercase; }

#dnLeadsPage .dnx-lead-ai-panel {
  border-radius: 12px; padding: 12px; margin-top: 10px;
  border: 1px dashed rgba(245,158,11,.40);
  background: rgba(245,158,11,.06);
  color: #fde68a;
  font: 700 12.5px/1.45 Inter,system-ui;
}
#dnLeadsPage .dnx-lead-ai-panel h4 { margin: 0 0 6px; color: #fff; font: 900 11.5px/1 Inter,system-ui; letter-spacing: .08em; text-transform: uppercase; }
#dnLeadsPage .dnx-lead-ai-panel pre { margin: 6px 0; padding: 8px 10px; border-radius: 8px; background: rgba(2,6,23,.62); color: #e2e8f0; white-space: pre-wrap; font: 600 12.5px/1.5 ui-monospace,Menlo,Consolas,monospace; }

/* BDC dashboard */
#dnCrmDealsPage .dnx-bdc-grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(0,1fr); gap: 14px; }
@media (max-width: 1080px) { #dnCrmDealsPage .dnx-bdc-grid { grid-template-columns: minmax(0,1fr); } }

/* ============================================================================
   v2.0.0-phase5 — Customers + Add Customer + Notifications
   Pure in-app dark-glass surfaces. Match existing dnx-* tokens.
   ============================================================================ */
#dnCustomersPage .dnx-customers-v5 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-customers-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 18px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-customers-hero .dnx-eyebrow,
.dnx-add-customer-v5 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-customers-hero h1 { font-size: 22px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-customers-hero p  { margin: 0; font-size: 13px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-customers-hero-actions { display: flex; gap: 8px; }
.dnx-customers-kpis { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 12px; margin-bottom: 14px; }
@media (max-width: 900px) { .dnx-customers-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }
.dnx-customers-toolbar { display: flex; gap: 10px; align-items: center; margin-bottom: 12px; }
.dnx-customers-toolbar input[type="search"],
.dnx-customers-toolbar select {
  background: rgba(15,23,42,.55); border: 1px solid rgba(56,189,248,.22);
  color: #e2e8f0; padding: 9px 12px; border-radius: 10px; font-size: 13px;
}
.dnx-customers-toolbar input[type="search"] { flex: 1; min-width: 220px; }
.dnx-customers-table-wrap { overflow-x: auto; }
.dnx-customers-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.dnx-customers-table thead th {
  text-align: left; font-size: 11px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: rgba(203,213,225,.7);
  padding: 10px 12px; border-bottom: 1px solid rgba(148,163,184,.16);
}
.dnx-customers-table tbody tr { cursor: pointer; transition: background .15s; }
.dnx-customers-table tbody tr:hover { background: rgba(14,165,233,.06); }
.dnx-customers-table tbody td {
  padding: 11px 12px; border-bottom: 1px solid rgba(148,163,184,.10); vertical-align: top;
}
.dnx-customers-table tbody td strong { color: #f8fafc; display: block; }
.dnx-customers-table tbody td small { display: block; color: rgba(148,163,184,.7); margin-top: 2px; }
.dnx-customers-table .dnx-status-pill {
  display: inline-block; padding: 3px 9px; border-radius: 999px;
  background: rgba(56,189,248,.16); color: #bae6fd; font-size: 11px; font-weight: 700; letter-spacing: .04em;
}
.dnx-muted { color: rgba(148,163,184,.55); }

/* Customer drawer */
.dnx-drawer {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(560px, 92vw);
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.96));
  border-left: 1px solid rgba(56,189,248,.18);
  box-shadow: -16px 0 48px rgba(0,0,0,.45);
  z-index: 6500; display: flex; flex-direction: column; color: #e2e8f0;
  animation: dnxDrawerIn .18s ease-out;
}
.dnx-drawer[hidden] { display: none; }
@keyframes dnxDrawerIn { from { transform: translateX(20px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
.dnx-drawer-head {
  display: flex; justify-content: space-between; align-items: flex-start;
  gap: 12px; padding: 16px 18px; border-bottom: 1px solid rgba(148,163,184,.14);
}
.dnx-drawer-head h2 { margin: 2px 0 0; font-size: 19px; color: #f8fafc; font-weight: 800; }
.dnx-drawer-head small { color: rgba(148,163,184,.78); font-size: 12px; }
.dnx-drawer-actions { display: flex; gap: 6px; align-items: center; }
.dnx-drawer-tabs { display: flex; gap: 4px; padding: 8px 12px; border-bottom: 1px solid rgba(148,163,184,.10); }
.dnx-drawer-tabs button {
  background: transparent; border: 1px solid transparent; color: rgba(203,213,225,.72);
  padding: 7px 12px; border-radius: 8px; font-size: 12px; font-weight: 700; cursor: pointer;
}
.dnx-drawer-tabs button.is-active {
  background: rgba(14,165,233,.14); color: #f0f9ff; border-color: rgba(56,189,248,.28);
}
.dnx-drawer-body { padding: 14px 18px; overflow-y: auto; flex: 1; }
.dnx-drawer-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
.dnx-drawer-grid > div {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  padding: 9px 11px; border-radius: 10px;
}
.dnx-drawer-grid span { display: block; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: rgba(148,163,184,.7); }
.dnx-drawer-grid strong { display: block; color: #f8fafc; font-size: 13px; margin-top: 3px; word-break: break-word; }
.dnx-drawer-section { display: flex; flex-direction: column; gap: 12px; }
.dnx-inline-form { display: flex; gap: 8px; align-items: stretch; }
.dnx-inline-form textarea {
  flex: 1; resize: vertical; min-height: 44px;
  background: rgba(15,23,42,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px;
}
.dnx-inline-form-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px;
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12);
  padding: 12px; border-radius: 12px;
}
.dnx-inline-form-grid input {
  background: rgba(2,6,23,.6); border: 1px solid rgba(56,189,248,.16);
  color: #e2e8f0; border-radius: 8px; padding: 8px 10px; font-size: 12.5px;
}
.dnx-inline-form-grid button { grid-column: span 2; }
.dnx-note-row {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  padding: 10px 12px; border-radius: 10px; margin-bottom: 8px;
}
.dnx-note-row .dnx-note-meta { display: flex; gap: 8px; font-size: 11px; color: rgba(148,163,184,.7); margin-bottom: 4px; }
.dnx-note-row p { margin: 0; color: #e2e8f0; font-size: 13px; line-height: 1.5; white-space: pre-wrap; }
.dnx-activity-list { list-style: none; padding: 0; margin: 0; }
.dnx-activity-list li {
  display: flex; gap: 10px; padding: 9px 0; border-bottom: 1px solid rgba(148,163,184,.08);
  font-size: 13px; color: #e2e8f0;
}
.dnx-activity-list li:last-child { border-bottom: none; }
.dnx-activity-list li span { color: rgba(148,163,184,.7); font-size: 11px; min-width: 120px; }
.dnx-cosigner-row {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  padding: 12px; border-radius: 12px; display: grid;
  grid-template-columns: 1.2fr 1fr auto; gap: 10px; align-items: center; margin-bottom: 8px;
}
@media (max-width: 720px) { .dnx-cosigner-row { grid-template-columns: 1fr; } }
.dnx-cosigner-row strong { color: #f8fafc; font-size: 14px; display: block; }
.dnx-cosigner-row small { display: block; color: rgba(148,163,184,.7); font-size: 11px; margin-top: 2px; }
.dnx-cosigner-meta { display: flex; flex-wrap: wrap; gap: 8px; font-size: 11.5px; color: rgba(203,213,225,.78); }
.dnx-cosigner-meta span {
  background: rgba(2,6,23,.55); border: 1px solid rgba(148,163,184,.12);
  padding: 3px 8px; border-radius: 999px;
}
.dnx-cosigner-actions { display: flex; gap: 6px; flex-wrap: wrap; }

/* Add Customer v5 form */
#dnAddCustomerPage .dnx-add-customer-v5 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-form-v5 { display: flex; flex-direction: column; gap: 14px; }
.dnx-form-section {
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12);
  padding: 14px 16px; border-radius: 14px;
}
.dnx-form-section h3 {
  margin: 0 0 10px; font-size: 13px; font-weight: 800; letter-spacing: .06em;
  text-transform: uppercase; color: #7dd3fc;
}
.dnx-form-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 10px; }
@media (max-width: 900px) { .dnx-form-grid { grid-template-columns: repeat(2, minmax(0,1fr)); } }
@media (max-width: 600px) { .dnx-form-grid { grid-template-columns: 1fr; } }
.dnx-form-grid label,
.dnx-form-grid label.dnx-form-grid-wide { display: flex; flex-direction: column; gap: 4px; }
.dnx-form-grid label.dnx-form-grid-wide { grid-column: 1 / -1; }
.dnx-form-grid label > span {
  font-size: 11px; letter-spacing: .04em; text-transform: uppercase; font-weight: 700;
  color: rgba(203,213,225,.78);
}
.dnx-form-grid input,
.dnx-form-grid select,
.dnx-form-section textarea {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px; width: 100%;
}
.dnx-form-section textarea { resize: vertical; min-height: 70px; width: 100%; }
.dnx-form-actions { display: flex; gap: 8px; justify-content: flex-end; padding-top: 8px; }

/* Toasts */
.dnx-toast-stack {
  position: fixed; bottom: 18px; right: 18px; z-index: 9000;
  display: flex; flex-direction: column; gap: 10px; max-width: min(380px, 92vw);
  pointer-events: none;
}
.dnx-toast {
  pointer-events: auto; display: flex; gap: 10px; align-items: flex-start;
  padding: 12px 14px; border-radius: 12px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.96));
  border: 1px solid rgba(56,189,248,.22);
  box-shadow: 0 12px 28px rgba(0,0,0,.5);
  color: #e2e8f0; font-size: 13px; line-height: 1.4;
  animation: dnxToastIn .18s ease-out;
}
@keyframes dnxToastIn { from { transform: translateY(8px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
.dnx-toast.dnx-toast-leaving { opacity: 0; transition: opacity .2s; }
.dnx-toast-body { flex: 1; }
.dnx-toast-body strong { display: block; color: #f8fafc; font-weight: 800; font-size: 13px; }
.dnx-toast-body small  { display: block; color: rgba(203,213,225,.78); font-size: 12px; margin-top: 2px; }
.dnx-toast-success { border-left: 3px solid #22c55e; }
.dnx-toast-error   { border-left: 3px solid #ef4444; }
.dnx-toast-info    { border-left: 3px solid #38bdf8; }
.dnx-toast-warning { border-left: 3px solid #f59e0b; }
.dnx-toast-action {
  background: rgba(14,165,233,.18); border: 1px solid rgba(56,189,248,.32);
  color: #bae6fd; padding: 5px 10px; border-radius: 8px; font-size: 12px; font-weight: 700; cursor: pointer;
}
.dnx-toast-close {
  background: transparent; border: none; color: rgba(148,163,184,.7);
  font-size: 18px; line-height: 1; padding: 0 4px; cursor: pointer;
}
.dnx-toast-close:hover { color: #f8fafc; }

/* Bell + Notification Center */
.dnx-notif-bell {
  position: fixed; top: 14px; right: 18px; z-index: 7500;
  width: 40px; height: 40px; border-radius: 50%;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.96));
  border: 1px solid rgba(56,189,248,.22);
  color: #f8fafc; cursor: pointer; box-shadow: 0 6px 18px rgba(0,0,0,.35);
  display: flex; align-items: center; justify-content: center; font-size: 17px;
}
.dnx-notif-bell:hover { border-color: rgba(56,189,248,.45); }
.dnx-notif-bell-icon { display: inline-block; line-height: 1; }
.dnx-notif-badge {
  position: absolute; top: -4px; right: -4px;
  min-width: 18px; height: 18px; padding: 0 5px;
  border-radius: 999px; background: #ef4444; color: #fff;
  font-size: 10.5px; font-weight: 800; line-height: 18px; text-align: center;
  border: 2px solid #020617;
}
.dnx-notif-badge[hidden] { display: none; }
.dnx-notification-center {
  position: fixed; top: 0; right: 0; bottom: 0; width: min(420px, 92vw);
  background: linear-gradient(180deg, rgba(15,23,42,.97), rgba(2,6,23,.97));
  border-left: 1px solid rgba(56,189,248,.18);
  box-shadow: -16px 0 48px rgba(0,0,0,.5);
  z-index: 8000; display: flex; flex-direction: column; color: #e2e8f0;
}
.dnx-notification-center[hidden] { display: none; }
.dnx-notification-center-head {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 10px;
  padding: 16px 18px; border-bottom: 1px solid rgba(148,163,184,.14);
}
.dnx-notification-center-head strong { color: #f8fafc; font-size: 16px; font-weight: 800; }
.dnx-notification-center-head small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; margin-top: 2px; }
.dnx-notification-center-actions { display: flex; gap: 6px; }
.dnx-notification-center-body { flex: 1; overflow-y: auto; padding: 10px 14px; }
.dnx-notif-item {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  padding: 10px 12px; border-radius: 12px; margin-bottom: 8px;
  display: flex; flex-direction: column; gap: 4px;
}
.dnx-notif-item.dnx-notif-unread { border-color: rgba(56,189,248,.3); background: rgba(14,165,233,.08); }
.dnx-notif-item-head { display: flex; justify-content: space-between; align-items: center; font-size: 11px; }
.dnx-notif-cat {
  background: rgba(56,189,248,.16); color: #bae6fd; padding: 2px 8px;
  border-radius: 999px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; font-size: 10px;
}
.dnx-notif-time { color: rgba(148,163,184,.7); font-size: 11px; }
.dnx-notif-item strong { color: #f8fafc; font-size: 13px; font-weight: 800; }
.dnx-notif-item small  { color: rgba(203,213,225,.78); font-size: 12px; line-height: 1.45; }
.dnx-notif-item-actions { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 4px; }
.dnx-notif-error   { border-left: 3px solid #ef4444; }
.dnx-notif-warning { border-left: 3px solid #f59e0b; }
.dnx-notif-success { border-left: 3px solid #22c55e; }

/* Generic dnx button utilities scoped to Phase 5 surfaces */
.dnx-customers-v5 .dnx-btn,
.dnx-add-customer-v5 .dnx-btn,
.dnx-drawer .dnx-btn,
.dnx-toast .dnx-btn,
.dnx-notification-center .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 8px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-customers-v5 .dnx-btn-primary,
.dnx-add-customer-v5 .dnx-btn-primary,
.dnx-drawer .dnx-btn-primary,
.dnx-toast .dnx-btn-primary,
.dnx-notification-center .dnx-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6);
}
.dnx-customers-v5 .dnx-btn-secondary,
.dnx-add-customer-v5 .dnx-btn-secondary,
.dnx-drawer .dnx-btn-secondary,
.dnx-toast .dnx-btn-secondary,
.dnx-notification-center .dnx-btn-secondary {
  background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28);
}
.dnx-customers-v5 .dnx-btn-ghost,
.dnx-add-customer-v5 .dnx-btn-ghost,
.dnx-drawer .dnx-btn-ghost,
.dnx-toast .dnx-btn-ghost,
.dnx-notification-center .dnx-btn-ghost {
  background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18);
}
.dnx-customers-v5 .dnx-btn:hover,
.dnx-add-customer-v5 .dnx-btn:hover,
.dnx-drawer .dnx-btn:hover,
.dnx-toast .dnx-btn:hover,
.dnx-notification-center .dnx-btn:hover { filter: brightness(1.07); }

.dnx-customers-v5 .dnx-empty-state,
.dnx-add-customer-v5 .dnx-empty-state,
.dnx-drawer .dnx-empty-state,
.dnx-notification-center .dnx-empty-state {
  padding: 16px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 13px; text-align: center;
}
.dnx-customers-v5 .dnx-empty-state strong,
.dnx-add-customer-v5 .dnx-empty-state strong,
.dnx-drawer .dnx-empty-state strong,
.dnx-notification-center .dnx-empty-state strong { color: #f8fafc; display: block; margin-bottom: 4px; }
.dnx-customers-v5 .dnx-empty-state small,
.dnx-add-customer-v5 .dnx-empty-state small,
.dnx-drawer .dnx-empty-state small,
.dnx-notification-center .dnx-empty-state small { display: block; color: rgba(148,163,184,.7); font-size: 12px; }

/* ============================================================================
   v2.0.0-phase6 — Reports & Analytics
   Scoped to #dnReportsPage .dnx-reports-v6 to keep Deal Rehash untouched.
   ============================================================================ */
#dnReportsPage .dnx-reports-v6 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-reports-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 16px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-reports-v6 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-reports-hero h1 { font-size: 22px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-reports-hero p  { margin: 0; font-size: 13px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-reports-hero-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.dnx-reports-filters {
  display: grid; grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 10px; margin-bottom: 14px; padding: 12px;
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px;
}
@media (max-width: 1080px) { .dnx-reports-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px)  { .dnx-reports-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dnx-reports-filter { display: flex; flex-direction: column; gap: 4px; }
.dnx-reports-filter label {
  font-size: 11px; letter-spacing: .04em; text-transform: uppercase;
  font-weight: 700; color: rgba(203,213,225,.72);
}
.dnx-reports-filter input,
.dnx-reports-filter select {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px;
}
.dnx-reports-filter-actions { align-self: end; }
.dnx-reports-filter-actions .dnx-btn { width: 100%; }

.dnx-reports-kpis {
  display: grid; grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px; margin-bottom: 16px;
}
@media (max-width: 1280px) { .dnx-reports-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 640px)  { .dnx-reports-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dnx-report-kpi {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 12px; padding: 11px 12px; display: flex; flex-direction: column; gap: 4px;
}
.dnx-report-kpi span {
  display: block; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase;
  color: rgba(148,163,184,.7); font-weight: 700;
}
.dnx-report-kpi b {
  display: block; color: #f8fafc; font-size: 18px; font-weight: 800; line-height: 1.1;
}
.dnx-report-kpi.dnx-report-restricted {
  border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.06);
}
.dnx-report-kpi.dnx-report-restricted b { color: #fbbf24; font-size: 13.5px; }

/* Tabs */
.dnx-report-tabs {
  display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px;
  padding: 8px; background: rgba(15,23,42,.4); border: 1px solid rgba(148,163,184,.10);
  border-radius: 14px;
}
.dnx-report-tab {
  background: transparent; color: rgba(203,213,225,.72);
  border: 1px solid transparent; padding: 8px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; cursor: pointer; letter-spacing: .02em;
  transition: background .15s, border-color .15s, color .15s;
}
.dnx-report-tab:hover { color: #e2e8f0; background: rgba(14,165,233,.08); }
.dnx-report-tab.is-active {
  background: rgba(14,165,233,.16); color: #f0f9ff; border-color: rgba(56,189,248,.32);
}

/* Panel + cards */
.dnx-report-panel { display: block; }
.dnx-report-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
@media (max-width: 920px) { .dnx-report-grid { grid-template-columns: 1fr; } }
.dnx-report-grid-mini {
  display: grid; grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px; margin-top: 8px;
}
@media (max-width: 720px) { .dnx-report-grid-mini { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dnx-report-card {
  background: rgba(15,23,42,.5); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 14px 16px;
}
.dnx-report-card h3 {
  margin: 0 0 10px; font-size: 13px; font-weight: 800; letter-spacing: .06em;
  text-transform: uppercase; color: #7dd3fc;
}
.dnx-report-card-restricted { border-color: rgba(245,158,11,.30); }
.dnx-report-card .dnx-btn { margin-right: 6px; margin-top: 6px; }
.dnx-report-export-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-bottom: 8px;
}
@media (max-width: 540px) { .dnx-report-export-grid { grid-template-columns: 1fr; } }

/* Tables */
.dnx-report-table {
  width: 100%; border-collapse: collapse; font-size: 12.5px; color: #e2e8f0;
}
.dnx-report-table thead th {
  text-align: left; font-size: 10.5px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: rgba(203,213,225,.7);
  padding: 8px 10px; border-bottom: 1px solid rgba(148,163,184,.16);
}
.dnx-report-table tbody td {
  padding: 8px 10px; border-bottom: 1px solid rgba(148,163,184,.08); vertical-align: middle;
}
.dnx-report-table tbody tr:hover { background: rgba(14,165,233,.04); }
.dnx-report-table tbody td:first-child { color: #f8fafc; font-weight: 700; }

/* Bars */
.dnx-report-bar {
  display: inline-block; width: 100%; min-width: 80px; height: 8px;
  background: rgba(148,163,184,.12); border-radius: 999px; overflow: hidden;
  vertical-align: middle;
}
.dnx-report-bar i {
  display: block; height: 100%;
  background: linear-gradient(90deg, #38bdf8, #0ea5e9);
  border-radius: 999px;
}

/* Empty / restricted */
.dnx-report-empty {
  padding: 12px 14px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 12.5px;
  text-align: left;
}
.dnx-report-empty strong { color: #f8fafc; display: block; margin-bottom: 2px; font-size: 13px; }
.dnx-report-empty small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; margin-top: 2px; }
.dnx-report-empty.dnx-report-restricted {
  border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.06); color: #fde68a;
}
.dnx-report-empty.dnx-report-restricted strong { color: #fbbf24; }
.dnx-report-empty.dnx-report-error {
  border-color: rgba(239,68,68,.32); background: rgba(239,68,68,.06); color: #fecaca;
}
.dnx-report-empty.dnx-report-error strong { color: #fca5a5; }

/* Reuse dnx-btn token within reports */
.dnx-reports-v6 .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 8px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-reports-v6 .dnx-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6);
}
.dnx-reports-v6 .dnx-btn-secondary {
  background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28);
}
.dnx-reports-v6 .dnx-btn-ghost {
  background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18);
}
.dnx-reports-v6 .dnx-btn:hover { filter: brightness(1.07); }
.dnx-reports-v6 .dnx-btn:disabled { opacity: .55; cursor: not-allowed; filter: none; }

/* ============================================================================
   v2.0.0-phase7 — Appointments + Follow-up Work Queue + BDC v7
   ============================================================================ */
#dnAppointmentsPage .dnx-appointments-v7 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-appointments-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 14px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-appointments-v7 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-appointments-hero h1 { font-size: 22px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-appointments-hero p  { margin: 0; font-size: 13px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-appointments-hero-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.dnx-appointments-kpis {
  display: grid; grid-template-columns: repeat(6, minmax(0,1fr)); gap: 10px; margin-bottom: 14px;
}
@media (max-width: 1180px) { .dnx-appointments-kpis { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 600px)  { .dnx-appointments-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }

.dnx-appointments-grid {
  display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr); gap: 14px;
}
@media (max-width: 1080px) { .dnx-appointments-grid { grid-template-columns: 1fr; } }

.dnx-calendar-list { display: flex; flex-direction: column; gap: 14px; }
.dnx-date-group { display: flex; flex-direction: column; gap: 8px; }
.dnx-date-group h4 {
  margin: 8px 0 0; font-size: 11px; letter-spacing: .08em; text-transform: uppercase;
  color: rgba(203,213,225,.7); font-weight: 800;
  border-bottom: 1px solid rgba(148,163,184,.16); padding-bottom: 6px;
}

.dnx-appointment-card {
  display: grid; grid-template-columns: 100px minmax(0, 1fr) auto; gap: 12px; align-items: center;
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 12px; padding: 12px 14px; transition: border-color .15s, background .15s;
}
.dnx-appointment-card:hover { border-color: rgba(56,189,248,.32); background: rgba(14,165,233,.05); }
.dnx-appointment-card .dnx-appt-time strong { color: #f8fafc; font-size: 13px; display: block; }
.dnx-appointment-card .dnx-appt-time small  { color: rgba(148,163,184,.7); font-size: 11px; text-transform: capitalize; }
.dnx-appointment-card .dnx-appt-body strong { color: #f8fafc; font-size: 14px; display: block; font-weight: 800; }
.dnx-appointment-card .dnx-appt-body small  { display: block; color: rgba(148,163,184,.78); font-size: 12px; margin-top: 2px; }
.dnx-appointment-card .dnx-appt-side { display: flex; flex-direction: column; gap: 4px; align-items: flex-end; }
.dnx-appointment-card .dnx-appt-side small { color: rgba(148,163,184,.65); font-size: 11px; }
.dnx-appointment-card .dnx-appt-actions {
  grid-column: 1 / -1; display: flex; gap: 6px; flex-wrap: wrap;
  border-top: 1px solid rgba(148,163,184,.10); padding-top: 8px; margin-top: 4px;
}

/* Status pills */
.dnx-appointment-status {
  display: inline-block; padding: 3px 9px; border-radius: 999px;
  font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  background: rgba(56,189,248,.16); color: #bae6fd; border: 1px solid rgba(56,189,248,.28);
}
.dnx-appointment-status.dnx-status-confirmed { background: rgba(34,197,94,.15);  color: #86efac; border-color: rgba(34,197,94,.32); }
.dnx-appointment-status.dnx-status-showed,
.dnx-appointment-status.dnx-status-completed { background: rgba(99,102,241,.18); color: #c7d2fe; border-color: rgba(129,140,248,.32); }
.dnx-appointment-status.dnx-status-no_show   { background: rgba(239,68,68,.16);  color: #fca5a5; border-color: rgba(239,68,68,.32); }
.dnx-appointment-status.dnx-status-canceled  { background: rgba(148,163,184,.16); color: #cbd5e1; border-color: rgba(148,163,184,.28); }

/* Follow-up queue */
.dnx-followup-queue { display: flex; flex-direction: column; gap: 10px; padding: 14px 16px; }
.dnx-followup-tabs { display: flex; gap: 4px; padding: 4px; background: rgba(15,23,42,.5); border: 1px solid rgba(148,163,184,.12); border-radius: 10px; }
.dnx-followup-tabs button {
  background: transparent; color: rgba(203,213,225,.72);
  border: 1px solid transparent; padding: 6px 10px; border-radius: 8px;
  font-size: 11.5px; font-weight: 700; cursor: pointer; flex: 1;
}
.dnx-followup-tabs button.is-active { background: rgba(14,165,233,.16); color: #f0f9ff; border-color: rgba(56,189,248,.32); }

.dnx-followup-item {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 10px; padding: 10px 12px; display: flex; flex-direction: column; gap: 6px;
  margin-bottom: 8px;
}
.dnx-followup-row { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.dnx-followup-item strong { color: #f8fafc; font-size: 13px; font-weight: 800; }
.dnx-followup-item small  { display: block; color: rgba(148,163,184,.78); font-size: 11.5px; margin-top: 2px; }
.dnx-followup-item p {
  margin: 0; padding: 6px 8px; border-radius: 8px;
  background: rgba(2,6,23,.4); color: rgba(203,213,225,.86); font-size: 12px;
  white-space: pre-wrap;
}
.dnx-followup-meta { display: flex; flex-direction: column; gap: 2px; align-items: flex-end; font-size: 11px; }
.dnx-followup-meta span:first-child { color: #f8fafc; font-weight: 700; }
.dnx-followup-meta span:last-child  { color: rgba(148,163,184,.7); text-transform: capitalize; }
.dnx-followup-actions { display: flex; flex-wrap: wrap; gap: 6px; }

/* BDC v7 fold-in */
.dnx-bdc-v7 .dnx-bdc-quick-actions { display: flex; gap: 6px; flex-wrap: wrap; }
.dnx-bdc-fu-list { list-style: none; padding: 0; margin: 0; }
.dnx-bdc-fu-item {
  display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; align-items: center;
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 10px; padding: 10px 12px; margin-bottom: 8px;
}
.dnx-bdc-fu-item strong { color: #f8fafc; font-size: 13px; display: block; font-weight: 800; }
.dnx-bdc-fu-item small  { display: block; color: rgba(148,163,184,.7); font-size: 11.5px; }

/* Schedule drawer */
.dnx-schedule-drawer {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(560px, 92vw);
  background: linear-gradient(180deg, rgba(15,23,42,.97), rgba(2,6,23,.97));
  border-left: 1px solid rgba(56,189,248,.18); z-index: 7000; color: #e2e8f0;
  box-shadow: -16px 0 48px rgba(0,0,0,.5); display: block; overflow-y: auto;
}
.dnx-schedule-drawer[hidden] { display: none; }
.dnx-schedule-drawer-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 14px; }
.dnx-schedule-drawer-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.dnx-schedule-drawer-card h3 { margin: 0; color: #f8fafc; font-size: 18px; font-weight: 800; }
.dnx-schedule-drawer-card label { display: flex; flex-direction: column; gap: 4px; }
.dnx-schedule-drawer-card label > span {
  font-size: 11px; letter-spacing: .04em; text-transform: uppercase;
  font-weight: 700; color: rgba(203,213,225,.72);
}
.dnx-schedule-drawer-card input,
.dnx-schedule-drawer-card select,
.dnx-schedule-drawer-card textarea {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px; width: 100%;
}
.dnx-schedule-drawer-card textarea { resize: vertical; min-height: 70px; }
.dnx-schedule-drawer-card .dnx-form-actions { display: flex; gap: 8px; justify-content: flex-end; }

/* Reuse dnx-btn token within Phase 7 surfaces */
.dnx-appointments-v7 .dnx-btn,
.dnx-schedule-drawer .dnx-btn,
.dnx-bdc-v7 .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 8px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-appointments-v7 .dnx-btn-primary,
.dnx-schedule-drawer .dnx-btn-primary,
.dnx-bdc-v7 .dnx-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6);
}
.dnx-appointments-v7 .dnx-btn-secondary,
.dnx-schedule-drawer .dnx-btn-secondary,
.dnx-bdc-v7 .dnx-btn-secondary {
  background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28);
}
.dnx-appointments-v7 .dnx-btn-ghost,
.dnx-schedule-drawer .dnx-btn-ghost,
.dnx-bdc-v7 .dnx-btn-ghost {
  background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18);
}
.dnx-appointments-v7 .dnx-btn:hover,
.dnx-schedule-drawer .dnx-btn:hover,
.dnx-bdc-v7 .dnx-btn:hover { filter: brightness(1.07); }

.dnx-appointments-v7 .dnx-empty-state,
.dnx-schedule-drawer .dnx-empty-state,
.dnx-bdc-v7 .dnx-empty-state {
  padding: 16px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 13px; text-align: center;
}
.dnx-appointments-v7 .dnx-empty-state strong,
.dnx-schedule-drawer .dnx-empty-state strong,
.dnx-bdc-v7 .dnx-empty-state strong { color: #f8fafc; display: block; margin-bottom: 4px; }
.dnx-appointments-v7 .dnx-empty-state small,
.dnx-schedule-drawer .dnx-empty-state small,
.dnx-bdc-v7 .dnx-empty-state small { display: block; color: rgba(148,163,184,.7); font-size: 12px; }

/* ============================================================================
   v2.0.0-phase8 — Inventory v8
   Scoped to #dnInventoryPage .dnx-inventory-v8 to keep Deal Rehash untouched.
   ============================================================================ */
#dnInventoryPage .dnx-inventory-v8 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-inventory-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 14px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-inventory-v8 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-inventory-hero h1 { font-size: 22px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-inventory-hero p  { margin: 0; font-size: 13px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-inventory-hero-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.dnx-inventory-kpis {
  display: grid; grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px; margin-bottom: 14px;
}
@media (max-width: 1280px) { .dnx-inventory-kpis { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 720px)  { .dnx-inventory-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }

.dnx-inventory-toolbar {
  display: grid; grid-template-columns: minmax(220px, 2fr) repeat(5, minmax(0, 1fr)) auto;
  gap: 8px; margin-bottom: 12px; padding: 10px 12px;
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12); border-radius: 14px;
  position: sticky; top: 8px; z-index: 4;
}
@media (max-width: 1180px) { .dnx-inventory-toolbar { grid-template-columns: 1fr 1fr 1fr; } }
@media (max-width: 720px)  { .dnx-inventory-toolbar { grid-template-columns: 1fr; } }
.dnx-inventory-toolbar input,
.dnx-inventory-toolbar select {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px;
}

.dnx-inventory-table-wrap { overflow-x: auto; }
.dnx-inventory-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.dnx-inventory-table thead th {
  position: sticky; top: 0; z-index: 2;
  text-align: left; font-size: 10.5px; font-weight: 700; letter-spacing: .06em;
  text-transform: uppercase; color: rgba(203,213,225,.7);
  padding: 9px 10px; border-bottom: 1px solid rgba(148,163,184,.16);
  background: rgba(15,23,42,.7); backdrop-filter: blur(10px);
}
.dnx-inventory-table tbody td {
  padding: 10px; border-bottom: 1px solid rgba(148,163,184,.10); vertical-align: middle;
}
.dnx-inventory-row:hover { background: rgba(14,165,233,.05); }
.dnx-inventory-vehicle strong { display: block; color: #f8fafc; font-weight: 800; }
.dnx-inventory-vehicle small { display: block; color: rgba(148,163,184,.7); font-size: 11px; margin-top: 2px; }
.dnx-inventory-vehicle .dnx-inv-body {
  display: inline-block; margin-top: 4px; padding: 1px 7px; border-radius: 999px;
  background: rgba(56,189,248,.16); color: #bae6fd; font-size: 9.5px; font-weight: 800; letter-spacing: .06em;
}
.dnx-inventory-table tbody td strong { color: #f8fafc; }
.dnx-inventory-table tbody td small  { display: block; color: rgba(148,163,184,.7); font-size: 11px; margin-top: 2px; }
.dnx-inventory-actions { display: flex; gap: 6px; flex-wrap: wrap; }

.dnx-inventory-status {
  display: inline-block; padding: 3px 9px; border-radius: 999px;
  font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  background: rgba(56,189,248,.16); color: #bae6fd; border: 1px solid rgba(56,189,248,.28);
}
.dnx-inventory-status.dnx-status-available { background: rgba(34,197,94,.15); color: #86efac; border-color: rgba(34,197,94,.32); }
.dnx-inventory-status.dnx-status-pending   { background: rgba(245,158,11,.15); color: #fbbf24; border-color: rgba(245,158,11,.32); }
.dnx-inventory-status.dnx-status-sold      { background: rgba(99,102,241,.18); color: #c7d2fe; border-color: rgba(129,140,248,.32); }
.dnx-inventory-status.dnx-status-wholesale { background: rgba(168,85,247,.16); color: #d8b4fe; border-color: rgba(168,85,247,.32); }
.dnx-inventory-status.dnx-status-service   { background: rgba(14,165,233,.16); color: #bae6fd; border-color: rgba(56,189,248,.32); }
.dnx-inventory-status.dnx-status-inactive  { background: rgba(148,163,184,.16); color: #cbd5e1; border-color: rgba(148,163,184,.28); }

.dnx-inventory-quality-pill {
  display: inline-block; padding: 2px 7px; border-radius: 999px;
  font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  background: rgba(245,158,11,.14); color: #fbbf24; border: 1px solid rgba(245,158,11,.32);
  margin: 1px 1px 1px 0;
}
.dnx-inventory-quality-pill.dnx-flag-clean       { background: rgba(34,197,94,.14); color: #86efac; border-color: rgba(34,197,94,.32); }
.dnx-inventory-quality-pill.dnx-flag-invalid_vin,
.dnx-inventory-quality-pill.dnx-flag-missing_cost { background: rgba(239,68,68,.14); color: #fca5a5; border-color: rgba(239,68,68,.32); }
.dnx-inventory-quality-pill.dnx-flag-aged_unit   { background: rgba(168,85,247,.16); color: #d8b4fe; border-color: rgba(168,85,247,.32); }
.dnx-inv-score { font-size: 10px; color: rgba(148,163,184,.7); font-weight: 700; }

.dnx-inventory-empty {
  padding: 16px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 13px; text-align: center;
}
.dnx-inventory-empty strong { color: #f8fafc; display: block; margin-bottom: 4px; }
.dnx-inventory-empty small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; }

/* Vehicle drawer */
.dnx-inventory-drawer {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(620px, 96vw);
  background: linear-gradient(180deg, rgba(15,23,42,.97), rgba(2,6,23,.97));
  border-left: 1px solid rgba(56,189,248,.18); z-index: 7000; color: #e2e8f0;
  box-shadow: -16px 0 48px rgba(0,0,0,.5); overflow-y: auto;
}
.dnx-inventory-drawer[hidden] { display: none; }
.dnx-inventory-drawer-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 14px; }
.dnx-inventory-drawer-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.dnx-inventory-drawer-card h3 { margin: 2px 0 0; color: #f8fafc; font-size: 18px; font-weight: 800; }
.dnx-inventory-drawer-card small { color: rgba(148,163,184,.78); font-size: 12px; }
.dnx-inventory-quality-row { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: rgba(203,213,225,.86); margin-bottom: 6px; }
.dnx-inventory-quality-row b { color: #f8fafc; font-size: 14px; }
.dnx-inventory-quality-pills { display: flex; flex-wrap: wrap; gap: 4px; }

/* Import drawer */
.dnx-inventory-import {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(520px, 96vw);
  background: linear-gradient(180deg, rgba(15,23,42,.97), rgba(2,6,23,.97));
  border-left: 1px solid rgba(56,189,248,.18); z-index: 7100; color: #e2e8f0;
  box-shadow: -16px 0 48px rgba(0,0,0,.5); overflow-y: auto;
}
.dnx-inventory-import[hidden] { display: none; }
.dnx-inventory-import-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 14px; }
.dnx-inventory-import-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.dnx-inventory-import-card h3 { margin: 2px 0 0; color: #f8fafc; font-size: 18px; font-weight: 800; }
.dnx-inventory-import-body { display: flex; flex-direction: column; gap: 12px; }
.dnx-inventory-import-drop {
  display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: 30px 14px; border: 2px dashed rgba(56,189,248,.32); border-radius: 14px;
  background: rgba(14,165,233,.05); color: rgba(203,213,225,.85); text-align: center;
  min-height: 130px; transition: border-color .15s, background .15s;
}
.dnx-inventory-import-drop strong { display: block; color: #f8fafc; font-size: 14px; }
.dnx-inventory-import-drop small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; margin-top: 4px; }
.dnx-inventory-import-drop.is-drag { border-color: rgba(56,189,248,.7); background: rgba(14,165,233,.12); }
.dnx-inventory-import-danger {
  background: rgba(239,68,68,.05); border: 1px solid rgba(239,68,68,.28);
  border-radius: 12px; padding: 12px; display: flex; flex-direction: column; gap: 8px;
}
.dnx-inventory-import-danger strong { color: #fca5a5; font-size: 13px; }
.dnx-inventory-import-danger small  { color: rgba(254,202,202,.85); font-size: 11.5px; }
.dnx-inventory-import-danger code   { background: rgba(2,6,23,.55); padding: 1px 5px; border-radius: 4px; font-size: 11.5px; }
.dnx-inventory-import-danger input  {
  background: rgba(2,6,23,.55); border: 1px solid rgba(239,68,68,.32);
  color: #fff; border-radius: 8px; padding: 8px 10px; font-size: 13px;
}
.dnx-inventory-import-log {
  background: rgba(2,6,23,.6); border: 1px solid rgba(148,163,184,.12); border-radius: 10px;
  padding: 8px 10px; font-size: 11.5px; color: rgba(203,213,225,.82); max-height: 220px; overflow-y: auto;
}
.dnx-inventory-import-line { padding: 2px 0; border-bottom: 1px solid rgba(148,163,184,.06); }

/* Inventory btn token re-use */
.dnx-inventory-v8 .dnx-btn,
.dnx-inventory-drawer .dnx-btn,
.dnx-inventory-import .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 8px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-inventory-v8 .dnx-btn-primary,
.dnx-inventory-drawer .dnx-btn-primary,
.dnx-inventory-import .dnx-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6);
}
.dnx-inventory-v8 .dnx-btn-secondary,
.dnx-inventory-drawer .dnx-btn-secondary,
.dnx-inventory-import .dnx-btn-secondary {
  background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28);
}
.dnx-inventory-v8 .dnx-btn-ghost,
.dnx-inventory-drawer .dnx-btn-ghost,
.dnx-inventory-import .dnx-btn-ghost {
  background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18);
}
.dnx-inventory-v8 .dnx-btn:hover,
.dnx-inventory-drawer .dnx-btn:hover,
.dnx-inventory-import .dnx-btn:hover { filter: brightness(1.07); }
.dnx-inventory-v8 .dnx-btn:disabled { opacity: .55; cursor: not-allowed; filter: none; }

/* ============================================================================
   v2.0.0-phase9 — Access Denied surfaces (page guard + Settings tab guard)
   ============================================================================ */
.dnx-access-denied {
  display: flex; align-items: center; justify-content: center;
  min-height: 60vh; padding: 24px; color: #e2e8f0;
}
.dnx-access-denied-card {
  max-width: 540px; width: 100%; padding: 28px 26px; border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,.96), rgba(2,6,23,.96));
  border: 1px solid rgba(245,158,11,.32);
  box-shadow: 0 12px 36px rgba(0,0,0,.5);
  text-align: center;
}
.dnx-access-denied-icon {
  font-size: 36px; line-height: 1; margin-bottom: 10px;
  color: #fbbf24;
}
.dnx-access-denied-card h2 {
  margin: 0 0 8px; color: #f8fafc; font-size: 22px; font-weight: 800; letter-spacing: .02em;
}
.dnx-access-denied-card p {
  margin: 0 0 8px; color: rgba(203,213,225,.85); font-size: 13.5px; line-height: 1.5;
}
.dnx-access-denied-card code {
  background: rgba(245,158,11,.12); color: #fbbf24;
  padding: 2px 6px; border-radius: 6px; font-size: 12.5px;
  border: 1px solid rgba(245,158,11,.28);
}
.dnx-access-denied-help {
  font-size: 12px !important; color: rgba(148,163,184,.78) !important;
  margin-top: 4px !important;
}
.dnx-access-denied-actions {
  margin-top: 18px; display: flex; gap: 8px; justify-content: center;
}
.dnx-access-denied .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 9px 16px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-access-denied .dnx-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220;
  border-color: rgba(14,165,233,.6);
}
.dnx-access-denied .dnx-btn-primary:hover { filter: brightness(1.07); }

/* ============================================================================
   v2.0.0-phase10 — Communications Center
   Scoped to #dnCommunicationsPage .dnx-communications-v10. NO real SMS.
   ============================================================================ */
#dnCommunicationsPage .dnx-communications-v10 { display: block; padding: 18px 22px 32px; color: #e2e8f0; }
.dnx-comm-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 14px; padding: 18px 20px; border-radius: 18px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-communications-v10 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-comm-hero h1 { font-size: 22px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-comm-hero p  { margin: 0; font-size: 13px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-comm-hero-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.dnx-comm-kpis {
  display: grid; grid-template-columns: repeat(6, minmax(0,1fr));
  gap: 10px; margin-bottom: 14px;
}
@media (max-width: 1180px) { .dnx-comm-kpis { grid-template-columns: repeat(3, minmax(0,1fr)); } }
@media (max-width: 600px)  { .dnx-comm-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }

.dnx-comm-tabs {
  display: flex; gap: 4px; padding: 8px; margin-bottom: 12px;
  background: rgba(15,23,42,.4); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; flex-wrap: wrap;
}
.dnx-comm-tab {
  background: transparent; color: rgba(203,213,225,.72);
  border: 1px solid transparent; padding: 7px 14px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; cursor: pointer; letter-spacing: .02em;
  transition: background .15s, border-color .15s, color .15s;
}
.dnx-comm-tab:hover { color: #e2e8f0; background: rgba(14,165,233,.08); }
.dnx-comm-tab.is-active { background: rgba(14,165,233,.16); color: #f0f9ff; border-color: rgba(56,189,248,.32); }

.dnx-comm-panel { display: block; }

/* Inbox grid */
.dnx-comm-inbox-grid {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
  gap: 14px; min-height: 60vh;
}
@media (max-width: 1080px) { .dnx-comm-inbox-grid { grid-template-columns: 1fr; } }

.dnx-comm-thread-list {
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 8px; max-height: 70vh; overflow-y: auto;
}
.dnx-comm-thread {
  background: rgba(2,6,23,.5); border: 1px solid rgba(148,163,184,.10);
  border-radius: 12px; padding: 10px 12px; margin-bottom: 6px; cursor: pointer;
  transition: border-color .15s, background .15s;
}
.dnx-comm-thread:hover     { border-color: rgba(56,189,248,.32); background: rgba(14,165,233,.04); }
.dnx-comm-thread.is-active { border-color: rgba(56,189,248,.6); background: rgba(14,165,233,.08); }
.dnx-comm-thread-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; }
.dnx-comm-thread-head strong { color: #f8fafc; font-size: 13px; font-weight: 800; }
.dnx-comm-thread-meta { display: flex; justify-content: space-between; gap: 8px; font-size: 11px; color: rgba(148,163,184,.7); margin-top: 2px; }
.dnx-comm-thread-preview { margin: 6px 0 0; color: rgba(203,213,225,.78); font-size: 12.5px; line-height: 1.4; }
.dnx-comm-draft-pill {
  display: inline-block; margin-top: 6px; padding: 2px 8px; border-radius: 999px;
  background: rgba(245,158,11,.16); color: #fbbf24; font-size: 10.5px; font-weight: 800; letter-spacing: .04em;
}

.dnx-comm-status {
  display: inline-block; padding: 2px 7px; border-radius: 999px;
  font-size: 10px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase;
  background: rgba(56,189,248,.16); color: #bae6fd; border: 1px solid rgba(56,189,248,.28);
}
.dnx-comm-status.dnx-comm-status-opted_out { background: rgba(239,68,68,.16); color: #fca5a5; border-color: rgba(239,68,68,.32); }
.dnx-comm-status.dnx-comm-status-closed    { background: rgba(148,163,184,.16); color: #cbd5e1; border-color: rgba(148,163,184,.28); }

/* Conversation panel */
.dnx-comm-conversation-wrap {
  background: rgba(15,23,42,.45); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 16px; display: flex; flex-direction: column; gap: 12px;
}
.dnx-comm-conversation-head {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 12px;
  border-bottom: 1px solid rgba(148,163,184,.12); padding-bottom: 10px;
}
.dnx-comm-conversation-head strong { color: #f8fafc; font-size: 16px; font-weight: 800; display: block; }
.dnx-comm-conversation-head small  { color: rgba(148,163,184,.78); font-size: 12px; }
.dnx-comm-conversation-actions { display: flex; gap: 6px; }

.dnx-comm-bubble-stream { display: flex; flex-direction: column; gap: 8px; max-height: 50vh; overflow-y: auto; padding-right: 4px; }
.dnx-comm-bubble {
  max-width: 80%; padding: 9px 12px; border-radius: 14px;
  background: rgba(15,23,42,.7); border: 1px solid rgba(148,163,184,.14);
  animation: dnxCommBubbleIn .18s ease-out;
}
@keyframes dnxCommBubbleIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.dnx-comm-bubble-meta {
  display: flex; gap: 8px; font-size: 10px; color: rgba(148,163,184,.7);
  letter-spacing: .04em; text-transform: uppercase; margin-bottom: 4px;
}
.dnx-comm-bubble-status { margin-left: auto; }
.dnx-comm-bubble p { margin: 0; color: #e2e8f0; font-size: 13px; line-height: 1.5; white-space: pre-wrap; }
.dnx-comm-bubble-actions { display: flex; gap: 6px; flex-wrap: wrap; margin-top: 8px; }
.dnx-comm-bubble-in    { align-self: flex-start; border-color: rgba(56,189,248,.28); background: rgba(14,165,233,.10); }
.dnx-comm-bubble-out   { align-self: flex-end; border-color: rgba(34,197,94,.28); background: rgba(34,197,94,.10); }
.dnx-comm-bubble-draft { align-self: flex-end; border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.06); border-style: dashed; }
.dnx-comm-bubble-note  { align-self: center; border-color: rgba(148,163,184,.18); background: rgba(2,6,23,.55); max-width: 92%; font-style: italic; }

/* Composer */
.dnx-comm-composer { display: flex; flex-direction: column; gap: 8px; border-top: 1px solid rgba(148,163,184,.12); padding-top: 10px; }
.dnx-comm-composer textarea {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px; resize: vertical; min-height: 48px;
}
.dnx-comm-composer-actions { display: flex; justify-content: space-between; gap: 8px; }
.dnx-comm-composer-actions select {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 7px 10px; font-size: 12.5px;
}

/* Review queue */
.dnx-comm-review-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 12px; }
@media (max-width: 920px) { .dnx-comm-review-grid { grid-template-columns: 1fr; } }
.dnx-comm-review-card {
  background: rgba(15,23,42,.55); border: 1px solid rgba(245,158,11,.32);
  border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 10px;
}
.dnx-comm-review-card header {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 8px;
  padding-bottom: 8px; border-bottom: 1px solid rgba(148,163,184,.12);
}
.dnx-comm-review-card strong { color: #f8fafc; font-size: 14px; font-weight: 800; display: block; }
.dnx-comm-review-card small  { color: rgba(148,163,184,.78); font-size: 11.5px; display: block; }
.dnx-comm-review-body {
  margin: 0; padding: 10px 12px; border-radius: 10px;
  background: rgba(2,6,23,.55); color: #e2e8f0; font-size: 13px; line-height: 1.5;
  white-space: pre-wrap;
}
.dnx-comm-review-card footer { display: flex; gap: 6px; flex-wrap: wrap; }

/* Provider setup */
.dnx-comm-provider-card {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 18px 20px; display: flex; flex-direction: column; gap: 12px;
}
.dnx-comm-provider-card h3 { margin: 0; color: #f8fafc; font-size: 17px; font-weight: 800; }
.dnx-comm-provider-card p  { margin: 0; color: rgba(203,213,225,.78); font-size: 13px; line-height: 1.5; }
.dnx-comm-provider-card code { background: rgba(245,158,11,.12); color: #fbbf24; padding: 1px 5px; border-radius: 4px; font-size: 12px; }
.dnx-comm-provider-status {
  align-self: flex-start; padding: 4px 10px; border-radius: 999px;
  font-size: 11px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  border: 1px solid; background: rgba(2,6,23,.4);
}
.dnx-comm-provider-status-configured { color: #86efac; border-color: rgba(34,197,94,.32); background: rgba(34,197,94,.10); }
.dnx-comm-provider-status-pending    { color: #fbbf24; border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.08); }

/* Buttons reuse */
.dnx-communications-v10 .dnx-btn,
.dnx-comm-provider-card .dnx-btn,
.dnx-comm-review-card .dnx-btn,
.dnx-comm-conversation-wrap .dnx-btn,
.dnx-comm-thread-list .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 7px 12px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-communications-v10 .dnx-btn-primary   { background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6); }
.dnx-communications-v10 .dnx-btn-secondary { background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28); }
.dnx-communications-v10 .dnx-btn-ghost     { background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18); }
.dnx-communications-v10 .dnx-btn:hover     { filter: brightness(1.07); }
.dnx-communications-v10 .dnx-btn:disabled  { opacity: .55; cursor: not-allowed; filter: none; }

.dnx-communications-v10 .dnx-empty-state {
  padding: 16px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 13px; text-align: center;
}
.dnx-communications-v10 .dnx-empty-state strong { color: #f8fafc; display: block; margin-bottom: 4px; }
.dnx-communications-v10 .dnx-empty-state small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; }

/* v2.0.0-phase10.1 — defensive visibility for the Communications page so
   that even if a future routing system doesn't strip dn-page-hidden, an
   .is-active / data-active marker forces it visible. */
#dnCommunicationsPage:not(.dn-page-hidden) { display: block !important; }
#dnCommunicationsPage.is-active,
#dnCommunicationsPage[data-active="1"] { display: block !important; }
.dnx-empty-state.dnx-comm-error    { border-color: rgba(239,68,68,.32); background: rgba(239,68,68,.06); color: #fecaca; }
.dnx-empty-state.dnx-comm-error strong { color: #fca5a5; }
.dnx-empty-state.dnx-comm-pending  { border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.06); color: #fde68a; }
.dnx-empty-state.dnx-comm-pending strong { color: #fbbf24; }

/* v2.0.0-phase11 — Twilio dispatch surfaces */
.dnx-comm-provider-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px; margin: 4px 0 8px;
}
@media (max-width: 720px) { .dnx-comm-provider-grid { grid-template-columns: 1fr; } }
.dnx-comm-provider-grid > div {
  background: rgba(2,6,23,.5); border: 1px solid rgba(148,163,184,.12);
  border-radius: 10px; padding: 8px 11px;
}
.dnx-comm-provider-grid span { display: block; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: rgba(148,163,184,.7); }
.dnx-comm-provider-grid strong { display: block; color: #f8fafc; font-size: 13px; margin-top: 3px; word-break: break-word; }
.dnx-comm-provider-grid strong em { color: rgba(148,163,184,.65); font-style: italic; font-weight: 600; }
.dnx-comm-mask {
  display: inline-block; padding: 2px 8px; border-radius: 6px;
  background: rgba(56,189,248,.10); color: #bae6fd;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 12px;
}
.dnx-comm-provider-status-error {
  color: #fca5a5; border-color: rgba(239,68,68,.32); background: rgba(239,68,68,.10);
}

/* Delivery status pills on bubbles */
.dnx-comm-bubble-status.dnx-comm-pill-draft     { background: rgba(245,158,11,.16); color: #fbbf24; }
.dnx-comm-bubble-status.dnx-comm-pill-queued    { background: rgba(56,189,248,.16); color: #bae6fd; }
.dnx-comm-bubble-status.dnx-comm-pill-sent      { background: rgba(34,197,94,.18);  color: #86efac; }
.dnx-comm-bubble-status.dnx-comm-pill-delivered { background: rgba(34,197,94,.28);  color: #4ade80; }
.dnx-comm-bubble-status.dnx-comm-pill-received  { background: rgba(99,102,241,.18); color: #c7d2fe; }
.dnx-comm-bubble-status.dnx-comm-pill-failed,
.dnx-comm-bubble-status.dnx-comm-pill-undelivered { background: rgba(239,68,68,.16); color: #fca5a5; }
.dnx-comm-bubble-status.dnx-comm-pill-canceled  { background: rgba(148,163,184,.16); color: #cbd5e1; }
.dnx-comm-bubble-error {
  display: block; margin-top: 6px; padding: 6px 8px; border-radius: 8px;
  background: rgba(239,68,68,.08); color: #fca5a5; font-size: 11px; line-height: 1.4;
}

/* ============================================================================
   v2.0.0-phase12 — Operations Health Center
   Mounts inside Settings → System / Debug tab.
   ============================================================================ */
.dnx-ops-v12 { display: block; color: #e2e8f0; padding: 4px 0 18px; }
.dnx-ops-hero {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 16px; margin-bottom: 14px; padding: 16px 18px; border-radius: 16px;
  background: linear-gradient(135deg, rgba(14,165,233,.10), rgba(56,189,248,.04));
  border: 1px solid rgba(56,189,248,.18);
}
.dnx-ops-v12 .dnx-eyebrow {
  display: inline-block; font-size: 11px; font-weight: 800; letter-spacing: .08em;
  text-transform: uppercase; color: #7dd3fc; margin-bottom: 4px;
}
.dnx-ops-hero h2 { font-size: 19px; margin: 0 0 4px; color: #f8fafc; font-weight: 800; }
.dnx-ops-hero p  { margin: 0; font-size: 12.5px; color: rgba(203,213,225,.78); max-width: 70ch; }
.dnx-ops-hero-actions { display: flex; gap: 8px; flex-wrap: wrap; }

.dnx-ops-kpis {
  display: grid; grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px; margin-bottom: 14px;
}
@media (max-width: 1180px) { .dnx-ops-kpis { grid-template-columns: repeat(4, minmax(0,1fr)); } }
@media (max-width: 720px)  { .dnx-ops-kpis { grid-template-columns: repeat(2, minmax(0,1fr)); } }
.dnx-ops-kpis .dnx-home-kpi b { text-transform: capitalize; }
.dnx-ops-kpis .dnx-ops-kpi-ok      { border-color: rgba(34,197,94,.32);  background: rgba(34,197,94,.06); }
.dnx-ops-kpis .dnx-ops-kpi-ok b    { color: #86efac; }
.dnx-ops-kpis .dnx-ops-kpi-warning { border-color: rgba(245,158,11,.32); background: rgba(245,158,11,.06); }
.dnx-ops-kpis .dnx-ops-kpi-warning b { color: #fbbf24; }
.dnx-ops-kpis .dnx-ops-kpi-error   { border-color: rgba(239,68,68,.32);  background: rgba(239,68,68,.06); }
.dnx-ops-kpis .dnx-ops-kpi-error b { color: #fca5a5; }

.dnx-ops-check-grid {
  display: grid; grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px; margin-bottom: 14px;
}
@media (max-width: 920px) { .dnx-ops-check-grid { grid-template-columns: 1fr; } }
.dnx-ops-check-card {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 8px;
}
.dnx-ops-check-card.dnx-ops-status-ok      { border-color: rgba(34,197,94,.28); }
.dnx-ops-check-card.dnx-ops-status-warning { border-color: rgba(245,158,11,.32); }
.dnx-ops-check-card.dnx-ops-status-error   { border-color: rgba(239,68,68,.32); }
.dnx-ops-check-card header {
  display: flex; justify-content: space-between; align-items: flex-start; gap: 8px;
}
.dnx-ops-check-card header strong { color: #f8fafc; font-size: 14px; font-weight: 800; }
.dnx-ops-check-card p { margin: 0; color: rgba(203,213,225,.86); font-size: 13px; line-height: 1.5; }
.dnx-ops-check-details { display: flex; flex-direction: column; gap: 2px; padding: 6px 8px; border-radius: 8px; background: rgba(2,6,23,.45); }
.dnx-ops-check-details small { color: rgba(148,163,184,.78); font-size: 11px; }
.dnx-ops-check-card footer {
  display: flex; justify-content: space-between; align-items: center; gap: 8px;
  padding-top: 8px; border-top: 1px solid rgba(148,163,184,.10);
}
.dnx-ops-check-card footer small { color: rgba(148,163,184,.7); font-size: 11px; }
.dnx-ops-status-pill {
  display: inline-block; padding: 3px 9px; border-radius: 999px;
  font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
  background: rgba(56,189,248,.16); color: #bae6fd; border: 1px solid rgba(56,189,248,.28);
}
.dnx-ops-status-pill.dnx-ops-status-ok      { background: rgba(34,197,94,.16);  color: #86efac; border-color: rgba(34,197,94,.32); }
.dnx-ops-status-pill.dnx-ops-status-warning { background: rgba(245,158,11,.16); color: #fbbf24; border-color: rgba(245,158,11,.32); }
.dnx-ops-status-pill.dnx-ops-status-error   { background: rgba(239,68,68,.16);  color: #fca5a5; border-color: rgba(239,68,68,.32); }
.dnx-ops-status-pill.dnx-ops-status-unknown { background: rgba(148,163,184,.16); color: #cbd5e1; border-color: rgba(148,163,184,.28); }

.dnx-ops-jobs, .dnx-ops-failed-sms, .dnx-ops-events { margin-bottom: 12px; }
.dnx-ops-msg-body { display: inline-block; max-width: 320px; color: rgba(203,213,225,.86); }
.dnx-ops-err { color: #fca5a5; font-size: 11px; }

.dnx-ops-event-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.dnx-ops-event {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 10px; padding: 9px 12px; display: flex; flex-direction: column; gap: 4px;
}
.dnx-ops-event div { display: flex; justify-content: space-between; gap: 8px; }
.dnx-ops-event strong { color: #f8fafc; font-size: 13px; font-weight: 800; }
.dnx-ops-event small  { color: rgba(148,163,184,.7); font-size: 11px; }
.dnx-ops-event p { margin: 0; color: rgba(203,213,225,.84); font-size: 12.5px; line-height: 1.45; }
.dnx-ops-event-warning { border-left: 3px solid rgba(245,158,11,.5); }
.dnx-ops-event-error   { border-left: 3px solid rgba(239,68,68,.55); }

/* Reuse buttons + empty-states inside the ops surface */
.dnx-ops-v12 .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 7px 12px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-ops-v12 .dnx-btn-primary   { background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6); }
.dnx-ops-v12 .dnx-btn-secondary { background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28); }
.dnx-ops-v12 .dnx-btn-ghost     { background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18); }
.dnx-ops-v12 .dnx-btn:hover     { filter: brightness(1.07); }
.dnx-ops-v12 .dnx-btn:disabled  { opacity: .55; cursor: not-allowed; filter: none; }

.dnx-ops-v12 .dnx-empty-state {
  padding: 14px; border: 1px dashed rgba(148,163,184,.22); border-radius: 12px;
  background: rgba(15,23,42,.45); color: rgba(203,213,225,.78); font-size: 13px; text-align: center;
}
.dnx-ops-v12 .dnx-empty-state strong { color: #f8fafc; display: block; margin-bottom: 4px; }
.dnx-ops-v12 .dnx-empty-state small  { display: block; color: rgba(148,163,184,.7); font-size: 12px; }

/* ============================================================================
   v2.0.0-phase13 — AI Lead Automation
   Mounts inside Communications → Automation tab + Lead drawer card.
   ============================================================================ */
.dnx-ai-automation-v13 { display: flex; flex-direction: column; gap: 14px; }
.dnx-ai-review-warning {
  padding: 12px 14px; border-radius: 12px;
  background: rgba(245,158,11,.08); border: 1px solid rgba(245,158,11,.32);
  color: #fde68a; font-size: 13px; line-height: 1.5;
}
.dnx-ai-review-warning strong { color: #fbbf24; }
.dnx-ai-review-locked {
  border-color: rgba(56,189,248,.32); background: rgba(14,165,233,.06); color: #bae6fd;
}
.dnx-ai-review-locked strong { color: #7dd3fc; }

.dnx-ai-rule-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 920px) { .dnx-ai-rule-grid { grid-template-columns: 1fr; } }
.dnx-ai-rule-card {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 14px; padding: 14px 16px; display: flex; flex-direction: column; gap: 10px;
}
.dnx-ai-rule-card.is-enabled { border-color: rgba(34,197,94,.28); }
.dnx-ai-rule-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 8px; }
.dnx-ai-rule-card header strong { display: block; color: #f8fafc; font-size: 14px; font-weight: 800; }
.dnx-ai-rule-card header small  { display: block; color: rgba(148,163,184,.78); font-size: 11.5px; margin-top: 2px; text-transform: capitalize; }
.dnx-ai-rule-meta { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; margin: 0; padding: 0; list-style: none; }
.dnx-ai-rule-meta > div { background: rgba(2,6,23,.5); border: 1px solid rgba(148,163,184,.12); border-radius: 10px; padding: 7px 9px; }
.dnx-ai-rule-meta dt { display: block; font-size: 10.5px; letter-spacing: .06em; text-transform: uppercase; color: rgba(148,163,184,.7); margin: 0; }
.dnx-ai-rule-meta dd { display: block; color: #f8fafc; font-size: 12.5px; font-weight: 700; margin: 2px 0 0; }
.dnx-ai-rule-card footer { display: flex; gap: 6px; flex-wrap: wrap; padding-top: 8px; border-top: 1px solid rgba(148,163,184,.10); }

.dnx-ai-pill {
  display: inline-block; padding: 2px 9px; border-radius: 999px;
  font-size: 10.5px; font-weight: 800; letter-spacing: .06em; text-transform: uppercase;
}
.dnx-ai-pill-on  { background: rgba(34,197,94,.16);  color: #86efac; border: 1px solid rgba(34,197,94,.32); }
.dnx-ai-pill-off { background: rgba(148,163,184,.16); color: #cbd5e1; border: 1px solid rgba(148,163,184,.28); }

.dnx-ai-rule-drawer {
  position: fixed; right: 0; top: 0; bottom: 0; width: min(580px, 96vw);
  background: linear-gradient(180deg, rgba(15,23,42,.97), rgba(2,6,23,.97));
  border-left: 1px solid rgba(56,189,248,.18); z-index: 7000; color: #e2e8f0;
  box-shadow: -16px 0 48px rgba(0,0,0,.5); overflow-y: auto;
}
.dnx-ai-rule-drawer-card { padding: 16px 18px; display: flex; flex-direction: column; gap: 14px; }
.dnx-ai-rule-drawer-card header { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; }
.dnx-ai-rule-drawer-card h3 { margin: 2px 0 0; color: #f8fafc; font-size: 18px; font-weight: 800; }
.dnx-ai-rule-drawer .dnx-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
@media (max-width: 600px) { .dnx-ai-rule-drawer .dnx-form-grid { grid-template-columns: 1fr; } }
.dnx-ai-rule-drawer label { display: flex; flex-direction: column; gap: 4px; }
.dnx-ai-rule-drawer label > span {
  font-size: 11px; letter-spacing: .04em; text-transform: uppercase;
  font-weight: 700; color: rgba(203,213,225,.78);
}
.dnx-ai-rule-drawer input,
.dnx-ai-rule-drawer select,
.dnx-ai-rule-drawer textarea {
  background: rgba(2,6,23,.55); border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 10px; padding: 9px 11px; font-size: 13px; width: 100%;
}
.dnx-ai-rule-drawer textarea { resize: vertical; min-height: 70px; }
.dnx-ai-rule-drawer label.dnx-form-grid-wide { grid-column: 1 / -1; }

/* Lead drawer AI card */
.dnx-ai-lead-card {
  background: rgba(15,23,42,.55); border: 1px solid rgba(148,163,184,.12);
  border-radius: 12px; padding: 11px 13px; margin: 6px 16px;
  display: flex; flex-direction: column; gap: 8px;
}
.dnx-ai-lead-card .dnx-eyebrow {
  font-size: 10.5px; letter-spacing: .08em; text-transform: uppercase;
  color: #7dd3fc; font-weight: 800;
}
.dnx-ai-lead-meta small { color: rgba(203,213,225,.82); font-size: 12px; }
.dnx-ai-lead-actions { display: flex; gap: 6px; flex-wrap: wrap; }

.dnx-ai-rule-drawer .dnx-btn,
.dnx-ai-automation-v13 .dnx-btn,
.dnx-ai-lead-card .dnx-btn {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 6px; padding: 7px 12px; border-radius: 10px;
  font-size: 12.5px; font-weight: 700; letter-spacing: .02em;
  border: 1px solid transparent; cursor: pointer; transition: filter .15s, border-color .15s;
}
.dnx-ai-rule-drawer .dnx-btn-primary,
.dnx-ai-automation-v13 .dnx-btn-primary,
.dnx-ai-lead-card .dnx-btn-primary { background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220; border-color: rgba(14,165,233,.6); }
.dnx-ai-rule-drawer .dnx-btn-secondary,
.dnx-ai-automation-v13 .dnx-btn-secondary,
.dnx-ai-lead-card .dnx-btn-secondary { background: rgba(14,165,233,.12); color: #bae6fd; border-color: rgba(56,189,248,.28); }
.dnx-ai-rule-drawer .dnx-btn-ghost,
.dnx-ai-automation-v13 .dnx-btn-ghost,
.dnx-ai-lead-card .dnx-btn-ghost { background: transparent; color: rgba(203,213,225,.78); border-color: rgba(148,163,184,.18); }
.dnx-ai-rule-drawer .dnx-btn:hover,
.dnx-ai-automation-v13 .dnx-btn:hover,
.dnx-ai-lead-card .dnx-btn:hover { filter: brightness(1.07); }

/* ============================================================================
   v2.0.0-phase23.3 — GLOBAL UI EXPERIENCE CLEANUP / COMPACT DAILY-USE DESIGN
   --------------------------------------------------------------------------
   Compact every internal page header / hero / toolbar so DealerNexus reads
   like an operational dashboard instead of a marketing landing page.
   Scope: every internal tab EXCEPT Deal Rehash. Deal Rehash is intentionally
   left untouched and has zero selectors below.
   ============================================================================ */

/* ---- Hide legacy "DealerNexus X" eyebrow labels inside hero headers ---- */
.dnx-home-hero .dnx-home-eyebrow,
.dnx-leads-hero .dnx-leads-eyebrow,
.dnx-leads-hero .dnx-eyebrow,
.dnx-bdc-hero .dnx-bdc-eyebrow,
.dnx-bdc-hero .dnx-eyebrow,
.dnx-customers-hero .dnx-eyebrow,
.dnx-add-customer-v5 .dnx-customers-hero .dnx-eyebrow,
.dnx-reports-hero .dnx-eyebrow,
.dnx-appointments-hero .dnx-eyebrow,
.dnx-inventory-hero .dnx-eyebrow,
.dnx-comm-hero .dnx-eyebrow,
.dnx-ops-hero .dnx-eyebrow,
.dnx-aicc .dnx-eyebrow,
.dnx-settings-hero .dnx-settings-eyebrow {
  display: none !important;
}

/* ---- Compact every hero panel (less padding, smaller h1, no bulky shadow) ---- */
.dnx-home-hero,
.dnx-leads-hero,
.dnx-bdc-hero,
.dnx-customers-hero,
.dnx-reports-hero,
.dnx-appointments-hero,
.dnx-inventory-hero,
.dnx-comm-hero,
.dnx-ops-hero,
.dnx-settings-hero {
  padding: 12px 14px !important;
  margin-bottom: 12px !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.35)) !important;
  border: 1px solid rgba(148,163,184,0.14) !important;
}

#dnHomePage .dnx-home-hero h1,
#dnLeadsPage .dnx-leads-hero h1,
#dnCrmDealsPage .dnx-bdc-hero h1,
.dnx-customers-hero h1,
.dnx-reports-hero h1,
.dnx-appointments-hero h1,
.dnx-inventory-hero h1,
.dnx-comm-hero h1,
.dnx-ops-hero h2,
#dnSettingsPage .dnx-settings-hero h1 {
  font-size: 17px !important;
  line-height: 1.15 !important;
  margin: 0 !important;
  letter-spacing: -.01em;
  font-weight: 800;
  color: #f8fafc;
}

#dnHomePage .dnx-home-hero p,
#dnLeadsPage .dnx-leads-hero p,
#dnCrmDealsPage .dnx-bdc-hero p,
.dnx-customers-hero p,
.dnx-reports-hero p,
.dnx-appointments-hero p,
.dnx-inventory-hero p,
.dnx-comm-hero p,
.dnx-ops-hero p,
#dnSettingsPage .dnx-settings-hero p {
  margin: 2px 0 0 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: rgba(203,213,225,0.7) !important;
  max-width: 70ch;
}

/* Hero action buttons — smaller, tighter, consistent */
.dnx-home-hero-actions .dnx-btn,
.dnx-leads-hero ~ * .dnx-btn,
.dnx-customers-hero-actions .dnx-btn,
.dnx-reports-hero-actions .dnx-btn,
.dnx-appointments-hero-actions .dnx-btn,
.dnx-inventory-hero-actions .dnx-btn,
.dnx-comm-hero-actions .dnx-btn,
.dnx-ops-hero-actions .dnx-btn {
  padding: 6px 11px !important;
  font-size: 12px !important;
  letter-spacing: .03em !important;
  border-radius: 8px !important;
}

/* The leads/bdc heros use an inline-styled actions div — target it more loosely */
.dnx-leads-hero > div:last-child .dnx-btn,
.dnx-bdc-hero > div:last-child .dnx-btn {
  padding: 6px 11px !important;
  font-size: 12px !important;
  border-radius: 8px !important;
}

/* ---- New reusable compact page header system ---- */
.dnx-page-toolbar {
  display: flex; flex-wrap: wrap; align-items: center;
  justify-content: space-between; gap: 8px;
  padding: 8px 10px; margin: 0 0 10px;
  border-radius: 10px;
  background: rgba(15,23,42,0.45);
  border: 1px solid rgba(148,163,184,0.12);
}
.dnx-toolbar-actions { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.dnx-toolbar-group   { display: flex; gap: 6px; align-items: center; flex-wrap: wrap; }
.dnx-toolbar-btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 6px 11px; border-radius: 8px;
  font-size: 12px; font-weight: 800; letter-spacing: .02em;
  cursor: pointer; transition: filter .15s, transform .05s;
  border: 1px solid rgba(148,163,184,0.22);
  background: rgba(15,23,42,0.6); color: #e2e8f0;
}
.dnx-toolbar-btn:hover { filter: brightness(1.07); }
.dnx-toolbar-btn:active { transform: translateY(1px); }
.dnx-toolbar-btn-primary {
  background: linear-gradient(135deg, #38bdf8, #0ea5e9); color: #0b1220;
  border-color: rgba(14,165,233,.55);
}
.dnx-toolbar-btn-secondary {
  background: rgba(14,165,233,.12); color: #bae6fd;
  border-color: rgba(56,189,248,.28);
}
.dnx-toolbar-btn-ghost {
  background: transparent; color: rgba(203,213,225,.78);
  border-color: rgba(148,163,184,.18);
}
.dnx-toolbar-btn-danger {
  background: rgba(239,68,68,0.14); color: #fecaca;
  border-color: rgba(239,68,68,0.3);
}
.dnx-toolbar-search,
.dnx-toolbar-filter {
  background: rgba(2,6,23,.55);
  border: 1px solid rgba(56,189,248,.18);
  color: #e2e8f0; border-radius: 8px;
  padding: 6px 10px; font-size: 12px;
  min-width: 140px;
}

/* The new reusable compact page header (used by JS that opts in) */
.dnx-page-header {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; padding: 10px 14px; margin: 0 0 12px;
  border-radius: 10px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.35));
  border: 1px solid rgba(148,163,184,0.14);
}
.dnx-page-header-main { display: flex; flex-direction: column; min-width: 0; }
.dnx-page-title    { font: 800 17px/1.15 Inter,system-ui; color: #f8fafc; margin: 0; letter-spacing: -.01em; }
.dnx-page-subtitle { font: 600 12px/1.35 Inter,system-ui; color: rgba(203,213,225,.7); margin: 2px 0 0; }
.dnx-page-eyebrow  { display: none; } /* eyebrow is opt-in; default hidden for daily-use */
.dnx-page-status-pill {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 3px 10px; border-radius: 999px;
  font-size: 10.5px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase;
  background: rgba(34,197,94,.12); color: #86efac;
  border: 1px solid rgba(34,197,94,.32);
}
.dnx-page-status-pill[data-state="off"] {
  background: rgba(239,68,68,0.12); color: #fecaca;
  border-color: rgba(239,68,68,0.32);
}
.dnx-page-header-actions { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.dnx-page-compact { padding: 8px 12px; }
.dnx-page-section { padding: 0; margin: 0 0 12px; }
.dnx-page-section-title { font: 800 13px/1.2 Inter,system-ui; color: #e2e8f0; margin: 0 0 6px; letter-spacing: .02em; }

@media (max-width: 720px) {
  .dnx-page-header { flex-direction: column; align-items: stretch; }
  .dnx-page-header-actions { justify-content: flex-start; }
  .dnx-page-toolbar { flex-direction: column; align-items: stretch; }
  .dnx-toolbar-actions { width: 100%; }
}

/* ---- Compact existing hero action button bars ---- */
.dnx-home-hero-actions,
.dnx-customers-hero-actions,
.dnx-reports-hero-actions,
.dnx-appointments-hero-actions,
.dnx-inventory-hero-actions,
.dnx-comm-hero-actions,
.dnx-ops-hero-actions {
  gap: 6px !important;
  align-items: center !important;
}

/* ---- Tighter table rows for daily-use density ---- */
.dnx-table thead th { padding: 6px 9px !important; font-size: 10.5px !important; }
.dnx-table tbody td { padding: 6px 9px !important; font-size: 12px !important; }

.dnx-customers-table thead th { padding: 6px 10px !important; font-size: 10.5px !important; }
.dnx-customers-table tbody td { padding: 6px 10px !important; font-size: 12.5px !important; }

/* Inventory table compact row sizing without breaking row-select / sort */
.dnx-inventory-table { font-size: 12px !important; }
.dnx-inventory-table thead th { padding: 6px 9px !important; font-size: 10px !important; }
.dnx-inventory-table tbody td { padding: 6px 9px !important; line-height: 1.3 !important; }
.dnx-inventory-table tbody td small { font-size: 10.5px !important; }
.dnx-inventory-v8 .dnx-table thead th,
.dnx-inventory-v8 table thead th { padding: 5px 8px !important; font-size: 10.5px !important; }
.dnx-inventory-v8 .dnx-table tbody td,
.dnx-inventory-v8 table tbody td { padding: 5px 8px !important; font-size: 12px !important; line-height: 1.3 !important; }

/* Make sure every internal table sits inside its card and never pushes layout */
.dnx-page .dnx-card { overflow: hidden; }
.dnx-page .dnx-card > .dnx-table-wrap,
.dnx-page .dnx-card > [class$="-table-wrap"],
.dnx-page .dnx-card > div[id$="-table-wrap"] { overflow-x: auto; }

/* Compact KPI cards across the app */
.dnx-home-kpi { padding: 8px 11px !important; }
.dnx-home-kpi b { font-size: 17px !important; margin-top: 2px !important; }
.dnx-home-kpi span { font-size: 10px !important; }
.dnx-home-kpi small { font-size: 10.5px !important; margin-top: 1px !important; }

/* ---- Settings hero compaction ---- */
#dnSettingsPage .dnx-settings-hero {
  padding: 12px 14px !important;
  margin-bottom: 12px !important;
  border-radius: 12px !important;
}
#dnSettingsPage .dnx-settings-version #dnSettingsVersionPill {
  font-size: 10.5px;
}

/* ---- Static legacy header (Todo) — make it daily-use compact ---- */
#dnTodoPage .dn-kicker { display: none; }
#dnTodoPage .dn-page-title { font-size: 18px !important; margin: 0 0 4px !important; line-height: 1.1; letter-spacing: -.01em; }
#dnTodoPage .dn-page-copy  { font-size: 12px !important; color: rgba(148,163,184,.78); margin: 0 0 10px; }

/* Catch-all: any remaining DealerNexus eyebrow inside any internal page header */
.dnx-page > header .dnx-eyebrow,
.dnx-shell-v2 > header .dnx-eyebrow {
  /* keep available but hide default DealerNexus prefixes */
}

/* ---- Shop Cars control center compact tweaks (header/tabs/tables) ---- */
#dnxShopCarsRoot > header,
.dnx-shop-shell > header.dnx-comm-hero {
  padding: 12px 16px !important;
}
#dnxShopCarsRoot > header h1 { font-size: 17px !important; line-height: 1.15 !important; }
#dnxShopCarsRoot > header p  { font-size: 12px !important; }

/* Constrain Shop Cars internal tables — no clipped status column */
#dnxShopCarsRoot .dnx-table,
#dnxShopCarsRoot table { table-layout: auto; }
#dnxShopCarsRoot .dnx-card { overflow-x: auto; }

/* ---- Responsive header wrap ---- */
@media (max-width: 720px) {
  .dnx-home-hero,
  .dnx-leads-hero,
  .dnx-bdc-hero,
  .dnx-customers-hero,
  .dnx-reports-hero,
  .dnx-appointments-hero,
  .dnx-inventory-hero,
  .dnx-comm-hero,
  .dnx-ops-hero,
  .dnx-settings-hero {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .dnx-home-hero-actions,
  .dnx-customers-hero-actions,
  .dnx-reports-hero-actions,
  .dnx-appointments-hero-actions,
  .dnx-inventory-hero-actions,
  .dnx-comm-hero-actions,
  .dnx-ops-hero-actions {
    justify-content: flex-start;
  }
}

/* ============================================================================
   v2.0.0-phase23.4 — Inventory photo gallery + final compact-table pass.
   Adds a small thumbnail column, the Photo Manager modal styles, and tightens
   inventory rows further for daily-use density. Deal Rehash is not touched.
   ============================================================================ */

/* ---- Inventory thumbnail column ---- */
.dnx-inventory-table th.dnx-inv-thumb-th { width: 64px; text-align: center; padding: 5px 4px !important; }
.dnx-inv-thumb-cell { width: 64px; text-align: center; padding: 4px !important; cursor: pointer; }
.dnx-inv-thumb {
  display: inline-block;
  width: 52px; height: 38px;
  object-fit: cover;
  border-radius: 5px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.18);
  transition: border-color .15s, transform .15s;
}
.dnx-inv-thumb-cell:hover .dnx-inv-thumb { border-color: rgba(56,189,248,0.55); }
.dnx-inv-thumb-empty {
  display: inline-flex; align-items: center; justify-content: center;
  width: 52px; height: 38px;
  font-size: 16px; color: rgba(148,163,184,0.55);
  border-radius: 5px;
  background: linear-gradient(135deg, rgba(15,23,42,0.65), rgba(2,6,23,0.4));
  border: 1px dashed rgba(148,163,184,0.22);
}

/* ---- Final compact pass on inventory rows ---- */
.dnx-inventory-table { font-size: 11.5px !important; }
.dnx-inventory-table thead th { padding: 5px 8px !important; font-size: 9.5px !important; letter-spacing: .04em; }
.dnx-inventory-table tbody td { padding: 5px 8px !important; line-height: 1.25 !important; vertical-align: middle !important; }
.dnx-inventory-table tbody td small { font-size: 10px !important; }
.dnx-inventory-table tbody td.dnx-inventory-vehicle strong { font-size: 12px !important; }
.dnx-inventory-table tbody td.dnx-inventory-vehicle small { display: block; }
.dnx-inventory-table tbody td.dnx-inventory-vehicle small.dnx-inv-body { display: inline-block; padding: 1px 6px !important; font-size: 9px !important; }
.dnx-inventory-table tbody tr.dnx-inventory-row { transition: background .12s; }
.dnx-inventory-table tbody tr.dnx-inventory-row:hover { background: rgba(14,165,233,0.06) !important; }
.dnx-inventory-actions { gap: 4px !important; flex-wrap: wrap; }
.dnx-inventory-actions .dnx-btn { padding: 4px 8px !important; font-size: 10.5px !important; border-radius: 6px !important; line-height: 1.15; }
.dnx-inventory-quality-pill { padding: 1px 6px !important; font-size: 9.5px !important; }
.dnx-inv-score { font-size: 9.5px !important; opacity: .65; }
.dnx-inventory-status { padding: 2px 8px !important; font-size: 9.5px !important; }
/* Truncate vehicle title text so very long trims don't blow up the row. */
.dnx-inventory-table tbody td.dnx-inventory-vehicle { max-width: 260px; }
.dnx-inventory-table tbody td.dnx-inventory-vehicle strong,
.dnx-inventory-table tbody td.dnx-inventory-vehicle small {
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 100%;
}
/* Sticky thead inside the wrap, but only when the wrap actually scrolls. */
.dnx-inventory-table-wrap { overflow-x: auto; max-height: calc(100vh - 240px); overflow-y: auto; }
.dnx-inventory-table thead th { position: sticky; top: 0; z-index: 2; background: rgba(8,12,20,0.96); backdrop-filter: blur(8px); }

/* Selected-row highlight stays clean and subtle. */
.dnx-inventory-table tbody tr.dnx-inventory-row.is-selected,
.dnx-inventory-table tbody tr.dnx-inventory-row[data-selected="1"] {
  background: rgba(14,165,233,0.10) !important;
}

/* ---- Photo Manager modal ---- */
.dnx-photo-mgr {
  position: fixed; inset: 0; z-index: 9050;
  background: rgba(2,6,15,0.78);
  backdrop-filter: blur(6px);
  display: flex; align-items: flex-start; justify-content: center;
  padding: 4vh 16px;
  overflow: auto;
}
.dnx-photo-mgr[hidden] { display: none; }
.dnx-photo-mgr-card {
  width: min(880px, 100%);
  background: linear-gradient(180deg, rgba(15,23,42,0.96), rgba(2,6,23,0.96));
  border: 1px solid rgba(56,189,248,0.18);
  border-radius: 14px;
  box-shadow: 0 20px 60px rgba(2,6,15,0.55);
  color: #e2e8f0;
  overflow: hidden;
}
.dnx-photo-mgr-head {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 10px; padding: 14px 16px;
  border-bottom: 1px solid rgba(148,163,184,0.14);
}
.dnx-photo-mgr-title h3 { margin: 0; font-size: 16px; color: #f8fafc; letter-spacing: -.01em; }
.dnx-photo-mgr-title small { color: rgba(148,163,184,0.78); font-size: 12px; }
.dnx-photo-mgr-body { padding: 14px 16px; min-height: 140px; }
.dnx-photo-mgr-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
  gap: 10px;
}
.dnx-photo-tile {
  position: relative;
  aspect-ratio: 4 / 3;
  border-radius: 10px;
  overflow: hidden;
  border: 1px solid rgba(148,163,184,0.16);
  background: rgba(2,6,23,0.55);
}
.dnx-photo-tile.is-primary { border-color: rgba(78,224,255,0.6); box-shadow: inset 0 0 0 1px rgba(78,224,255,0.4); }
.dnx-photo-tile img { width: 100%; height: 100%; object-fit: cover; display: block; }
.dnx-photo-primary-pill {
  position: absolute; top: 6px; left: 6px;
  font-size: 10px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase;
  padding: 2px 8px; border-radius: 999px;
  background: rgba(78,224,255,0.18); color: #4ee0ff;
  border: 1px solid rgba(78,224,255,0.45);
}
.dnx-photo-tile-acts {
  position: absolute; left: 0; right: 0; bottom: 0;
  display: flex; justify-content: space-between; gap: 6px;
  padding: 6px;
  background: linear-gradient(180deg, rgba(2,6,15,0) 0%, rgba(2,6,15,0.7) 100%);
}
.dnx-photo-tile-acts .dnx-btn { font-size: 10.5px !important; padding: 3px 8px !important; border-radius: 6px !important; }
.dnx-photo-mgr-foot {
  border-top: 1px solid rgba(148,163,184,0.14);
  padding: 12px 16px;
  background: rgba(15,23,42,0.45);
}
.dnx-photo-mgr-upload {
  display: grid; grid-template-columns: 1fr 1fr auto; gap: 10px; align-items: end;
}
.dnx-photo-mgr-upload label { display: flex; flex-direction: column; gap: 4px; font-size: 11px; color: rgba(203,213,225,0.78); font-weight: 700; }
.dnx-photo-mgr-upload input[type="file"],
.dnx-photo-mgr-upload input[type="url"] {
  background: rgba(2,6,23,0.55);
  border: 1px solid rgba(56,189,248,0.18);
  color: #e2e8f0; border-radius: 8px;
  padding: 7px 10px; font-size: 12px;
}
.dnx-photo-mgr-upload .dnx-btn { padding: 8px 14px; font-size: 12px; border-radius: 8px; }
@media (max-width: 720px) {
  .dnx-photo-mgr-upload { grid-template-columns: 1fr; }
  .dnx-photo-mgr-grid { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
  .dnx-inventory-table-wrap { max-height: none; }
}

/* ============================================================================
   v2.0.0-phase24.2.1 — Internal Vehicle Profile (page-style) +
   ultra-compact inventory rows. Replaces the phase24.2 fullscreen overlay.
   ============================================================================ */

/* ---- Vehicle Profile page (mounts inside #dnVehicleProfilePage) ---- */
#dnVehicleProfilePage { padding: 0; }
.dnx-vehicle-profile-page {
  max-width: 1320px;
  margin: 0 auto;
  padding: 16px 18px 32px;
  width: 100%;
  color: var(--dnx-text, #e2e8f0);
}
.dnx-vehicle-profile-header {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: 14px; flex-wrap: wrap;
  padding: 12px 14px; margin-bottom: 12px;
  background: linear-gradient(180deg, rgba(15,23,42,0.65), rgba(2,6,23,0.45));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 12px;
}
.dnx-vp-headline { min-width: 0; }
.dnx-vp-headline h2 { margin: 0; font-size: 17px; line-height: 1.15; letter-spacing: -.01em; color: #f8fafc; font-weight: 900; }
.dnx-vp-subline { margin: 3px 0 0; font-size: 12px; color: rgba(203,213,225,0.7); font-weight: 700; }
.dnx-vp-pills-row { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
.dnx-vp-pill {
  font-size: 9.5px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase;
  padding: 2px 8px; border-radius: 999px; border: 1px solid rgba(148,163,184,0.22);
  background: rgba(255,255,255,0.04); color: rgba(203,213,225,0.78);
}
.dnx-vp-pill.listed   { color: #86efac; background: rgba(134,239,172,0.10); border-color: rgba(134,239,172,0.32); }
.dnx-vp-pill.hidden   { color: #fca5a5; background: rgba(252,165,165,0.10); border-color: rgba(252,165,165,0.32); }
.dnx-vp-pill.ai       { color: #a78bfa; background: rgba(167,139,250,0.10); border-color: rgba(167,139,250,0.32); }
.dnx-vp-pill.gd       { color: #7be39c; background: rgba(123,227,156,0.10); border-color: rgba(123,227,156,0.32); }
.dnx-vp-pill.sp       { color: #fde68a; background: rgba(253,230,138,0.10); border-color: rgba(253,230,138,0.32); }
.dnx-vp-pill.st       { color: #67e8f9; background: rgba(103,232,249,0.10); border-color: rgba(103,232,249,0.32); }

.dnx-vehicle-profile-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.dnx-vehicle-profile-actions .dnx-btn { padding: 6px 11px; font-size: 11.5px; border-radius: 8px; }

/* KPI grid */
.dnx-vehicle-kpi-grid {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 8px; margin-bottom: 12px;
}
.dnx-vehicle-kpi {
  background: rgba(2,6,23,0.55); border: 1px solid rgba(148,163,184,0.16);
  border-radius: 10px; padding: 8px 11px;
}
.dnx-vehicle-kpi span { display: block; font-size: 9.5px; letter-spacing: .06em; text-transform: uppercase; color: rgba(148,163,184,0.7); font-weight: 800; }
.dnx-vehicle-kpi b    { display: block; margin-top: 3px; font-size: 16px; font-weight: 900; color: #f8fafc; }

/* Two-column body */
.dnx-vehicle-profile-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(320px, .85fr);
  gap: 14px; align-items: start;
}
.dnx-vehicle-profile-grid > * { min-width: 0; }
@media (max-width: 1100px) { .dnx-vehicle-profile-grid { grid-template-columns: 1fr; } }

.dnx-vehicle-card {
  background: rgba(15,23,38,0.55);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 10px 12px; margin-bottom: 10px;
}
.dnx-vehicle-card-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 8px; margin-bottom: 8px;
}
.dnx-vehicle-card-head strong {
  font-size: 11.5px; letter-spacing: .04em; text-transform: uppercase;
  color: #bae6fd; font-weight: 900;
}
.dnx-vehicle-card-head .dnx-btn { padding: 3px 9px; font-size: 10.5px; border-radius: 6px; }

/* Editable form grid inside cards */
.dnx-vehicle-form-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 8px;
}
.dnx-vehicle-form-grid .dnx-vehicle-row {
  display: flex; flex-direction: column; gap: 3px;
  font-size: 10.5px; font-weight: 700; color: rgba(203,213,225,0.75);
}
.dnx-vehicle-form-grid .dnx-vehicle-row > span {
  font-size: 9.5px; letter-spacing: .04em; text-transform: uppercase;
  color: rgba(148,163,184,0.7); font-weight: 800;
}
.dnx-vehicle-form-grid .dnx-vehicle-row input[type="text"],
.dnx-vehicle-form-grid .dnx-vehicle-row input[type="number"],
.dnx-vehicle-form-grid .dnx-vehicle-row select,
.dnx-vehicle-form-grid .dnx-vehicle-row textarea {
  background: rgba(2,6,23,0.55); border: 1px solid rgba(148,163,184,0.18);
  color: #f8fafc; border-radius: 7px; padding: 6px 9px;
  font-size: 12px; font-family: inherit;
}
.dnx-vehicle-form-grid .dnx-vehicle-row textarea { min-height: 60px; resize: vertical; }
.dnx-vehicle-form-grid .dnx-vehicle-full { grid-column: 1 / -1; }
.dnx-vehicle-form-grid .dnx-vehicle-flags {
  display: flex; flex-wrap: wrap; gap: 12px;
  font-size: 11px; color: rgba(203,213,225,0.85); font-weight: 700;
}
.dnx-vehicle-form-grid .dnx-vehicle-flags label { display: inline-flex; align-items: center; gap: 5px; }
@media (max-width: 720px) { .dnx-vehicle-form-grid { grid-template-columns: 1fr; } }

/* Photo gallery card */
.dnx-vehicle-gallery .dnx-vehicle-gallery-hero {
  border-radius: 10px; overflow: hidden;
  background: linear-gradient(135deg, #0e1a2e, #142545, #0b1322);
  display: flex; align-items: center; justify-content: center;
  min-height: 140px; max-height: 240px;
  border: 1px solid rgba(148,163,184,0.14);
}
.dnx-vehicle-gallery .dnx-vehicle-gallery-hero img {
  width: 100%; height: 100%; max-height: 240px; object-fit: cover; display: block;
}
.dnx-vehicle-gallery .dnx-vehicle-gallery-empty { padding: 20px; color: rgba(148,163,184,0.7); font-size: 12px; }
.dnx-vehicle-gallery-thumbs { display: flex; gap: 6px; margin-top: 8px; flex-wrap: wrap; }
.dnx-vehicle-gallery-thumbs img {
  width: 64px; height: 42px; object-fit: cover; border-radius: 5px;
  border: 1px solid rgba(148,163,184,0.16);
}

/* Internal notes */
.dnx-vehicle-noteform textarea {
  width: 100%; background: rgba(2,6,23,0.55); border: 1px solid rgba(148,163,184,0.18);
  color: #f8fafc; border-radius: 8px; padding: 7px 10px;
  font-size: 12px; font-family: inherit;
}
.dnx-vehicle-noteform .dnx-btn { margin-top: 6px; padding: 5px 11px; font-size: 11px; border-radius: 7px; }
.dnx-vehicle-notes-archive {
  margin: 8px 0 0; max-height: 160px; overflow: auto;
  background: rgba(2,6,23,0.45); border: 1px solid rgba(148,163,184,0.14);
  border-radius: 8px; padding: 8px 10px;
  font-size: 11.5px; color: #cbd5e1; white-space: pre-wrap; font-family: inherit;
}

/* Right rail mini cards */
.dnx-vp-right .dnx-vehicle-mini {
  padding: 6px 0; border-top: 1px solid rgba(148,163,184,0.10); font-size: 12px;
}
.dnx-vp-right .dnx-vehicle-mini:first-child { border-top: 0; padding-top: 0; }
.dnx-vehicle-mini strong { display: block; color: #f8fafc; font-size: 12.5px; }
.dnx-vehicle-mini small  { display: block; font-size: 11px; color: rgba(203,213,225,0.6); }
.dnx-vehicle-mini-foot   { display: flex; justify-content: space-between; align-items: center; margin-top: 4px; }
.dnx-vehicle-mini-foot .dnx-btn { padding: 2px 9px; font-size: 10.5px; border-radius: 6px; }

/* Activity timeline */
.dnx-vehicle-activity .dnx-vehicle-event {
  padding: 6px 0; border-top: 1px solid rgba(148,163,184,0.08); font-size: 11.5px;
}
.dnx-vehicle-activity .dnx-vehicle-event:first-child { border-top: 0; padding-top: 0; }
.dnx-vehicle-event-when { opacity: .6; }
.dnx-vehicle-event-type {
  font-weight: 900; letter-spacing: .05em; text-transform: uppercase;
  color: #7dd3fc; font-size: 10.5px;
}
.dnx-vehicle-event-title { color: #f8fafc; font-weight: 700; font-size: 12px; }
.dnx-vehicle-event-body  { opacity: .78; }

/* Price history */
.dnx-vehicle-pricehistory { width: 100%; font-size: 11.5px; }
.dnx-vehicle-pricehistory th { padding: 4px 8px; }
.dnx-vehicle-pricehistory td { padding: 4px 8px; }

/* ============================================================================
   v2.0.0-phase24.3 — Vehicle Profile Intelligence + Timeline + Audit Trail.
   Compact, calm, manager-friendly density. No big spacers; everything fits
   alongside the existing Vehicle Profile cards.
   ============================================================================ */

/* Tone helpers reused by intel scores, timeline tags, recommendations. */
.dnx-vp-tone-good { color: #86efac; }
.dnx-vp-tone-info { color: #7dd3fc; }
.dnx-vp-tone-warn { color: #fcd34d; }

/* Intelligence panel */
.dnx-vp-intel { display: flex; flex-direction: column; gap: 10px; }
.dnx-vp-intel-scores { display: flex; flex-wrap: wrap; gap: 10px; }
.dnx-vp-score {
    flex: 1 1 140px;
    border: 1px solid rgba(148,163,184,0.18);
    border-radius: 10px;
    padding: 8px 12px;
    background: rgba(2,6,23,0.45);
    display: flex; flex-direction: column;
}
.dnx-vp-score span { font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: rgba(148,163,184,0.7); font-weight: 800; }
.dnx-vp-score b    { font-size: 22px; font-weight: 900; line-height: 1.05; }
.dnx-vp-score small { font-size: 10px; opacity: .6; margin-top: -2px; }
.dnx-vp-score.dnx-vp-tone-good { border-color: rgba(134,239,172,0.32); }
.dnx-vp-score.dnx-vp-tone-info { border-color: rgba(125,211,252,0.32); }
.dnx-vp-score.dnx-vp-tone-warn { border-color: rgba(252,211,77,0.32); }

.dnx-vp-rec-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.dnx-vp-rec {
    border-left: 2px solid rgba(148,163,184,0.32);
    padding: 5px 9px;
    background: rgba(15,23,42,0.4);
    border-radius: 6px;
    font-size: 11.5px;
}
.dnx-vp-rec.dnx-vp-tone-good { border-left-color: rgba(134,239,172,0.55); }
.dnx-vp-rec.dnx-vp-tone-info { border-left-color: rgba(125,211,252,0.55); }
.dnx-vp-rec.dnx-vp-tone-warn { border-left-color: rgba(252,211,77,0.55); background: rgba(252,211,77,0.05); }
.dnx-vp-rec-callout {
    font-size: 11.5px;
    padding: 6px 10px;
    border: 1px dashed rgba(125,211,252,0.32);
    border-radius: 8px;
    background: rgba(125,211,252,0.05);
}
.dnx-vp-rec-callout strong { color: #bae6fd; }

/* Listing checklist */
.dnx-vp-chk-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 4px 14px; }
.dnx-vp-chk { display: flex; align-items: center; gap: 8px; padding: 4px 6px; border-radius: 6px; font-size: 11.5px; }
.dnx-vp-chk.is-pass { color: #d1fae5; background: rgba(134,239,172,0.07); }
.dnx-vp-chk.is-miss { color: #fef3c7; background: rgba(252,211,77,0.07); }
.dnx-vp-chk-icon { width: 16px; height: 16px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; font-weight: 900; font-size: 10px; }
.dnx-vp-chk.is-pass .dnx-vp-chk-icon { background: rgba(134,239,172,0.18); color: #86efac; }
.dnx-vp-chk.is-miss .dnx-vp-chk-icon { background: rgba(252,211,77,0.18); color: #fcd34d; }
.dnx-vp-chk small { margin-left: auto; opacity: .55; font-size: 10px; }

@media (max-width: 720px) {
  .dnx-vp-chk-list { grid-template-columns: 1fr; }
}

/* Activity Timeline filter tabs + tags */
.dnx-vp-tl-tabs { display: flex; flex-wrap: wrap; gap: 4px; margin-bottom: 8px; }
.dnx-vp-tl-tab {
    padding: 3px 10px;
    background: rgba(15,23,42,0.55);
    border: 1px solid rgba(148,163,184,0.18);
    color: rgba(203,213,225,0.78);
    font-size: 10.5px; font-weight: 700;
    border-radius: 999px;
    cursor: pointer;
}
.dnx-vp-tl-tab:hover { color: #bae6fd; border-color: rgba(56,189,248,0.32); }
.dnx-vp-tl-tab.is-active {
    background: rgba(78,224,255,0.10);
    color: #bae6fd;
    border-color: rgba(56,189,248,0.55);
}
.dnx-vp-timeline { display: flex; flex-direction: column; gap: 4px; max-height: 520px; overflow: auto; }
.dnx-vehicle-event {
    border: 1px solid rgba(148,163,184,0.12);
    background: rgba(2,6,23,0.4);
    border-radius: 8px;
    padding: 6px 10px;
    display: grid;
    grid-template-columns: auto auto 1fr;
    gap: 6px 10px;
    align-items: baseline;
}
.dnx-vehicle-event-when { font-size: 10px; opacity: .7; white-space: nowrap; }
.dnx-vp-event-tag {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 999px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: .03em;
    text-transform: capitalize;
    background: rgba(148,163,184,0.10);
    color: #cbd5e1;
}
.dnx-vp-event-tag.dnx-vp-tone-good { background: rgba(134,239,172,0.14); color: #86efac; }
.dnx-vp-event-tag.dnx-vp-tone-info { background: rgba(125,211,252,0.14); color: #7dd3fc; }
.dnx-vp-event-tag.dnx-vp-tone-warn { background: rgba(252,211,77,0.14); color: #fcd34d; }
.dnx-vehicle-event-title { grid-column: 1 / -1; font-size: 12px; font-weight: 700; color: #e2e8f0; }
.dnx-vehicle-event-body  { grid-column: 1 / -1; font-size: 11px; opacity: .8; }

/* Price history percentage chip */
.dnx-vp-pct {
    display: inline-block;
    padding: 1px 7px;
    border-radius: 999px;
    background: rgba(148,163,184,0.10);
    font-size: 10.5px; font-weight: 800;
}
.dnx-vp-pct.dnx-vp-tone-good { background: rgba(134,239,172,0.14); color: #86efac; }
.dnx-vp-pct.dnx-vp-tone-warn { background: rgba(252,211,77,0.14); color: #fcd34d; }

/* Inventory intelligence badges (compact, in the Quality column). */
.dnx-inv-int-badges { display: inline-flex; flex-wrap: wrap; gap: 3px; margin-left: 2px; }
.dnx-inv-int-badge {
    padding: 0 5px;
    font-size: 8.5px;
    font-weight: 900;
    line-height: 14px;
    border-radius: 4px;
    border: 1px solid rgba(148,163,184,0.18);
    background: rgba(15,23,42,0.6);
    color: #e2e8f0;
    letter-spacing: .02em;
    white-space: nowrap;
}
.dnx-inv-int-badge.dnx-tone-hot  { background: rgba(244,63,94,0.14);  color: #fda4af; border-color: rgba(244,63,94,0.36); }
.dnx-inv-int-badge.dnx-tone-warn { background: rgba(252,211,77,0.14); color: #fcd34d; border-color: rgba(252,211,77,0.36); }
.dnx-inv-int-badge.dnx-tone-info { background: rgba(125,211,252,0.14);color: #7dd3fc; border-color: rgba(125,211,252,0.36); }
.dnx-inv-int-badge.dnx-tone-good { background: rgba(134,239,172,0.14);color: #86efac; border-color: rgba(134,239,172,0.36); }

/* ============================================================================
   v2.0.0-phase24.3.1 — INVENTORY ULTRA-COMPACT GRID (revamp).
   Goal: dense, professional SaaS feel. Single-line rows where possible,
   tight padding, no browser tooltip popup, subtle hover, square-ish thumb,
   icon-only action cluster. Row remains click-to-open-profile.
   ============================================================================ */
.dnx-inventory-table { font-size: 11.5px !important; border-collapse: separate !important; border-spacing: 0 !important; }
.dnx-inventory-table thead th {
    padding: 5px 8px !important;
    font-size: 9px !important;
    letter-spacing: .06em !important;
    text-transform: uppercase;
    font-weight: 800 !important;
    color: rgba(148,163,184,0.78) !important;
    border-bottom: 1px solid rgba(56,189,248,0.18) !important;
    background: rgba(2,6,23,0.55) !important;
    position: sticky; top: 0; z-index: 1;
}
.dnx-inventory-table tbody td {
    padding: 4px 8px !important;
    line-height: 1.18 !important;
    vertical-align: middle !important;
    border-bottom: 1px solid rgba(148,163,184,0.07) !important;
}
.dnx-inventory-table tbody td small {
    display: block;
    font-size: 9.5px !important;
    opacity: .68;
    margin-top: 1px;
    line-height: 1.1;
}
.dnx-inventory-table tbody td.dnx-inventory-vehicle strong { font-size: 12px !important; line-height: 1.2 !important; }
.dnx-inventory-table tbody td.dnx-inventory-vehicle small.dnx-inv-body {
    display: inline-block !important;
    padding: 0 5px !important;
    font-size: 8.5px !important;
    margin-left: 4px !important;
    background: rgba(56,189,248,0.10);
    color: #7dd3fc;
    border-radius: 999px;
}
/* Make money cells right-aligned and tabular-numeric so they line up. */
.dnx-inv-cell-money,
.dnx-inv-cell-mileage { text-align: right; font-variant-numeric: tabular-nums; }
.dnx-inv-cell-id strong { font-size: 11px !important; font-family: 'JetBrains Mono', ui-monospace, Menlo, monospace; letter-spacing: -.01em; }
.dnx-inv-pick { width: 28px !important; padding-right: 0 !important; }
.dnx-inv-pick input { transform: scale(.92); }
.dnx-inv-cell-color small { white-space: nowrap; }
.dnx-inv-cell-quality { white-space: nowrap; }

/* Subtle row hover — no big overlay, no tooltip. */
.dnx-inventory-table tbody tr.dnx-inventory-row { cursor: pointer; transition: background-color .12s linear; }
.dnx-inventory-table tbody tr.dnx-inventory-row:hover { background: rgba(56,189,248,0.05) !important; }
.dnx-inventory-table tbody tr.dnx-inventory-row:hover td:first-child {
    box-shadow: inset 2px 0 0 rgba(56,189,248,0.55);
}
/* Suppress native tooltip-on-title for any leftover [title] attrs in this table. */
.dnx-inventory-table [title] { /* not strictly needed but keeps intent obvious */ }

/* Action cluster — icon-only buttons, dense, no boxy chrome. */
.dnx-inventory-actions { gap: 2px !important; display: inline-flex !important; align-items: center; flex-wrap: nowrap; }
.dnx-btn-icon {
    /* v2.0.0-phase24.4.2 — text-label button (was emoji-only icon cluster).
       4-letter labels (View / Pics / Edit / Sell) replaced the prior icons. */
    min-width: 36px; height: 22px; padding: 0 7px;
    display: inline-flex; align-items: center; justify-content: center;
    background: transparent;
    color: rgba(203,213,225,0.85);
    border: 1px solid rgba(148,163,184,0.18);
    border-radius: 6px;
    font-size: 10.5px; font-weight: 800; letter-spacing: .02em; line-height: 1;
    cursor: pointer;
    transition: background .12s, color .12s, border-color .12s;
}
.dnx-btn-icon:hover {
    background: rgba(78,224,255,0.10);
    color: #bae6fd;
    border-color: rgba(56,189,248,0.32);
}
.dnx-btn-icon:active { transform: translateY(1px); }
.dnx-btn-icon:focus-visible { outline: 2px solid rgba(78,224,255,0.5); outline-offset: 1px; }

/* Tight badges/pills. */
.dnx-inventory-quality-pill { padding: 0 5px !important; font-size: 8.5px !important; line-height: 14px !important; }
.dnx-inv-score { font-size: 8.5px !important; opacity: .55; }
.dnx-inventory-status { padding: 1px 7px !important; font-size: 9px !important; line-height: 14px !important; }

/* Photo thumb — slightly smaller, square radius, subtle border. */
.dnx-inv-thumb {
    width: 40px !important; height: 28px !important;
    border-radius: 4px !important;
    object-fit: cover;
    border: 1px solid rgba(148,163,184,0.18);
    background: rgba(2,6,23,0.55);
}
.dnx-inv-thumb-empty {
    width: 40px !important; height: 28px !important;
    font-size: 12px !important;
    border-radius: 4px !important;
    color: rgba(148,163,184,0.6);
    border: 1px dashed rgba(148,163,184,0.28);
    background: rgba(2,6,23,0.4);
    display: inline-flex; align-items: center; justify-content: center;
}
.dnx-inv-thumb-cell { width: 46px !important; padding: 2px 4px !important; cursor: pointer; }
.dnx-inv-thumb-cell:hover .dnx-inv-thumb { border-color: rgba(56,189,248,0.45); }
.dnx-inventory-table th.dnx-inv-thumb-th { width: 46px !important; }

/* ============================================================================
   v2.0.0-phase24.2.2 — Global topbar action cluster + calculator revamp.
   White SVG bell + calculator launcher in a unified pill. The legacy
   floating "=" calculator launcher is hidden; the panel + math engine +
   keyboard shortcut continue to work.
   ============================================================================ */

/* ---- Global action cluster (pinned top-right) ---------------------- */
.dnx-global-actions {
  position: fixed;
  top: 12px; right: 16px;
  z-index: 7800;
  display: flex; gap: 8px;
  padding: 4px;
  background: linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.92));
  border: 1px solid rgba(56,189,248,0.18);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(2,6,15,0.45);
  backdrop-filter: blur(10px);
}
.dnx-global-action-btn {
  position: relative;
  width: 38px; height: 38px;
  display: inline-flex; align-items: center; justify-content: center;
  background: transparent;
  color: #f8fafc;
  border: 0;
  border-radius: 9px;
  cursor: pointer;
  transition: background .15s, color .15s, transform .05s;
}
.dnx-global-action-btn:hover {
  background: rgba(78,224,255,0.10);
  color: #bae6fd;
}
.dnx-global-action-btn:active { transform: translateY(1px); }
.dnx-global-action-btn:focus-visible {
  outline: 2px solid rgba(78,224,255,0.5); outline-offset: 2px;
}
.dnx-global-action-icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 22px; height: 22px;
}
.dnx-global-action-icon svg { width: 100%; height: 100%; }

/* ---- Notification bell sits inside the cluster ---------------------- */
/* Override the legacy fixed-circle styling so the bell is just a button. */
.dnx-notif-bell.dnx-global-action-btn {
  position: relative !important;
  top: auto !important; right: auto !important;
  width: 38px !important; height: 38px !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 9px !important;
  font-size: 0;
}
.dnx-notif-bell.dnx-global-action-btn:hover { border-color: transparent !important; }
.dnx-global-action-badge {
  position: absolute;
  top: 2px; right: 2px;
  min-width: 16px; height: 16px; padding: 0 4px;
  border-radius: 999px;
  background: #ef4444; color: #fff;
  font-size: 9.5px; font-weight: 800; line-height: 16px; text-align: center;
  border: 2px solid #020617;
  font-family: Inter, system-ui, sans-serif;
}
.dnx-global-action-badge[hidden] { display: none; }

/* ---- Hide the legacy floating calculator "=" button --------------- */
/* The panel + Cmd/Ctrl+Shift+C shortcut + math engine remain. The new
   topbar calculator icon calls window.dnToggleFloatingCalculator(). */
#dnFloatingCalculatorButton { display: none !important; }

/* ---- Notification panel (revamped) -------------------------------- */
.dnx-notification-center {
  position: fixed !important;
  top: 64px !important; right: 14px !important; bottom: auto !important;
  left: auto !important;
  width: min(420px, calc(100vw - 28px)) !important;
  max-height: calc(100vh - 90px) !important;
  border-radius: 14px !important;
  border: 1px solid rgba(56,189,248,0.22) !important;
  border-left: 1px solid rgba(56,189,248,0.22) !important;
  box-shadow: 0 28px 70px rgba(2,6,15,0.55) !important;
  z-index: 8000 !important;
  overflow: hidden;
}
.dnx-notification-center-head {
  padding: 12px 16px !important;
}
.dnx-notification-center-head strong { font-size: 14px !important; letter-spacing: -.005em; }
.dnx-notification-center-head small  { font-size: 11.5px !important; }
.dnx-notification-center-body { padding: 8px 14px !important; }

@media (max-width: 540px) {
  .dnx-global-actions { top: 8px; right: 8px; }
  .dnx-global-action-btn { width: 36px; height: 36px; }
  .dnx-global-action-icon { width: 20px; height: 20px; }
  .dnx-notification-center { top: 56px !important; right: 8px !important; }
}

/* ---- Calculator panel revamp ------------------------------------- */
/* The phase8 floating panel was already styled inline. This sharpens the
   header / display / keypad to match the rest of the app. !important is
   used because the inline styles inject as a high-specificity block. */
#dnFloatingCalculator {
  border-radius: 16px !important;
  border: 1px solid rgba(56,189,248,0.22) !important;
  background: linear-gradient(180deg, rgba(15,23,42,0.97), rgba(2,6,23,0.97)) !important;
  box-shadow: 0 24px 60px rgba(2,6,15,0.55) !important;
  padding: 12px !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
  width: min(320px, calc(100vw - 24px)) !important;
  /* Anchor the panel under the topbar action cluster instead of the old
     bottom-right corner so it visually belongs to the calculator icon. */
  top: 60px !important; right: 16px !important;
  bottom: auto !important;
}
#dnFloatingCalculator .dnfc-head {
  display: flex; justify-content: space-between; align-items: center;
  margin-bottom: 10px;
}
#dnFloatingCalculator .dnfc-title {
  font-size: 11.5px; font-weight: 900; letter-spacing: .12em; text-transform: uppercase;
  color: #bae6fd;
}
#dnFloatingCalculator .dnfc-close {
  background: transparent; border: 0; color: rgba(203,213,225,0.78);
  font-size: 18px; line-height: 1; cursor: pointer; padding: 4px 8px; border-radius: 8px;
}
#dnFloatingCalculator .dnfc-close:hover { background: rgba(78,224,255,0.10); color: #bae6fd; }

#dnFloatingCalculator .dnfc-screen {
  background: rgba(2,6,23,0.55) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  margin-bottom: 10px !important;
}
#dnFloatingCalculator .dnfc-equation {
  min-height: 14px; font-size: 11px; color: rgba(148,163,184,0.7); font-weight: 700;
  text-align: right; word-break: break-all;
}
#dnFloatingCalculator .dnfc-result {
  font-size: 28px !important; font-weight: 900 !important; color: #f8fafc !important;
  text-align: right; margin-top: 4px;
  background: linear-gradient(135deg,#4ee0ff,#a78bfa);
  background-clip: text; -webkit-background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent !important;
  letter-spacing: -.01em;
}

#dnFloatingCalculator .dnfc-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 6px !important;
}
#dnFloatingCalculator .dnfc-key {
  height: 44px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  background: rgba(15,23,38,0.72) !important;
  color: #f8fafc !important;
  font-size: 15px !important; font-weight: 800 !important;
  cursor: pointer !important;
  transition: filter .12s, transform .04s, background .12s !important;
  font-family: Inter, system-ui, -apple-system, "Segoe UI", sans-serif !important;
}
#dnFloatingCalculator .dnfc-key:hover { filter: brightness(1.12); }
#dnFloatingCalculator .dnfc-key:active { transform: translateY(1px); }
#dnFloatingCalculator .dnfc-key.dnfc-op {
  background: rgba(78,224,255,0.10) !important;
  color: #bae6fd !important;
  border-color: rgba(56,189,248,0.32) !important;
}
#dnFloatingCalculator .dnfc-key.dnfc-danger {
  background: rgba(239,68,68,0.12) !important;
  color: #fecaca !important;
  border-color: rgba(239,68,68,0.32) !important;
}
#dnFloatingCalculator .dnfc-key.dnfc-equals {
  background: linear-gradient(135deg,#4ee0ff,#a78bfa) !important;
  color: #04060b !important;
  border-color: transparent !important;
}
#dnFloatingCalculator .dnfc-key.dnfc-zero { grid-column: span 2; }

@media (max-width: 540px) {
  #dnFloatingCalculator { top: 52px !important; right: 8px !important; width: min(300px, calc(100vw - 16px)) !important; }
}



/* ============================================================================
   v2.0.0-phase24.6 — Owner Command Center (Home page module).
   Premium SaaS layout. Compact cards, tone-coded alerts, mini funnel,
   responsive grid. Reuses existing dnx-vehicle-card / dnx-vp-event-tag
   tone classes for consistency with Vehicle Profile.
   ============================================================================ */
.dnx-occ {
    margin: 14px 0 18px;
    padding: 16px;
    background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.78));
    border: 1px solid rgba(56,189,248,0.18);
    border-radius: 14px;
    color: #e2e8f0;
    font: 13px Inter, system-ui, sans-serif;
}
.dnx-occ[hidden] { display: none; }

.dnx-occ-loading {
    padding: 24px 14px;
    text-align: center;
    color: rgba(148,163,184,0.85);
    font-weight: 700;
    font-size: 12.5px;
}

.dnx-occ-head {
    display: flex; align-items: flex-start; justify-content: space-between;
    gap: 14px; flex-wrap: wrap;
    margin-bottom: 12px;
}
.dnx-occ-title  { margin: 0; font-size: 17px; font-weight: 900; letter-spacing: -.01em; color: #f8fafc; }
.dnx-occ-sub    { display: block; font-size: 11px; opacity: .7; margin-top: 2px; }

.dnx-occ-rangebar { display: flex; flex-wrap: wrap; gap: 4px; align-items: center; }

.dnx-occ-kpi-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px;
    margin-bottom: 14px;
}
.dnx-occ-kpi {
    background: rgba(2,6,23,0.55);
    border: 1px solid rgba(148,163,184,0.18);
    border-radius: 10px;
    padding: 8px 12px;
}
.dnx-occ-kpi span { display: block; font-size: 9.5px; letter-spacing: .08em; text-transform: uppercase; color: rgba(148,163,184,0.7); font-weight: 800; }
.dnx-occ-kpi b    { display: block; font-size: 18px; font-weight: 900; color: #f8fafc; line-height: 1.05; margin-top: 2px; }
.dnx-occ-kpi small { display: block; font-size: 10px; opacity: .65; margin-top: 1px; }

.dnx-occ-grid {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
    gap: 12px;
    align-items: start;
}
.dnx-occ-grid > .dnx-vehicle-card { margin: 0; }
.dnx-occ-actions { grid-row: span 2; }
@media (max-width: 1100px) {
    .dnx-occ-grid { grid-template-columns: 1fr; }
    .dnx-occ-actions { grid-row: auto; }
}

/* Recommended action cards */
.dnx-occ-alert {
    border-left: 3px solid rgba(125,211,252,0.55);
    background: rgba(15,23,42,0.55);
    border-radius: 8px;
    padding: 8px 10px;
    margin-bottom: 6px;
}
.dnx-occ-alert.dnx-vp-tone-good { border-left-color: rgba(134,239,172,0.55); }
.dnx-occ-alert.dnx-vp-tone-info { border-left-color: rgba(125,211,252,0.55); }
.dnx-occ-alert.dnx-vp-tone-warn { border-left-color: rgba(252,211,77,0.55); background: rgba(252,211,77,0.05); }
.dnx-occ-alert-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dnx-occ-alert-head strong { font-size: 12.5px; font-weight: 800; }
.dnx-occ-alert-body { display: block; font-size: 11.5px; opacity: .85; margin-top: 4px; }
.dnx-occ-alert-actions { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 6px; }
.dnx-occ-alert-actions .dnx-btn { padding: 3px 8px; font-size: 10.5px; }

/* Top vehicle rows */
.dnx-occ-top-body { display: block; }
.dnx-occ-top-pane { display: block; }
.dnx-occ-top-pane[hidden] { display: none; }

.dnx-occ-vrow {
    display: grid;
    grid-template-columns: 48px 1fr auto auto;
    gap: 8px;
    align-items: center;
    padding: 6px 8px;
    border-radius: 8px;
}
.dnx-occ-vrow:hover { background: rgba(56,189,248,0.05); }
.dnx-occ-vrow + .dnx-occ-vrow { border-top: 1px solid rgba(148,163,184,0.07); }
.dnx-occ-vrow-body { min-width: 0; }
.dnx-occ-vrow-body strong { display: block; font-size: 12px; line-height: 1.2; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dnx-occ-vrow-body small  { font-size: 10.5px; opacity: .75; }
.dnx-occ-vrow-actions { display: flex; gap: 3px; }
.dnx-occ-vrow-actions .dnx-btn { padding: 3px 7px; font-size: 10px; }

/* Marketplace funnel */
.dnx-occ-funnel { display: flex; flex-direction: column; gap: 5px; }
.dnx-occ-funnel-row {
    display: grid;
    grid-template-columns: 140px 1fr 64px;
    gap: 8px;
    align-items: center;
    font-size: 11.5px;
}
.dnx-occ-funnel-label { opacity: .85; }
.dnx-occ-funnel-bar {
    background: rgba(148,163,184,0.12);
    border-radius: 999px;
    height: 8px;
    overflow: hidden;
}
.dnx-occ-funnel-fill {
    height: 100%;
    background: linear-gradient(90deg,#4ee0ff,#a78bfa);
    border-radius: 999px;
}
.dnx-occ-funnel-num { text-align: right; font-variant-numeric: tabular-nums; font-weight: 900; }

/* AI / Inventory / Team grids reuse the kpi card. */
.dnx-occ-ai-grid,
.dnx-occ-inv-grid,
.dnx-occ-team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 6px;
}
.dnx-occ-ai-grid .dnx-occ-kpi,
.dnx-occ-inv-grid .dnx-occ-kpi,
.dnx-occ-team-grid .dnx-occ-kpi {
    padding: 7px 10px;
}
.dnx-occ-ai-grid .dnx-occ-kpi b,
.dnx-occ-inv-grid .dnx-occ-kpi b,
.dnx-occ-team-grid .dnx-occ-kpi b { font-size: 16px; }

/* =====================================================================
   v2.0.0-phase24.9 — Mobile Sales / BDC Mode + Daily Work Queue.
   Mobile-first: cards stack, action buttons wrap, no horizontal overflow.
   Desktop polish: cards align in a fluid grid.
   ===================================================================== */
.dnx-work-queue-page { padding: 14px; max-width: 1400px; margin: 0 auto; box-sizing: border-box; }
.dnx-work-queue-page * { box-sizing: border-box; }
.dnx-work-queue-header { display: flex; flex-direction: column; gap: 10px; margin-bottom: 12px; }
.dnx-work-queue-titlebar { display: flex; flex-direction: column; gap: 2px; }
.dnx-work-queue-title { margin: 0; font-size: 22px; line-height: 1.2; font-weight: 700; }
.dnx-work-queue-meta { font-size: 12px; opacity: 0.75; }
.dnx-work-queue-controls { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.dnx-work-scope { display: flex; flex-wrap: wrap; gap: 6px; }
.dnx-work-queue-foundation {
    background: rgba(110, 130, 160, 0.08);
    border: 1px solid rgba(110, 130, 160, 0.18);
    color: #43526a;
    border-radius: 8px;
    padding: 8px 12px;
    margin: 8px 0 12px;
    font-size: 12px;
    line-height: 1.45;
}
.dnx-work-queue-kpis {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 8px;
    margin: 8px 0 12px;
}
.dnx-work-kpi {
    background: #fff;
    border: 1px solid #e6e9ef;
    border-radius: 10px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}
.dnx-work-kpi-value { font-size: 22px; font-weight: 700; color: #1f2a3a; line-height: 1.1; }
.dnx-work-kpi-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-work-kpi[data-tone="danger"] .dnx-work-kpi-value { color: #b3261e; }
.dnx-work-kpi[data-tone="warn"]   .dnx-work-kpi-value { color: #b46214; }
.dnx-work-kpi[data-tone="good"]   .dnx-work-kpi-value { color: #1d7a3c; }
.dnx-work-kpi[data-tone="info"]   .dnx-work-kpi-value { color: #1f4ea8; }

.dnx-work-filter-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin: 4px 0 10px;
}
.dnx-work-filter-chips .dnx-chip,
.dnx-work-scope .dnx-chip {
    background: #fff;
    border: 1px solid #d8dde5;
    color: #2a3346;
    border-radius: 999px;
    padding: 5px 12px;
    font-size: 12px;
    line-height: 1.2;
    cursor: pointer;
    white-space: nowrap;
    min-height: 32px;
}
.dnx-work-filter-chips .dnx-chip.active,
.dnx-work-scope .dnx-chip.active {
    background: #1f4ea8;
    color: #fff;
    border-color: #1f4ea8;
}
.dnx-chip-divider { display: inline-block; width: 1px; align-self: stretch; background: #e0e4ec; margin: 2px 4px; }

.dnx-work-search-row { display: flex; gap: 8px; margin: 6px 0 12px; }
.dnx-work-search-row .dnx-input { flex: 1; min-width: 0; }

.dnx-work-card-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 12px;
}
.dnx-work-card {
    background: #fff;
    border: 1px solid #e3e7ef;
    border-radius: 12px;
    padding: 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
    box-shadow: 0 1px 1px rgba(15,30,60,0.03);
}
.dnx-work-card[data-priority="hot"]  { border-color: #d35353; box-shadow: 0 1px 2px rgba(180,30,30,0.08); }
.dnx-work-card[data-priority="high"] { border-color: #de8a2a; }
.dnx-work-card-head { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.dnx-work-priority {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}
.dnx-work-priority.dnx-tone-hot    { background: #fde6e6; color: #a61c1c; }
.dnx-work-priority.dnx-tone-high   { background: #ffeacc; color: #884a07; }
.dnx-work-priority.dnx-tone-normal { background: #e7eefa; color: #1f4ea8; }
.dnx-work-priority.dnx-tone-low    { background: #eef0f4; color: #57607a; }
.dnx-work-source {
    display: inline-block; padding: 2px 8px; border-radius: 999px;
    background: #f1f3f8; color: #2a3346; font-size: 11px; font-weight: 600;
}
.dnx-work-badge {
    display: inline-block; padding: 2px 8px; border-radius: 999px;
    background: #f1f3f8; color: #2a3346; font-size: 11px;
}
.dnx-work-badge.dnx-tone-danger { background: #fde6e6; color: #a61c1c; }
.dnx-work-assigned { margin-left: auto; font-size: 11px; opacity: 0.7; }
.dnx-work-card-title { margin: 2px 0 0; font-size: 15px; line-height: 1.3; font-weight: 700; color: #1f2a3a; }
.dnx-work-contact { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: baseline; font-size: 13px; color: #1f2a3a; }
.dnx-work-contact-meta { font-size: 12px; color: #4a5570; }
.dnx-work-vehicle { font-size: 12px; color: #2a3346; padding-top: 2px; }
.dnx-work-price { font-weight: 700; color: #1d7a3c; }
.dnx-work-due { font-size: 12px; color: #4a5570; }
.dnx-work-next { font-size: 12px; color: #1f4ea8; font-weight: 600; }
.dnx-work-body { font-size: 12px; color: #4a5570; line-height: 1.4; max-height: 56px; overflow: hidden; }
.dnx-muted { color: #98a1b3; }

.dnx-mobile-action-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap: 6px;
    margin-top: 8px;
}
.dnx-mobile-action-grid .dnx-btn {
    width: 100%;
    text-align: center;
    padding: 8px 10px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.15;
    min-height: 36px;
    border: 1px solid #d8dde5;
    background: #fff;
    color: #1f2a3a;
    cursor: pointer;
    text-decoration: none;
}
.dnx-mobile-action-grid .dnx-btn-primary { background: #1f4ea8; color: #fff; border-color: #1f4ea8; }
.dnx-mobile-action-grid .dnx-btn-secondary { background: #f1f3f8; }
.dnx-mobile-action-grid .dnx-btn-link { background: transparent; border-color: transparent; color: #1f4ea8; text-decoration: underline; padding-left: 4px; padding-right: 4px; }

/* Mobile breakpoints — tighter padding + single-column action grid on tiny screens. */
@media (max-width: 760px) {
    .dnx-work-queue-page { padding: 10px; }
    .dnx-work-queue-title { font-size: 20px; }
    .dnx-work-queue-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnx-work-card-list { grid-template-columns: 1fr; }
    .dnx-work-card { padding: 11px; }
    .dnx-mobile-action-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
}
@media (max-width: 420px) {
    .dnx-work-queue-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnx-mobile-action-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dnx-work-card-title { font-size: 14px; }
}

/* Sidebar collapsed compatibility — keep page padded clear of the sidebar. */
@media (max-width: 880px) {
    .dn-page-workqueue { margin-left: 108px !important; margin-right: 14px !important; }
}

/* v2.0.0-phase25.0.1 — actionable empty state for Work Queue. */
.dnx-work-empty { padding: 22px 18px; }
.dnx-work-empty strong { display: block; font-size: 16px; color: #1f2a3a; margin-bottom: 4px; }
.dnx-work-empty small { display: block; font-size: 12.5px; color: #4a5570; margin-bottom: 12px; }
.dnx-work-empty-actions {
    display: flex; flex-wrap: wrap; gap: 8px; align-items: center;
}

/* =====================================================================
   v2.0.0-phase25.1 — Customer 360 modal panel.
   Compact CRM jacket: header + next-action + KPI strip + tabs + rows.
   No emojis. Scrubbed text only. Subject to lender review.
   ===================================================================== */
.dnx-c360-modal { max-width: 980px; width: 100%; }
.dnx-c360-modal .dnx-modal-body { padding: 14px 16px; }
.dnx-c360-sub { font-size: 12px; opacity: 0.7; margin-left: 6px; }
.dnx-c360-cp-bar {
    display: flex; flex-wrap: wrap; gap: 10px; align-items: center;
    background: linear-gradient(90deg, rgba(31,122,60,0.10), rgba(31,122,60,0.04));
    border: 1px solid rgba(31,122,60,0.22); color: #1f2a3a;
    border-radius: 10px; padding: 10px 14px; margin-bottom: 12px;
}
.dnx-c360-cp-hint { font-size: 11px; opacity: 0.7; }

.dnx-c360-panel { display: flex; flex-direction: column; gap: 10px; }
.dnx-c360-header { display: flex; flex-wrap: wrap; gap: 10px; align-items: flex-start; justify-content: space-between; }
.dnx-c360-id h3 { margin: 0; font-size: 17px; color: #1f2a3a; }
.dnx-c360-id small { font-size: 11.5px; color: #4a5570; }
.dnx-c360-next {
    border: 1px solid #d8dde5; background: #f1f3f8; border-radius: 8px;
    padding: 6px 12px; min-width: 200px;
}
.dnx-c360-next.dnx-tone-info    { background: #e7eefa; border-color: #b6c8e6; color: #1f4ea8; }
.dnx-c360-next.dnx-tone-warn    { background: #fff4e0; border-color: #e6c694; color: #884a07; }
.dnx-c360-next.dnx-tone-danger  { background: #fde6e6; border-color: #e5a3a3; color: #a61c1c; }
.dnx-c360-next strong { display: block; font-size: 13px; }
.dnx-c360-next small { font-size: 11px; opacity: 0.75; }

.dnx-c360-quick {
    display: flex; flex-wrap: wrap; gap: 6px;
    border-top: 1px dashed #e0e4ec; border-bottom: 1px dashed #e0e4ec;
    padding: 8px 0;
}
.dnx-c360-quick .dnx-btn { padding: 6px 10px; font-size: 12px; min-height: 32px; }

.dnx-c360-kpis {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 6px;
}
.dnx-c360-kpi {
    background: #fff; border: 1px solid #e3e7ef; border-radius: 8px;
    padding: 8px 10px; display: flex; flex-direction: column; gap: 1px; min-width: 0;
}
.dnx-c360-kpi b { font-size: 18px; color: #1f2a3a; line-height: 1.1; }
.dnx-c360-kpi span { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-c360-kpi[data-tone="warn"] b { color: #b46214; }

.dnx-c360-tabs { display: flex; flex-wrap: wrap; gap: 4px; }
.dnx-c360-tabs .dnx-chip { background: #fff; border: 1px solid #d8dde5; color: #2a3346; border-radius: 999px; padding: 4px 11px; font-size: 12px; cursor: pointer; min-height: 30px; }
.dnx-c360-tabs .dnx-chip.active { background: #1f4ea8; color: #fff; border-color: #1f4ea8; }

.dnx-c360-tab-body { max-height: 460px; overflow: auto; padding: 6px 4px; }
.dnx-c360-rows { display: flex; flex-direction: column; gap: 6px; }
.dnx-c360-row {
    background: #fff; border: 1px solid #e3e7ef; border-radius: 8px;
    padding: 8px 10px; display: flex; flex-direction: column; gap: 3px;
}
.dnx-c360-row-meta { display: flex; gap: 8px; align-items: baseline; flex-wrap: wrap; }
.dnx-c360-row-type { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #1f4ea8; font-weight: 600; }
.dnx-c360-row-when { font-size: 11px; color: #98a1b3; }
.dnx-c360-row-body { font-size: 12.5px; color: #2a3346; line-height: 1.4; }
.dnx-c360-row strong { font-size: 13px; color: #1f2a3a; }
.dnx-c360-comm { background: #f7faff; }

.dnx-c360-vehicles { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 8px; }
.dnx-c360-vehicle { background: #fff; border: 1px solid #e3e7ef; border-radius: 8px; padding: 8px 10px; display: flex; flex-direction: column; gap: 4px; }
.dnx-c360-vehicle-actions { display: flex; flex-wrap: wrap; gap: 6px; }

.dnx-c360-lender { background: #fff; border: 1px solid #e3e7ef; border-radius: 10px; padding: 12px; display: flex; flex-direction: column; gap: 6px; }
.dnx-c360-lender-head { display: flex; justify-content: space-between; align-items: baseline; }
.dnx-c360-lender-body { display: flex; gap: 12px; align-items: center; flex-wrap: wrap; }
.dnx-c360-lender-meta { font-size: 12.5px; color: #2a3346; }
.dnx-c360-lender-actions { display: flex; gap: 6px; }
.dnx-c360-foundation-note { display: block; font-size: 11px; color: #6a7689; padding-top: 4px; }

.dnx-c360-dup-block { display: flex; flex-direction: column; gap: 8px; }
.dnx-c360-dup { background: #fffaf0; border: 1px solid #e6c694; border-radius: 8px; padding: 8px 10px; display: flex; flex-direction: column; gap: 4px; }
.dnx-c360-dup small { font-size: 11.5px; color: #884a07; }
.dnx-c360-dup-actions { display: flex; flex-wrap: wrap; gap: 6px; }

@media (max-width: 760px) {
    .dnx-c360-modal { max-width: calc(100% - 16px); }
    .dnx-c360-tab-body { max-height: 420px; }
    .dnx-c360-kpis { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 460px) {
    .dnx-c360-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* =====================================================================
   v2.0.0-phase25.2 — AI Lender Training Dataset dashboard.
   Compact admin/finance modal: upload + datasets table + records browser
   + lender learning summary. No emojis. Anonymous data only.
   ===================================================================== */
.dnx-alti-modal { max-width: 1100px; width: 100%; }
.dnx-alti-modal .dnx-modal-body { padding: 14px 16px; display: flex; flex-direction: column; gap: 14px; }
.dnx-alti-card { background: #fff; border: 1px solid #e3e7ef; border-radius: 10px; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
.dnx-alti-card-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; }
.dnx-alti-card-head strong { font-size: 14px; color: #1f2a3a; }
.dnx-alti-card-head small { font-size: 11.5px; color: #6a7689; }
.dnx-alti-form { display: flex; flex-direction: column; gap: 8px; }
.dnx-alti-form .dnx-field { display: flex; flex-direction: column; gap: 2px; }
.dnx-alti-form .dnx-field span { font-size: 11px; color: #4a5570; }
.dnx-alti-form .dnx-input { padding: 6px 8px; font-size: 13px; min-height: 34px; border: 1px solid #d8dde5; border-radius: 6px; background: #fff; }
.dnx-alti-form-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-alti-validate-result { padding: 6px 8px; border-radius: 6px; background: #f1f3f8; font-size: 12px; color: #2a3346; }
.dnx-alti-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 6px; }
.dnx-alti-tile { background: #fff; border: 1px solid #e3e7ef; border-radius: 8px; padding: 8px 10px; }
.dnx-alti-tile b { display: block; font-size: 16px; color: #1f2a3a; word-break: break-word; }
.dnx-alti-tile span { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-alti-table { width: 100%; font-size: 12px; border-collapse: collapse; }
.dnx-alti-table th, .dnx-alti-table td { padding: 6px 8px; border-bottom: 1px solid #eef0f4; text-align: left; vertical-align: top; }
.dnx-alti-table thead th { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-alti-filters { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 8px; align-items: end; }
.dnx-alti-filters label { display: flex; flex-direction: column; gap: 2px; font-size: 11px; color: #4a5570; }
.dnx-alti-filters .dnx-input, .dnx-alti-filters .dnx-select { padding: 5px 7px; font-size: 12.5px; min-height: 30px; border: 1px solid #d8dde5; border-radius: 6px; }

@media (max-width: 760px) {
    .dnx-alti-modal { max-width: calc(100% - 16px); }
    .dnx-alti-table { font-size: 11px; }
    .dnx-alti-table th, .dnx-alti-table td { padding: 4px 5px; }
    .dnx-alti-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* v2.0.0-phase25.2.2 — cleanup badges + review modal */
.dnx-alti-badge {
    display: inline-block; padding: 2px 8px; border-radius: 999px;
    background: #f1f3f8; color: #2a3346; font-size: 10.5px; font-weight: 600;
    line-height: 1.5;
}
.dnx-alti-badge.dnx-tone-good   { background: #e7f6ec; color: #1d7a3c; }
.dnx-alti-badge.dnx-tone-info   { background: #e7eefa; color: #1f4ea8; }
.dnx-alti-badge.dnx-tone-warn   { background: #fff4e0; color: #884a07; }
.dnx-alti-badge.dnx-tone-danger { background: #fde6e6; color: #a61c1c; }
.dnx-alti-badge.dnx-tone-neutral { background: #f1f3f8; color: #57607a; }
.dnx-alti-tile[data-tone="warn"] b { color: #b46214; }
.dnx-alti-review { max-width: 880px; width: 100%; }
.dnx-alti-review .dnx-modal-body { padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; }
.dnx-alti-classified { list-style: none; padding-left: 0; margin: 0; display: flex; flex-direction: column; gap: 4px; max-height: 220px; overflow: auto; }
.dnx-alti-classified li { font-size: 12px; padding: 4px 6px; background: #f7faff; border-radius: 6px; }
.dnx-alti-classified code { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: 11.5px; }

/* =====================================================================
   v2.0.0-phase25.3 — Lender Guideline Library modal.
   Manager/admin/finance editor for programs / rules / stips + Test Fit.
   ===================================================================== */
.dnx-alg-modal { max-width: 1100px; width: 100%; }
.dnx-alg-modal .dnx-modal-body { padding: 14px 16px; display: flex; flex-direction: column; gap: 12px; }
.dnx-alg-card { background: #fff; border: 1px solid #e3e7ef; border-radius: 10px; padding: 12px; display: flex; flex-direction: column; gap: 8px; }
.dnx-alg-card-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; }
.dnx-alg-card-head strong { font-size: 14px; color: #1f2a3a; }
.dnx-alg-card-head small { font-size: 11.5px; color: #6a7689; }
.dnx-alg-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); gap: 6px; }
.dnx-alg-tile { background: #fff; border: 1px solid #e3e7ef; border-radius: 8px; padding: 8px 10px; }
.dnx-alg-tile b { display: block; font-size: 18px; color: #1f2a3a; }
.dnx-alg-tile span { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-alg-tile[data-tone="warn"] b { color: #b46214; }
.dnx-alg-lender-block { padding: 8px 10px; border: 1px solid #eef0f4; border-radius: 8px; display: flex; flex-direction: column; gap: 6px; }
.dnx-alg-lender-head { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; gap: 6px; }
.dnx-alg-program-list { display: flex; flex-direction: column; gap: 4px; }
.dnx-alg-program-row { padding: 6px 8px; border: 1px solid transparent; border-radius: 6px; cursor: pointer; font-size: 12.5px; }
.dnx-alg-program-row:hover { background: #f1f3f8; }
.dnx-alg-program-row.is-active { background: #e7eefa; border-color: #b6c8e6; }
.dnx-alg-form { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 8px; align-items: end; }
.dnx-alg-form .dnx-field { display: flex; flex-direction: column; gap: 2px; font-size: 11px; color: #4a5570; }
.dnx-alg-form .dnx-input, .dnx-alg-form .dnx-select { padding: 6px 8px; font-size: 13px; min-height: 34px; border: 1px solid #d8dde5; border-radius: 6px; background: #fff; }
.dnx-alg-form-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-alg-table { width: 100%; font-size: 12px; border-collapse: collapse; }
.dnx-alg-table th, .dnx-alg-table td { padding: 6px 8px; border-bottom: 1px solid #eef0f4; text-align: left; vertical-align: top; }
.dnx-alg-table thead th { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; color: #6a7689; }
.dnx-alg-editor { background: #f7faff; border: 1px solid #b6c8e6; border-radius: 8px; padding: 10px; margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.dnx-alg-badge {
    display: inline-block; padding: 2px 8px; border-radius: 999px;
    background: #f1f3f8; color: #2a3346; font-size: 10.5px; font-weight: 600;
}
.dnx-alg-badge.dnx-tone-good   { background: #e7f6ec; color: #1d7a3c; }
.dnx-alg-badge.dnx-tone-info   { background: #e7eefa; color: #1f4ea8; }
.dnx-alg-badge.dnx-tone-warn   { background: #fff4e0; color: #884a07; }
.dnx-alg-badge.dnx-tone-danger { background: #fde6e6; color: #a61c1c; }
.dnx-alg-badge.dnx-tone-neutral { background: #f1f3f8; color: #57607a; }
.dnx-alg-test-result { background: #f7faff; border: 1px solid #b6c8e6; border-radius: 8px; padding: 10px; margin-top: 6px; display: flex; flex-direction: column; gap: 6px; }
.dnx-alg-result-header { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.dnx-alg-score { font-size: 22px; font-weight: 700; color: #1f4ea8; }
.dnx-alg-result-block { font-size: 12px; }
.dnx-alg-result-block ul { margin: 4px 0; padding-left: 18px; }
.dnx-alg-result-block li { font-size: 12px; color: #2a3346; line-height: 1.4; }

/* Per-lender prediction card guideline summary (Customer Profile Lender Prediction modal). */
.dnx-lp-breakdown {
    display: flex; gap: 10px; flex-wrap: wrap; padding-top: 6px; border-top: 1px dashed #e0e4ec;
    font-size: 12px; color: #4a5570;
}
.dnx-lp-breakdown span small { font-size: 10.5px; opacity: 0.7; margin-right: 3px; }
.dnx-lp-breakdown strong { color: #1f2a3a; font-size: 13px; }
.dnx-lp-guideline { font-size: 12px; color: #2a3346; padding-top: 4px; }
.dnx-lp-guideline.dnx-muted { color: #6a7689; }
.dnx-lp-foot { display: block; font-size: 11px; color: #6a7689; padding-top: 4px; }
.dnx-lp-foot.dnx-tone-warn { color: #884a07; font-weight: 600; }

/* v2.0.0-phase25.3.1 — starter preset polish */
.dnx-alg-banner {
    background: rgba(110,130,160,0.08);
    border: 1px solid rgba(110,130,160,0.18);
    color: #43526a;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 12px;
    line-height: 1.45;
}
.dnx-alg-banner.dnx-tone-warn {
    background: #fff4e0; border-color: #e6c694; color: #884a07;
}
.dnx-alg-completeness {
    display: inline-block; padding: 1px 8px; border-radius: 999px;
    background: #e7eefa; color: #1f4ea8; font-size: 11px; font-weight: 600;
}
.dnx-alg-program-row-line { display: flex; flex-wrap: wrap; gap: 4px; align-items: baseline; }
.dnx-alg-program-row-badges { display: flex; flex-wrap: wrap; gap: 4px; padding-top: 4px; }
.dnx-alg-quickadd, .dnx-alg-scenarios {
    display: flex; flex-wrap: wrap; gap: 4px; align-items: center;
    padding: 6px 8px; background: #f7faff; border-radius: 6px;
}
.dnx-alg-quickadd small, .dnx-alg-scenarios small { font-size: 11.5px; color: #4a5570; margin-right: 4px; }
.dnx-alg-quickadd .dnx-btn, .dnx-alg-scenarios .dnx-btn { padding: 3px 8px; font-size: 11.5px; }

@media (max-width: 760px) {
    .dnx-alg-modal { max-width: calc(100% - 16px); }
    .dnx-alg-table { font-size: 11px; }
    .dnx-alg-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* =====================================================================
   v2.0.0-phase25.0 — AI Lender Prediction Engine.
   Modal panel + ranked lender cards. No emojis. Cautious wording.
   ===================================================================== */
.dnx-lp-modal { max-width: 920px; width: 100%; }
.dnx-lp-modal .dnx-modal-body { padding: 14px 16px; }
.dnx-lp-sub { display: block; font-size: 11px; opacity: 0.7; margin-top: 1px; }
.dnx-lp-context { font-size: 12px; color: #2a3346; margin-bottom: 6px; padding: 6px 10px; background: rgba(110,130,160,0.06); border-radius: 6px; }
.dnx-lp-context strong { color: #1f2a3a; margin-right: 4px; }
.dnx-lp-form { display: flex; flex-direction: column; gap: 8px; margin: 10px 0 12px; }
.dnx-lp-form-row { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.dnx-lp-form .dnx-field { display: flex; flex-direction: column; gap: 2px; }
.dnx-lp-form .dnx-field span { font-size: 11px; color: #4a5570; }
.dnx-lp-form .dnx-input, .dnx-lp-form .dnx-select { padding: 6px 8px; font-size: 13px; min-height: 34px; border: 1px solid #d8dde5; border-radius: 6px; background: #fff; box-sizing: border-box; width: 100%; }
.dnx-lp-actions-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.dnx-lp-results {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    gap: 10px;
    margin-top: 6px;
}
.dnx-lp-card {
    background: #fff;
    border: 1px solid #e3e7ef;
    border-radius: 10px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}
.dnx-lp-card[data-tone="good"]   { border-color: #9ad7af; background: #f4fbf6; }
.dnx-lp-card[data-tone="info"]   { border-color: #b6c8e6; }
.dnx-lp-card[data-tone="warn"]   { border-color: #e6c694; background: #fffaf0; }
.dnx-lp-card[data-tone="danger"] { border-color: #e5a3a3; background: #fff5f5; }
.dnx-lp-card-head { display: flex; gap: 8px; align-items: center; justify-content: space-between; }
.dnx-lp-rank { font-size: 11px; opacity: 0.7; margin-left: 6px; }
.dnx-lp-confidence { display: flex; flex-direction: column; align-items: flex-end; line-height: 1.05; }
.dnx-lp-conf-num { font-size: 22px; font-weight: 700; color: #1f2a3a; }
.dnx-lp-conf-label { font-size: 10.5px; text-transform: uppercase; letter-spacing: 0.04em; }
.dnx-lp-confidence.dnx-tone-good   .dnx-lp-conf-num { color: #1d7a3c; }
.dnx-lp-confidence.dnx-tone-info   .dnx-lp-conf-num { color: #1f4ea8; }
.dnx-lp-confidence.dnx-tone-warn   .dnx-lp-conf-num { color: #b46214; }
.dnx-lp-confidence.dnx-tone-danger .dnx-lp-conf-num { color: #b3261e; }
.dnx-lp-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; font-size: 11.5px; color: #4a5570; }
.dnx-lp-reasons, .dnx-lp-warnings { font-size: 12px; margin: 0; padding-left: 18px; line-height: 1.4; }
.dnx-lp-reasons li { color: #2a3346; }
.dnx-lp-warnings li { color: #884a07; }
.dnx-lp-stips { font-size: 12px; color: #4a5570; padding-top: 4px; border-top: 1px dashed #e0e4ec; }
.dnx-lp-stips strong { color: #1f2a3a; }
.dnx-lp-card-actions { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 4px; }
.dnx-lp-cp-bar {
    display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
    background: linear-gradient(90deg, rgba(31,78,168,0.10), rgba(31,78,168,0.04));
    border: 1px solid rgba(31,78,168,0.22);
    color: #1f2a3a;
    border-radius: 10px;
    padding: 10px 14px;
    margin-bottom: 12px;
}
.dnx-lp-cp-hint { font-size: 11px; opacity: 0.7; }

@media (max-width: 760px) {
    .dnx-lp-modal { max-width: calc(100% - 16px); }
    .dnx-lp-form-row { grid-template-columns: 1fr 1fr; }
    .dnx-lp-results { grid-template-columns: 1fr; }
}
@media (max-width: 460px) {
    .dnx-lp-form-row { grid-template-columns: 1fr; }
    .dnx-lp-card { padding: 9px 10px; }
}

/* ======================================================================
   v2.0.0-phase25.4 — Global UI constraint + topbar cluster system
   ----------------------------------------------------------------------
   Z-index discipline (variables so panels can opt in cleanly):
     base:     1
     sidebar:  100
     topbar:   150
     dropdown: 300 (user menu, notifications)
     floating: 350 (calculator popover)
     drawer:   500
     modal-bg: 650
     modal:    700
     emergency:900
   Existing very-high z-index modals (>= 9000) are kept intact so we don't
   regress any in-flight feature; this section only sets *new* layers.
   ====================================================================== */
:root {
  --dnx-z-sidebar:  100;
  --dnx-z-topbar:   150;
  --dnx-z-dropdown: 300;
  --dnx-z-floating: 350;
  --dnx-z-drawer:   500;
  --dnx-z-modal-bg: 650;
  --dnx-z-modal:    700;
}

/* Sidebar: scroll internally without a visible scrollbar. The existing
   .dn-sidebar is fixed/flex-column with .dn-sidebar-top + .dn-sidebar-nav.
   We pin top stays fixed, nav scrolls, scrollbar hidden across browsers. */
.dn-sidebar { overflow: hidden !important; }
.dn-sidebar-nav {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.dn-sidebar-nav::-webkit-scrollbar { width: 0; height: 0; display: none; }

/* Sidebar logout legacy block fully neutralized. */
.dn-sidebar-user-legacy { display: none !important; }

/* ----------------------------------------------------------------------
   Topbar action cluster (calculator / notifications / user menu)
   ---------------------------------------------------------------------- */
/* The existing .dn-dc-topbar.dn-nexus-crm-topbar was a 3-column grid
   (brand | search | dealer-pill). We now have 4 children including the
   action cluster, so switch the topbar to a flex row that wraps cleanly
   on narrow widths and keeps the cluster pinned right. */
.dn-dc-topbar.dn-nexus-crm-topbar {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px;
  position: relative;
  z-index: var(--dnx-z-topbar);
}
.dn-dc-topbar.dn-nexus-crm-topbar > .dn-nexus-brand-block { flex: 0 0 auto; }
.dn-dc-topbar.dn-nexus-crm-topbar > .dn-nexus-search-wrap {
  flex: 1 1 280px;
  min-width: 220px;
}
.dn-dc-topbar.dn-nexus-crm-topbar > .dn-dc-dealer-pill { flex: 0 0 auto; margin-left: auto; }
.dn-dc-topbar.dn-nexus-crm-topbar > .dnx-topbar-actions { flex: 0 0 auto; }

.dnx-topbar-actions {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  position: relative;
  z-index: var(--dnx-z-topbar);
}

.dnx-topbar-icon {
  position: relative;
  width: 40px; height: 40px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 12px;
  border: 1px solid rgba(148,163,184,0.22);
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.015));
  color: #cbd5e1;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease, transform .05s ease, color .15s ease;
  padding: 0;
}
.dnx-topbar-icon:hover { background: rgba(56,189,248,0.10); border-color: rgba(56,189,248,0.45); color: #f8fafc; }
.dnx-topbar-icon:focus-visible { outline: 2px solid #38bdf8; outline-offset: 2px; }
.dnx-topbar-icon-glyph {
  font-size: 18px; font-weight: 950; line-height: 1;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  -webkit-background-clip: text; background-clip: text;
  color: transparent;
}
.dnx-topbar-dot {
  position: absolute; top: 8px; right: 8px;
  width: 8px; height: 8px; border-radius: 50%;
  background: linear-gradient(135deg, #22d3ee, #a78bfa);
  box-shadow: 0 0 0 2px #0b1220;
}

.dnx-topbar-pop { position: relative; }

.dnx-topbar-user-trigger {
  display: inline-flex; align-items: center; gap: 10px;
  padding: 4px 12px 4px 4px;
  height: 44px;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,0.22);
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.015));
  color: #f1f5f9;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
  font: inherit;
  max-width: 240px;
}
.dnx-topbar-user-trigger:hover { background: rgba(56,189,248,0.10); border-color: rgba(56,189,248,0.45); }
.dnx-topbar-user-trigger:focus-visible { outline: 2px solid #38bdf8; outline-offset: 2px; }
.dnx-topbar-avatar {
  width: 34px; height: 34px; border-radius: 11px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b; font-weight: 950; font-size: 14px; letter-spacing: 0;
  flex: 0 0 34px;
}
.dnx-topbar-user-meta {
  display: inline-flex; flex-direction: column; line-height: 1.05;
  text-align: left; min-width: 0;
}
.dnx-topbar-user-name {
  font-size: 13px; font-weight: 900; letter-spacing: -.01em;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 130px;
}
.dnx-topbar-user-role {
  font-size: 10px; color: #94a3b8; font-weight: 800;
  text-transform: uppercase; letter-spacing: .14em;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 130px;
}
.dnx-topbar-caret { color: #94a3b8; font-size: 11px; }

/* Dropdown panels */
.dnx-topbar-menu {
  position: absolute;
  top: calc(100% + 10px); right: 0;
  width: 280px;
  background: rgba(11,18,32,0.96);
  backdrop-filter: blur(18px);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  box-shadow: 0 24px 64px rgba(0,0,0,0.45), 0 0 0 1px rgba(148,163,184,0.04);
  padding: 8px;
  z-index: var(--dnx-z-dropdown);
  animation: dnxMenuIn .15s ease both;
}
.dnx-topbar-menu[hidden] { display: none !important; }
@keyframes dnxMenuIn {
  from { opacity: 0; transform: translateY(-4px); }
  to   { opacity: 1; transform: translateY(0); }
}
.dnx-topbar-menu-head {
  padding: 10px 12px 8px;
  border-bottom: 1px solid rgba(148,163,184,0.12);
  margin-bottom: 6px;
}
.dnx-topbar-menu-head strong {
  display: block; color: #f8fafc; font-size: 14px; font-weight: 900;
  letter-spacing: -.01em; line-height: 1.1;
}
.dnx-topbar-menu-sub {
  display: block; color: #94a3b8; font-size: 10px; font-weight: 800;
  text-transform: uppercase; letter-spacing: .14em; margin-top: 4px;
}
.dnx-topbar-menu-body { display: grid; gap: 2px; }
.dnx-topbar-menu-item {
  display: flex; align-items: center; gap: 10px;
  width: 100%; padding: 10px 12px;
  background: transparent; border: 0; border-radius: 10px;
  color: #e2e8f0; font: inherit; font-size: 13px; font-weight: 800;
  cursor: pointer;
  text-align: left;
  transition: background .12s ease, color .12s ease;
}
.dnx-topbar-menu-item:hover { background: rgba(56,189,248,0.10); color: #f8fafc; }
.dnx-topbar-menu-item:focus-visible { outline: 2px solid #38bdf8; outline-offset: -2px; }
.dnx-topbar-menu-item--danger { color: #fca5a5; }
.dnx-topbar-menu-item--danger:hover { background: rgba(248,113,113,0.10); color: #fecaca; }
.dnx-topbar-menu-glyph {
  width: 24px; height: 24px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  background: rgba(148,163,184,0.10);
  color: #94a3b8; font-size: 12px; font-weight: 900;
}
.dnx-topbar-menu-item--danger .dnx-topbar-menu-glyph {
  background: rgba(248,113,113,0.10); color: #f87171;
}
.dnx-topbar-menu-sep {
  height: 1px; background: rgba(148,163,184,0.12);
  margin: 6px 4px;
}
.dnx-topbar-empty {
  padding: 22px 12px; text-align: center; color: #64748b;
  font-size: 12px; font-weight: 800; letter-spacing: .04em;
}

/* Mobile: collapse user trigger meta, keep avatar + caret */
@media (max-width: 720px) {
  .dnx-topbar-user-meta { display: none; }
  .dnx-topbar-user-trigger { padding: 4px; }
  .dnx-topbar-menu { width: min(92vw, 300px); right: 0; }
}

/* ----------------------------------------------------------------------
   Global page constraint utilities (opt-in classes; do not retro-fit
   existing pages aggressively — they're available for new/cleaned pages).
   ---------------------------------------------------------------------- */
.dnx-page,
.dnx-page-shell { min-width: 0; max-width: 100%; box-sizing: border-box; }
.dnx-panel {
  background: rgba(15,23,38,0.65);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 18px;
  min-width: 0;
}
.dnx-card { min-width: 0; word-break: break-word; overflow-wrap: anywhere; }
.dnx-table-wrap {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
}
.dnx-table-wrap::-webkit-scrollbar { height: 8px; }
.dnx-table-wrap::-webkit-scrollbar-thumb {
  background: rgba(148,163,184,0.30); border-radius: 8px;
}
.dnx-action-bar,
.dnx-toolbar {
  display: flex; flex-wrap: wrap; align-items: center; gap: 10px;
  margin-bottom: 14px;
}
.dnx-toolbar-group { display: inline-flex; gap: 8px; flex-wrap: wrap; }

/* Make sure flex/grid children inside the main content area can shrink so
   long content doesn't push past the sidebar/page width. */
.dn-dc-shell, .dn-page-home, .dn-dc-crm-page { min-width: 0; }

/* ----------------------------------------------------------------------
   v2.0.0-phase25.4.1 — Suppress the legacy floating notification cluster
   introduced by phase 24.2.2 (#dnxGlobalActions = floating bell + calc),
   and re-anchor the existing notification center as a topbar dropdown.
   The data feed and mark-as-read flow stay intact; we just change how it
   gets opened (topbar bell) and where it renders (under the topbar).
   ---------------------------------------------------------------------- */
.dnx-global-actions,
#dnxGlobalActions { display: none !important; }
.dnx-notif-bell.dnx-global-action-btn,
#dnxNotificationBell { display: none !important; }
#dnxGlobalCalcBtn { display: none !important; }

/* Re-anchor the legacy notification center as a topbar dropdown panel.
   v2.0.0-phase25.6 — z-index bumped above sidebar (9999) so the panel
   never renders behind the sidebar's stacking context. */
.dnx-notification-center {
  position: fixed !important;
  top: 84px !important;
  right: 18px !important;
  bottom: auto !important;
  left: auto !important;
  width: min(380px, 92vw) !important;
  max-height: min(70vh, 560px) !important;
  border-radius: 16px !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
  border-left: 1px solid rgba(148,163,184,0.22) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,0.45) !important;
  z-index: 10001 !important;
  overflow: hidden;
}
.dnx-notification-center:not([hidden]) { display: flex !important; }
.dnx-notification-center .dnx-notification-center-body {
  max-height: calc(min(70vh, 560px) - 64px);
  overflow-y: auto;
}
@media (max-width: 480px) {
  .dnx-notification-center {
    top: 76px !important;
    right: 8px !important;
    width: calc(100vw - 16px) !important;
  }
}

/* ======================================================================
   v2.0.0-phase25.5 — Full mobile / tablet responsive system
   ----------------------------------------------------------------------
   Strategy: this is an ADDITIVE layer at the end of the cascade. We do
   NOT modify earlier rules. Existing desktop media queries continue to
   own their breakpoints; this section only kicks in at <=900px to:
     - turn the sidebar into an off-canvas drawer
     - cancel the .dn-page-* margin-left so content uses full width
     - show the hamburger toggle in the topbar
     - guard horizontal overflow at the body/html level
     - shrink modals/drawers to near-full-screen on phones
   Desktop is untouched.
   ====================================================================== */
:root {
  --dnx-mobile-gap:    12px;
  --dnx-mobile-pad:    14px;
  --dnx-mobile-radius: 14px;
  --dnx-touch-target:  44px;
  --dnx-topbar-h-mobile: 64px;
}

/* Hide hamburger + backdrop on desktop. They're shown via media queries. */
.dnx-mobile-nav-toggle {
  display: none;
  align-items: center;
  justify-content: center;
  width: var(--dnx-touch-target);
  height: var(--dnx-touch-target);
  border-radius: 12px;
  border: 1px solid rgba(148,163,184,0.22);
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.015));
  cursor: pointer;
  padding: 0;
  flex: 0 0 auto;
}
.dnx-mobile-nav-toggle:hover { background: rgba(56,189,248,0.10); border-color: rgba(56,189,248,0.45); }
.dnx-mobile-nav-toggle-bar {
  display: block;
  width: 18px; height: 2px;
  margin: 2px 0;
  background: linear-gradient(90deg, #4ee0ff, #a78bfa);
  border-radius: 2px;
  transition: transform .2s ease, opacity .2s ease;
}
.dnx-mobile-nav-toggle {
  flex-direction: column;
}
.dnx-mobile-nav-backdrop {
  position: fixed; inset: 0;
  background: rgba(2,6,23,0.65);
  backdrop-filter: blur(4px);
  z-index: 95; /* under sidebar (which we'll bump above) */
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease;
}
.dnx-mobile-nav-backdrop[hidden] { display: none; }
body.dn-mobile-nav-open .dnx-mobile-nav-backdrop { opacity: 1; pointer-events: auto; }

/* Tablet/phone: <=900px we switch to off-canvas. */
@media (max-width: 900px) {
  /* Show the hamburger inside the topbar. */
  .dnx-mobile-nav-toggle { display: inline-flex; }

  /* Make body anchor: prevent horizontal scrolling globally on mobile. */
  html, body { overflow-x: hidden; }

  /* The sidebar becomes an off-canvas drawer. We DON'T undo prior
     compact-mode rules at <880px — we override them here at <=900px. */
  .dn-sidebar {
    position: fixed;
    top: 0; left: 0; bottom: 0;
    width: min(86vw, 320px) !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    transform: translateX(-110%);
    transition: transform .25s ease;
    z-index: 9999; /* above backdrop */
    box-shadow: 22px 0 60px rgba(0,0,0,0.45);
  }
  body.dn-mobile-nav-open .dn-sidebar { transform: translateX(0); }

  /* Re-show parts of the sidebar that the <880px collapsed rule hid. */
  .dn-sidebar-brand,
  .dn-sidebar-section-label,
  .dn-sidebar-label,
  .dn-sidebar-footer { display: revert !important; }
  .dn-sidebar-top,
  .dn-sidebar-link { justify-content: flex-start !important; }
  .dn-sidebar-link { padding-left: 13px !important; padding-right: 13px !important; }

  /* Cancel the desktop content offset on mobile — main content goes full width. */
  .dn-page-home,
  .dn-page-inventory,
  .dn-page-customers,
  .dn-page-leads,
  .dn-page-appointments,
  .dn-page-reports,
  .dn-page-todo,
  .dn-page-settings,
  main.app.dn-deal-page {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  body.dn-sidebar-collapsed .dn-page-home,
  body.dn-sidebar-collapsed .dn-page-inventory,
  body.dn-sidebar-collapsed .dn-page-customers,
  body.dn-sidebar-collapsed .dn-page-leads,
  body.dn-sidebar-collapsed .dn-page-appointments,
  body.dn-sidebar-collapsed .dn-page-reports,
  body.dn-sidebar-collapsed .dn-page-todo,
  body.dn-sidebar-collapsed .dn-page-settings,
  body.dn-sidebar-collapsed main.app.dn-deal-page,
  body.dn-sidebar-collapsed .dn-crm-page {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .dn-page-workqueue { margin-left: 0 !important; margin-right: 0 !important; }

  /* Topbar mobile compaction. */
  .dn-dc-topbar.dn-nexus-crm-topbar {
    gap: 10px !important;
    padding: 10px 12px !important;
    min-height: var(--dnx-topbar-h-mobile);
  }
  .dn-dc-topbar.dn-nexus-crm-topbar > .dn-nexus-search-wrap {
    flex: 1 1 100% !important;
    order: 10;
  }
  .dn-dc-topbar.dn-nexus-crm-topbar > .dn-dc-dealer-pill { display: none; }

  /* Page shell paddings. */
  .dn-dc-shell { padding-left: var(--dnx-mobile-pad); padding-right: var(--dnx-mobile-pad); }

  /* Lock body scroll when drawer is open. */
  body.dn-mobile-nav-open { overflow: hidden; }
}

/* Phones: <=560px tighter rules. */
@media (max-width: 560px) {
  .dn-dc-topbar.dn-nexus-crm-topbar > .dn-nexus-brand-block .dn-nexus-brand-sub { display: none; }
  .dn-dc-topbar.dn-nexus-crm-topbar > .dn-nexus-brand-block .dn-dc-brand { font-size: 16px !important; }
  .dnx-topbar-icon { width: 40px; height: 40px; }
  .dn-crm-command-head { grid-template-columns: 1fr !important; gap: 12px !important; }
  .dn-crm-head-actions { flex-wrap: wrap; }
  .dn-crm-head-actions button { flex: 1 1 calc(50% - 6px); }

  /* Common 2-col grids collapse to 1 col on phone. */
  .dn-card-grid,
  .dn-settings-grid,
  .dnx-form-grid,
  .dnx-reports-filters,
  .dnx-reports-kpis { grid-template-columns: 1fr !important; }
}

/* ----------------------------------------------------------------------
   Generic responsive guards (apply across all viewports, not just mobile)
   ---------------------------------------------------------------------- */
img, video, svg { max-width: 100%; height: auto; }
table { max-width: 100%; }

/* Buttons in mobile button-rows wrap rather than overflow. */
@media (max-width: 720px) {
  .dn-crm-head-actions,
  .dnx-action-bar,
  .dnx-toolbar,
  .dnx-page-actions { flex-wrap: wrap; }

  /* Modals/drawers near-full-screen on phone. */
  .dnx-modal,
  .dnx-drawer,
  .dnx-c360-modal,
  .dnxAi-panel,
  .dnx-lp-modal {
    max-width: calc(100vw - 16px) !important;
    max-height: calc(100dvh - 16px) !important;
  }

  /* Public AI shopper modal sits as a bottom-anchored sheet on phones. */
  .dnxAi-shell { padding: 8px !important; }

  /* Form inputs touch-friendly. */
  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  input[type="password"],
  select, textarea {
    font-size: 16px; /* iOS no-zoom threshold */
  }

  /* Long unbreakable strings (URLs, SKUs, VINs) wrap. */
  .dnx-card, .dnx-panel { overflow-wrap: anywhere; word-break: break-word; }
}

/* Phone-specific: make the topbar user trigger compact. */
@media (max-width: 720px) {
  .dnx-topbar-user-trigger { padding: 4px; }
  .dnx-topbar-user-meta { display: none; }
}

/* ======================================================================
   v2.0.0-phase25.6 — Internal UX repair pass
   ======================================================================
   - Global 7-row table standard (.dnx-table-seven, .dnx-record-list-seven)
   - Settings side-menu layout (auto-applies via .dn-admin-settings-grid
     when an inline-rendered side menu is present)
   - Home Quick Launch tile grid
   - Generic empty-state polish
   ====================================================================== */

/* ---------- 7-row visible standard ----------
   Apply .dnx-table-seven to ANY <table> (or its scroll wrapper) where
   you want max ~7 rows visible with internal vertical scroll. Apply
   .dnx-record-list-seven to a div container that holds list rows /
   cards. Header rows / pagination above the body are not counted. */
.dnx-table-seven {
  display: block;
  max-height: calc(7 * 48px + 48px); /* 7 data rows + 1 header */
  overflow-y: auto;
  scrollbar-width: thin;
}
.dnx-table-seven thead { position: sticky; top: 0; z-index: 1; background: rgba(15,23,38,0.96); }
.dnx-record-list-seven {
  max-height: calc(7 * 72px);
  overflow-y: auto;
  scrollbar-width: thin;
  display: grid;
  gap: 8px;
  padding-right: 4px;
}
.dnx-table-seven::-webkit-scrollbar,
.dnx-record-list-seven::-webkit-scrollbar { width: 8px; }
.dnx-table-seven::-webkit-scrollbar-thumb,
.dnx-record-list-seven::-webkit-scrollbar-thumb {
  background: rgba(148,163,184,0.28); border-radius: 8px;
}

/* Pagination chip used alongside .dnx-record-list-seven where applicable. */
.dnx-pagination {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  padding-top: 10px; color: #cbd5e1; font-size: 12px; font-weight: 800;
}
.dnx-pagination button {
  background: rgba(255,255,255,0.04); color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22); border-radius: 10px;
  padding: 6px 10px; cursor: pointer; font-weight: 800;
}
.dnx-pagination button:hover:not([disabled]) { border-color: rgba(56,189,248,0.45); }
.dnx-pagination button[disabled] { opacity: 0.4; cursor: not-allowed; }
.dnx-pagination .dnx-pagination-info { color: #94a3b8; margin-left: auto; }

/* ---------- Settings side menu ----------
   Activates when the Settings page contains a child with class
   .dn-admin-settings-side; reflows .dn-admin-settings-grid into a
   2-column shell (TOC sidebar + content). On phones it stacks. */
.dn-admin-settings-grid:has(> .dn-admin-settings-side) {
  display: grid !important;
  grid-template-columns: 240px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: start;
}
.dn-admin-settings-side {
  position: sticky; top: 96px;
  align-self: start;
  background: rgba(15,23,38,0.65);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 12px;
  display: grid; gap: 4px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
}
.dn-admin-settings-side button {
  display: flex; align-items: center; gap: 8px;
  background: transparent; color: #cbd5e1;
  border: 1px solid transparent; border-radius: 12px;
  padding: 10px 12px; font-size: 13px; font-weight: 800;
  text-align: left; cursor: pointer; width: 100%;
  transition: background .12s ease, color .12s ease, border-color .12s ease;
}
.dn-admin-settings-side button:hover {
  background: rgba(56,189,248,0.10);
  border-color: rgba(56,189,248,0.30);
  color: #f8fafc;
}
.dn-admin-settings-side button.is-active {
  background: rgba(56,189,248,0.14);
  border-color: rgba(56,189,248,0.45);
  color: #f8fafc;
}
.dn-admin-settings-side .dnx-side-divider {
  height: 1px; background: rgba(148,163,184,0.14);
  margin: 6px 4px;
}
.dn-admin-settings-side-toggle {
  display: none;
  align-items: center; gap: 8px;
  background: rgba(15,23,38,0.65); color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22); border-radius: 12px;
  padding: 9px 13px; cursor: pointer; font-weight: 900; font-size: 13px;
  margin-bottom: 12px;
}
.dn-admin-settings-side-toggle:hover { border-color: rgba(56,189,248,0.45); }

@media (max-width: 900px) {
  .dn-admin-settings-grid:has(> .dn-admin-settings-side) {
    grid-template-columns: 1fr !important;
  }
  .dn-admin-settings-side {
    position: static !important;
    max-height: none !important;
    display: none;
  }
  .dn-admin-settings-side.is-open { display: grid; }
  .dn-admin-settings-side-toggle { display: inline-flex; }
}

/* ---------- Home Quick Launch tiles ---------- */
.dnx-home-quicklaunch {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 14px 0 18px;
}
.dnx-home-tile {
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px;
  background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.015));
  border: 1px solid rgba(148,163,184,0.18);
  color: #e2e8f0; cursor: pointer;
  border-radius: 14px;
  padding: 14px 14px 12px;
  font: inherit;
  text-align: left;
  transition: transform .08s ease, border-color .15s ease, background .15s ease;
}
.dnx-home-tile:hover {
  transform: translateY(-1px);
  border-color: rgba(56,189,248,0.45);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.05));
}
.dnx-home-tile:focus-visible { outline: 2px solid #38bdf8; outline-offset: 2px; }
.dnx-home-tile-mark {
  width: 32px; height: 32px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b; font-weight: 950; font-size: 14px;
  border-radius: 10px;
}
.dnx-home-tile-name {
  font-size: 13px; font-weight: 900; color: #f8fafc; letter-spacing: -0.01em;
}
.dnx-home-tile-sub {
  font-size: 11px; color: #94a3b8; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.12em;
}

/* ---------- Generic empty-state ---------- */
.dnx-empty {
  text-align: center; padding: 28px 18px;
  background: rgba(15,23,38,0.4);
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 14px;
  color: #94a3b8;
}
.dnx-empty strong { display: block; color: #f8fafc; font-size: 14px; font-weight: 900; margin-bottom: 4px; }
.dnx-empty span { font-size: 12px; }

/* ======================================================================
   v2.0.0-phase25.6-r2 — Correction pass: dark theme Work Queue,
   enforce 7-row cap on visible record containers, polish Sales/BDC,
   wire Home tile count slots.
   ====================================================================== */

/* ---------- Work Queue: kill the light theme ----------
   The original .dnx-work-* rules at app.css:11410+ were written with
   white backgrounds + dark text. Override them to match the rest of
   DealerNexus (dark glass + cyan/purple accents). */
.dnx-work-queue-kpis { gap: 10px; }
.dnx-work-kpi {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  color: #e2e8f0 !important;
  box-shadow: 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-work-kpi-value { color: #f8fafc !important; }
.dnx-work-kpi-label { color: rgba(203,213,225,0.7) !important; }
.dnx-work-kpi[data-tone="danger"] .dnx-work-kpi-value { color: #fca5a5 !important; }
.dnx-work-kpi[data-tone="warn"]   .dnx-work-kpi-value { color: #fbbf24 !important; }
.dnx-work-kpi[data-tone="good"]   .dnx-work-kpi-value { color: #4ade80 !important; }
.dnx-work-kpi[data-tone="info"]   .dnx-work-kpi-value { color: #67e8f9 !important; }

.dnx-work-filter-chips .dnx-chip,
.dnx-work-scope .dnx-chip {
  background: rgba(15,23,42,0.55) !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
  color: #cbd5e1 !important;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.dnx-work-filter-chips .dnx-chip:hover,
.dnx-work-scope .dnx-chip:hover {
  background: rgba(56,189,248,0.10) !important;
  border-color: rgba(56,189,248,0.45) !important;
  color: #f8fafc !important;
}
.dnx-work-filter-chips .dnx-chip.active,
.dnx-work-scope .dnx-chip.active {
  background: linear-gradient(135deg, rgba(78,224,255,0.22), rgba(167,139,250,0.22)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
}
.dnx-chip-divider { background: rgba(148,163,184,0.22) !important; }

.dnx-work-card {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.65)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 8px 22px rgba(2,6,23,0.45) !important;
  color: #e2e8f0;
}
.dnx-work-card[data-priority="hot"]  { border-color: rgba(248,113,113,0.55) !important; box-shadow: 0 0 0 1px rgba(248,113,113,0.20), 0 8px 22px rgba(120,30,30,0.30) !important; }
.dnx-work-card[data-priority="high"] { border-color: rgba(251,191,36,0.45) !important; }

.dnx-work-card-title  { color: #f8fafc !important; }
.dnx-work-contact     { color: #e2e8f0 !important; }
.dnx-work-contact-meta{ color: #94a3b8 !important; }
.dnx-work-vehicle     { color: #cbd5e1 !important; }
.dnx-work-due         { color: #94a3b8 !important; }
.dnx-work-next        { color: #67e8f9 !important; }
.dnx-work-body        { color: #cbd5e1 !important; }
.dnx-work-price       { color: #4ade80 !important; }

/* Priority pills on dark cards */
.dnx-work-priority.dnx-tone-hot    { background: rgba(248,113,113,0.18) !important; color: #fca5a5 !important; }
.dnx-work-priority.dnx-tone-high   { background: rgba(251,191,36,0.18) !important; color: #fbbf24 !important; }
.dnx-work-priority.dnx-tone-normal { background: rgba(56,189,248,0.18) !important; color: #67e8f9 !important; }
.dnx-work-priority.dnx-tone-low    { background: rgba(148,163,184,0.18) !important; color: #cbd5e1 !important; }

.dnx-work-source {
  background: rgba(148,163,184,0.14) !important;
  color: #cbd5e1 !important;
}
.dnx-work-badge {
  background: rgba(148,163,184,0.14) !important;
  color: #cbd5e1 !important;
}
.dnx-work-badge.dnx-tone-danger { background: rgba(248,113,113,0.18) !important; color: #fca5a5 !important; }
.dnx-work-assigned { color: rgba(203,213,225,0.7) !important; }

/* Action buttons on dark */
.dnx-mobile-action-grid .dnx-btn {
  background: rgba(15,23,42,0.55) !important;
  color: #e2e8f0 !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
}
.dnx-mobile-action-grid .dnx-btn:hover { border-color: rgba(56,189,248,0.45) !important; background: rgba(56,189,248,0.08) !important; }
.dnx-mobile-action-grid .dnx-btn-primary {
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa) !important;
  color: #04060b !important;
  border: 0 !important;
  font-weight: 900 !important;
}
.dnx-mobile-action-grid .dnx-btn-secondary {
  background: rgba(56,189,248,0.10) !important;
  color: #bae6fd !important;
}

/* Cap Work Queue card list to 7 rows visible (single-col card height ~88px). */
.dnx-work-card-list {
  max-height: calc(7 * 96px);
  overflow-y: auto;
  padding-right: 4px;
  scrollbar-width: thin;
}
.dnx-work-card-list::-webkit-scrollbar { width: 8px; }
.dnx-work-card-list::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 8px; }

/* ---------- 7-row caps — SCOPED ONLY TO BDC + SALES ----------
   Adam's directive: do NOT cap Inventory or AI tables. Cap is for
   Sales Pipeline and BDC Command Center surfaces only. */
#dnxBdcDashboardRoot .dnx-card .dnx-table-wrap,
#dnxBdcDashboardRoot .dnx-card .dnx-table,
#dnxSalesRoot       .dnx-card .dnx-table-wrap,
#dnxSalesRoot       .dnx-card .dnx-table {
  max-height: calc(7 * 36px + 36px);
  overflow-y: auto;
  scrollbar-width: thin;
}
#dnxBdcDashboardRoot .dnx-card .dnx-table-wrap::-webkit-scrollbar,
#dnxSalesRoot .dnx-card .dnx-table-wrap::-webkit-scrollbar { width: 8px; }
#dnxBdcDashboardRoot .dnx-card .dnx-table-wrap::-webkit-scrollbar-thumb,
#dnxSalesRoot .dnx-card .dnx-table-wrap::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 8px; }

/* Sticky table header on capped Sales/BDC tables. */
#dnxBdcDashboardRoot .dnx-card .dnx-table thead th,
#dnxSalesRoot       .dnx-card .dnx-table thead th {
  position: sticky;
  top: 0;
  background: rgba(11,18,32,0.96);
  z-index: 1;
}

/* ---------- Sales / BDC polish ---------- */
#dnxSalesRoot.dnx-shell-v2,
#dnxBdcDashboardRoot.dnx-shell-v2 {
  background: transparent;
}
#dnxSalesRoot .dnx-card,
#dnxBdcDashboardRoot .dnx-card {
  background: linear-gradient(180deg, rgba(15,23,42,0.82), rgba(2,6,23,0.62)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 8px 22px rgba(2,6,23,0.45);
}
#dnxSalesRoot .dnx-card-header,
#dnxBdcDashboardRoot .dnx-card-header {
  border-bottom: 1px solid rgba(148,163,184,0.12);
  padding-bottom: 8px;
  margin-bottom: 10px;
}
#dnxSalesRoot .dnx-home-kpi,
#dnxBdcDashboardRoot .dnx-home-kpi {
  background: linear-gradient(180deg, rgba(56,189,248,0.06), rgba(167,139,250,0.04)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
}

/* Sales pipeline preview: convert the dashboard card grid to a multi-col
   board visual on wide screens. The HTML stays as <section.dnx-card> rows;
   we simply group them into a horizontal-friendly grid that LOOKS like a
   pipeline board, while still working as a single-column stack on mobile. */
@media (min-width: 1100px) {
  #dnxSalesRoot.dnx-shell-v2 > .dnx-page > .dnx-grid,
  #dnxSalesRoot.dnx-shell-v2 > .dnx-page > .dnx-board {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
    gap: 14px !important;
    align-items: start;
  }
}

/* Cap each Sales/BDC card's inner record area to 7 rows. */
#dnxSalesRoot .dnx-card > .dnx-card-body,
#dnxSalesRoot .dnx-card > [data-records],
#dnxBdcDashboardRoot .dnx-card > .dnx-card-body,
#dnxBdcDashboardRoot .dnx-card > [data-records] {
  max-height: calc(7 * 56px);
  overflow-y: auto;
  scrollbar-width: thin;
}

/* ---------- Home tile count slot ----------
   Each .dnx-home-tile gets an optional `<span class="dnx-home-tile-count">`
   appended by the JS after data loads. */
.dnx-home-tile-count {
  margin-top: 6px;
  align-self: flex-start;
  background: rgba(56,189,248,0.14);
  color: #67e8f9;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 999px;
  padding: 2px 9px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.dnx-home-tile-count--warn   { background: rgba(251,191,36,0.14); color: #fbbf24; border-color: rgba(251,191,36,0.32); }
.dnx-home-tile-count--danger { background: rgba(248,113,113,0.14); color: #fca5a5; border-color: rgba(248,113,113,0.32); }
.dnx-home-tile-count--good   { background: rgba(74,222,128,0.14); color: #4ade80; border-color: rgba(74,222,128,0.32); }

/* ---------- Final blanket: any remaining literal white card on internal
   surfaces gets recolored. Scoped under .dnx-shell-v2 / known page IDs
   so we don't accidentally wash public Shop Cars. ---------- */
.dnx-shell-v2 [style*="background:#fff"],
.dnx-shell-v2 [style*="background: #fff"],
#dnxSalesRoot [style*="background:#fff"],
#dnxBdcDashboardRoot [style*="background:#fff"],
#dnWorkQueuePage [style*="background:#fff"] {
  background: rgba(15,23,42,0.78) !important;
  color: #e2e8f0 !important;
}

/* ======================================================================
   v2.0.0-phase25.6-r3 — Sales Pipeline Kanban + Home Today Command Strip
   ====================================================================== */

/* ---------- Sales Pipeline Kanban board ---------- */
.dnx-pipeline-board {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
  background: linear-gradient(180deg, rgba(15,23,42,0.45), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 18px;
  padding: 14px;
}
.dnx-pipeline-col {
  display: flex; flex-direction: column;
  gap: 8px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 10px;
  min-height: 280px;
}
.dnx-pipeline-col-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 8px;
  padding: 4px 4px 8px;
  border-bottom: 1px solid rgba(148,163,184,0.14);
}
.dnx-pipeline-col-name {
  font-size: 11px; font-weight: 900; letter-spacing: 0.14em;
  text-transform: uppercase; color: #f8fafc;
}
.dnx-pipeline-col-count {
  background: rgba(56,189,248,0.16);
  border: 1px solid rgba(56,189,248,0.32);
  color: #67e8f9;
  border-radius: 999px;
  padding: 2px 9px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: 0.04em;
}
.dnx-pipeline-col[data-stage="new"]         .dnx-pipeline-col-name { color: #67e8f9; }
.dnx-pipeline-col[data-stage="contacted"]   .dnx-pipeline-col-name { color: #a78bfa; }
.dnx-pipeline-col[data-stage="appointment"] .dnx-pipeline-col-name { color: #fbbf24; }
.dnx-pipeline-col[data-stage="working"]     .dnx-pipeline-col-name { color: #4ade80; }
.dnx-pipeline-col[data-stage="closed"]      .dnx-pipeline-col-name { color: #cbd5e1; }
.dnx-pipeline-col-list {
  display: flex; flex-direction: column;
  gap: 6px;
  max-height: calc(7 * 60px);
  overflow-y: auto;
  scrollbar-width: thin;
  padding-right: 4px;
}
.dnx-pipeline-col-list::-webkit-scrollbar { width: 6px; }
.dnx-pipeline-col-list::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 8px; }
.dnx-pipeline-card {
  display: flex; flex-direction: column;
  gap: 4px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 10px;
  padding: 9px 10px;
  color: #e2e8f0;
  font-size: 12px;
  cursor: pointer;
  transition: border-color .12s ease, transform .05s ease;
}
.dnx-pipeline-card:hover { border-color: rgba(56,189,248,0.45); transform: translateY(-1px); }
.dnx-pipeline-card-name { font-weight: 900; color: #f8fafc; font-size: 13px; }
.dnx-pipeline-card-meta { color: #94a3b8; font-size: 11px; }
.dnx-pipeline-empty {
  text-align: center;
  color: #64748b;
  font-size: 11px;
  padding: 22px 8px;
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 10px;
  background: rgba(2,6,23,0.30);
}

/* Mobile: pipeline columns stack vertically with horizontal scroll on tablet */
@media (max-width: 1100px) {
  .dnx-pipeline-board {
    grid-template-columns: repeat(5, minmax(220px, 1fr));
    overflow-x: auto;
    grid-auto-flow: column;
    grid-auto-columns: minmax(220px, 1fr);
  }
}
@media (max-width: 720px) {
  .dnx-pipeline-board { grid-template-columns: 1fr; grid-auto-flow: row; overflow-x: visible; }
  .dnx-pipeline-col { min-height: auto; }
}

.dnx-pipeline-board-head {
  display: flex; align-items: center; justify-content: space-between;
  gap: 12px; flex-wrap: wrap;
  margin: 0 0 12px;
}
.dnx-pipeline-board-head h2 {
  margin: 0; font-size: 14px; font-weight: 900;
  letter-spacing: 0.04em; text-transform: uppercase; color: #f8fafc;
}
.dnx-pipeline-board-head .dnx-pipeline-board-sub {
  font-size: 11px; color: #94a3b8; font-weight: 800;
  text-transform: uppercase; letter-spacing: 0.14em;
}

/* ---------- Home Today Command Strip ---------- */
.dnx-home-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
  margin: 0 0 14px;
}
.dnx-home-strip-card {
  display: flex; flex-direction: column;
  gap: 6px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 12px 14px;
  cursor: pointer;
  transition: border-color .12s ease, transform .05s ease;
  color: #e2e8f0;
}
.dnx-home-strip-card:hover { border-color: rgba(56,189,248,0.45); transform: translateY(-1px); }
.dnx-home-strip-label {
  font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.14em;
  color: #94a3b8;
}
.dnx-home-strip-value {
  font-size: 24px; font-weight: 950;
  color: #f8fafc; line-height: 1;
}
.dnx-home-strip-sub {
  font-size: 11px; color: #94a3b8; font-weight: 800;
}
.dnx-home-strip-card[data-tone="warn"]   .dnx-home-strip-value { color: #fbbf24; }
.dnx-home-strip-card[data-tone="danger"] .dnx-home-strip-value { color: #fca5a5; }
.dnx-home-strip-card[data-tone="good"]   .dnx-home-strip-value { color: #4ade80; }
.dnx-home-strip-card[data-tone="info"]   .dnx-home-strip-value { color: #67e8f9; }

/* ======================================================================
   v2.0.0-phase25.7 — Home Command Center + Inventory Revamp + API
   diagnostics error card. These three marker classes are the contract
   Adam can grep for to confirm phase 25.7 is live on his browser:
     .dnx-home-command-v257
     .dnx-inventory-revamp-v257
     .dnx-api-error-card
   ====================================================================== */

/* ---------- Home Command Center marker ---------- */
.dnx-home-command-v257 .dnx-home-hero {
  background:
    radial-gradient(circle at 0% 0%, rgba(78,224,255,0.12), transparent 50%),
    radial-gradient(circle at 100% 100%, rgba(167,139,250,0.10), transparent 55%),
    linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 18px;
  padding: 18px 22px;
  margin: 0 0 16px;
  box-shadow: 0 14px 38px rgba(2,6,23,0.45);
}
.dnx-home-command-v257 .dnx-home-eyebrow {
  display: inline-block;
  font-size: 10px;
  font-weight: 950;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  -webkit-background-clip: text; background-clip: text;
  color: transparent;
  margin-bottom: 6px;
}
.dnx-home-command-v257 .dnx-home-hero h1 {
  color: #f8fafc !important;
  font-size: 24px !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 4px !important;
}
.dnx-home-command-v257 .dnx-home-hero p {
  color: #cbd5e1 !important;
  font-size: 13px !important;
  margin: 0 !important;
}
.dnx-home-command-v257 .dnx-home-kpi-grid { gap: 10px; }
.dnx-home-command-v257 .dnx-home-kpi {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  box-shadow: 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-home-command-v257 .dnx-home-card {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 8px 22px rgba(2,6,23,0.45);
}
.dnx-home-command-v257 .dnx-home-card-head h3 { color: #f8fafc !important; }

/* ---------- Inventory revamp marker ---------- */
.dnx-inventory-revamp-v257 .dnx-inventory-hero {
  background:
    radial-gradient(circle at 100% 0%, rgba(78,224,255,0.10), transparent 50%),
    radial-gradient(circle at 0% 100%, rgba(167,139,250,0.10), transparent 55%),
    linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 18px;
  padding: 16px 20px;
  margin: 0 0 14px;
  box-shadow: 0 14px 38px rgba(2,6,23,0.45);
}
.dnx-inventory-revamp-v257 .dnx-inventory-hero h1 {
  color: #f8fafc !important;
  font-size: 22px !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 4px !important;
}
.dnx-inventory-revamp-v257 .dnx-inventory-hero p {
  color: #cbd5e1 !important;
  font-size: 13px !important;
  margin: 0 !important;
}
.dnx-inventory-revamp-v257 .dnx-inventory-kpis {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
  gap: 10px !important;
  margin: 0 0 12px !important;
}
.dnx-inventory-revamp-v257 .dnx-inventory-toolbar {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.35));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 10px 12px;
  margin: 0 0 12px;
  display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
}
.dnx-inventory-revamp-v257 .dnx-inventory-toolbar input,
.dnx-inventory-revamp-v257 .dnx-inventory-toolbar select {
  background: rgba(2,6,23,0.55) !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
  color: #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 8px 10px !important;
  font-size: 13px !important;
}
.dnx-inventory-revamp-v257 .dnx-inventory-toolbar input:focus,
.dnx-inventory-revamp-v257 .dnx-inventory-toolbar select:focus {
  outline: 2px solid #38bdf8; outline-offset: -1px;
  border-color: rgba(56,189,248,0.55) !important;
}
.dnx-inventory-revamp-v257 .dnx-inventory-table-wrap {
  overflow-x: auto;
}

/* Inventory pager */
.dnx-inv-pager {
  display: flex; align-items: center; gap: 10px;
  flex-wrap: wrap;
  padding: 12px 16px;
  border-top: 1px solid rgba(148,163,184,0.14);
  background: rgba(2,6,23,0.30);
}
.dnx-inv-pager[hidden] { display: none; }
.dnx-inv-pager .dnx-pager-info {
  flex: 1 1 auto;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
}
.dnx-inv-pager button {
  background: rgba(15,23,42,0.55) !important;
  color: #e2e8f0 !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
  border-radius: 10px !important;
  padding: 7px 12px !important;
  font-weight: 800 !important;
  cursor: pointer;
}
.dnx-inv-pager button:hover:not([disabled]) {
  border-color: rgba(56,189,248,0.45) !important;
  background: rgba(56,189,248,0.08) !important;
}
.dnx-inv-pager button[disabled] {
  opacity: 0.4;
  cursor: not-allowed;
}

/* ---------- API diagnostic error card ---------- */
.dnx-api-error-card {
  background: linear-gradient(180deg, rgba(248,113,113,0.06), rgba(2,6,23,0.55));
  border: 1px solid rgba(248,113,113,0.32);
  border-radius: 14px;
  padding: 14px 16px;
  color: #e2e8f0;
  margin: 4px 0;
}
.dnx-api-error-card .dnx-api-error-title {
  font-size: 14px;
  font-weight: 900;
  color: #fca5a5;
  margin-bottom: 6px;
}
.dnx-api-error-card .dnx-api-error-meta {
  font-size: 11px;
  color: #94a3b8;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  margin-bottom: 8px;
}
.dnx-api-error-card .dnx-api-error-meta code {
  background: rgba(2,6,23,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 4px;
  padding: 1px 5px;
  color: #cbd5e1;
}
.dnx-api-error-card .dnx-api-error-snippet {
  background: rgba(2,6,23,0.65);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 8px;
  padding: 8px 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 11px;
  color: #cbd5e1;
  margin: 0 0 10px;
  overflow-x: auto;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 140px;
}
.dnx-api-error-card .dnx-api-error-actions {
  display: flex; gap: 8px; flex-wrap: wrap;
}

/* ======================================================================
   v2.0.0-phase25.7.1 — Home Command Center hard replacement
   Visible marker classes Adam can grep for to confirm phase 25.7.1:
     .dnx-home-command-v2571
     .dnx-home-hero-v2571
     .dnx-home-metric-grid-v2571
     .dnx-home-metric-card-v2571
     .dnx-home-launch-grid-v2571
     .dnx-home-launch-tile-v2571
     .dnx-home-priority-v2571
     .dnx-home-health-grid-v2571
     .dnx-home-ai-finance-v2571
   ====================================================================== */

.dnx-home-command-v2571 {
  padding: 18px 22px 28px;
  color: #e2e8f0;
  display: block;
  min-height: 100%;
}

.dnx-home-command-v2571 #dnxHomeErrorMount[hidden] { display: none; }
.dnx-home-command-v2571 #dnxHomeErrorMount { margin-bottom: 12px; }

/* Hero ---------------------------------------------------------------- */
.dnx-home-hero-v2571 {
  display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between;
  gap: 18px;
  background:
    radial-gradient(circle at 0% 0%, rgba(78,224,255,0.16), transparent 50%),
    radial-gradient(circle at 100% 100%, rgba(167,139,250,0.14), transparent 55%),
    linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 20px;
  padding: 22px 24px;
  margin: 0 0 18px;
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
}
.dnx-home-hero-v2571 .dnx-home-hero-text { flex: 1 1 320px; min-width: 0; }
.dnx-home-hero-v2571 .dnx-home-hero-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 950;
  letter-spacing: 0.20em; text-transform: uppercase;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 6px;
}
.dnx-home-hero-v2571 h1 {
  color: #f8fafc;
  font-size: 22px;
  letter-spacing: -0.02em;
  margin: 0 0 8px;
  font-weight: 900;
  line-height: 1.25;
}
.dnx-home-hero-v2571 .dnx-home-hero-date {
  color: #94a3b8;
  font-size: 12px; font-weight: 800;
  letter-spacing: 0.04em;
}
.dnx-home-hero-v2571 .dnx-home-hero-actions {
  display: inline-flex; flex-wrap: wrap; gap: 8px;
  align-items: center;
}
.dnx-home-hero-v2571 .dnx-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  transition: background .12s ease, border-color .12s ease, color .12s ease;
}
.dnx-home-hero-v2571 .dnx-btn:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
}
.dnx-home-hero-v2571 .dnx-btn-primary {
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b;
  border: 0;
  font-weight: 900;
}

/* Section heads ------------------------------------------------------- */
.dnx-home-command-v2571 .dnx-home-section-v2571 { margin: 0 0 18px; }
.dnx-home-command-v2571 .dnx-home-section-head {
  display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap;
  margin: 0 0 10px;
}
.dnx-home-command-v2571 .dnx-home-section-head h2 {
  color: #f8fafc;
  font-size: 14px; font-weight: 900;
  letter-spacing: 0.04em; text-transform: uppercase;
  margin: 0;
}
.dnx-home-command-v2571 .dnx-home-section-head small {
  color: #94a3b8;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.10em; text-transform: uppercase;
}

/* Live Command Metrics ----------------------------------------------- */
.dnx-home-metric-grid-v2571 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}
.dnx-home-metric-card-v2571 {
  display: flex; flex-direction: column; gap: 4px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 13px 14px;
  color: #e2e8f0;
  cursor: pointer;
  transition: border-color .12s ease, transform .05s ease, background .15s ease;
  text-align: left;
  font: inherit;
}
.dnx-home-metric-card-v2571:hover {
  border-color: rgba(56,189,248,0.45);
  transform: translateY(-1px);
  background: linear-gradient(180deg, rgba(15,23,42,0.86), rgba(2,6,23,0.65));
}
.dnx-home-metric-card-v2571:focus-visible {
  outline: 2px solid #38bdf8; outline-offset: 2px;
}
.dnx-home-metric-label {
  font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.14em;
  color: #94a3b8;
}
.dnx-home-metric-value {
  font-size: 26px; font-weight: 950;
  color: #f8fafc; line-height: 1;
  margin: 4px 0 2px;
}
.dnx-home-metric-sub {
  font-size: 11px; color: #94a3b8; font-weight: 800;
}
.dnx-home-metric-card-v2571[data-tone="warn"]   .dnx-home-metric-value { color: #fbbf24; }
.dnx-home-metric-card-v2571[data-tone="danger"] .dnx-home-metric-value { color: #fca5a5; }
.dnx-home-metric-card-v2571[data-tone="good"]   .dnx-home-metric-value { color: #4ade80; }

/* Workflow Launch Grid ----------------------------------------------- */
.dnx-home-launch-grid-v2571 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 10px;
}
.dnx-home-launch-tile-v2571 {
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  background: linear-gradient(180deg, rgba(15,23,42,0.65), rgba(2,6,23,0.45));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 12px 14px;
  cursor: pointer;
  color: #e2e8f0;
  text-align: left;
  font: inherit;
  transition: transform .05s ease, border-color .15s ease, background .15s ease;
}
.dnx-home-launch-tile-v2571:hover {
  border-color: rgba(56,189,248,0.55);
  transform: translateY(-1px);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.06));
}
.dnx-home-launch-tile-v2571:focus-visible { outline: 2px solid #38bdf8; outline-offset: 2px; }
.dnx-home-launch-mark {
  width: 36px; height: 36px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b; font-weight: 950; font-size: 15px;
  border-radius: 11px;
  flex: 0 0 36px;
}
.dnx-home-launch-body { display: flex; flex-direction: column; min-width: 0; }
.dnx-home-launch-name { color: #f8fafc; font-weight: 900; font-size: 13px; letter-spacing: -0.01em; }
.dnx-home-launch-sub  { color: #94a3b8; font-weight: 800; font-size: 11px; letter-spacing: 0.04em; }
.dnx-home-launch-badge {
  background: rgba(56,189,248,0.16);
  border: 1px solid rgba(56,189,248,0.32);
  color: #67e8f9;
  border-radius: 999px;
  padding: 2px 8px;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.04em;
}
.dnx-home-launch-badge[hidden] { display: none; }

/* Priority + AI Finance split --------------------------------------- */
.dnx-home-split-v2571 {
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 14px;
  margin: 0 0 18px;
}
@media (max-width: 1024px) {
  .dnx-home-split-v2571 { grid-template-columns: 1fr; }
}
.dnx-home-priority-v2571,
.dnx-home-ai-finance-v2571,
.dnx-home-health-grid-v2571 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 16px 18px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 8px 22px rgba(2,6,23,0.45);
}
.dnx-home-action-list { display: grid; gap: 8px; }
.dnx-home-action-row {
  display: grid;
  grid-template-columns: 6px 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
}
.dnx-home-action-mark {
  width: 6px; align-self: stretch;
  border-radius: 4px;
  background: linear-gradient(180deg, #38bdf8, #a78bfa);
}
.dnx-home-action-row[data-tone="danger"] .dnx-home-action-mark { background: linear-gradient(180deg, #f87171, #fb7185); }
.dnx-home-action-row[data-tone="warn"]   .dnx-home-action-mark { background: linear-gradient(180deg, #fbbf24, #f59e0b); }
.dnx-home-action-row[data-tone="good"]   .dnx-home-action-mark { background: linear-gradient(180deg, #4ade80, #22c55e); }
.dnx-home-action-body strong { display: block; color: #f8fafc; font-size: 13px; font-weight: 900; }
.dnx-home-action-body small  { display: block; color: #94a3b8; font-size: 11px; font-weight: 800; margin-top: 2px; }
.dnx-home-action-row .dnx-btn {
  background: rgba(56,189,248,0.12);
  color: #bae6fd;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 10px;
  padding: 7px 12px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
}
.dnx-home-action-row .dnx-btn:hover { background: rgba(56,189,248,0.18); }

/* Mini grids (Health + AI Finance) */
.dnx-home-mini-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.dnx-home-mini-card {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 12px 14px;
  display: flex; flex-direction: column; gap: 2px;
}
.dnx-home-mini-label { color: #94a3b8; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.14em; }
.dnx-home-mini-value { color: #f8fafc; font-size: 20px; font-weight: 950; line-height: 1; margin-top: 4px; }
.dnx-home-mini-sub   { color: #94a3b8; font-size: 11px; font-weight: 800; }
.dnx-home-mini-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-home-mini-actions .dnx-btn {
  background: rgba(15,23,42,0.55);
  color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 10px;
  padding: 8px 12px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
  text-decoration: none;
}
.dnx-home-mini-actions .dnx-btn:hover {
  border-color: rgba(56,189,248,0.45);
  background: rgba(56,189,248,0.08);
}

.dnx-home-foot-version {
  margin-top: 14px;
  font-size: 10px; font-weight: 800;
  color: rgba(148,163,184,0.6);
  letter-spacing: 0.06em;
  text-align: right;
}

@media (max-width: 720px) {
  .dnx-home-command-v2571 { padding: 12px 14px 22px; }
  .dnx-home-hero-v2571 { padding: 16px; }
  .dnx-home-hero-v2571 h1 { font-size: 18px; }
  .dnx-home-action-row { grid-template-columns: 6px 1fr; }
  .dnx-home-action-row .dnx-btn { grid-column: 2 / 3; justify-self: flex-start; }
}

/* ======================================================================
   v2.0.0-phase25.7.2 — Home designer-level redesign (v2572)
   Marker classes Adam can grep for to confirm phase 25.7.2 is live:
     .dnx-home-v2572
     .dnx-home-hero-v2572
     .dnx-priority-board-v2572
     .dnx-ops-overview-v2572
     .dnx-launch-dock-v2572
     .dnx-market-inventory-v2572
     .dnx-ai-finance-panel-v2572
   ====================================================================== */

.dnx-home-v2572 {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  display: block;
  min-height: 100%;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-amber:  #fbbf24;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
}
.dnx-home-v2572 #dnxHomeErrorMount[hidden] { display: none; }
.dnx-home-v2572 #dnxHomeErrorMount { margin-bottom: 14px; }

/* Section heading shared style */
.dnx-home-v2572 .dnx-section-head {
  display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
  margin: 0 0 12px;
}
.dnx-home-v2572 .dnx-section-head h2 {
  margin: 0;
  color: #f8fafc;
  font-size: 13px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-home-v2572 .dnx-section-head small {
  color: #94a3b8;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.10em;
}

/* ---------- HERO ---------- */
.dnx-home-hero-v2572 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(280px, 1fr);
  gap: 18px;
  padding: 26px 28px;
  margin: 0 0 22px;
  border-radius: 22px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.22), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.20), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.65));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow:
    0 22px 60px rgba(2,6,23,0.55),
    inset 0 1px 0 rgba(255,255,255,0.06);
  overflow: hidden;
}
/* Aurora grid effect (CSS only) */
.dnx-home-hero-v2572::before {
  content: "";
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(148,163,184,0.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,0.07) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: radial-gradient(ellipse at 30% 0%, #000 0%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse at 30% 0%, #000 0%, transparent 70%);
  pointer-events: none;
  opacity: 0.55;
}
.dnx-home-hero-v2572::after {
  content: "";
  position: absolute;
  top: -120px; right: -120px;
  width: 360px; height: 360px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(167,139,250,0.30), transparent 60%);
  filter: blur(20px);
  pointer-events: none;
}
.dnx-home-hero-copy-v2572 { position: relative; z-index: 1; display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.dnx-home-hero-eyebrow {
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.32em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-home-hero-copy-v2572 h1 {
  margin: 0;
  color: #f8fafc;
  font-size: 30px;
  line-height: 1.12;
  letter-spacing: -0.025em;
  font-weight: 900;
}
.dnx-home-hero-copy-v2572 p {
  margin: 0;
  color: #cbd5e1;
  font-size: 14px;
  max-width: 560px;
  line-height: 1.5;
}
.dnx-home-hero-date {
  color: #94a3b8;
  font-size: 11px; font-weight: 800;
  letter-spacing: 0.12em; text-transform: uppercase;
  margin-top: 4px;
}
.dnx-home-hero-actions-v2572 {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin-top: 4px;
}
.dnx-hero-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 12px;
  padding: 10px 16px;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-hero-btn:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); transform: translateY(-1px); }
.dnx-hero-btn-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b;
  border: 0;
  font-weight: 900;
}
.dnx-hero-btn-primary:hover { filter: brightness(1.05); transform: translateY(-1px); }

/* Hero snapshot panel */
.dnx-home-hero-snapshot-v2572 {
  position: relative; z-index: 1;
  display: grid; gap: 10px;
  align-content: start;
  background: linear-gradient(180deg, rgba(2,6,23,0.55), rgba(15,23,42,0.55));
  border: 1px solid rgba(148,163,184,0.20);
  border-radius: 18px;
  padding: 14px 16px;
  min-width: 0;
}
.dnx-snap-head {
  display: flex; align-items: center; justify-content: space-between;
  margin-bottom: 2px;
}
.dnx-snap-eyebrow { color: #94a3b8; font-size: 10px; font-weight: 900; letter-spacing: 0.18em; text-transform: uppercase; }
.dnx-snap-live {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 10px; font-weight: 900; color: #4ade80;
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-snap-live::before {
  content: ""; width: 6px; height: 6px; border-radius: 50%;
  background: #4ade80;
  box-shadow: 0 0 0 3px rgba(74,222,128,0.18);
}
.dnx-snap-cell {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 8px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 10px 12px;
  cursor: pointer;
  color: #e2e8f0;
  font: inherit;
  text-align: left;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-snap-cell:hover { border-color: rgba(56,189,248,0.45); background: rgba(56,189,248,0.08); transform: translateY(-1px); }
.dnx-snap-label { color: #94a3b8; font-size: 11px; font-weight: 800; letter-spacing: 0.06em; }
.dnx-snap-value { color: #f8fafc; font-weight: 950; font-size: 24px; line-height: 1; }

/* ---------- PRIORITY BOARD ---------- */
.dnx-priority-board-v2572 { margin: 0 0 22px; }
.dnx-priority-board-v2572 .dnx-priority-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(260px, 1fr);
  gap: 14px;
}
.dnx-next-action-card-v2572 {
  background:
    linear-gradient(160deg, rgba(78,224,255,0.10), rgba(167,139,250,0.06) 60%, transparent),
    linear-gradient(180deg, rgba(15,23,42,0.82), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 18px;
  padding: 22px 24px;
  display: flex; flex-direction: column; gap: 10px;
  min-height: 200px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
}
.dnx-next-action-card-v2572::after {
  content: "";
  position: absolute; right: -80px; bottom: -80px;
  width: 240px; height: 240px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(56,189,248,0.25), transparent 60%);
  filter: blur(20px);
  pointer-events: none;
}
.dnx-nx-action-eyebrow {
  font-size: 11px; font-weight: 900; color: var(--dnx-cyan);
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-nx-action-title { margin: 4px 0 4px; color: #f8fafc; font-size: 22px; font-weight: 900; line-height: 1.2; }
.dnx-nx-action-copy  { margin: 0; color: #cbd5e1; font-size: 13px; line-height: 1.5; max-width: 580px; }
.dnx-nx-action-buttons { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 6px; }
.dnx-nx-action-buttons button {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  color: #04060b; border: 0;
  font-weight: 900; font-size: 13px;
  padding: 10px 16px; border-radius: 11px;
  cursor: pointer;
  transition: filter .15s, transform .05s;
}
.dnx-nx-action-buttons button:hover { filter: brightness(1.05); transform: translateY(-1px); }
.dnx-next-action-card-v2572[data-tone="danger"] { border-color: rgba(248,113,113,0.45); }
.dnx-next-action-card-v2572[data-tone="danger"] .dnx-nx-action-eyebrow { color: var(--dnx-red); }
.dnx-next-action-card-v2572[data-tone="warn"]   { border-color: rgba(251,191,36,0.45); }
.dnx-next-action-card-v2572[data-tone="warn"] .dnx-nx-action-eyebrow { color: var(--dnx-amber); }
.dnx-next-action-card-v2572[data-tone="good"]   { border-color: rgba(74,222,128,0.40); }
.dnx-next-action-card-v2572[data-tone="good"] .dnx-nx-action-eyebrow { color: var(--dnx-green); }

.dnx-action-stack-v2572 { display: grid; gap: 10px; align-content: start; }
.dnx-action-card-v2572 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-left: 3px solid rgba(56,189,248,0.55);
  border-radius: 14px;
  padding: 12px 14px;
  display: grid; gap: 4px;
}
.dnx-action-card-v2572[data-tone="danger"] { border-left-color: var(--dnx-red); }
.dnx-action-card-v2572[data-tone="warn"]   { border-left-color: var(--dnx-amber); }
.dnx-action-card-v2572[data-tone="good"]   { border-left-color: var(--dnx-green); }
.dnx-action-card-v2572 .dnx-action-meta {
  color: #94a3b8; font-size: 10px; font-weight: 900;
  letter-spacing: 0.18em; text-transform: uppercase;
}
.dnx-action-card-v2572 strong { color: #f8fafc; font-size: 13px; font-weight: 900; }
.dnx-action-card-v2572 small  { color: #cbd5e1; font-size: 12px; }
.dnx-action-card-v2572 button {
  margin-top: 6px;
  background: rgba(56,189,248,0.12);
  color: #bae6fd;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 10px;
  padding: 7px 12px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
  justify-self: flex-start;
}
.dnx-action-card-v2572 button:hover { background: rgba(56,189,248,0.18); }

/* ---------- OPS OVERVIEW (4 large KPI cards) ---------- */
.dnx-ops-overview-v2572 { margin: 0 0 22px; }
.dnx-ops-overview-v2572 .dnx-ops-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.dnx-ops-card-v2572 {
  display: grid; gap: 6px;
  background: linear-gradient(180deg, rgba(15,23,42,0.82), rgba(2,6,23,0.62));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 18px;
  padding: 16px 18px;
  color: #e2e8f0;
  font: inherit; text-align: left; cursor: pointer;
  transition: border-color .15s, transform .05s, box-shadow .15s;
  position: relative; overflow: hidden;
  box-shadow: 0 10px 28px rgba(2,6,23,0.42);
}
.dnx-ops-card-v2572::before {
  content: "";
  position: absolute; top: -60px; right: -60px;
  width: 180px; height: 180px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(56,189,248,0.25), transparent 60%);
  filter: blur(20px);
  opacity: 0.85;
  pointer-events: none;
}
.dnx-ops-card-v2572[data-accent="purple"]::before { background: radial-gradient(circle, rgba(167,139,250,0.30), transparent 60%); }
.dnx-ops-card-v2572[data-accent="amber"]::before  { background: radial-gradient(circle, rgba(251,191,36,0.28), transparent 60%); }
.dnx-ops-card-v2572[data-accent="green"]::before  { background: radial-gradient(circle, rgba(74,222,128,0.28), transparent 60%); }
.dnx-ops-card-v2572:hover {
  border-color: rgba(56,189,248,0.55);
  transform: translateY(-2px);
  box-shadow: 0 18px 44px rgba(2,6,23,0.6);
}
.dnx-ops-card-label {
  color: #94a3b8;
  font-size: 11px; font-weight: 900;
  letter-spacing: 0.18em; text-transform: uppercase;
}
.dnx-ops-card-main {
  color: #f8fafc;
  font-size: 36px; font-weight: 950; line-height: 1;
  letter-spacing: -0.02em;
  margin: 2px 0;
}
.dnx-ops-card-v2572[data-accent="purple"] .dnx-ops-card-main { background: linear-gradient(135deg, #c4b5fd, #a78bfa); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-ops-card-v2572[data-accent="cyan"]   .dnx-ops-card-main { background: linear-gradient(135deg, #67e8f9, #4ee0ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-ops-card-v2572[data-accent="amber"]  .dnx-ops-card-main { background: linear-gradient(135deg, #fcd34d, #fbbf24); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-ops-card-v2572[data-accent="green"]  .dnx-ops-card-main { background: linear-gradient(135deg, #86efac, #4ade80); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-ops-card-sub  { color: #cbd5e1; font-size: 12px; font-weight: 800; }
.dnx-ops-card-sub strong { color: #f8fafc; font-weight: 950; }
.dnx-ops-card-cta  {
  color: #67e8f9;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.06em;
  margin-top: 4px;
}

/* ---------- LAUNCH DOCK ---------- */
.dnx-launch-dock-v2572 { margin: 0 0 22px; }
.dnx-launch-groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.dnx-launch-group-v2572 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 14px;
}
.dnx-launch-group-v2572 h3 {
  margin: 0 0 10px;
  color: #94a3b8;
  font-size: 11px; font-weight: 900;
  letter-spacing: 0.18em; text-transform: uppercase;
}
.dnx-launch-group-v2572 .dnx-launch-tiles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.dnx-launch-tile-v2572 {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  padding: 10px;
  cursor: pointer;
  color: #e2e8f0;
  text-align: left;
  font: inherit;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-launch-tile-v2572:hover {
  border-color: rgba(56,189,248,0.55);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.06));
  transform: translateY(-1px);
}
.dnx-launch-mark-v2572 {
  width: 32px; height: 32px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; font-weight: 950; font-size: 14px;
  border-radius: 10px;
  flex: 0 0 32px;
}
.dnx-launch-body { display: flex; flex-direction: column; min-width: 0; }
.dnx-launch-name { color: #f8fafc; font-weight: 900; font-size: 13px; letter-spacing: -0.01em; }
.dnx-launch-sub  { color: #94a3b8; font-weight: 800; font-size: 10px; letter-spacing: 0.06em; }

/* ---------- SPOTLIGHT (Inventory + Marketplace) ---------- */
.dnx-market-inventory-v2572 { margin: 0 0 22px; }
.dnx-market-inventory-v2572 .dnx-spotlight-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}
.dnx-inventory-spotlight-v2572,
.dnx-marketplace-pulse-v2572 {
  background:
    linear-gradient(160deg, rgba(78,224,255,0.08), transparent 50%),
    linear-gradient(180deg, rgba(15,23,42,0.82), rgba(2,6,23,0.62));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 18px;
  padding: 18px 20px;
  display: flex; flex-direction: column;
  gap: 12px;
  box-shadow: 0 12px 32px rgba(2,6,23,0.42);
}
.dnx-marketplace-pulse-v2572 {
  background:
    linear-gradient(160deg, rgba(167,139,250,0.10), transparent 50%),
    linear-gradient(180deg, rgba(15,23,42,0.82), rgba(2,6,23,0.62));
}
.dnx-inventory-spotlight-v2572 header,
.dnx-marketplace-pulse-v2572 header {
  display: flex; align-items: center; justify-content: space-between;
}
.dnx-inventory-spotlight-v2572 header h3,
.dnx-marketplace-pulse-v2572 header h3 {
  margin: 0; color: #f8fafc; font-size: 15px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-spot-tag {
  font-size: 10px; font-weight: 900; color: #67e8f9;
  letter-spacing: 0.18em; text-transform: uppercase;
  background: rgba(56,189,248,0.14);
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 999px;
  padding: 3px 9px;
}
.dnx-spot-rows { display: grid; gap: 4px; }
.dnx-spot-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 11px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
  font-size: 13px;
}
.dnx-spot-row span { color: #cbd5e1; font-weight: 800; }
.dnx-spot-row strong { color: #f8fafc; font-weight: 950; }
.dnx-spot-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-spot-actions button,
.dnx-spot-actions a {
  background: rgba(15,23,42,0.55);
  color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 10px;
  padding: 8px 12px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
  text-decoration: none;
}
.dnx-spot-actions button:hover,
.dnx-spot-actions a:hover {
  border-color: rgba(56,189,248,0.45);
  background: rgba(56,189,248,0.08);
}

/* ---------- AI FINANCE INTELLIGENCE ---------- */
.dnx-ai-finance-panel-v2572 {
  margin: 0 0 22px;
  background:
    radial-gradient(60% 80% at 100% 0%, rgba(167,139,250,0.18), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(167,139,250,0.32);
  border-radius: 20px;
  padding: 20px 22px;
  box-shadow: 0 16px 44px rgba(2,6,23,0.5);
}
.dnx-ai-finance-metrics-v2572 {
  display: flex; flex-wrap: wrap; gap: 10px;
  margin-bottom: 12px;
}
.dnx-ai-chip-v2572 {
  display: inline-flex; flex-direction: column;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(167,139,250,0.32);
  border-radius: 14px;
  padding: 10px 14px;
  gap: 2px;
  min-width: 140px;
}
.dnx-ai-chip-v2572 label {
  color: #94a3b8; font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.14em;
}
.dnx-ai-chip-v2572 strong {
  color: #f8fafc; font-size: 18px; font-weight: 950; line-height: 1;
  background: linear-gradient(135deg, #c4b5fd, #67e8f9);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-ai-finance-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.dnx-ai-finance-actions button {
  background: rgba(167,139,250,0.14);
  color: #ddd6fe;
  border: 1px solid rgba(167,139,250,0.40);
  border-radius: 10px;
  padding: 9px 14px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
}
.dnx-ai-finance-actions button:hover { background: rgba(167,139,250,0.22); }

/* ---------- Footer version ---------- */
.dnx-home-v2572 .dnx-home-foot-version {
  margin-top: 16px;
  font-size: 10px; font-weight: 800;
  color: rgba(148,163,184,0.55);
  letter-spacing: 0.06em;
  text-align: right;
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .dnx-home-hero-v2572 { grid-template-columns: 1fr; }
  .dnx-priority-board-v2572 .dnx-priority-grid { grid-template-columns: 1fr; }
  .dnx-ops-overview-v2572 .dnx-ops-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .dnx-launch-groups { grid-template-columns: 1fr; }
  .dnx-market-inventory-v2572 .dnx-spotlight-grid { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .dnx-home-v2572 { padding: 14px 14px 24px; }
  .dnx-home-hero-v2572 { padding: 18px; }
  .dnx-home-hero-copy-v2572 h1 { font-size: 22px; }
  .dnx-ops-overview-v2572 .dnx-ops-grid { grid-template-columns: 1fr; }
  .dnx-ops-card-main { font-size: 28px; }
  .dnx-launch-group-v2572 .dnx-launch-tiles { grid-template-columns: 1fr; }
}

/* ======================================================================
   v2.0.0-phase25.8 — Leads page full revamp (v258)
   Marker classes Adam can grep for to confirm phase 25.8 is live:
     .dnx-leads-revamp-v258
     .dnx-leads-commandbar-v258
     .dnx-leads-kpis-v258
     .dnx-leads-filterbar-v258
     .dnx-leads-layout-v258
     .dnx-leads-list-v258
     .dnx-lead-row-v258
     .dnx-lead-detail-v258
     .dnx-lead-actions-v258
     .dnx-leads-stage-snapshot-v258
     .dnx-leads-ai-panel-v258
     .dnx-leads-pager-v258
   ====================================================================== */

.dnx-leads-revamp-v258 {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  display: block;
  min-height: 100%;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-amber:  #fbbf24;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
}
.dnx-leads-revamp-v258 #dnxLeadsErrorMount[hidden] { display: none; }
.dnx-leads-revamp-v258 #dnxLeadsErrorMount { margin-bottom: 12px; }

/* Section heading shared */
.dnx-leads-revamp-v258 .dnx-leads-section-head {
  display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
  margin: 0 0 10px;
}
.dnx-leads-revamp-v258 .dnx-leads-section-head h2 {
  margin: 0; color: #f8fafc; font-size: 12px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-leads-revamp-v258 .dnx-leads-section-head small {
  color: #94a3b8; font-size: 11px; font-weight: 800; letter-spacing: 0.10em;
}

/* Buttons */
.dnx-leads-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-leads-btn:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); transform: translateY(-1px); }
.dnx-leads-btn-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}
.dnx-leads-btn-primary:hover { filter: brightness(1.05); transform: translateY(-1px); }
.dnx-leads-btn-ghost { background: rgba(15,23,42,0.45); }

/* COMMAND BAR */
.dnx-leads-commandbar-v258 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 16px; align-items: center;
  padding: 20px 22px;
  margin: 0 0 18px;
  border-radius: 20px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
  overflow: hidden;
}
.dnx-leads-commandbar-v258::before {
  content: ""; position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(148,163,184,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,0.06) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  pointer-events: none; opacity: 0.45;
}
.dnx-leads-cmd-copy { position: relative; z-index: 1; min-width: 0; }
.dnx-leads-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-leads-cmd-copy h1 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 22px; font-weight: 900;
  line-height: 1.2; letter-spacing: -0.02em;
}
.dnx-leads-cmd-copy p {
  margin: 0; color: #cbd5e1; font-size: 13px; max-width: 620px;
}
.dnx-leads-cmd-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 8px; }

/* KPI STRIP */
.dnx-leads-kpis-v258 {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  margin: 0 0 14px;
}
.dnx-leads-kpi {
  display: grid; gap: 2px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  padding: 10px 12px;
  color: #e2e8f0; font: inherit; text-align: left; cursor: pointer;
  transition: border-color .12s, transform .05s;
}
.dnx-leads-kpi:hover { border-color: rgba(56,189,248,0.55); transform: translateY(-1px); }
.dnx-leads-kpi span  { color: #94a3b8; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.14em; }
.dnx-leads-kpi strong { color: #f8fafc; font-size: 22px; font-weight: 950; line-height: 1; margin: 2px 0; }
.dnx-leads-kpi small { color: #94a3b8; font-size: 10px; font-weight: 800; }
.dnx-leads-kpi[data-accent="cyan"]   strong { background: linear-gradient(135deg, #67e8f9, #4ee0ff); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-leads-kpi[data-accent="purple"] strong { background: linear-gradient(135deg, #c4b5fd, #a78bfa); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-leads-kpi[data-accent="amber"]  strong { background: linear-gradient(135deg, #fcd34d, #fbbf24); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-leads-kpi[data-accent="green"]  strong { background: linear-gradient(135deg, #86efac, #4ade80); -webkit-background-clip: text; background-clip: text; color: transparent; }
.dnx-leads-kpi[data-accent="red"]    strong { background: linear-gradient(135deg, #fda4af, #fca5a5); -webkit-background-clip: text; background-clip: text; color: transparent; }

/* FILTER BAR */
.dnx-leads-filterbar-v258 {
  display: grid;
  grid-template-columns: minmax(180px, 1.5fr) repeat(3, minmax(120px, 1fr)) auto auto auto;
  gap: 8px;
  margin: 0 0 14px;
  padding: 10px 12px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
}
.dnx-leads-filterbar-v258 input,
.dnx-leads-filterbar-v258 select {
  background: rgba(2,6,23,0.55); color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 10px; padding: 8px 10px; font-size: 13px; min-width: 0;
}
.dnx-leads-filterbar-v258 input:focus,
.dnx-leads-filterbar-v258 select:focus {
  outline: 2px solid #38bdf8; outline-offset: -1px;
  border-color: rgba(56,189,248,0.55);
}
.dnx-leads-filterbar-v258 input[type="date"] { width: 100%; }

/* STAGE SNAPSHOT (compact, replaces tall kanban) */
.dnx-leads-stage-snapshot-v258 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 14px 16px;
  margin: 0 0 14px;
}
.dnx-leads-stage-snapshot-v258 .dnx-leads-stage-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
}
.dnx-leads-stage-chip {
  display: flex; align-items: center; justify-content: space-between;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 10px;
  padding: 10px 12px;
  color: #e2e8f0; font: inherit; cursor: pointer;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-leads-stage-chip:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.08); transform: translateY(-1px); }
.dnx-leads-stage-chip .dnx-stage-name { font-size: 11px; font-weight: 900; color: #cbd5e1; letter-spacing: 0.04em; }
.dnx-leads-stage-chip .dnx-stage-count {
  background: rgba(56,189,248,0.16); color: #67e8f9;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 999px; padding: 2px 9px;
  font-size: 11px; font-weight: 950;
}

/* MAIN 3-ZONE LAYOUT */
.dnx-leads-layout-v258 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(220px, 280px);
  gap: 14px;
  margin: 0 0 18px;
  align-items: start;
}

.dnx-leads-list-v258,
.dnx-lead-detail-v258,
.dnx-lead-actions-v258 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 10px 28px rgba(2,6,23,0.42);
}

.dnx-leads-list-v258 .dnx-leads-list-rows {
  display: grid; gap: 8px;
  max-height: calc(7 * 92px + 30px);
  overflow-y: auto;
  scrollbar-width: thin;
  padding-right: 4px;
}
.dnx-leads-list-rows::-webkit-scrollbar { width: 6px; }
.dnx-leads-list-rows::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 6px; }

.dnx-lead-row-v258 {
  display: grid; gap: 4px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 10px 12px;
  cursor: pointer;
  color: #e2e8f0; font: inherit; text-align: left;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-lead-row-v258:hover {
  border-color: rgba(56,189,248,0.45);
  background: rgba(56,189,248,0.06);
  transform: translateY(-1px);
}
.dnx-lead-row-v258.is-selected {
  border-color: rgba(56,189,248,0.65);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.05));
  box-shadow: 0 0 0 1px rgba(56,189,248,0.25);
}
.dnx-lead-row-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dnx-lead-row-head strong { color: #f8fafc; font-size: 14px; font-weight: 900; }
.dnx-lead-row-meta { display: flex; flex-wrap: wrap; gap: 6px; }
.dnx-lead-row-source { color: #94a3b8; font-size: 11px; font-weight: 800; }
.dnx-lead-row-vehicle { color: #cbd5e1; font-size: 12px; }
.dnx-lead-row-next { color: #67e8f9; font-size: 11px; font-weight: 800; }

.dnx-lead-pill {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  background: rgba(148,163,184,0.14);
  color: #cbd5e1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.dnx-lead-pill.dnx-tone-danger { background: rgba(248,113,113,0.16); color: #fca5a5; }
.dnx-lead-pill.dnx-tone-warn   { background: rgba(251,191,36,0.16); color: #fbbf24; }
.dnx-lead-pill.dnx-tone-good   { background: rgba(74,222,128,0.16); color: #4ade80; }

/* PAGER */
.dnx-leads-pager-v258 {
  display: flex; align-items: center; gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148,163,184,0.14);
}
.dnx-leads-pager-v258[hidden] { display: none; }
.dnx-leads-pager-info { color: #94a3b8; font-size: 12px; font-weight: 800; flex: 1 1 auto; }
.dnx-leads-pager-v258 .dnx-leads-btn[disabled] { opacity: 0.4; cursor: not-allowed; }

/* DETAIL PANEL */
.dnx-lead-detail-v258 .dnx-lead-detail-header {
  display: flex; align-items: center; gap: 10px;
  margin: 0 0 12px;
}
.dnx-lead-detail-v258 .dnx-lead-detail-header h3 {
  margin: 0; color: #f8fafc; font-size: 17px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-lead-detail-grid {
  display: grid; gap: 4px;
}
.dnx-lead-detail-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 11px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
  font-size: 13px;
}
.dnx-lead-detail-row span { color: #94a3b8; font-weight: 800; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; }
.dnx-lead-detail-row strong { color: #f8fafc; font-weight: 900; font-size: 13px; }
.dnx-lead-detail-notes {
  margin-top: 12px;
  padding: 10px 12px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
}
.dnx-lead-detail-notes h4 {
  margin: 0 0 6px;
  color: #94a3b8; font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.14em;
}
.dnx-lead-detail-notes p { margin: 0; color: #cbd5e1; font-size: 12px; line-height: 1.5; }

.dnx-leads-detail-empty {
  padding: 26px 12px;
  text-align: center;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
  background: rgba(2,6,23,0.40);
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 12px;
}
.dnx-leads-detail-empty strong { display: block; color: #f8fafc; font-size: 14px; font-weight: 900; margin-bottom: 4px; }

/* ACTIONS PANEL */
.dnx-lead-actions-grid {
  display: grid; gap: 6px;
}
.dnx-lead-action {
  display: grid; gap: 2px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
  padding: 9px 11px;
  color: #e2e8f0; font: inherit; cursor: pointer; text-align: left;
  text-decoration: none;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-lead-action:hover { border-color: rgba(56,189,248,0.45); background: rgba(56,189,248,0.06); transform: translateY(-1px); }
.dnx-lead-action span { color: #f8fafc; font-size: 12px; font-weight: 900; letter-spacing: -0.01em; }
.dnx-lead-action small { color: #94a3b8; font-size: 10px; font-weight: 800; }
.dnx-lead-action.dnx-action-cyan { border-color: rgba(56,189,248,0.32); background: rgba(56,189,248,0.08); }
.dnx-lead-action.dnx-action-purple { border-color: rgba(167,139,250,0.32); background: rgba(167,139,250,0.08); }

/* AI FOLLOW-UP PANEL */
.dnx-leads-ai-panel-v258 {
  background:
    radial-gradient(60% 80% at 100% 0%, rgba(167,139,250,0.16), transparent 60%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(167,139,250,0.32);
  border-radius: 18px;
  padding: 18px 20px;
  margin: 0 0 16px;
}
.dnx-leads-ai-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.dnx-leads-ai-card {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(167,139,250,0.32);
  border-radius: 12px;
  padding: 10px 12px;
  display: flex; flex-direction: column; gap: 2px;
}
.dnx-leads-ai-label { color: #94a3b8; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.14em; }
.dnx-leads-ai-card strong { color: #f8fafc; font-size: 20px; font-weight: 950; line-height: 1; }
.dnx-leads-ai-card small { color: #94a3b8; font-size: 11px; font-weight: 800; }
.dnx-leads-ai-actions { display: flex; flex-wrap: wrap; gap: 8px; }

/* RESPONSIVE */
@media (max-width: 1200px) {
  .dnx-leads-kpis-v258 { grid-template-columns: repeat(4, minmax(0,1fr)); }
  .dnx-leads-layout-v258 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .dnx-lead-actions-v258 { grid-column: 1 / -1; }
}
@media (max-width: 900px) {
  .dnx-leads-revamp-v258 { padding: 16px 16px 24px; }
  .dnx-leads-commandbar-v258 { grid-template-columns: 1fr; }
  .dnx-leads-filterbar-v258 { grid-template-columns: 1fr 1fr; }
  .dnx-leads-layout-v258 { grid-template-columns: 1fr; }
  .dnx-leads-kpis-v258 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .dnx-leads-filterbar-v258 { grid-template-columns: 1fr; }
}

/* ======================================================================
   v2.0.0-phase25.9 — IDC Command Center (v259) full revamp
   Marker classes Adam can grep for to confirm phase 25.9 is live:
     .dnx-idc-revamp-v259
     .dnx-idc-commandbar-v259
     .dnx-idc-kpis-v259
     .dnx-idc-filterbar-v259
     .dnx-idc-layout-v259
     .dnx-idc-list-v259
     .dnx-idc-row-v259
     .dnx-idc-detail-v259
     .dnx-idc-actions-v259
     .dnx-idc-queue-snapshot-v259
     .dnx-idc-task-board-v259
     .dnx-idc-pager-v259
   ====================================================================== */

.dnx-idc-revamp-v259 {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  display: block;
  min-height: 100%;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-amber:  #fbbf24;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
}
.dnx-idc-revamp-v259 .dnx-idc-error-mount:empty { display: none; }
.dnx-idc-revamp-v259 .dnx-idc-error-mount { margin: 0 0 12px; }

.dnx-idc-revamp-v259 .dnx-idc-section-head {
  display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap;
  margin: 0 0 10px;
}
.dnx-idc-revamp-v259 .dnx-idc-section-head h2 {
  margin: 0; color: #f8fafc; font-size: 12px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-idc-revamp-v259 .dnx-idc-section-head small {
  color: #94a3b8; font-size: 11px; font-weight: 800; letter-spacing: 0.10em;
}

/* Buttons */
.dnx-idc-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 800; font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-idc-btn:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); transform: translateY(-1px); }
.dnx-idc-btn-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}
.dnx-idc-btn-primary:hover { filter: brightness(1.05); transform: translateY(-1px); }
.dnx-idc-btn-ghost { background: rgba(15,23,42,0.45); }
.dnx-idc-btn[disabled] { opacity: 0.4; cursor: not-allowed; }

/* COMMAND BAR */
.dnx-idc-commandbar-v259 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 16px; align-items: center;
  padding: 20px 22px;
  margin: 0 0 18px;
  border-radius: 20px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
  overflow: hidden;
}
.dnx-idc-commandbar-v259::before {
  content: ""; position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(148,163,184,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,0.06) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  pointer-events: none; opacity: 0.45;
}
.dnx-idc-cmd-copy { position: relative; z-index: 1; min-width: 0; }
.dnx-idc-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-idc-cmd-copy h1 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 22px; font-weight: 900;
  line-height: 1.2; letter-spacing: -0.02em;
}
.dnx-idc-cmd-copy p { margin: 0; color: #cbd5e1; font-size: 13px; max-width: 620px; }
.dnx-idc-cmd-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 8px; }

/* KPI STRIP — populated by existing kpiCard() helper */
.dnx-idc-kpis-v259 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 0 0 14px;
}
.dnx-idc-kpis-v259 > * {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  color: #e2e8f0 !important;
}

/* FILTER BAR */
.dnx-idc-filterbar-v259 {
  display: grid;
  grid-template-columns: minmax(180px, 1.5fr) repeat(3, minmax(120px, 1fr)) auto auto auto;
  gap: 8px;
  margin: 0 0 14px;
  padding: 10px 12px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
}
.dnx-idc-filterbar-v259 input,
.dnx-idc-filterbar-v259 select {
  background: rgba(2,6,23,0.55); color: #e2e8f0;
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 10px; padding: 8px 10px; font-size: 13px; min-width: 0;
}
.dnx-idc-filterbar-v259 input:focus,
.dnx-idc-filterbar-v259 select:focus {
  outline: 2px solid #38bdf8; outline-offset: -1px;
  border-color: rgba(56,189,248,0.55);
}

/* QUEUE SNAPSHOT (compact chips replace tall tables) */
.dnx-idc-queue-snapshot-v259 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 14px 16px;
  margin: 0 0 14px;
}
.dnx-idc-queue-snapshot-v259 .dnx-idc-queue-row {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 8px;
}
.dnx-idc-queue-chip {
  display: flex; align-items: center; justify-content: space-between;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 10px;
  padding: 10px 12px;
  color: #e2e8f0; font: inherit; cursor: pointer;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-idc-queue-chip:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.08); transform: translateY(-1px); }
.dnx-idc-queue-chip .dnx-idc-queue-name { font-size: 11px; font-weight: 900; color: #cbd5e1; letter-spacing: 0.04em; }
.dnx-idc-queue-chip .dnx-idc-queue-count {
  background: rgba(56,189,248,0.16); color: #67e8f9;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 999px; padding: 2px 9px;
  font-size: 11px; font-weight: 950;
}

/* MAIN 3-ZONE LAYOUT */
.dnx-idc-layout-v259 {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr) minmax(220px, 280px);
  gap: 14px;
  margin: 0 0 18px;
  align-items: start;
}
.dnx-idc-list-v259,
.dnx-idc-detail-v259,
.dnx-idc-actions-v259 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 14px 16px;
  box-shadow: 0 10px 28px rgba(2,6,23,0.42);
}
.dnx-idc-list-v259 .dnx-idc-list-rows {
  display: grid; gap: 8px;
  max-height: calc(7 * 96px + 30px);
  overflow-y: auto;
  scrollbar-width: thin;
  padding-right: 4px;
}
.dnx-idc-list-rows::-webkit-scrollbar { width: 6px; }
.dnx-idc-list-rows::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 6px; }

.dnx-idc-row-v259 {
  display: grid; gap: 4px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 10px 12px;
  cursor: pointer;
  color: #e2e8f0; font: inherit; text-align: left;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-idc-row-v259:hover {
  border-color: rgba(56,189,248,0.45);
  background: rgba(56,189,248,0.06);
  transform: translateY(-1px);
}
.dnx-idc-row-v259.is-selected {
  border-color: rgba(56,189,248,0.65);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.05));
  box-shadow: 0 0 0 1px rgba(56,189,248,0.25);
}
.dnx-idc-row-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.dnx-idc-row-head strong { color: #f8fafc; font-size: 14px; font-weight: 900; }
.dnx-idc-row-meta { display: flex; flex-wrap: wrap; gap: 6px; }
.dnx-idc-row-meta-sm { color: #94a3b8; font-size: 11px; font-weight: 800; }
.dnx-idc-row-vehicle { color: #cbd5e1; font-size: 12px; }
.dnx-idc-row-next { color: #67e8f9; font-size: 11px; font-weight: 800; }

.dnx-idc-pill {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: 900;
  background: rgba(148,163,184,0.14);
  color: #cbd5e1;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.dnx-idc-pill.dnx-tone-danger { background: rgba(248,113,113,0.16); color: #fca5a5; }
.dnx-idc-pill.dnx-tone-warn   { background: rgba(251,191,36,0.16); color: #fbbf24; }
.dnx-idc-pill.dnx-tone-good   { background: rgba(74,222,128,0.16); color: #4ade80; }

/* PAGER */
.dnx-idc-pager-v259 {
  display: flex; align-items: center; gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148,163,184,0.14);
}
.dnx-idc-pager-v259[hidden] { display: none; }
.dnx-idc-pager-info { color: #94a3b8; font-size: 12px; font-weight: 800; flex: 1 1 auto; }

/* DETAIL PANEL */
.dnx-idc-detail-v259 .dnx-idc-detail-header {
  display: flex; align-items: center; gap: 10px;
  margin: 0 0 12px;
}
.dnx-idc-detail-v259 .dnx-idc-detail-header h3 {
  margin: 0; color: #f8fafc; font-size: 17px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-idc-detail-grid { display: grid; gap: 4px; }
.dnx-idc-detail-row {
  display: flex; align-items: center; justify-content: space-between;
  padding: 9px 11px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
  font-size: 13px;
}
.dnx-idc-detail-row span { color: #94a3b8; font-weight: 800; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; }
.dnx-idc-detail-row strong { color: #f8fafc; font-weight: 900; font-size: 13px; }
.dnx-idc-detail-notes {
  margin-top: 12px;
  padding: 10px 12px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
}
.dnx-idc-detail-notes h4 {
  margin: 0 0 6px;
  color: #94a3b8; font-size: 10px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.14em;
}
.dnx-idc-detail-notes p { margin: 0; color: #cbd5e1; font-size: 12px; line-height: 1.5; }

.dnx-idc-empty {
  padding: 26px 12px;
  text-align: center;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
  background: rgba(2,6,23,0.40);
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 12px;
}
.dnx-idc-empty strong { display: block; color: #f8fafc; font-size: 14px; font-weight: 900; margin-bottom: 4px; }

/* ACTIONS PANEL */
.dnx-idc-actions-grid {
  display: grid; gap: 6px;
}
.dnx-idc-action {
  display: grid; gap: 2px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 10px;
  padding: 9px 11px;
  color: #e2e8f0; font: inherit; cursor: pointer; text-align: left;
  text-decoration: none;
  transition: border-color .12s, background .12s, transform .05s;
}
.dnx-idc-action:hover { border-color: rgba(56,189,248,0.45); background: rgba(56,189,248,0.06); transform: translateY(-1px); }
.dnx-idc-action span { color: #f8fafc; font-size: 12px; font-weight: 900; letter-spacing: -0.01em; }
.dnx-idc-action small { color: #94a3b8; font-size: 10px; font-weight: 800; }
.dnx-idc-action.dnx-action-cyan { border-color: rgba(56,189,248,0.32); background: rgba(56,189,248,0.08); }
.dnx-idc-action.dnx-action-purple { border-color: rgba(167,139,250,0.32); background: rgba(167,139,250,0.08); }
.dnx-idc-action.dnx-action-green { border-color: rgba(74,222,128,0.32); background: rgba(74,222,128,0.08); }

/* TASK BOARD */
.dnx-idc-task-board-v259 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 16px 18px;
  margin: 0 0 18px;
}
.dnx-idc-task-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}
.dnx-idc-task-col {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 12px;
  padding: 12px 14px;
}
.dnx-idc-task-col h3 {
  margin: 0 0 10px;
  color: #94a3b8;
  font-size: 11px; font-weight: 900;
  letter-spacing: 0.18em; text-transform: uppercase;
}
.dnx-idc-task-list {
  max-height: calc(7 * 64px);
  overflow-y: auto;
  scrollbar-width: thin;
}
.dnx-idc-task-list::-webkit-scrollbar { width: 6px; }
.dnx-idc-task-list::-webkit-scrollbar-thumb { background: rgba(148,163,184,0.28); border-radius: 6px; }

/* Override legacy renderTasksList table styling inside task buckets so
   it doesn't blow up the columns with a wide white table. */
.dnx-idc-task-list .dnx-report-table {
  width: 100%;
  background: transparent !important;
  color: #e2e8f0 !important;
  font-size: 12px;
  border-collapse: separate;
  border-spacing: 0;
}
.dnx-idc-task-list .dnx-report-table thead { display: none; }
.dnx-idc-task-list .dnx-report-table tbody tr {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 4px;
  padding: 8px 10px;
  margin-bottom: 6px;
  background: rgba(15,23,42,0.55) !important;
  border: 1px solid rgba(148,163,184,0.14) !important;
  border-radius: 10px;
}
.dnx-idc-task-list .dnx-report-table tbody td {
  padding: 0 !important;
  border: 0 !important;
  font-size: 12px !important;
  color: #cbd5e1 !important;
  background: transparent !important;
}
.dnx-idc-task-list .dnx-report-table tbody td:first-child { grid-column: 1 / -1; color: #f8fafc !important; font-weight: 800 !important; }
.dnx-idc-task-list .dnx-report-table tbody td:last-child { display: flex; gap: 4px; justify-content: flex-end; }
.dnx-idc-task-list .dnx-empty-state {
  text-align: center;
  color: #64748b;
  padding: 16px 8px;
  font-size: 11px;
}

/* RESPONSIVE */
@media (max-width: 1200px) {
  .dnx-idc-layout-v259 { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .dnx-idc-actions-v259 { grid-column: 1 / -1; }
  .dnx-idc-task-grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .dnx-idc-revamp-v259 { padding: 16px 16px 24px; }
  .dnx-idc-commandbar-v259 { grid-template-columns: 1fr; }
  .dnx-idc-filterbar-v259 { grid-template-columns: 1fr 1fr; }
  .dnx-idc-layout-v259 { grid-template-columns: 1fr; }
  .dnx-idc-kpis-v259 { grid-template-columns: repeat(2, minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .dnx-idc-filterbar-v259 { grid-template-columns: 1fr; }
}

/* ======================================================================
   v2.0.0-phase25.10 — Settings Control Center (v2510)
   Marker classes Adam can grep for to confirm phase 25.10 is live:
     .dnx-settings-revamp-v2510
     .dnx-settings-header-v2510
     .dnx-settings-health-v2510
     .dnx-settings-layout-v2510
     .dnx-settings-side-nav-v2510
     .dnx-settings-workspace-v2510
     .dnx-settings-panel-v2510
     .dnx-settings-section-v2510
     .dnx-settings-grid-v2510
     .dnx-settings-table-v2510
     .dnx-settings-nav-item-v2510
     .dnx-settings-nav-search-v2510
     .dnx-settings-nav-collapse-v2510
   ====================================================================== */

.dnx-settings-revamp-v2510 {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  display: block;
  min-height: 100%;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-amber:  #fbbf24;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
}

/* Hide the legacy hero AND the now-decommissioned top tab nav rail
   inside the v2510 shell. The side-nav lives inside the layout. */
.dnx-settings-revamp-v2510 > .dnx-settings-hero { display: none !important; }
.dnx-settings-revamp-v2510 > .dnx-settings-tabs { display: none !important; }
.dnx-settings-revamp-v2510 > .dnx-settings-panels { display: none !important; }

/* HEADER */
.dnx-settings-header-v2510 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 16px; align-items: center;
  padding: 20px 22px;
  margin: 0 0 18px;
  border-radius: 20px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
  overflow: hidden;
}
.dnx-settings-header-v2510::before {
  content: ""; position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(148,163,184,0.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(148,163,184,0.06) 1px, transparent 1px);
  background-size: 36px 36px;
  mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse at 0% 0%, #000 0%, transparent 70%);
  pointer-events: none; opacity: 0.45;
}
.dnx-settings-header-copy { position: relative; z-index: 1; min-width: 0; }
.dnx-settings-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-settings-header-copy h1 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 22px; font-weight: 900;
  line-height: 1.2; letter-spacing: -0.02em;
}
.dnx-settings-header-copy p { margin: 0; color: #cbd5e1; font-size: 13px; max-width: 620px; }
.dnx-settings-header-actions { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 8px; }

/* Buttons */
.dnx-settings-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 800; font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-btn:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); transform: translateY(-1px); }
.dnx-settings-btn-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}
.dnx-settings-btn-primary:hover { filter: brightness(1.05); transform: translateY(-1px); }
.dnx-settings-btn-ghost { background: rgba(15,23,42,0.45); }

/* HEALTH STRIP */
.dnx-settings-health-v2510 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
  margin: 0 0 18px;
}
.dnx-settings-health-card {
  display: grid; gap: 2px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  padding: 10px 12px;
  color: #e2e8f0; font: inherit; text-align: left; cursor: pointer;
  transition: border-color .12s, transform .05s;
}
.dnx-settings-health-card:hover { border-color: rgba(56,189,248,0.55); transform: translateY(-1px); }
.dnx-settings-health-card span { color: #94a3b8; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.14em; }
.dnx-settings-health-card strong {
  color: #f8fafc; font-size: 18px; font-weight: 950; line-height: 1; margin: 2px 0;
  background: linear-gradient(135deg, #67e8f9, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-settings-health-card small { color: #94a3b8; font-size: 10px; font-weight: 800; }

/* MAIN LAYOUT — side-nav + workspace */
.dnx-settings-layout-v2510 {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
  margin: 0 0 18px;
}
.dnx-settings-revamp-v2510.dnx-settings-nav-collapsed .dnx-settings-layout-v2510 {
  grid-template-columns: 64px minmax(0, 1fr);
}

/* SIDE NAV */
.dnx-settings-side-nav-v2510 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 12px;
  position: sticky;
  top: 96px;
  display: flex; flex-direction: column;
  gap: 8px;
  max-height: calc(100vh - 120px);
  overflow: hidden;
}
.dnx-settings-side-head {
  display: flex; align-items: center; gap: 6px;
}
.dnx-settings-nav-search-v2510 {
  flex: 1 1 auto;
  background: rgba(2,6,23,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 9px;
  padding: 7px 10px;
  font-size: 12px;
  min-width: 0;
}
.dnx-settings-nav-search-v2510:focus { outline: 2px solid #38bdf8; outline-offset: -1px; border-color: rgba(56,189,248,0.55); }
.dnx-settings-nav-collapse-v2510 {
  width: 28px; height: 28px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #cbd5e1;
  border-radius: 8px;
  cursor: pointer;
  font-weight: 900;
  font-size: 14px;
  flex: 0 0 28px;
}
.dnx-settings-nav-collapse-v2510:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.08); }

/* Side nav button list — also has class .dnx-settings-tabs from the
   legacy switcher's selector. Hide its rail look here. */
.dnx-settings-side-nav-v2510 .dnx-settings-tabs {
  display: flex !important;
  flex-direction: column;
  gap: 4px;
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}
.dnx-settings-side-nav-v2510 .dnx-settings-tabs::-webkit-scrollbar { width: 0; height: 0; display: none; }

.dnx-settings-nav-item-v2510 {
  display: grid !important;
  grid-template-columns: 28px 1fr !important;
  align-items: center !important;
  gap: 10px !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  padding: 9px 11px !important;
  color: #cbd5e1 !important;
  font: inherit !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-align: left !important;
  cursor: pointer;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-nav-item-v2510:hover {
  background: rgba(56,189,248,0.08) !important;
  border-color: rgba(56,189,248,0.32) !important;
  color: #f8fafc !important;
}
.dnx-settings-nav-item-v2510.is-active {
  background: linear-gradient(180deg, rgba(56,189,248,0.14), rgba(167,139,250,0.08)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
  box-shadow: 0 0 0 1px rgba(56,189,248,0.25);
}
.dnx-settings-nav-mark {
  width: 24px; height: 24px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  color: #04060b; font-weight: 950; font-size: 11px;
  border-radius: 7px;
}
.dnx-settings-nav-label {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
/* Collapsed state: hide labels + search, show only marks. */
.dnx-settings-revamp-v2510.dnx-settings-nav-collapsed .dnx-settings-nav-search-v2510 { display: none; }
.dnx-settings-revamp-v2510.dnx-settings-nav-collapsed .dnx-settings-nav-label { display: none; }
.dnx-settings-revamp-v2510.dnx-settings-nav-collapsed .dnx-settings-nav-item-v2510 {
  grid-template-columns: 1fr !important;
  justify-items: center !important;
  padding: 9px !important;
}

/* WORKSPACE */
.dnx-settings-workspace-v2510 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.35));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 16px 18px;
  min-height: 480px;
}
.dnx-settings-workspace-v2510 .dnx-settings-panels {
  display: block !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
}
.dnx-settings-workspace-v2510 .dnx-settings-panel {
  display: none;
  padding: 0;
}
.dnx-settings-workspace-v2510 .dnx-settings-panel.is-active {
  display: block;
}

/* Dark glass treatment for any .dnx-card inside the workspace */
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-card {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  margin: 0 0 12px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-card-title {
  color: #f8fafc !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-card-subtitle {
  color: #94a3b8 !important;
  font-size: 11px !important;
}

/* KPI cards inside Overview tab */
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-kpi-card {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  border-radius: 12px !important;
  padding: 12px 14px !important;
  color: #e2e8f0 !important;
}
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-kpi-card span { color: #94a3b8 !important; font-size: 10px !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: 0.14em !important; }
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-kpi-card b { color: #f8fafc !important; font-size: 20px !important; font-weight: 950 !important; }
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-kpi-card small { color: #94a3b8 !important; font-size: 11px !important; }

/* Overview "Settings Sections" jump grid -> reformat as link cards. */
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-grid-3 .dnx-btn,
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 .dnx-grid-4 .dnx-btn,
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 #dnxSettingsOverviewLinks .dnx-btn {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: rgba(15,23,42,0.55) !important;
  border: 1px solid rgba(148,163,184,0.22) !important;
  color: #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 10px 12px !important;
  font-weight: 800 !important;
  font-size: 12px !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}
.dnx-settings-revamp-v2510 .dnx-settings-workspace-v2510 #dnxSettingsOverviewLinks .dnx-btn:hover {
  border-color: rgba(56,189,248,0.45) !important;
  background: rgba(56,189,248,0.08) !important;
}

/* RESPONSIVE */
@media (max-width: 1024px) {
  .dnx-settings-layout-v2510 { grid-template-columns: 220px minmax(0, 1fr); }
}
@media (max-width: 820px) {
  .dnx-settings-revamp-v2510 { padding: 16px 16px 24px; }
  .dnx-settings-header-v2510 { grid-template-columns: 1fr; padding: 16px; }
  .dnx-settings-header-copy h1 { font-size: 18px; }
  .dnx-settings-layout-v2510 { grid-template-columns: 1fr; }
  .dnx-settings-side-nav-v2510 {
    position: static; max-height: none;
  }
  .dnx-settings-side-nav-v2510 .dnx-settings-tabs {
    flex-direction: row !important;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 6px;
  }
  .dnx-settings-nav-item-v2510 {
    flex: 0 0 auto;
    grid-template-columns: 22px auto !important;
  }
  .dnx-settings-revamp-v2510 .dnx-settings-nav-collapsed { /* no-op on mobile */ }
}

/* ======================================================================
   v2.0.0-phase25.10.1 — Settings section router hotfix (v25101)
   Forces exactly ONE settings panel to be visible at any time, and adds
   the per-section subtab strip rendered by dnxRenderSettingsSubtabsV25101.
   Marker class on the shell: .dnx-settings-router-v25101
   ====================================================================== */

/* Hard kill any stacked-panel rendering. Even if dnxSettingsOpenTab
   hasn't fired yet, only .is-active panels are visible. */
.dnx-settings-router-v25101 .dnx-settings-panel { display: none !important; }
.dnx-settings-router-v25101 .dnx-settings-panel.is-active { display: block !important; }

/* Make the side-nav item's active state more obvious so the user can see
   which section is selected. The legacy class .dnx-settings-tab gets
   .is-active from the existing switcher. */
.dnx-settings-router-v25101 .dnx-settings-nav-item-v2510.is-active {
  background: linear-gradient(180deg, rgba(56,189,248,0.16), rgba(167,139,250,0.10)) !important;
  border-color: rgba(56,189,248,0.65) !important;
  color: #f8fafc !important;
  box-shadow: 0 0 0 1px rgba(56,189,248,0.30);
}
.dnx-settings-router-v25101 .dnx-settings-nav-item-v2510.is-active .dnx-settings-nav-mark {
  filter: brightness(1.15);
}

/* SUBTAB STRIP — appears only inside the active panel. */
.dnx-settings-subtabs-v25101 {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin: 0 0 14px;
  padding: 8px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
}
.dnx-settings-subtab-v25101 {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  color: #cbd5e1;
  border-radius: 9px;
  padding: 7px 11px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
  letter-spacing: 0.02em;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-subtab-v25101:hover {
  background: rgba(56,189,248,0.08);
  border-color: rgba(56,189,248,0.45);
  color: #f8fafc;
}
.dnx-settings-subtab-v25101.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14));
  border-color: rgba(56,189,248,0.55);
  color: #f8fafc;
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30);
}

/* Optional: if a section's panel content uses [data-subtab-pane="x"] children,
   hide non-matching panes when [data-active-subtab] is set. Sections that
   haven't been wired to subtab panes will simply show all their existing
   content regardless — the strip still functions as a visual filter cue. */
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab] [data-subtab-pane]:not([data-subtab-pane=""]) {
  display: none;
}
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="summary"]    [data-subtab-pane="summary"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="checklist"]  [data-subtab-pane="checklist"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="business"]   [data-subtab-pane="business"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="branding"]   [data-subtab-pane="branding"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="public"]     [data-subtab-pane="public"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="users"]      [data-subtab-pane="users"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="roles"]      [data-subtab-pane="roles"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="invites"]    [data-subtab-pane="invites"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="deactivated"][data-subtab-pane="deactivated"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="matrix"]     [data-subtab-pane="matrix"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="restrictions"] [data-subtab-pane="restrictions"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="voice"]      [data-subtab-pane="voice"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="tone"]       [data-subtab-pane="tone"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="address"]    [data-subtab-pane="address"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="rules"]      [data-subtab-pane="rules"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="test"]       [data-subtab-pane="test"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="objections"] [data-subtab-pane="objections"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="examples"]   [data-subtab-pane="examples"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="simulator"]  [data-subtab-pane="simulator"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="memory"]     [data-subtab-pane="memory"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="cleanup"]    [data-subtab-pane="cleanup"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="import"]     [data-subtab-pane="import"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="programs"]   [data-subtab-pane="programs"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="stips"]      [data-subtab-pane="stips"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="testfit"]    [data-subtab-pane="testfit"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="dealercenter"][data-subtab-pane="dealercenter"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="feeds"]      [data-subtab-pane="feeds"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="api"]        [data-subtab-pane="api"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="version"]    [data-subtab-pane="version"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="health"]     [data-subtab-pane="health"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="diagnostics"] [data-subtab-pane="diagnostics"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="recent"]     [data-subtab-pane="recent"],
.dnx-settings-router-v25101 .dnx-settings-panel[data-active-subtab="filters"]    [data-subtab-pane="filters"] {
  display: block;
}

/* If a panel has no [data-subtab-pane] children at all, show its body
   regardless of [data-active-subtab] so existing builders keep working. */
.dnx-settings-router-v25101 .dnx-settings-panel:not(:has([data-subtab-pane])) > :not(.dnx-settings-subtabs-v25101) {
  display: revert;
}

/* Section header (the existing card title styling already covers this, but
   keep the subtab strip visually attached to the section start.) */
.dnx-settings-router-v25101 .dnx-settings-section-header-v25101 {
  display: flex; align-items: center; gap: 12px;
  padding: 6px 4px 12px;
  border-bottom: 1px solid rgba(148,163,184,0.14);
  margin: 0 0 14px;
}
.dnx-settings-router-v25101 .dnx-settings-section-header-v25101 h2 {
  margin: 0; color: #f8fafc; font-size: 16px; font-weight: 900;
  letter-spacing: -0.01em;
}

/* Mobile: subtab strip wraps and scrolls horizontally if too wide. */
@media (max-width: 720px) {
  .dnx-settings-subtabs-v25101 {
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .dnx-settings-subtabs-v25101::-webkit-scrollbar { display: none; }
  .dnx-settings-subtab-v25101 { flex: 0 0 auto; }
}

/* ======================================================================
   v2.0.0-phase25.10.3 — Settings panel visible router fix (v25103)
   Phase 25.10.2's broad sibling-hide caused a blank Settings page.
   v25103 takes a completely different approach: clear #dnSettingsPage
   and build a fresh self-contained Control Center inside it. The old
   broad CSS hide rule is REMOVED on purpose — no
   #dnSettingsPage > :not(#dnSettingsCenter) selector here.
   ====================================================================== */
.dnx-settings-real-v25103 {
  display: block;
  padding: 22px 26px 32px;
  color: #e2e8f0;
  min-height: 480px;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-amber:  #fbbf24;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
}

/* Hidden bucket where we park legacy DOM that other JS still queries
   by ID (Add User modal, Training Center root, JS-injected panels). */
#dnxLegacySettingsBucket { display: none !important; }

/* Header */
.dnx-settings-real-v25103 .dnx-settings-header-v25103 {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) auto;
  gap: 16px; align-items: center;
  padding: 20px 22px;
  margin: 0 0 18px;
  border-radius: 20px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 18px 48px rgba(2,6,23,0.5);
  overflow: hidden;
}
.dnx-settings-real-v25103 .dnx-settings-header-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-settings-real-v25103 .dnx-settings-header-v25103 h1 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 22px; font-weight: 900;
  line-height: 1.2; letter-spacing: -0.02em;
}
.dnx-settings-real-v25103 .dnx-settings-header-v25103 p {
  margin: 0; color: #cbd5e1; font-size: 13px; max-width: 620px;
}
.dnx-settings-real-v25103 .dnx-settings-header-actions {
  display: flex; flex-wrap: wrap; gap: 8px;
}
.dnx-settings-real-v25103 .dnx-settings-btn-v25103 {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font-weight: 800; font-size: 13px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-real-v25103 .dnx-settings-btn-v25103:hover {
  border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); transform: translateY(-1px);
}
.dnx-settings-real-v25103 .dnx-settings-btn-v25103.dnx-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}

/* Health strip */
.dnx-settings-real-v25103 .dnx-settings-health-v25103 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
  margin: 0 0 18px;
}
.dnx-settings-real-v25103 .dnx-settings-health-card-v25103 {
  display: grid; gap: 2px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  padding: 10px 12px;
  color: #e2e8f0; font: inherit; text-align: left; cursor: pointer;
  transition: border-color .12s, transform .05s;
}
.dnx-settings-real-v25103 .dnx-settings-health-card-v25103:hover {
  border-color: rgba(56,189,248,0.55); transform: translateY(-1px);
}
.dnx-settings-real-v25103 .dnx-settings-health-card-v25103 span {
  color: #94a3b8; font-size: 10px; font-weight: 900; text-transform: uppercase; letter-spacing: 0.14em;
}
.dnx-settings-real-v25103 .dnx-settings-health-card-v25103 strong {
  font-size: 18px; font-weight: 950; line-height: 1; margin: 2px 0;
  background: linear-gradient(135deg, #67e8f9, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-settings-real-v25103 .dnx-settings-health-card-v25103 small {
  color: #94a3b8; font-size: 10px; font-weight: 800;
}

/* Shell: sidebar + workspace */
.dnx-settings-real-v25103 .dnx-settings-shell-v25103 {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}
.dnx-settings-real-v25103 .dnx-settings-sidebar-v25103 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  padding: 12px;
  position: sticky;
  top: 96px;
  display: flex; flex-direction: column;
  gap: 4px;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.dnx-settings-real-v25103 .dnx-settings-sidebar-v25103::-webkit-scrollbar { width: 0; display: none; }
.dnx-settings-navitem-v25103 {
  display: grid !important;
  grid-template-columns: 28px 1fr;
  align-items: center;
  gap: 10px;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  padding: 9px 11px;
  color: #cbd5e1;
  font: inherit; font-size: 13px; font-weight: 800;
  text-align: left;
  cursor: pointer;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-navitem-v25103:hover {
  background: rgba(56,189,248,0.08);
  border-color: rgba(56,189,248,0.32);
  color: #f8fafc;
}
.dnx-settings-navitem-v25103.is-active {
  background: linear-gradient(180deg, rgba(56,189,248,0.16), rgba(167,139,250,0.10));
  border-color: rgba(56,189,248,0.55);
  color: #f8fafc;
  box-shadow: 0 0 0 1px rgba(56,189,248,0.25);
}
.dnx-settings-navitem-v25103 .dnx-settings-navmark {
  width: 24px; height: 24px;
  display: inline-flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  color: #04060b; font-weight: 950; font-size: 11px;
  border-radius: 7px;
}

/* Workspace */
.dnx-settings-real-v25103 .dnx-settings-workspace-v25103 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.35));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 18px 20px;
  min-height: 480px;
}
.dnx-settings-real-v25103 .dnx-settings-section-title-v25103 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 18px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-settings-real-v25103 .dnx-settings-section-sub-v25103 {
  margin: 0 0 14px;
  color: #94a3b8;
  font-size: 12px; font-weight: 800; letter-spacing: 0.04em;
}

/* Subtabs */
.dnx-settings-subtabs-v25103 {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin: 0 0 14px;
  padding: 6px;
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
}
.dnx-settings-subtab-v25103 {
  background: transparent;
  border: 1px solid transparent;
  color: #cbd5e1;
  border-radius: 8px;
  padding: 6px 10px;
  font-weight: 800;
  font-size: 12px;
  cursor: pointer;
}
.dnx-settings-subtab-v25103:hover {
  background: rgba(56,189,248,0.08);
  border-color: rgba(56,189,248,0.32);
  color: #f8fafc;
}
.dnx-settings-subtab-v25103.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14));
  border-color: rgba(56,189,248,0.55);
  color: #f8fafc;
}

/* Cards */
.dnx-settings-card-v25103 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin: 0 0 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-settings-card-v25103 h3 {
  margin: 0 0 4px;
  color: #f8fafc;
  font-size: 14px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.08em;
}
.dnx-settings-card-v25103 p {
  margin: 0 0 10px;
  color: #cbd5e1;
  font-size: 13px;
  line-height: 1.5;
}
.dnx-settings-card-v25103 .dnx-settings-actionrow {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin-top: 8px;
}

/* Error card */
.dnx-settings-error-v25103 {
  background: linear-gradient(180deg, rgba(248,113,113,0.06), rgba(2,6,23,0.55));
  border: 1px solid rgba(248,113,113,0.32);
  border-radius: 14px;
  padding: 14px 16px;
  color: #e2e8f0;
}
.dnx-settings-error-v25103 strong {
  display: block;
  color: #fca5a5;
  font-size: 14px;
  margin-bottom: 6px;
}
.dnx-settings-error-v25103 small {
  display: block;
  color: #94a3b8;
  font-size: 12px;
  margin-bottom: 10px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
}

/* Responsive */
@media (max-width: 1024px) {
  .dnx-settings-real-v25103 .dnx-settings-shell-v25103 {
    grid-template-columns: 220px minmax(0, 1fr);
  }
}
/* ======================================================================
   v2.0.0-phase25.10.4 — Stable Settings subtabs hotfix (v25104)
   The v25103 wipe-and-bucket IIFE was disabled (early-return) because
   it raced with the legacy dnxSettingsInit flow and blanked the page on
   repeated Settings clicks. The stable legacy flow now owns Settings;
   this layer adds:
     - Hide the static .dn-admin-settings parent block + side-toggle so
       only the new #dnSettingsCenter shell shows.
     - Restyle the existing side-nav tabs as a SUBTAB BAR under the
       Settings header (no left-sidebar layout per Adam's directive).
     - Keep all v2510/v25101 panel-show-only-active behavior intact.
   ====================================================================== */

/* Hide legacy static block ONLY when the new shell is on the page. */
#dnSettingsPage.dnx-settings-active > .dn-admin-settings { display: none !important; }
#dnSettingsPage.dnx-settings-active > .dn-admin-settings-side-toggle { display: none !important; }

/* Convert the side-nav layout into a header-stacked subtab layout. */
.dnx-settings-stable-v25104 .dnx-settings-layout-v2510 {
  grid-template-columns: 1fr !important;
}
.dnx-settings-stable-v25104 .dnx-settings-sidebar-v25103,
.dnx-settings-stable-v25104 .dnx-settings-side-nav-v2510 {
  position: static !important;
  max-height: none !important;
  width: 100% !important;
  display: block !important;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30)) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  border-radius: 12px !important;
  padding: 8px !important;
  margin: 0 0 14px !important;
}
.dnx-settings-stable-v25104 .dnx-settings-side-head {
  display: flex !important;
  align-items: center;
  gap: 8px;
  padding: 0 0 6px;
  margin: 0 0 6px;
  border-bottom: 1px solid rgba(148,163,184,0.14);
}
.dnx-settings-stable-v25104 .dnx-settings-tabs {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap;
  gap: 6px !important;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.dnx-settings-stable-v25104 .dnx-settings-tabs::-webkit-scrollbar { display: none; }

/* Each tab pill — compact subtab look under the header. */
.dnx-settings-stable-v25104 .dnx-settings-nav-item-v2510,
.dnx-settings-stable-v25104 .dnx-settings-tab {
  display: inline-flex !important;
  grid-template-columns: none !important;
  align-items: center !important;
  gap: 7px !important;
  flex: 0 0 auto !important;
  background: rgba(2,6,23,0.45) !important;
  border: 1px solid rgba(148,163,184,0.18) !important;
  color: #cbd5e1 !important;
  border-radius: 9px !important;
  padding: 8px 12px !important;
  font: inherit !important;
  font-size: 12.5px !important;
  font-weight: 800 !important;
  text-align: left !important;
  cursor: pointer;
  transition: background .12s, border-color .12s, color .12s;
  white-space: nowrap;
}
.dnx-settings-stable-v25104 .dnx-settings-nav-item-v2510:hover,
.dnx-settings-stable-v25104 .dnx-settings-tab:hover {
  background: rgba(56,189,248,0.10) !important;
  border-color: rgba(56,189,248,0.45) !important;
  color: #f8fafc !important;
}
.dnx-settings-stable-v25104 .dnx-settings-nav-item-v2510.is-active,
.dnx-settings-stable-v25104 .dnx-settings-tab.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
  box-shadow: 0 0 0 1px rgba(56,189,248,0.25);
}
.dnx-settings-stable-v25104 .dnx-settings-nav-mark {
  width: 18px !important;
  height: 18px !important;
  font-size: 10px !important;
  border-radius: 5px !important;
}
/* Collapse-toggle is irrelevant for the horizontal subtab strip — hide it. */
.dnx-settings-stable-v25104 .dnx-settings-nav-collapse-v2510 { display: none !important; }
.dnx-settings-stable-v25104 .dnx-settings-nav-search-v2510 {
  flex: 1 1 220px;
  min-width: 0;
  font-size: 12px;
  padding: 6px 9px;
}

/* Workspace takes full width in subtab mode. */
.dnx-settings-stable-v25104 .dnx-settings-workspace-v2510 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30)) !important;
  border: 1px solid rgba(148,163,184,0.16) !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  min-height: 480px;
}

/* Belt-and-suspenders: keep the one-panel-only behavior inside v25104. */
.dnx-settings-stable-v25104 .dnx-settings-panel { display: none !important; }
.dnx-settings-stable-v25104 .dnx-settings-panel.is-active { display: block !important; }

/* Hide the old v25103 dead-code styles that no longer apply (no v25103
   shell is mounted anymore). Defensive — costs nothing. */
.dnx-settings-real-v25103 { display: revert; }

@media (max-width: 820px) {
  .dnx-settings-real-v25103 { padding: 16px 16px 24px; }
  .dnx-settings-real-v25103 .dnx-settings-header-v25103 {
    grid-template-columns: 1fr; padding: 16px;
  }
  .dnx-settings-real-v25103 .dnx-settings-shell-v25103 {
    grid-template-columns: 1fr;
  }
  .dnx-settings-real-v25103 .dnx-settings-sidebar-v25103 {
    position: static; max-height: none;
    flex-direction: row; overflow-x: auto;
  }
  .dnx-settings-navitem-v25103 {
    flex: 0 0 auto;
    grid-template-columns: 22px auto;
  }
}














/* ======================================================================
   v2.0.0-phase25.10.5 — Settings Mode (back-arrow overlay, v25105)
   When body has .dnx-settings-mode-active-v25105 we:
     - Hide the legacy Settings shell (#dnSettingsCenter) and the static
       .dn-admin-settings block so they don't show through.
     - Hide common page action bars/toolbars so the screen feels like a
       dedicated Settings Mode (NOT the sidebar or topbar — those stay).
     - Show the v25105 overlay (#dnSettingsModeV25105) which lives inside
       #dnSettingsPage as the last child.
   No broad sibling :not() rules. No buckets. No wipes.
   ====================================================================== */

/* Hide the legacy Settings shell only when Settings Mode is active. */
body.dnx-settings-mode-active-v25105 #dnSettingsCenter { display: none !important; }
body.dnx-settings-mode-active-v25105 #dnSettingsPage > .dn-admin-settings { display: none !important; }
body.dnx-settings-mode-active-v25105 #dnSettingsPage > .dn-admin-settings-side-toggle { display: none !important; }

/* Hide common page-level toolbars/action bars while in Settings Mode. */
body.dnx-settings-mode-active-v25105 .dnx-toolbar,
body.dnx-settings-mode-active-v25105 .dnx-action-bar,
body.dnx-settings-mode-active-v25105 .dnx-page-actions,
body.dnx-settings-mode-active-v25105 .dn-page-toolbar,
body.dnx-settings-mode-active-v25105 .dn-main-toolbar { display: none !important; }

/* Make sure the overlay itself is visible. */
.dnx-settings-mode-v25105 {
  display: block;
  padding: 22px 26px 32px;
  color: #e2e8f0;
  min-height: 480px;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
}

/* Header */
.dnx-settings-mode-header-v25105 {
  display: flex; align-items: center; gap: 16px;
  padding: 18px 20px;
  margin: 0 0 16px;
  border-radius: 18px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 14px 38px rgba(2,6,23,0.5);
}
.dnx-settings-mode-header-v25105 .dnx-settings-mode-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-settings-mode-header-v25105 h1 {
  margin: 0;
  color: #f8fafc;
  font-size: 20px; font-weight: 900;
  line-height: 1.25; letter-spacing: -0.01em;
}
.dnx-settings-mode-title-v25105 { flex: 1 1 auto; min-width: 0; }

/* Back arrow */
.dnx-settings-back-v25105 {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.32);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font: inherit; font-size: 13px; font-weight: 800;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-back-v25105:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateX(-2px);
}
.dnx-settings-back-v25105 .dnx-settings-back-arrow {
  font-size: 18px; line-height: 1; font-weight: 900;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}

/* Tabs strip */
.dnx-settings-tabs-v25105 {
  display: flex; gap: 6px; flex-wrap: wrap;
  padding: 8px;
  margin: 0 0 16px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.dnx-settings-tabs-v25105::-webkit-scrollbar { display: none; }
.dnx-settings-tab-v25105 {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  color: #cbd5e1;
  border-radius: 9px;
  padding: 8px 13px;
  font: inherit;
  font-size: 12.5px; font-weight: 800;
  cursor: pointer;
  white-space: nowrap;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-tab-v25105:hover {
  background: rgba(56,189,248,0.10);
  border-color: rgba(56,189,248,0.45);
  color: #f8fafc;
}
.dnx-settings-tab-active-v25105 {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30);
}

/* Content area + cards */
.dnx-settings-content-v25105 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 18px 20px;
  min-height: 400px;
}
.dnx-settings-card-v25105 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin: 0 0 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-settings-card-v25105 h3 {
  margin: 0 0 6px;
  color: #f8fafc;
  font-size: 14px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.08em;
}
.dnx-settings-card-v25105 p {
  margin: 0 0 10px;
  color: #cbd5e1;
  font-size: 13px; line-height: 1.55;
}
.dnx-settings-actions-v25105 {
  display: flex; flex-wrap: wrap; gap: 8px;
  margin-top: 8px;
}
.dnx-settings-btn-v25105 {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 10px;
  padding: 9px 14px;
  font-weight: 800; font-size: 12.5px;
  cursor: pointer; text-decoration: none;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-btn-v25105:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateY(-1px);
}
.dnx-settings-btn-v25105.dnx-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}

/* Error state */
.dnx-settings-error-v25105 {
  background: linear-gradient(180deg, rgba(248,113,113,0.06), rgba(2,6,23,0.55));
  border: 1px solid rgba(248,113,113,0.32);
  border-radius: 14px;
  padding: 14px 16px;
  color: #e2e8f0;
  margin: 12px 0;
}
.dnx-settings-error-v25105 strong { display: block; color: #fca5a5; font-size: 14px; margin-bottom: 6px; }
.dnx-settings-error-v25105 small { display: block; color: #94a3b8; font-size: 12px; margin-bottom: 10px; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; }

/* Responsive */
@media (max-width: 820px) {
  .dnx-settings-mode-v25105 { padding: 14px 14px 22px; }
  .dnx-settings-mode-header-v25105 { padding: 14px; flex-wrap: wrap; }
  .dnx-settings-mode-header-v25105 h1 { font-size: 16px; }
  .dnx-settings-tabs-v25105 { flex-wrap: nowrap; }
}

/* ======================================================================
   v2.0.0-phase25.10.6 — Settings clean hard-replace (v25106)
   #dnSettingsPage is fully wiped and replaced with one clean root.
   No broad sibling rules. No buckets. Just one visible Settings screen.
   ====================================================================== */
.dnx-settings-clean-v25106 {
  display: block;
  padding: 22px 26px 32px;
  color: #e2e8f0;
  min-height: 520px;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
}

/* Header */
.dnx-settings-clean-header-v25106 {
  display: flex; align-items: center; gap: 14px;
  padding: 18px 20px;
  margin: 0 0 16px;
  border-radius: 18px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 14px 38px rgba(2,6,23,0.5);
}
.dnx-settings-clean-title-v25106 { flex: 1 1 auto; min-width: 0; }
.dnx-settings-clean-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-settings-clean-header-v25106 h1 {
  margin: 0;
  color: #f8fafc;
  font-size: 18px; font-weight: 900; line-height: 1.3; letter-spacing: -0.01em;
}
.dnx-settings-clean-head-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Back button */
.dnx-settings-clean-back-v25106 {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.32);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font: inherit; font-size: 13px; font-weight: 800;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-clean-back-v25106:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateX(-2px);
}
.dnx-settings-clean-back-arrow {
  font-size: 18px; line-height: 1; font-weight: 900;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}

/* Tab strip */
.dnx-settings-clean-tabs-v25106 {
  display: flex; gap: 6px; flex-wrap: wrap;
  padding: 8px;
  margin: 0 0 16px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.dnx-settings-clean-tabs-v25106::-webkit-scrollbar { display: none; }
.dnx-settings-clean-tab-v25106 {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  color: #cbd5e1;
  border-radius: 9px;
  padding: 8px 13px;
  font: inherit; font-size: 12.5px; font-weight: 800;
  cursor: pointer; white-space: nowrap;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-clean-tab-v25106:hover {
  background: rgba(56,189,248,0.10);
  border-color: rgba(56,189,248,0.45);
  color: #f8fafc;
}
.dnx-settings-clean-tab-v25106.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30);
}

/* Content */
.dnx-settings-clean-content-v25106 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 18px 20px;
  min-height: 360px;
}
.dnx-settings-clean-grid-v25106 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.dnx-settings-clean-card-v25106 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin: 0 0 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-settings-clean-grid-v25106 > .dnx-settings-clean-card-v25106 { margin: 0; }
.dnx-settings-clean-card-v25106 h3 {
  margin: 0 0 6px;
  color: #f8fafc;
  font-size: 13px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.08em;
}
.dnx-settings-clean-card-v25106 p {
  margin: 0 0 10px;
  color: #cbd5e1;
  font-size: 13px; line-height: 1.55;
}
.dnx-settings-clean-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.dnx-settings-clean-btn-v25106 {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 10px;
  padding: 9px 14px;
  font-weight: 800; font-size: 12.5px;
  cursor: pointer; text-decoration: none;
  transition: border-color .15s, background .15s, transform .05s;
  display: inline-flex; align-items: center;
}
.dnx-settings-clean-btn-v25106:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateY(-1px);
}
.dnx-settings-clean-btn-v25106.dnx-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}

/* Responsive */
@media (max-width: 820px) {
  .dnx-settings-clean-v25106 { padding: 14px 14px 22px; }
  .dnx-settings-clean-header-v25106 { padding: 14px; flex-wrap: wrap; }
  .dnx-settings-clean-header-v25106 h1 { font-size: 15px; }
  .dnx-settings-clean-tabs-v25106 { flex-wrap: nowrap; }
}

/* ======================================================================
   v2.0.0-phase25.10.7 — Settings clean clickable wiring (v25107)
   Alias v25107 to v25106 styles so the visual is identical; plus
   explicit pointer-events:auto on buttons to defeat any conflicting
   overlay. The .dnx-settings-clean-v25107 marker class is required
   for live verification.
   ====================================================================== */
.dnx-settings-clean-v25107 {
  display: block;
  padding: 22px 26px 32px;
  color: #e2e8f0;
  min-height: 520px;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
}

/* Header */
.dnx-settings-clean-header-v25107 {
  display: flex; align-items: center; gap: 14px;
  padding: 18px 20px;
  margin: 0 0 16px;
  border-radius: 18px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 14px 38px rgba(2,6,23,0.5);
}
.dnx-settings-clean-title-v25107 { flex: 1 1 auto; min-width: 0; }
.dnx-settings-clean-v25107 .dnx-settings-clean-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-settings-clean-header-v25107 h1 {
  margin: 0;
  color: #f8fafc;
  font-size: 18px; font-weight: 900; line-height: 1.3; letter-spacing: -0.01em;
}
.dnx-settings-clean-head-actions { display: flex; gap: 8px; flex-wrap: wrap; }

/* Back button */
.dnx-settings-clean-back-v25107 {
  display: inline-flex; align-items: center; gap: 6px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.32);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font: inherit; font-size: 13px; font-weight: 800;
  cursor: pointer;
  pointer-events: auto !important;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-clean-back-v25107:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateX(-2px);
}
.dnx-settings-clean-v25107 .dnx-settings-clean-back-arrow {
  font-size: 18px; line-height: 1; font-weight: 900;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}

/* Tab strip */
.dnx-settings-clean-tabs-v25107 {
  display: flex; gap: 6px; flex-wrap: wrap;
  padding: 8px;
  margin: 0 0 16px;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  overflow-x: auto;
  scrollbar-width: none;
}
.dnx-settings-clean-tabs-v25107::-webkit-scrollbar { display: none; }
.dnx-settings-clean-tab-v25107 {
  background: rgba(2,6,23,0.45);
  border: 1px solid rgba(148,163,184,0.18);
  color: #cbd5e1;
  border-radius: 9px;
  padding: 8px 13px;
  font: inherit; font-size: 12.5px; font-weight: 800;
  cursor: pointer; white-space: nowrap;
  pointer-events: auto !important;
  transition: background .12s, border-color .12s, color .12s;
}
.dnx-settings-clean-tab-v25107:hover {
  background: rgba(56,189,248,0.10);
  border-color: rgba(56,189,248,0.45);
  color: #f8fafc;
}
.dnx-settings-clean-tab-v25107.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.18), rgba(167,139,250,0.14)) !important;
  border-color: rgba(56,189,248,0.55) !important;
  color: #f8fafc !important;
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30);
}

/* Content */
.dnx-settings-clean-content-v25107 {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 18px 20px;
  min-height: 360px;
}
.dnx-settings-clean-grid-v25107 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}
.dnx-settings-clean-card-v25107 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 14px;
  padding: 14px 16px;
  margin: 0 0 12px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 6px 18px rgba(2,6,23,0.32);
}
.dnx-settings-clean-grid-v25107 > .dnx-settings-clean-card-v25107 { margin: 0; }
.dnx-settings-clean-card-v25107 h3 {
  margin: 0 0 6px;
  color: #f8fafc;
  font-size: 13px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.08em;
}
.dnx-settings-clean-card-v25107 p {
  margin: 0 0 10px;
  color: #cbd5e1;
  font-size: 13px; line-height: 1.55;
}
.dnx-settings-clean-v25107 .dnx-settings-clean-actions {
  display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px;
}
.dnx-settings-clean-btn-v25107 {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 10px;
  padding: 9px 14px;
  font-weight: 800; font-size: 12.5px;
  cursor: pointer; text-decoration: none;
  pointer-events: auto !important;
  display: inline-flex; align-items: center;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-settings-clean-btn-v25107:hover {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateY(-1px);
}
.dnx-settings-clean-btn-v25107.dnx-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}

@media (max-width: 820px) {
  .dnx-settings-clean-v25107 { padding: 14px 14px 22px; }
  .dnx-settings-clean-header-v25107 { padding: 14px; flex-wrap: wrap; }
  .dnx-settings-clean-header-v25107 h1 { font-size: 15px; }
  .dnx-settings-clean-tabs-v25107 { flex-wrap: nowrap; }
}

/* ======================================================================
   v2.0.0-phase25.11 — Nexus Photo (AI dealership photo enhancer)
   Dark glass SaaS layout matching DealerNexus theme.
   ====================================================================== */
.dnx-nx-page {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  min-height: 520px;
  --dnx-cyan:   #4ee0ff;
  --dnx-blue:   #7da5ff;
  --dnx-purple: #a78bfa;
  --dnx-green:  #4ade80;
  --dnx-red:    #fca5a5;
  --dnx-amber:  #fbbf24;
}
.dnx-nx-header {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: 14px;
  padding: 18px 20px;
  margin: 0 0 16px;
  border-radius: 18px;
  background:
    radial-gradient(60% 80% at 0% 0%,  rgba(78,224,255,0.18), transparent 70%),
    radial-gradient(70% 90% at 100% 100%, rgba(167,139,250,0.18), transparent 70%),
    linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.62));
  border: 1px solid rgba(56,189,248,0.32);
  box-shadow: 0 14px 38px rgba(2,6,23,0.5);
}
.dnx-nx-titlewrap { min-width: 0; }
.dnx-nx-eyebrow {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 4px;
}
.dnx-nx-title {
  margin: 0;
  color: #f8fafc;
  font-size: 24px; font-weight: 900; letter-spacing: -0.02em;
}
.dnx-nx-subtitle { margin: 4px 0 0; color: #94a3b8; font-size: 13px; font-weight: 800; }
.dnx-nx-headact { display: flex; flex-wrap: wrap; gap: 8px; }

.dnx-nx-btn {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #e2e8f0;
  border-radius: 11px;
  padding: 9px 14px;
  font: inherit; font-size: 13px; font-weight: 800;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s, opacity .15s;
  display: inline-flex; align-items: center; gap: 6px;
}
.dnx-nx-btn:hover:not([disabled]) {
  border-color: rgba(56,189,248,0.55);
  background: rgba(56,189,248,0.10);
  transform: translateY(-1px);
}
.dnx-nx-btn[disabled] { opacity: 0.45; cursor: not-allowed; }
.dnx-nx-btn-primary {
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-blue), var(--dnx-purple));
  color: #04060b; border: 0; font-weight: 900;
}
.dnx-nx-btn-success {
  background: linear-gradient(135deg, #34d399, var(--dnx-green));
  color: #04060b; border: 0; font-weight: 900;
}
.dnx-nx-btn-ghost { background: rgba(15,23,42,0.40); }

/* Drop zone */
.dnx-nx-drop {
  display: grid; place-items: center; gap: 8px;
  text-align: center;
  padding: 32px 22px;
  margin: 0 0 16px;
  border-radius: 18px;
  background:
    linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 2px dashed rgba(148,163,184,0.32);
  transition: border-color .15s, background .15s, transform .05s;
  cursor: pointer;
}
.dnx-nx-drop:hover, .dnx-nx-drop:focus {
  border-color: rgba(56,189,248,0.55);
  outline: none;
}
.dnx-nx-drop.is-over {
  border-color: var(--dnx-cyan);
  background: linear-gradient(180deg, rgba(56,189,248,0.10), rgba(167,139,250,0.06));
}
.dnx-nx-drop-icon {
  font-size: 36px; font-weight: 900; line-height: 1;
  background: linear-gradient(135deg, var(--dnx-cyan), var(--dnx-purple));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-nx-drop-headline { font-size: 16px; font-weight: 900; color: #f8fafc; }
.dnx-nx-drop-sub { font-size: 12px; color: #94a3b8; font-weight: 800; }

/* Queue */
.dnx-nx-queue-wrap, .dnx-nx-log-wrap {
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.16);
  border-radius: 16px;
  padding: 14px 16px;
  margin: 0 0 16px;
}
.dnx-nx-queue-head {
  display: flex; align-items: baseline; gap: 12px;
  margin: 0 0 10px;
}
.dnx-nx-queue-head h2 {
  margin: 0; color: #f8fafc;
  font-size: 13px; font-weight: 900;
  text-transform: uppercase; letter-spacing: 0.18em;
}
.dnx-nx-queue-head small { color: #94a3b8; font-size: 11px; font-weight: 800; }

.dnx-nx-queue { display: grid; gap: 8px; }
.dnx-nx-queue-empty {
  text-align: center;
  padding: 22px 12px;
  border: 1px dashed rgba(148,163,184,0.22);
  border-radius: 12px;
  color: #94a3b8;
  font-size: 12px;
  font-weight: 800;
}
.dnx-nx-row {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) auto;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
}
.dnx-nx-row-thumb {
  width: 56px; height: 56px;
  object-fit: cover;
  border-radius: 8px;
  background: rgba(2,6,23,0.65);
  border: 1px solid rgba(148,163,184,0.18);
}
.dnx-nx-row-meta { min-width: 0; }
.dnx-nx-row-name {
  color: #f8fafc;
  font-size: 13px; font-weight: 900;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.dnx-nx-row-sub { color: #94a3b8; font-size: 11px; font-weight: 800; margin-top: 2px; }
.dnx-nx-status-pending    { color: #94a3b8; }
.dnx-nx-status-processing { color: var(--dnx-cyan); }
.dnx-nx-status-done       { color: var(--dnx-green); }
.dnx-nx-status-error      { color: var(--dnx-red); }

.dnx-nx-progress {
  margin-top: 6px;
  height: 4px; border-radius: 999px;
  background: rgba(148,163,184,0.18);
  overflow: hidden;
}
.dnx-nx-progress-bar {
  height: 100%; width: 50%;
  background: linear-gradient(90deg, var(--dnx-cyan), var(--dnx-purple));
  animation: dnxNxPulse 1.2s ease-in-out infinite;
}
@keyframes dnxNxPulse {
  0%   { width: 8%;  margin-left: 0%; }
  50%  { width: 65%; margin-left: 18%; }
  100% { width: 8%;  margin-left: 100%; }
}

.dnx-nx-row-actions { display: inline-flex; align-items: center; gap: 8px; }
.dnx-nx-row-link {
  background: rgba(56,189,248,0.12);
  color: #bae6fd;
  border: 1px solid rgba(56,189,248,0.32);
  border-radius: 9px;
  padding: 6px 10px;
  font-size: 11px; font-weight: 900;
  text-decoration: none;
}
.dnx-nx-row-link:hover { background: rgba(56,189,248,0.18); }
.dnx-nx-row-x {
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.22);
  color: #cbd5e1;
  border-radius: 9px;
  width: 28px; height: 28px;
  font-size: 12px; font-weight: 900;
  cursor: pointer;
}
.dnx-nx-row-x:hover { border-color: rgba(248,113,113,0.45); background: rgba(248,113,113,0.10); color: #fca5a5; }

/* Log */
.dnx-nx-log {
  max-height: 240px; overflow-y: auto;
  background: rgba(2,6,23,0.55);
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 10px;
  padding: 10px 12px;
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: 11.5px;
  color: #cbd5e1;
}
.dnx-nx-log-line { padding: 2px 0; }
.dnx-nx-log-info  { color: #cbd5e1; }
.dnx-nx-log-good  { color: var(--dnx-green); }
.dnx-nx-log-error { color: var(--dnx-red); }

@media (max-width: 720px) {
  .dnx-nx-page { padding: 14px 14px 24px; }
  .dnx-nx-header { padding: 14px; }
  .dnx-nx-row { grid-template-columns: 48px 1fr; }
  .dnx-nx-row-actions { grid-column: 1 / -1; justify-content: flex-end; padding-top: 6px; border-top: 1px solid rgba(148,163,184,0.12); }
}

/* ======================================================================
   v2.0.0-phase25.11.1 — Nexus Photo strict mode controls
   ====================================================================== */
.dnx-nx-warn-v25111 {
  background: linear-gradient(180deg, rgba(251,191,36,0.10), rgba(2,6,23,0.55));
  border: 1px solid rgba(251,191,36,0.32);
  border-left: 3px solid #fbbf24;
  color: #fde68a;
  border-radius: 12px;
  padding: 12px 14px;
  margin: 0 0 14px;
  font-size: 12.5px;
  line-height: 1.5;
}
.dnx-nx-warn-v25111 strong { color: #fbbf24; }
.dnx-nx-warn-v25111 em { color: #f8fafc; font-style: normal; font-weight: 900; }

.dnx-nx-controls-v25111 {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px;
  align-items: stretch;
  margin: 0 0 14px;
}
.dnx-nx-toggle-v25111 {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 12px;
  color: #e2e8f0;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  min-width: 260px;
}
.dnx-nx-toggle-v25111 input[type="checkbox"] {
  width: 16px; height: 16px;
  accent-color: #4ee0ff;
  cursor: pointer;
}
.dnx-nx-toggle-v25111 > span {
  display: flex; flex-direction: column; gap: 2px; min-width: 0;
}
.dnx-nx-toggle-v25111 > span strong {
  color: #f8fafc; font-size: 13px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-nx-toggle-v25111 > span small {
  color: #94a3b8; font-size: 11px; font-weight: 800; line-height: 1.4;
}

.dnx-nx-modepick-v25111 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}
.dnx-nx-mode-v25111 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px; align-items: center;
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  border: 1px solid rgba(148,163,184,0.22);
  border-radius: 12px;
  padding: 12px 14px;
  cursor: pointer;
  transition: border-color .15s, background .15s, transform .05s;
}
.dnx-nx-mode-v25111:hover {
  border-color: rgba(56,189,248,0.45);
  transform: translateY(-1px);
}
.dnx-nx-mode-v25111.is-active {
  background: linear-gradient(135deg, rgba(78,224,255,0.14), rgba(167,139,250,0.10));
  border-color: rgba(56,189,248,0.55);
  box-shadow: inset 0 0 0 1px rgba(56,189,248,0.30);
}
.dnx-nx-mode-v25111 input[type="radio"] {
  width: 16px; height: 16px;
  accent-color: #4ee0ff;
  cursor: pointer;
}
.dnx-nx-mode-v25111 span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dnx-nx-mode-v25111 strong { color: #f8fafc; font-size: 13px; font-weight: 900; letter-spacing: -0.01em; }
.dnx-nx-mode-v25111 small  { color: #94a3b8; font-size: 11px; font-weight: 800; }

@media (max-width: 820px) {
  .dnx-nx-controls-v25111 { grid-template-columns: 1fr; }
  .dnx-nx-modepick-v25111 { grid-template-columns: 1fr; }
}

/* ───────────────────────── Nexus Photo · v25.11.3 ───────────────────────── */
/* Auto One-by-One settings grid, per-row chips, side-by-side preview. */

.dnx-nx-settings-v25113 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  padding: 14px;
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 16px;
  background: linear-gradient(180deg, rgba(56,189,248,0.05), rgba(15,23,42,0.55));
  margin-bottom: 16px;
}
.dnx-nx-setting-v25113 {
  display: grid;
  grid-template-columns: 22px 1fr;
  align-items: start;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 12px;
  background: rgba(15,23,42,0.45);
  cursor: pointer;
  transition: border-color 120ms ease, background 120ms ease;
}
.dnx-nx-setting-v25113:hover { border-color: rgba(56,189,248,0.45); background: rgba(15,23,42,0.62); }
.dnx-nx-setting-v25113 input[type="checkbox"] {
  width: 18px; height: 18px; margin-top: 2px;
  accent-color: #38bdf8;
}
.dnx-nx-setting-v25113 > span { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dnx-nx-setting-v25113 > span strong { color: #f8fafc; font-size: 13px; font-weight: 900; letter-spacing: -0.01em; }
.dnx-nx-setting-v25113 > span small  { color: #94a3b8; font-size: 11px; font-weight: 800; line-height: 1.35; }

.dnx-nx-row-chips {
  display: inline-flex; flex-wrap: wrap; gap: 6px; margin: 4px 0 2px;
}
.dnx-nx-chip {
  display: inline-flex; align-items: center;
  padding: 2px 8px;
  border: 1px solid rgba(148,163,184,0.28);
  border-radius: 999px;
  background: rgba(15,23,42,0.55);
  color: #cbd5e1;
  font-size: 10px; font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase;
  line-height: 1.6;
}
.dnx-nx-chip-mode  { color: #67e8f9; border-color: rgba(34,211,238,0.35); background: rgba(34,211,238,0.08); }
.dnx-nx-chip-hero  { color: #fbbf24; border-color: rgba(251,191,36,0.45); background: rgba(251,191,36,0.10); }
.dnx-nx-chip-attempt { color: #94a3b8; }

.dnx-nx-status-review { color: #fbbf24; }

.dnx-nx-preview-v25113 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px solid rgba(148,163,184,0.12);
}
.dnx-nx-preview-cell {
  position: relative;
  border: 1px solid rgba(148,163,184,0.18);
  border-radius: 10px;
  overflow: hidden;
  background: rgba(15,23,42,0.6);
}
.dnx-nx-preview-cell img {
  display: block;
  width: 100%;
  height: 160px;
  object-fit: cover;
  background: #0b1220;
}
.dnx-nx-preview-cell span {
  position: absolute; top: 6px; left: 8px;
  font-size: 10px; font-weight: 900; letter-spacing: 0.06em; text-transform: uppercase;
  color: #f8fafc;
  padding: 2px 6px;
  border-radius: 6px;
  background: rgba(15,23,42,0.75);
  border: 1px solid rgba(148,163,184,0.25);
}

.dnx-nx-row-approve {
  appearance: none;
  border: 1px solid rgba(74,222,128,0.45);
  background: rgba(34,197,94,0.12);
  color: #86efac;
  padding: 4px 10px;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 900;
  cursor: pointer;
}
.dnx-nx-row-approve:hover { background: rgba(34,197,94,0.20); }

@media (max-width: 1100px) {
  .dnx-nx-settings-v25113 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .dnx-nx-settings-v25113 { grid-template-columns: 1fr; }
  .dnx-nx-preview-v25113  { grid-template-columns: 1fr; }
  .dnx-nx-preview-cell img { height: 200px; }
}

/* =================================================================
   v2.0.0-phase25.11.5 — MOBILE RESPONSIVE FOUNDATION (v25115)
   -----------------------------------------------------------------
   Goal: make the entire DealerNexus app fully usable on phones,
   tablets, laptops, and desktops without redesigning the app.

   Breakpoints used in this section:
     desktop  : >= 1200px
     laptop   : 992  – 1199px
     tablet   : 768  – 991px
     mobile   : 481  – 767px
     small    : <= 480px

   Strategy: ADDITIVE rules at the bottom of the stylesheet so they
   override desktop defaults at the right viewports. No existing
   selectors are touched. No theme colors changed. No layout class
   names renamed. Existing v25.5 hamburger + sidebar drawer JS is
   reused; this layer adds a global floating hamburger so every page
   gets one (not just Home), plus extensive form/table/grid/modal
   responsive rules.
   ================================================================= */

/* ----- Global guards: no horizontal scroll, predictable box-sizing ---- */
html, body { max-width: 100vw; }
@media (max-width: 991px) {
  html, body { overflow-x: hidden; }
  *,
  *::before,
  *::after { box-sizing: border-box; }
  img, video, canvas, svg { max-width: 100%; height: auto; }
  /* Common containers — never wider than viewport. */
  .dn-dc-shell,
  .dn-crm-shell,
  .dn-admin-settings,
  .dn-dashboard-layout,
  .dn-card-grid,
  .dn-settings-grid,
  .dn-admin-form-grid {
    max-width: 100%;
  }
}

/* ----- Global floating hamburger (v25115) ------------------------------
   Injected by the v25115 IIFE at body level so every page has a way
   to open the drawer on mobile (not only Home). Hidden on desktop. */
.dnx-mobile-launch-v25115 {
  display: none;
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 10000; /* above sidebar (9999) only when drawer closed */
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid rgba(148,163,184,0.32);
  background: linear-gradient(180deg, rgba(15,23,42,0.92), rgba(2,6,23,0.86));
  color: #f8fafc;
  cursor: pointer;
  padding: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  box-shadow: 0 6px 18px rgba(2,6,23,0.45);
  -webkit-tap-highlight-color: transparent;
}
.dnx-mobile-launch-v25115 .dnx-mobile-launch-bar {
  display: block;
  width: 20px;
  height: 2px;
  background: linear-gradient(90deg, #4ee0ff, #a78bfa);
  border-radius: 2px;
}
.dnx-mobile-launch-v25115:hover {
  border-color: rgba(56,189,248,0.55);
}
/* Hide the launch button when drawer is open so the sidebar can layer on top cleanly. */
body.dn-mobile-nav-open .dnx-mobile-launch-v25115 { display: none !important; }

/* Mobile brand chip next to hamburger — purely decorative, hidden on desktop. */
.dnx-mobile-brand-v25115 {
  display: none;
  position: fixed;
  top: 12px;
  left: 68px;
  z-index: 9998;
  padding: 8px 12px;
  border-radius: 10px;
  border: 1px solid rgba(148,163,184,0.22);
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.66));
  color: #f8fafc;
  font-size: 12px;
  font-weight: 900;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  pointer-events: none;
}
body.dn-mobile-nav-open .dnx-mobile-brand-v25115 { display: none !important; }

@media (max-width: 991px) {
  .dnx-mobile-launch-v25115 { display: inline-flex; }
  .dnx-mobile-brand-v25115  { display: inline-flex; }
  /* Give body a little top padding so the floating button doesn't cover content. */
  body.dn-shell-ready { padding-top: 68px; }
}

/* ----- Sidebar drawer behavior on tablet/mobile -----------------------
   Builds on v25.5: at <=991px the sidebar is off-canvas. We also fix
   the case where body.dn-sidebar-collapsed (desktop compact mode) was
   leaving an 88px gutter under mobile screens. */
@media (max-width: 991px) {
  .dn-sidebar {
    position: fixed;
    top: 0; left: 0; bottom: 0;
    width: min(86vw, 320px) !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    transform: translateX(-110%);
    transition: transform .25s ease;
    z-index: 9999;
    box-shadow: 22px 0 60px rgba(0,0,0,0.45);
    overflow-y: auto;
  }
  body.dn-mobile-nav-open .dn-sidebar { transform: translateX(0); }
  .dn-sidebar-brand,
  .dn-sidebar-section-label,
  .dn-sidebar-label,
  .dn-sidebar-footer { display: revert !important; }
  .dn-sidebar-top,
  .dn-sidebar-link { justify-content: flex-start !important; }
  .dn-sidebar-link {
    padding-left: 13px !important;
    padding-right: 13px !important;
    min-height: 48px; /* touch target */
  }
  body.dn-sidebar-collapsed .dn-sidebar { width: min(86vw, 320px) !important; }
  body.dn-mobile-nav-open { overflow: hidden; }
  /* Cancel desktop content offset across every page. */
  .dn-page-home,
  .dn-page-inventory,
  .dn-page-customers,
  .dn-page-customer-view,
  .dn-page-add-customer,
  .dn-page-leads,
  .dn-page-pipeline,
  .dn-page-sales,
  .dn-page-bdc,
  .dn-page-workqueue,
  .dn-page-crmdeals,
  .dn-page-appointments,
  .dn-page-reports,
  .dn-page-todo,
  .dn-page-settings,
  .dn-page-communications,
  .dn-page-aicampaigns,
  .dn-page-shopcars,
  .dn-page-nexusphoto,
  .dn-page-vehicleprofile,
  .dn-crm-page,
  main.app.dn-deal-page {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  body.dn-sidebar-collapsed .dn-page-home,
  body.dn-sidebar-collapsed .dn-page-inventory,
  body.dn-sidebar-collapsed .dn-page-customers,
  body.dn-sidebar-collapsed .dn-page-customer-view,
  body.dn-sidebar-collapsed .dn-page-add-customer,
  body.dn-sidebar-collapsed .dn-page-leads,
  body.dn-sidebar-collapsed .dn-page-pipeline,
  body.dn-sidebar-collapsed .dn-page-sales,
  body.dn-sidebar-collapsed .dn-page-bdc,
  body.dn-sidebar-collapsed .dn-page-workqueue,
  body.dn-sidebar-collapsed .dn-page-crmdeals,
  body.dn-sidebar-collapsed .dn-page-appointments,
  body.dn-sidebar-collapsed .dn-page-reports,
  body.dn-sidebar-collapsed .dn-page-todo,
  body.dn-sidebar-collapsed .dn-page-settings,
  body.dn-sidebar-collapsed .dn-page-communications,
  body.dn-sidebar-collapsed .dn-page-aicampaigns,
  body.dn-sidebar-collapsed .dn-page-shopcars,
  body.dn-sidebar-collapsed .dn-page-nexusphoto,
  body.dn-sidebar-collapsed .dn-page-vehicleprofile,
  body.dn-sidebar-collapsed .dn-crm-page,
  body.dn-sidebar-collapsed main.app.dn-deal-page {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

/* ----- Reusable responsive utility classes (v25115) ----------------- */
.dn-table-wrap-v25115 {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 14px;
  border: 1px solid rgba(148,163,184,0.18);
}
.dn-table-wrap-v25115 table { min-width: 640px; width: 100%; }

.dn-responsive-grid-v25115 {
  display: grid;
  gap: 14px;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}
.dn-mobile-stack-v25115 { display: flex; flex-wrap: wrap; gap: 10px; }
.dn-action-row-v25115  { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
@media (max-width: 767px) {
  .dn-action-row-v25115 > * { flex: 1 1 auto; min-width: 0; }
}

/* ----- Auto-wrap large tables across the app on mobile -------------
   Any table that's not already inside a responsive wrapper gets a
   forced overflow-x parent on mobile to prevent body-level horizontal
   scrolling. */
@media (max-width: 991px) {
  .dn-admin-table-wrap,
  .dn-crm-table-wrap,
  .dn-table-wrap {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
  }
  /* Last-resort containment for raw tables. */
  table {
    max-width: 100%;
  }
}

/* ----- Forms: full width fields, stacked rows on mobile ------------- */
@media (max-width: 767px) {
  .dn-admin-form-grid,
  .dn-addcust-grid,
  .dn-crm-form-grid,
  .dnx-grid-2,
  .dnx-grid-3,
  .dnx-grid-4 { grid-template-columns: minmax(0,1fr) !important; }

  input[type="text"],
  input[type="email"],
  input[type="tel"],
  input[type="number"],
  input[type="search"],
  input[type="password"],
  input[type="date"],
  input[type="datetime-local"],
  input[type="time"],
  input[type="url"],
  select,
  textarea {
    width: 100%;
    max-width: 100%;
    min-height: 42px;
    font-size: 15px; /* prevents iOS zoom on focus */
  }
  textarea { min-height: 96px; }
  label { display: block; width: 100%; }
  button { min-height: 42px; }
  /* Button rows: wrap rather than overflow. */
  .dn-addcust-actions,
  .dn-addcust-button-row,
  .dn-crm-head-actions,
  .dn-crm-toolbar,
  .dn-action-bar,
  .dnx-action-bar,
  .dnx-page-actions,
  .dn-page-actions { flex-wrap: wrap; gap: 10px; }
  .dn-addcust-actions > button,
  .dn-addcust-button-row > button { flex: 1 1 calc(50% - 6px); min-width: 0; }
}

/* ----- KPI cards / dashboard grids stack cleanly ------------------- */
@media (max-width: 767px) {
  .dn-card-grid,
  .dn-settings-grid,
  .dn-dashboard-layout,
  .dn-crm-grid-wide,
  .dn-aic-fit-grid,
  .dn-aic-chip-row {
    grid-template-columns: 1fr !important;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .dn-card-grid,
  .dn-crm-grid-wide {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* ----- Deal Rehash / Deal Desk: layout only (math untouched) -------- */
@media (max-width: 991px) {
  main.app.dn-deal-page,
  main.app.dn-deal-page .dn-deal-shell,
  main.app.dn-deal-page .dn-deal-grid,
  main.app.dn-deal-page .dn-deal-form-grid,
  main.app.dn-deal-page .dn-deal-result-grid {
    width: 100% !important;
    max-width: 100% !important;
  }
}
@media (max-width: 767px) {
  main.app.dn-deal-page .dn-deal-grid,
  main.app.dn-deal-page .dn-deal-form-grid,
  main.app.dn-deal-page .dn-deal-result-grid,
  main.app.dn-deal-page .dn-aic-fit-grid,
  main.app.dn-deal-page .dn-aic-lender-grid,
  main.app.dn-deal-page .dn-aic-chip-row,
  main.app.dn-deal-page .dn-aic-decline-row,
  main.app.dn-deal-page .dn-aic-cell {
    display: block !important;
  }
  main.app.dn-deal-page .dn-aic-deal-card,
  main.app.dn-deal-page .dn-aic-confidence-card { margin-bottom: 10px; }
}

/* ----- Settings: tab strip becomes a scrollable pill row on mobile - */
@media (max-width: 767px) {
  #dnxSettingsTabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    gap: 8px;
    padding-bottom: 6px;
  }
  #dnxSettingsTabs::-webkit-scrollbar { display: none; }
  #dnxSettingsTabs > button.dnx-settings-tab {
    flex: 0 0 auto;
    white-space: nowrap;
    min-height: 40px;
  }
  /* Settings two-column layout collapses to a single column. */
  .dnx-settings-layout-v2510 {
    grid-template-columns: 1fr !important;
  }
  .dnx-settings-side-nav-v2510 {
    width: 100% !important;
  }
}

/* ----- Modals / overlays: fit viewport on mobile ------------------- */
@media (max-width: 767px) {
  .dnx-modal,
  .dn-admin-modal-card,
  .dn-modal,
  .dn-aic-modal,
  .dnx-popup,
  .dnx-overlay-card {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 24px) !important;
    margin: 12px !important;
    overflow: auto;
  }
  .dnx-modal-body,
  .dn-modal-body { max-height: 70vh; overflow: auto; }
  .dnx-modal-close,
  .dn-modal-close { min-width: 40px; min-height: 40px; }
}

/* ----- Inventory: ensure grid wraps on mobile ---------------------- */
@media (max-width: 767px) {
  .dn-inv-grid,
  .dn-inv-cards,
  .dn-inventory-grid {
    grid-template-columns: 1fr !important;
  }
  .dn-inv-card img,
  .dn-inventory-card img { width: 100%; height: auto; }
}

/* ----- Topbars: tighter spacing + brand pill hides on phone -------- */
@media (max-width: 767px) {
  .dn-dc-topbar,
  .dn-nexus-crm-topbar,
  .dnx-topbar {
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 8px 12px !important;
  }
  .dn-dc-dealer-pill { display: none !important; }
}

/* ----- Typography & spacing on small screens ----------------------- */
@media (max-width: 767px) {
  .dn-page-title,
  .dnx-title,
  h1 { font-size: clamp(20px, 5.6vw, 26px) !important; line-height: 1.2; }
  h2 { font-size: clamp(17px, 4.8vw, 21px) !important; }
  h3 { font-size: 15px !important; }
  .dn-home-hero,
  .dn-settings-card,
  .dn-todo-card,
  .dn-coming-soon-card,
  .dn-admin-card,
  .dnx-card,
  .dn-aic-deal-card {
    padding: 16px !important;
    border-radius: 18px !important;
  }
}
@media (max-width: 480px) {
  .dn-page-title, .dnx-title, h1 { font-size: clamp(18px, 6vw, 22px) !important; }
  .dn-home-hero,
  .dn-settings-card,
  .dn-todo-card,
  .dn-coming-soon-card,
  .dn-admin-card,
  .dnx-card { padding: 14px !important; }
}

/* ----- Touch target enforcement on small viewports ----------------- */
@media (max-width: 767px) {
  .dn-sidebar-link,
  .dnx-btn,
  .dn-btn,
  .dn-dc-btn,
  .dnx-tab,
  .dnx-settings-tab,
  .dnx-row-action,
  .dnx-icon-btn { min-height: 42px; }
}

/* =================================================================
   v2.0.0-phase25.13 — Leads CRM (v2513)
   Status pills, KPI cards, list rows, lead detail drawer, new-lead
   modal, activity timeline, follow-up tasks.
   ================================================================= */
:root {
  --dnx-leads-bg: rgba(15,23,42,0.78);
  --dnx-leads-border: rgba(148,163,184,0.20);
  --dnx-leads-border-hot: rgba(56,189,248,0.42);
}

.dnx-leads-page-v2513 {
  padding: 22px 26px 32px;
  color: #e2e8f0;
  display: grid;
  gap: 16px;
}
.dnx-leads-eyebrow-v2513 {
  display: inline-block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.30em;
  text-transform: uppercase;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  margin-bottom: 6px;
}
.dnx-leads-header-v2513 {
  display: flex; align-items: flex-end; justify-content: space-between;
  gap: 18px; flex-wrap: wrap;
  padding: 18px 20px;
  border-radius: 18px;
  border: 1px solid var(--dnx-leads-border);
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.55));
}
.dnx-leads-title-v2513 h1 { margin: 0 0 6px; color: #f8fafc; font-size: 22px; font-weight: 900; letter-spacing: -0.01em; }
.dnx-leads-title-v2513 p  { margin: 0; color: #94a3b8; font-size: 13px; line-height: 1.4; max-width: 60ch; }
.dnx-leads-headact-v2513 { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-leads-btn-v2513 {
  background: rgba(255,255,255,0.05);
  border: 1px solid var(--dnx-leads-border);
  color: #e2e8f0;
  border-radius: 12px;
  padding: 10px 16px;
  font-weight: 800;
  font-size: 13px;
  cursor: pointer;
  text-decoration: none;
  transition: border-color .15s, background .15s, transform .05s;
  min-height: 40px;
}
.dnx-leads-btn-v2513:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); }
.dnx-leads-btn-primary-v2513 {
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b; border: 0; font-weight: 900;
}

/* KPI cards */
.dnx-leads-summary-v2513 {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}
.dnx-leads-kpi-v2513 {
  background: var(--dnx-leads-bg);
  border: 1px solid var(--dnx-leads-border);
  border-radius: 14px;
  padding: 14px 16px;
  display: flex; flex-direction: column; gap: 4px;
  text-align: left;
  color: #e2e8f0;
  cursor: pointer;
  transition: border-color .12s, transform .05s;
}
.dnx-leads-kpi-v2513:hover { border-color: var(--dnx-leads-border-hot); }
.dnx-leads-kpi-v2513 span { color: #94a3b8; font-size: 11px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; }
.dnx-leads-kpi-v2513 strong { color: #f8fafc; font-size: 26px; font-weight: 900; letter-spacing: -0.02em; }
.dnx-leads-kpi-v2513 small { color: #64748b; font-size: 11px; font-weight: 700; }

/* Toolbar */
.dnx-leads-toolbar-v2513 {
  display: grid;
  grid-template-columns: 2fr 1fr 1fr 1fr;
  gap: 10px;
}
.dnx-leads-input-v2513 {
  background: var(--dnx-leads-bg);
  border: 1px solid var(--dnx-leads-border);
  color: #e2e8f0;
  border-radius: 12px;
  padding: 10px 14px;
  font-size: 13.5px;
  font-weight: 700;
  width: 100%;
  min-height: 42px;
}
.dnx-leads-input-v2513:focus { border-color: rgba(56,189,248,0.55); outline: none; }

/* List */
.dnx-leads-list-wrap-v2513 {
  border-radius: 16px;
  border: 1px solid var(--dnx-leads-border);
  background: linear-gradient(180deg, rgba(15,23,42,0.55), rgba(2,6,23,0.30));
  overflow: hidden;
}
.dnx-leads-list-v2513 { display: block; }
.dnx-leads-row-head-v2513 {
  display: grid;
  grid-template-columns: minmax(170px, 1.4fr) minmax(140px, 1.6fr) 130px 140px 130px;
  gap: 12px;
  padding: 10px 16px;
  background: rgba(15,23,42,0.62);
  color: #94a3b8;
  font-size: 10px; font-weight: 900; letter-spacing: 0.10em; text-transform: uppercase;
  border-bottom: 1px solid var(--dnx-leads-border);
}
.dnx-leads-row-v2513 {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(170px, 1.4fr) minmax(140px, 1.6fr) 130px 140px 130px;
  gap: 12px;
  padding: 14px 16px;
  text-align: left;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(148,163,184,0.10);
  color: #e2e8f0;
  cursor: pointer;
  transition: background .12s;
}
.dnx-leads-row-v2513:hover { background: rgba(56,189,248,0.06); }
.dnx-leads-row-name-v2513 { color: #f8fafc; font-weight: 900; font-size: 14px; display: flex; align-items: center; gap: 8px; }
.dnx-leads-row-meta-v2513 { color: #94a3b8; font-size: 12.5px; font-weight: 700; display: flex; flex-direction: column; gap: 2px; }
.dnx-leads-row-meta-v2513 span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dnx-leads-row-pills-v2513 { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; }
.dnx-leads-row-assigned-v2513 { color: #cbd5e1; font-size: 12.5px; font-weight: 700; align-self: center; }
.dnx-leads-row-assigned-v2513 em { color: #64748b; font-style: italic; font-weight: 600; }
.dnx-leads-row-follow-v2513 { color: #cbd5e1; font-size: 12.5px; font-weight: 700; align-self: center; }

/* Status pills */
.dnx-leads-pill-v2513 {
  display: inline-flex; align-items: center;
  padding: 3px 10px;
  border: 1px solid rgba(148,163,184,0.30);
  border-radius: 999px;
  background: rgba(2,6,23,0.50);
  color: #cbd5e1;
  font-size: 10.5px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase;
  line-height: 1.6;
}
.dnx-leads-pill-new                 { color: #4ee0ff; border-color: rgba(78,224,255,0.45); background: rgba(78,224,255,0.10); }
.dnx-leads-pill-attempted_contact   { color: #fbbf24; border-color: rgba(251,191,36,0.45); background: rgba(251,191,36,0.10); }
.dnx-leads-pill-contacted           { color: #a78bfa; border-color: rgba(167,139,250,0.45); background: rgba(167,139,250,0.10); }
.dnx-leads-pill-appointment_set     { color: #7da5ff; border-color: rgba(125,165,255,0.45); background: rgba(125,165,255,0.10); }
.dnx-leads-pill-appointment_confirmed { color: #34d399; border-color: rgba(52,211,153,0.45); background: rgba(52,211,153,0.10); }
.dnx-leads-pill-showed              { color: #34d399; border-color: rgba(52,211,153,0.45); background: rgba(52,211,153,0.12); }
.dnx-leads-pill-no_show             { color: #fb7185; border-color: rgba(251,113,133,0.45); background: rgba(251,113,133,0.10); }
.dnx-leads-pill-working_deal        { color: #fcd34d; border-color: rgba(252,211,77,0.45);  background: rgba(252,211,77,0.10); }
.dnx-leads-pill-sold                { color: #4ade80; border-color: rgba(74,222,128,0.55);  background: rgba(74,222,128,0.14); }
.dnx-leads-pill-lost                { color: #94a3b8; border-color: rgba(148,163,184,0.40); background: rgba(148,163,184,0.10); }
.dnx-leads-pill-bad_lead            { color: #ef4444; border-color: rgba(239,68,68,0.45);   background: rgba(239,68,68,0.10); }
.dnx-leads-pri-hot                  { color: #f87171; border-color: rgba(248,113,113,0.55); background: rgba(248,113,113,0.12); }
.dnx-leads-pri-high                 { color: #fbbf24; border-color: rgba(251,191,36,0.45);  background: rgba(251,191,36,0.10); }
.dnx-leads-pri-low                  { color: #94a3b8; border-color: rgba(148,163,184,0.32); }

.dnx-leads-empty-v2513 {
  padding: 28px;
  text-align: center;
  color: #94a3b8;
  font-size: 13px;
}
.dnx-leads-empty-v2513 strong { display: block; color: #f8fafc; font-size: 14px; margin-bottom: 4px; }
.dnx-leads-empty-v2513 small  { display: block; color: #64748b; margin-top: 4px; }
.dnx-leads-empty-error-v2513 { color: #fca5a5; }

/* Drawer */
.dnx-leads-drawer-v2513 {
  position: fixed;
  top: 0; right: 0; bottom: 0;
  width: min(520px, 96vw);
  transform: translateX(110%);
  z-index: 10050;
  transition: transform .22s ease;
  display: flex;
  flex-direction: column;
}
.dnx-leads-drawer-v2513.is-open { transform: translateX(0); }
.dnx-leads-drawer-back-v2513 {
  position: fixed; inset: 0;
  background: rgba(2,6,23,0.55);
  backdrop-filter: blur(4px);
  z-index: 10045;
}
.dnx-leads-drawer-inner-v2513 {
  position: relative; z-index: 10051;
  flex: 1;
  background: linear-gradient(180deg, rgba(15,23,42,0.98), rgba(2,6,23,0.96));
  border-left: 1px solid rgba(56,189,248,0.30);
  box-shadow: -22px 0 60px rgba(0,0,0,0.45);
  display: flex; flex-direction: column;
  overflow-y: auto;
  padding: 22px;
  color: #e2e8f0;
}
.dnx-leads-drawer-head-v2513 {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 10px;
  padding-bottom: 14px;
  margin-bottom: 12px;
  border-bottom: 1px solid var(--dnx-leads-border);
}
.dnx-leads-drawer-head-v2513 h2 { margin: 0; color: #f8fafc; font-size: 20px; font-weight: 900; }
.dnx-leads-drawer-sub-v2513 { margin-top: 4px; color: #94a3b8; font-size: 12.5px; font-weight: 700; }
.dnx-leads-drawer-close-v2513 {
  background: rgba(255,255,255,0.08);
  border: 1px solid var(--dnx-leads-border);
  color: #f8fafc;
  border-radius: 12px;
  width: 36px; height: 36px;
  font-size: 18px;
  cursor: pointer;
}
.dnx-leads-drawer-grid-v2513 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
}
.dnx-leads-field-v2513 { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.dnx-leads-field-v2513 label { font-size: 11px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase; color: #94a3b8; }
.dnx-leads-field-v2513 input,
.dnx-leads-field-v2513 select,
.dnx-leads-field-v2513 textarea {
  background: rgba(15,23,42,0.75);
  border: 1px solid var(--dnx-leads-border);
  border-radius: 10px;
  color: #f8fafc;
  padding: 9px 11px;
  font-size: 13px;
  font-weight: 600;
  width: 100%;
}
.dnx-leads-field-full-v2513 { grid-column: 1 / -1; }
.dnx-leads-field-actions-v2513 { grid-column: 1 / -1; display: flex; gap: 8px; }

.dnx-leads-actbar-v2513 {
  display: flex; flex-wrap: wrap; gap: 6px;
  padding: 10px 0;
  border-top: 1px solid var(--dnx-leads-border);
  border-bottom: 1px solid var(--dnx-leads-border);
  margin-bottom: 14px;
}

/* Timeline */
.dnx-leads-timeline-wrap-v2513 h3,
.dnx-leads-tasks-wrap-v2513 h3 {
  margin: 0 0 8px;
  color: #f8fafc;
  font-size: 13px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase;
}
.dnx-leads-timeline-v2513 {
  display: flex; flex-direction: column; gap: 12px;
  margin-bottom: 14px;
}
.dnx-leads-tline-item-v2513 {
  position: relative; display: grid; grid-template-columns: 14px 1fr; gap: 10px;
}
.dnx-leads-tline-dot-v2513 {
  width: 10px; height: 10px;
  margin-top: 6px;
  border-radius: 50%;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  box-shadow: 0 0 0 3px rgba(56,189,248,0.10);
}
.dnx-leads-tline-type-status_changed .dnx-leads-tline-dot-v2513 { background: linear-gradient(135deg, #fcd34d, #f87171); }
.dnx-leads-tline-type-assigned       .dnx-leads-tline-dot-v2513 { background: linear-gradient(135deg, #7da5ff, #a78bfa); }
.dnx-leads-tline-type-call           .dnx-leads-tline-dot-v2513 { background: #34d399; }
.dnx-leads-tline-type-sms            .dnx-leads-tline-dot-v2513 { background: #4ee0ff; }
.dnx-leads-tline-type-email          .dnx-leads-tline-dot-v2513 { background: #a78bfa; }
.dnx-leads-tline-type-task_created   .dnx-leads-tline-dot-v2513 { background: #fbbf24; }
.dnx-leads-tline-type-duplicate_detected .dnx-leads-tline-dot-v2513 { background: #f87171; }
.dnx-leads-tline-body-v2513 { min-width: 0; }
.dnx-leads-tline-title-v2513 { color: #f8fafc; font-size: 13px; font-weight: 900; }
.dnx-leads-tline-text-v2513  { color: #cbd5e1; font-size: 12.5px; margin-top: 2px; white-space: pre-wrap; }
.dnx-leads-tline-meta-v2513  { color: #64748b; font-size: 11px; font-weight: 700; margin-top: 3px; }

/* Tasks */
.dnx-leads-tasks-v2513 { display: flex; flex-direction: column; gap: 8px; }
.dnx-leads-task-v2513 {
  display: grid; grid-template-columns: 22px 1fr; gap: 8px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(15,23,42,0.55);
  border: 1px solid var(--dnx-leads-border);
}
.dnx-leads-task-v2513.is-completed { opacity: .55; }
.dnx-leads-task-v2513.is-overdue { border-color: rgba(248,113,113,0.45); }
.dnx-leads-task-v2513 input[type="checkbox"] {
  width: 18px; height: 18px; accent-color: #38bdf8;
  margin-top: 2px;
}
.dnx-leads-task-body-v2513 { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dnx-leads-task-body-v2513 strong { color: #f8fafc; font-size: 13px; font-weight: 900; }
.dnx-leads-task-body-v2513 small  { color: #cbd5e1; font-size: 12px; }
.dnx-leads-task-body-v2513 em     { color: #94a3b8; font-style: normal; font-size: 11px; font-weight: 700; }

/* Modal */
.dnx-leads-modal-back-v2513 {
  position: fixed; inset: 0;
  background: rgba(2,6,23,0.7);
  backdrop-filter: blur(4px);
  display: none;
  align-items: center; justify-content: center;
  z-index: 10060;
  padding: 20px;
}
.dnx-leads-modal-back-v2513.is-open { display: flex; }
.dnx-leads-modal-card-v2513 {
  width: min(720px, 100%);
  max-height: calc(100vh - 40px);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(15,23,42,0.98), rgba(2,6,23,0.96));
  border: 1px solid rgba(56,189,248,0.30);
  box-shadow: 0 30px 80px rgba(0,0,0,0.6);
  display: flex; flex-direction: column;
  overflow: hidden;
}
.dnx-leads-modal-head-v2513 {
  display: flex; justify-content: space-between; align-items: flex-start;
  padding: 18px 22px;
  border-bottom: 1px solid var(--dnx-leads-border);
}
.dnx-leads-modal-head-v2513 h2 { margin: 4px 0 0; color: #f8fafc; font-size: 20px; font-weight: 900; }
.dnx-leads-modal-body-v2513 { padding: 18px 22px; overflow-y: auto; }
.dnx-leads-modal-foot-v2513 {
  padding: 14px 22px;
  display: flex; justify-content: flex-end; gap: 10px;
  border-top: 1px solid var(--dnx-leads-border);
}
.dnx-leads-dup-warn-v2513 {
  margin-top: 14px;
  padding: 14px;
  border-radius: 12px;
  background: linear-gradient(180deg, rgba(248,113,113,0.06), rgba(2,6,23,0.55));
  border: 1px solid rgba(248,113,113,0.45);
  color: #f8fafc;
}
.dnx-leads-dup-warn-v2513 strong { color: #fca5a5; font-size: 13px; font-weight: 900; display: block; margin-bottom: 4px; }
.dnx-leads-dup-warn-v2513 small  { color: #cbd5e1; display: block; margin-bottom: 8px; font-size: 12px; }
.dnx-leads-dup-warn-v2513 ul { list-style: none; padding: 0; margin: 0 0 12px; display: flex; flex-direction: column; gap: 6px; }
.dnx-leads-dup-open-v2513 {
  width: 100%; text-align: left;
  background: rgba(15,23,42,0.65);
  border: 1px solid var(--dnx-leads-border);
  color: #f8fafc;
  border-radius: 10px;
  padding: 9px 11px;
  font-size: 12.5px; font-weight: 700;
  cursor: pointer;
}
.dnx-leads-dup-actions-v2513 { display: flex; justify-content: flex-end; gap: 8px; }

/* Body lock when drawer/modal open */
body.dnx-leads-drawer-open-v2513 { overflow: hidden; }

/* Responsive — tablet + phone */
@media (max-width: 991px) {
  .dnx-leads-summary-v2513 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dnx-leads-toolbar-v2513 { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
  .dnx-leads-page-v2513 { padding: 14px; }
  .dnx-leads-summary-v2513 { grid-template-columns: 1fr 1fr; }
  .dnx-leads-toolbar-v2513 { grid-template-columns: 1fr; }
  .dnx-leads-row-head-v2513 { display: none; }
  .dnx-leads-row-v2513 {
    grid-template-columns: 1fr;
    gap: 6px;
    padding: 14px;
    border-bottom: 1px solid rgba(148,163,184,0.12);
  }
  .dnx-leads-row-name-v2513 { font-size: 15px; }
  .dnx-leads-row-meta-v2513 { flex-direction: row; gap: 10px; flex-wrap: wrap; }
  .dnx-leads-row-assigned-v2513,
  .dnx-leads-row-follow-v2513 { font-size: 11.5px; color: #94a3b8; }
  .dnx-leads-drawer-v2513 { width: 100vw; }
  .dnx-leads-drawer-grid-v2513 { grid-template-columns: 1fr; }
  .dnx-leads-modal-card-v2513 { max-height: calc(100vh - 24px); }
}

/* =================================================================
   v2.0.0-phase25.14 — Home CRM Command Center (v2514)
   Dashboard cards, KPIs, urgent queue, activity feed.
   ================================================================= */
.dnx-home-crm-v2514 {
  display: grid;
  gap: 14px;
  padding: 18px 26px 6px;
  color: #e2e8f0;
}
.dnx-home-crm-head-v2514 {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 14px; flex-wrap: wrap;
}
.dnx-home-crm-eyebrow-v2514 {
  display: inline-block;
  font-size: 10px; font-weight: 900;
  letter-spacing: 0.30em; text-transform: uppercase;
  background: linear-gradient(135deg, #4ee0ff, #a78bfa);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.dnx-home-crm-head-v2514 h2 {
  margin: 4px 0 0; color: #f8fafc;
  font-size: 22px; font-weight: 900; letter-spacing: -0.01em;
}
.dnx-home-crm-actions-v2514 { display: flex; gap: 8px; flex-wrap: wrap; }
.dnx-home-crm-btn-v2514 {
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(148,163,184,0.20);
  color: #e2e8f0;
  border-radius: 12px;
  padding: 8px 14px;
  font-weight: 800; font-size: 12.5px;
  cursor: pointer; min-height: 40px;
  transition: border-color .15s, background .15s;
}
.dnx-home-crm-btn-v2514:hover { border-color: rgba(56,189,248,0.55); background: rgba(56,189,248,0.10); }
.dnx-home-crm-btn-primary-v2514 {
  background: linear-gradient(135deg, #4ee0ff, #7da5ff, #a78bfa);
  color: #04060b; border: 0; font-weight: 900;
}

.dnx-home-crm-kpis-v2514 {
  display: grid;
  grid-template-columns: repeat(8, minmax(0, 1fr));
  gap: 10px;
}
.dnx-home-crm-kpi-v2514 {
  display: flex; flex-direction: column; gap: 2px;
  padding: 12px 14px;
  background: linear-gradient(180deg, rgba(15,23,42,0.85), rgba(2,6,23,0.55));
  border: 1px solid rgba(148,163,184,0.20);
  border-radius: 14px;
  text-align: left;
  color: #e2e8f0;
  cursor: pointer;
  transition: border-color .12s, transform .04s;
}
.dnx-home-crm-kpi-v2514:hover { border-color: rgba(56,189,248,0.50); transform: translateY(-1px); }
.dnx-home-crm-kpi-v2514 span  { color: #94a3b8; font-size: 10.5px; font-weight: 900; letter-spacing: 0.10em; text-transform: uppercase; }
.dnx-home-crm-kpi-v2514 strong{ color: #f8fafc; font-size: 22px; font-weight: 900; letter-spacing: -0.02em; }
.dnx-home-crm-kpi-v2514 small { color: #64748b; font-size: 10.5px; font-weight: 700; }

.dnx-home-crm-grid-v2514 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.dnx-home-crm-card-v2514 {
  background: linear-gradient(180deg, rgba(15,23,42,0.78), rgba(2,6,23,0.45));
  border: 1px solid rgba(148,163,184,0.20);
  border-radius: 16px;
  padding: 14px 16px;
  display: flex; flex-direction: column; gap: 10px;
  min-height: 200px;
}
.dnx-home-crm-card-wide-v2514 { grid-column: 1 / -1; }
.dnx-home-crm-card-v2514 > header {
  display: flex; justify-content: space-between; align-items: center;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(148,163,184,0.16);
}
.dnx-home-crm-card-v2514 > header h3 {
  margin: 0; color: #f8fafc;
  font-size: 13px; font-weight: 900; letter-spacing: 0.08em; text-transform: uppercase;
}
.dnx-home-crm-card-v2514 > header a {
  color: #4ee0ff; text-decoration: none; font-size: 12px; font-weight: 800;
}
.dnx-home-crm-card-v2514 > header a:hover { color: #a78bfa; }

.dnx-home-crm-followups-v2514 {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.dnx-home-crm-stat-v2514 {
  display: flex; justify-content: space-between; align-items: center;
  padding: 11px 13px;
  background: rgba(15,23,42,0.55);
  border: 1px solid rgba(148,163,184,0.20);
  border-radius: 12px;
  color: #e2e8f0;
  cursor: pointer;
  text-align: left;
  transition: border-color .12s;
}
.dnx-home-crm-stat-v2514:hover { border-color: rgba(56,189,248,0.45); }
.dnx-home-crm-stat-v2514 span   { color: #94a3b8; font-size: 11.5px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.dnx-home-crm-stat-v2514 strong { color: #f8fafc; font-size: 22px; font-weight: 900; letter-spacing: -0.02em; }
.dnx-home-crm-tone-warn   strong { color: #fbbf24; }
.dnx-home-crm-tone-danger strong { color: #fca5a5; }
.dnx-home-crm-tone-info   strong { color: #7da5ff; }
.dnx-home-crm-tone-ok     strong { color: #34d399; }

.dnx-home-crm-list-v2514 {
  display: flex; flex-direction: column; gap: 6px;
  max-height: 320px;
  overflow-y: auto;
}
.dnx-home-crm-row-v2514 {
  display: grid;
  grid-template-columns: 64px 1fr auto;
  gap: 12px;
  align-items: center;
  background: rgba(15,23,42,0.45);
  border: 1px solid rgba(148,163,184,0.14);
  border-radius: 12px;
  padding: 10px 12px;
  color: #e2e8f0;
  cursor: pointer;
  text-align: left;
  transition: border-color .12s, background .12s;
}
.dnx-home-crm-row-v2514:hover {
  border-color: rgba(56,189,248,0.45);
  background: rgba(56,189,248,0.06);
}
.dnx-home-crm-row-time-v2514 {
  color: #4ee0ff; font-weight: 900; font-size: 13px; letter-spacing: -0.01em;
  text-align: left;
}
.dnx-home-crm-row-main-v2514 { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dnx-home-crm-row-main-v2514 strong { color: #f8fafc; font-size: 13px; font-weight: 900; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dnx-home-crm-row-main-v2514 small  { color: #94a3b8; font-size: 11.5px; font-weight: 700; }

.dnx-home-crm-activity-v2514 {
  display: flex; flex-direction: column; gap: 6px;
  max-height: 360px;
  overflow-y: auto;
}
.dnx-home-crm-act-v2514 {
  display: grid;
  grid-template-columns: 32px 1fr;
  gap: 10px;
  align-items: center;
  padding: 9px 10px;
  background: rgba(15,23,42,0.40);
  border: 1px solid rgba(148,163,184,0.12);
  border-radius: 11px;
  color: #e2e8f0;
  cursor: pointer;
  text-align: left;
}
.dnx-home-crm-act-v2514:hover { border-color: rgba(56,189,248,0.40); background: rgba(56,189,248,0.06); }
.dnx-home-crm-act-icon-v2514 {
  width: 28px; height: 28px;
  display: inline-grid; place-items: center;
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(78,224,255,0.20), rgba(167,139,250,0.20));
  color: #f8fafc;
  font-size: 13px; font-weight: 900;
}
.dnx-home-crm-act-status_changed     .dnx-home-crm-act-icon-v2514 { background: linear-gradient(135deg, #fcd34d, #f87171); color: #1a1a1a; }
.dnx-home-crm-act-call               .dnx-home-crm-act-icon-v2514 { background: linear-gradient(135deg, #34d399, #10b981); color: #04060b; }
.dnx-home-crm-act-sms                .dnx-home-crm-act-icon-v2514 { background: linear-gradient(135deg, #4ee0ff, #7da5ff); color: #04060b; }
.dnx-home-crm-act-email              .dnx-home-crm-act-icon-v2514 { background: linear-gradient(135deg, #a78bfa, #c084fc); color: #04060b; }
.dnx-home-crm-act-task_created       .dnx-home-crm-act-icon-v2514 { background: rgba(251,191,36,0.20); color: #fbbf24; }
.dnx-home-crm-act-task_completed     .dnx-home-crm-act-icon-v2514 { background: rgba(52,211,153,0.22); color: #34d399; }
.dnx-home-crm-act-duplicate_detected .dnx-home-crm-act-icon-v2514 { background: rgba(248,113,113,0.20); color: #f87171; }
.dnx-home-crm-act-body-v2514 { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.dnx-home-crm-act-body-v2514 strong { color: #f8fafc; font-size: 12.5px; font-weight: 900; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.dnx-home-crm-act-body-v2514 small  { color: #94a3b8; font-size: 11px; font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.dnx-home-crm-empty-v2514 {
  padding: 18px;
  text-align: center;
  color: #94a3b8;
  font-size: 13px;
}
.dnx-home-crm-error-v2514 { color: #fca5a5; }
.dnx-home-crm-link-v2514 {
  background: none; border: 0; padding: 0; margin: 0 0 0 4px;
  color: #4ee0ff; cursor: pointer; font-weight: 900; font-size: 13px;
}

/* Responsive — tablet + phone */
@media (max-width: 1199px) {
  .dnx-home-crm-kpis-v2514 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .dnx-home-crm-v2514 { padding: 14px; }
  .dnx-home-crm-grid-v2514 { grid-template-columns: 1fr; }
  .dnx-home-crm-card-wide-v2514 { grid-column: auto; }
}
@media (max-width: 767px) {
  .dnx-home-crm-kpis-v2514 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dnx-home-crm-followups-v2514 { grid-template-columns: 1fr 1fr; }
  .dnx-home-crm-row-v2514 { grid-template-columns: 56px 1fr; }
  .dnx-home-crm-row-v2514 > .dnx-leads-pill-v2513 { grid-column: 1 / -1; justify-self: start; }
  .dnx-home-crm-head-v2514 h2 { font-size: 18px; }
}


