/* ADN Visa DB، filterable table + card view. Brand light theme. */
.adn-visa-db{--l:var(--color-line,#E6DFC8);font-family:var(--font-body,'IBM Plex Sans Arabic',system-ui,sans-serif)}
.adn-visa-db .vdb-controls{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:20px}
.adn-visa-db .vdb-field{display:flex;flex-direction:column;gap:6px}
.adn-visa-db .vdb-field label{font-size:.8rem;font-weight:600;color:var(--color-muted,#6B7280)}
.adn-visa-db input[type=search],.adn-visa-db select{min-height:44px;border:1.5px solid var(--l);border-radius:10px;padding:8px 12px;background:var(--color-white,#fff);font-family:inherit;font-size:.95rem;min-width:160px}
.adn-visa-db input[type=search]:focus,.adn-visa-db select:focus{border-color:var(--color-blue,#004CC7);outline:2px solid var(--color-sky,#6CA4FF);outline-offset:1px}
.adn-visa-db .vdb-check{display:flex;align-items:center;gap:8px;font-size:.9rem;min-height:44px}
.adn-visa-db .vdb-toggle{margin-inline-start:auto;display:flex;gap:6px}
.adn-visa-db .vdb-toggle button{min-height:44px;padding:8px 16px;border-radius:999px;border:1.5px solid var(--l);background:var(--color-white,#fff);cursor:pointer;font-family:inherit;font-weight:600}
.adn-visa-db .vdb-toggle button.on{background:var(--color-blue,#004CC7);color:#fff;border-color:var(--color-blue,#004CC7)}
.adn-visa-db .vdb-meta{font-size:.85rem;color:var(--color-muted,#6B7280);margin-bottom:12px}

/* Table */
.adn-visa-db .vdb-tablewrap{overflow-x:auto;border-radius:16px;box-shadow:var(--shadow-sm,0 1px 2px rgba(11,15,26,.06))}
.adn-visa-db table{width:100%;border-collapse:collapse;background:var(--color-white,#fff);min-width:720px}
.adn-visa-db th,.adn-visa-db td{padding:12px 14px;text-align:start;border-bottom:1px solid var(--l);font-size:.92rem}
.adn-visa-db th{font-family:var(--font-display,'Alexandria',sans-serif);font-weight:700;background:var(--color-cream,#F5F1E1);cursor:pointer;white-space:nowrap}
.adn-visa-db th[aria-sort=ascending]::after{content:" ▲";color:var(--color-blue,#004CC7)}
.adn-visa-db th[aria-sort=descending]::after{content:" ▼";color:var(--color-blue,#004CC7)}
.adn-visa-db td .flag{font-size:1.2rem;margin-inline-end:6px}
.adn-visa-db tbody tr:hover{background:var(--color-cream,#F5F1E1)}
.adn-visa-db .num{font-variant-numeric:tabular-nums}

/* Eligibility badge */
.adn-visa-db .eb{display:inline-block;font-size:.72rem;font-weight:700;border-radius:999px;padding:3px 9px;white-space:nowrap}
.adn-visa-db .eb.excellent{background:rgba(234,174,6,.16);color:#8a6400}
.adn-visa-db .eb.open{background:rgba(66,221,81,.16);color:#1c7a26}
.adn-visa-db .eb.conditional{background:rgba(251,191,36,.18);color:#8a6400}
.adn-visa-db .eb.excluded,.adn-visa-db .eb.inactive{background:rgba(230,57,70,.13);color:#b0202c}
.adn-visa-db .yes{color:#1c7a26;font-weight:700}
.adn-visa-db .no{color:var(--color-muted,#6B7280)}

/* Card view */
.adn-visa-db .vdb-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}
.adn-visa-db .vdb-card{background:var(--color-white,#fff);border-radius:16px;box-shadow:var(--shadow-sm,0 1px 2px rgba(11,15,26,.06));padding:16px;border:1px solid var(--l)}
.adn-visa-db .vdb-card .top{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.adn-visa-db .vdb-card h3{margin:0;font-size:1.05rem}
.adn-visa-db .vdb-card .en{font-size:.78rem;color:var(--color-muted,#6B7280)}
.adn-visa-db .vdb-card .facts{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.adn-visa-db .vdb-card .fact{font-size:.78rem;background:var(--color-cream,#F5F1E1);border-radius:8px;padding:3px 8px}
.adn-visa-db .vdb-empty{padding:32px;text-align:center;color:var(--color-muted,#6B7280)}
.adn-visa-db .vdb-link{color:var(--color-blue,#004CC7);font-weight:600;text-decoration:none}
.adn-visa-db .vdb-link:hover{text-decoration:underline}
.adn-visa-db [hidden]{display:none !important}

/* ---- Visa DB teaser: readable preview + blurred locked rows (FOMO) ---- */
.adn-visa-teaser{position:relative}
.vdb-lock{position:relative;margin-block-start:-6px}
.vdb-lock__rows{filter:blur(5px);opacity:.6;pointer-events:none;display:flex;flex-direction:column;gap:12px;padding:16px 8px 40px}
.vdb-lock__row{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr .8fr;gap:14px}
.vdb-lock__row span{height:16px;border-radius:6px;background:linear-gradient(90deg,#e6ebf3,#d3dcea)}
.vdb-lock__cta{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;text-align:center;gap:8px;padding:24px;background:linear-gradient(180deg,rgba(245,241,225,0) 0%,var(--color-cream,#F5F1E1) 48%)}
.vdb-lock__cta h3{margin:0;font-size:1.3rem}
.vdb-lock__cta p{margin:0 auto;max-width:46ch;color:var(--color-slate,#475569)}
.vdb-lock__cta .btn{margin-block-start:6px}

/* ---- Visa eligibility tool (income -> personalised matches) ---- */
.vdb-elig{background:linear-gradient(135deg,rgba(0,76,199,.06),rgba(234,174,6,.08));border:1px solid var(--l);border-radius:14px;padding:16px 18px;margin-block-end:16px;display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.vdb-elig__field{display:flex;flex-direction:column;gap:6px}
.vdb-elig__field label{font-weight:700;font-size:.98rem;color:var(--color-ink,#0B0F1A)}
.vdb-elig__input{position:relative;display:inline-flex;align-items:center}
.vdb-elig__cur{position:absolute;inset-inline-start:12px;color:var(--color-muted,#6B7280);font-weight:700;pointer-events:none}
.vdb-elig__input input{padding:10px 12px;padding-inline-start:28px;border:1.5px solid var(--l);border-radius:10px;font:inherit;min-height:44px;width:210px;background:#fff}
.vdb-elig__input input:focus{outline:2px solid var(--color-blue,#004CC7);outline-offset:1px;border-color:var(--color-blue,#004CC7)}
.vdb-elig__summary{margin:0;font-weight:600;font-size:.98rem;color:var(--color-ink,#0B0F1A)}
.vdb-elig__summary strong{color:var(--color-blue,#004CC7)}
.vfit{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap}
.vfit--yes{background:#e7f4ec;color:#1f7a4d}
.vfit--cond{background:#f9f0dc;color:#9a6b00}
.vfit--short{background:#fbecea;color:#c0392b}
.vfit--closed{background:#eeece6;color:#5d6675}
.vrow--qualify td{background:rgba(31,122,77,.055)}
.vrow--short td{opacity:.72}
