/* NAC Quick Apply M10: mobile-first, searchable countries and official brand assets */
.qva-brand-logo {
  display:block;
  width:auto;
  height:48px;
  max-width:190px;
  object-fit:contain;
}
.qva-brand > span:last-child { min-width:0; }
.qva-country-control,
.qva-country-multi-control {
  position:relative;
}
.qva-country-input-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) 52px;
  gap:.65rem;
  align-items:stretch;
}
.qva-country-input-row input {
  min-width:0;
}
.qva-country-toggle {
  min-height:52px;
  border:1px solid rgba(148,163,184,.38);
  border-radius:14px;
  background:rgba(15,23,42,.72);
  color:#f8fafc;
  font-size:1.15rem;
  cursor:pointer;
}
.qva-country-toggle:hover,
.qva-country-toggle:focus-visible {
  border-color:#e8c56c;
  box-shadow:0 0 0 3px rgba(232,197,108,.16);
}
.qva-country-options {
  position:absolute;
  z-index:70;
  left:0;
  right:0;
  top:calc(100% + .45rem);
  max-height:19rem;
  overflow:auto;
  padding:.45rem;
  border:1px solid rgba(148,163,184,.34);
  border-radius:16px;
  background:#061426;
  box-shadow:0 24px 70px rgba(0,0,0,.48);
  overscroll-behavior:contain;
}
[data-country-selector][data-open="false"] .qva-country-options,
[data-country-multi-selector][data-open="false"] .qva-country-options {
  display:none;
}
.qva-country-option {
  width:100%;
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  padding:.7rem .85rem;
  border:0;
  border-radius:11px;
  background:transparent;
  color:#e5eef9;
  text-align:left;
  cursor:pointer;
}
.qva-country-option:hover,
.qva-country-option:focus-visible,
.qva-country-option.is-active {
  background:rgba(31,111,181,.22);
  outline:1px solid rgba(96,165,250,.42);
}
.qva-country-name {
  font-weight:700;
}
.qva-country-code {
  flex:0 0 auto;
  color:#e8c56c;
  font-size:.78rem;
  font-weight:800;
  letter-spacing:.08em;
}
.qva-country-empty {
  margin:0;
  padding:1rem;
  color:#aebed2;
}
.qva-country-chips {
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  margin-top:.65rem;
}
.qva-country-chip {
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.45rem .55rem .45rem .75rem;
  border:1px solid rgba(96,165,250,.38);
  border-radius:999px;
  background:rgba(31,111,181,.16);
  color:#edf6ff;
}
.qva-country-chip button {
  width:28px;
  height:28px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:#fff;
  cursor:pointer;
}
.qva-country-chip button:hover,
.qva-country-chip button:focus-visible {
  background:#c22020;
}
.qva-country-hidden {
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}
.qva-mobile-journey-toggle,
.qva-mobile-journey-close,
.qva-mobile-journey-backdrop {
  display:none;
}

@media (max-width: 72rem) {
  .qva-main {
    width:min(100% - 2rem, 92rem);
  }
  .qva-layout {
    grid-template-columns:minmax(15rem,18rem) minmax(0,1fr);
  }
  .qva-hero {
    grid-template-columns:minmax(0,1fr) auto;
  }
}

@media (max-width: 56.25rem) {
  html, body {
    max-width:100%;
    overflow-x:hidden;
  }
  body.qva-mobile-journey-open {
    overflow:hidden;
  }
  .qva-header-inner {
    min-height:68px;
    padding:.65rem 1rem;
  }
  .qva-brand-logo {
    height:40px;
    max-width:150px;
  }
  .qva-brand small {
    font-size:.66rem;
  }
  .qva-header-trust {
    gap:.5rem;
  }
  .qva-secure-pill {
    padding:.55rem .7rem;
    font-size:.78rem;
  }
  .qva-help-link {
    min-height:44px;
    display:inline-flex;
    align-items:center;
    padding:.5rem .65rem;
    border-radius:12px;
    background:rgba(255,255,255,.06);
    font-size:0;
  }
  .qva-help-link::after {
    content:'WhatsApp';
    font-size:.82rem;
  }
  .qva-main {
    width:min(100% - 1rem, 48rem);
    padding-top:1rem;
  }
  .qva-hero {
    grid-template-columns:1fr;
    gap:1rem;
    padding:1.25rem 1rem;
    border-radius:22px;
  }
  .qva-hero h1 {
    font-size:clamp(2rem,9vw,3.25rem);
    line-height:1.03;
  }
  .qva-lead {
    font-size:1rem;
  }
  .qva-hero-orbit {
    width:100%;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.5rem;
  }
  .qva-hero-orbit > div {
    min-width:0;
    padding:.75rem .45rem;
  }
  .qva-hero-orbit strong {
    font-size:1.1rem;
  }
  .qva-hero-orbit span {
    font-size:.68rem;
  }
  .qva-mobile-journey-toggle {
    width:100%;
    min-height:52px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:1rem;
    margin:.8rem 0;
    padding:.75rem .9rem;
    border:1px solid rgba(96,165,250,.34);
    border-radius:16px;
    background:rgba(7,31,55,.92);
    color:#fff;
    font-weight:800;
    text-align:left;
  }
  .qva-mobile-journey-toggle small {
    display:block;
    color:#aabbd0;
    font-weight:600;
  }
  .qva-layout {
    display:block;
  }
  .qva-journey {
    display:none;
    position:fixed;
    z-index:120;
    inset:0 auto 0 0;
    width:min(88vw,23rem);
    max-height:100dvh;
    overflow:auto;
    padding:1rem;
    border-radius:0 22px 22px 0;
    background:#061426;
    box-shadow:30px 0 80px rgba(0,0,0,.55);
  }
  .qva-journey[data-mobile-open="true"] {
    display:block;
  }
  .qva-mobile-journey-close {
    width:100%;
    min-height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:1rem;
    border:1px solid rgba(148,163,184,.35);
    border-radius:14px;
    background:rgba(255,255,255,.06);
    color:#fff;
    font-weight:800;
  }
  .qva-mobile-journey-backdrop:not([hidden]) {
    display:block;
    position:fixed;
    z-index:110;
    inset:0;
    border:0;
    background:rgba(0,7,18,.72);
    backdrop-filter:blur(4px);
  }
  .qva-workspace {
    min-width:0;
  }
  .qva-command-card {
    padding:.85rem;
    border-radius:22px;
  }
  .qva-command-head {
    align-items:flex-start;
    gap:.6rem;
  }
  .qva-command-head h2 {
    font-size:1.35rem;
  }
  .qva-lock {
    white-space:nowrap;
    font-size:.68rem;
    padding:.42rem .55rem;
  }
  .qva-assurance-grid {
    grid-template-columns:1fr;
    gap:.55rem;
  }
  .qva-assurance-grid > div {
    min-height:auto;
    padding:.8rem;
  }
  .qva-toolbar {
    display:grid;
    grid-template-columns:1fr;
  }
  .qva-toolbar .qva-button {
    width:100%;
  }
  .qva-mode-grid,
  .qva-member-grid,
  .qva-money {
    grid-template-columns:1fr;
  }
  .qva-mode-card {
    min-height:72px;
  }
  .qva-step {
    padding:.85rem 0 0;
  }
  .qva-field {
    padding:1rem .85rem;
    border-radius:17px;
  }
  .qva-field > label {
    font-size:1rem;
  }
  .qva-field input,
  .qva-field select,
  .qva-field textarea,
  .qva-country-toggle {
    min-height:52px;
    font-size:16px;
  }
  .qva-choice {
    display:grid;
    grid-template-columns:1fr;
  }
  .qva-choice-label {
    min-height:52px;
  }
  .qva-actions {
    position:sticky;
    z-index:80;
    bottom:0;
    display:grid;
    grid-template-columns:auto minmax(0,1fr);
    gap:.65rem;
    margin:1rem -.85rem -.85rem;
    padding:.8rem;
    border-radius:18px 18px 20px 20px;
    background:rgba(3,17,31,.96);
    box-shadow:0 -12px 32px rgba(0,0,0,.28);
    backdrop-filter:blur(12px);
  }
  .qva-actions .qva-action-hint {
    display:none;
  }
  .qva-actions .qva-button-primary {
    width:100%;
  }
  .qva-route-summary {
    padding:1rem;
  }
  .qva-finish-actions .qva-button {
    width:100%;
  }
  .qva-footer {
    padding:1.2rem 1rem 6rem;
    text-align:center;
  }
}

@media (max-width: 40rem) {
  .qva-header-inner {
    gap:.5rem;
  }
  .qva-brand > span:last-child {
    display:none;
  }
  .qva-brand-logo {
    height:38px;
    max-width:135px;
  }
  .qva-secure-pill {
    display:none;
  }
  .qva-main {
    width:calc(100% - .75rem);
  }
  .qva-hero {
    padding:1rem .8rem;
  }
  .qva-kicker {
    font-size:.7rem;
  }
  .qva-hero-orbit {
    overflow-x:auto;
    grid-template-columns:repeat(3,minmax(6.7rem,1fr));
    padding-bottom:.2rem;
  }
  .qva-command-card {
    padding:.65rem;
  }
  .qva-command-head {
    display:block;
  }
  .qva-lock {
    display:inline-flex;
    margin-top:.6rem;
  }
  .qva-field {
    padding:.9rem .7rem;
  }
  .qva-country-input-row {
    grid-template-columns:minmax(0,1fr) 48px;
    gap:.45rem;
  }
  .qva-country-options {
    position:fixed;
    z-index:150;
    left:.5rem;
    right:.5rem;
    top:auto;
    bottom:.5rem;
    max-height:min(68dvh,34rem);
    border-radius:22px;
    padding:.65rem;
  }
  .qva-country-option {
    min-height:52px;
  }
  .qva-actions {
    margin-left:-.65rem;
    margin-right:-.65rem;
    margin-bottom:-.65rem;
  }
}

@media (max-width: 22rem) {
  .qva-header-inner {
    padding:.5rem;
  }
  .qva-brand-logo {
    max-width:110px;
  }
  .qva-help-link::after {
    content:'Chat';
  }
  .qva-hero h1 {
    font-size:1.85rem;
  }
  .qva-hero-orbit {
    grid-template-columns:repeat(3,minmax(6rem,1fr));
  }
  .qva-actions {
    grid-template-columns:1fr;
  }
  .qva-actions .qva-button {
    width:100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .qva-journey,
  .qva-country-options {
    scroll-behavior:auto;
  }
}
