/* public/css/auth/register.css
   Le 407 righe della pagina di registrazione. Stavano in un <style> dentro a
   @push('styles'), subito dopo il foglio comune dell'accesso: il link resta
   nello stesso punto, cosi' l'ordine non cambia. */

/* I campi non hanno piu' regole qui: misure, cornice, carattere,
     inchiostro ed etichetta flottante arrivano dal sistema comune
     (spedireweb-pro.css, sezione 112). */

  /* Il selettore a segmenti sta ora nel sistema (spedireweb-pro.css, §53):
     e' un componente, non una regola di pagina. */

  .register-page__terms-panel {
    background: transparent;
    border-color: color-mix(in srgb, var(--spedire-border, #e2e8f0) 65%, transparent) !important;
  }

  html[data-theme="dark"] .register-page__terms-panel {
    background: transparent;
    border-color: var(--spedire-border) !important;
  }

  /* Country / City */
  .country-select { position: relative; }
  /* Misure, spaziature e colori del bottone arrivano da `.log-select-btn` e
     `.log-label` nel foglio comune: qui restano solo bandiera e mappamondo,
     che stanno nel flusso come nel campo della home, non in posizione
     assoluta con 3rem di rientro. */
  /* Posizione e misura di mappamondo e bandiera arrivano dal foglio comune
     (`login-page__input-icon` e `.log-select-btn > .flag-ico`): qui resta
     solo il colore, che e' quello delle icone dei campi. */
  .country-btn .country-placeholder-icon {
    color: var(--sw-muted, #617087);
    line-height: 1;
  }
  .country-btn.has-country .country-placeholder-icon {
    display: none;
  }

  /* --- le due tendine (paese e citta') -------------------------------------
     Erano scritte con colori a mano — #fff, #212529, rgba(0,0,0,.12), #eef5ff —
     e percio' avevano bisogno di un blocco `html[data-theme="dark"]` gemello
     per non restare bianche al buio. Adesso prendono i gettoni comuni: al
     cambio di tema non c'e' niente da riscrivere. Il raggio e' quello del
     campo da cui pendono (`--sw-field-radius`), non un valore a caso. */
  .country-dd {
    position: absolute;
    left: 0;
    right: 0;
    margin-top: .25rem;
    background: var(--sw-surface, #fff);
    color: var(--sw-ink, #0e1b2e);
    border: 1px solid var(--sw-line, #e4e9f0);
    border-radius: var(--sw-field-radius, 5px) !important;
    box-shadow: var(--sw-shadow-md, 0 .5rem 1rem rgba(0,0,0,.15));
    z-index: 1060;
    overflow: auto;
  }
  .country-list,
  .city-list {
    max-height: 260px !important;
    overflow: auto !important;
    padding: .25rem;
  }
  .country-option {
    display: flex;
    align-items: center;
    gap: .55rem;
    padding: .5rem .75rem;
    border-radius: 0;
    cursor: pointer;
    font-weight: 400;
    color: inherit;
  }
  .country-option .fi {
    width: 20px;
    height: 15px;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.06) inset;
  }
  .country-dd .item.active,
  .country-dd .item:hover,
  .country-dd .country-option[aria-selected="true"] {
    background: var(--sw-surface-2, #f0f4f9);
    color: var(--sw-ink, #0e1b2e);
  }
  .country-dd .empty {
    padding: .5rem .75rem;
    color: var(--sw-muted, #617087);
  }
  /* La porzione trovata: stesso trattamento della tendina delle citta' in
     home (spedireweb-pro.css, sezione 27). */
  .country-dd .autocomplete-highlight {
    font-weight: 600;
    text-decoration: underline;
    color: var(--sw-brand-700, #b5172a);
  }
  .select2-dropdown .select2-results__option .country-option,
  .select2-dropdown .select2-results__option .country-option:hover,
  .select2-dropdown .select2-results__option--highlighted .country-option,
  .select2-dropdown .select2-results__option[aria-selected="true"] .country-option {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
  }
  .select2-container .select2-selection__rendered .country-option,
  .select2-container .select2-selection__rendered .country-option:hover {
    background: transparent !important;
  }
  .country-option small {
    color: var(--sw-muted, #617087);
    font-weight: 700;
    margin-left: auto;
  }

  /* Le righe della tendina portano due classi, `country-option` e `item`:
     a vincere e' `item`, che un foglio globale scrive con `!important`.
     Senza queste quattro scritture piu' pesanti il raggio scendeva a 0 e la
     riga da 33px a 19px — misurato togliendole. */
  body.nedate-ui-standard .register-page .country-dd {
    background: var(--sw-surface, #fff) !important;
    border-color: var(--sw-line, #e4e9f0) !important;
    border-radius: var(--sw-field-radius, 5px) !important;
    box-shadow: var(--sw-shadow-md, 0 .5rem 1rem rgba(0,0,0,.15)) !important;
  }
  body.nedate-ui-standard .register-page .country-dd .item {
    gap: .55rem !important;
    padding: .5rem .75rem !important;
    border-radius: 0 !important;
    font-weight: 400 !important;
    color: var(--sw-ink, #0e1b2e) !important;
  }
  body.nedate-ui-standard .register-page .country-dd .item .fi {
    margin-right: .55rem !important;
  }
  body.nedate-ui-standard .register-page .country-dd .item.active,
  body.nedate-ui-standard .register-page .country-dd .item:hover {
    background: var(--sw-surface-2, #f0f4f9) !important;
    color: var(--sw-ink, #0e1b2e) !important;
  }

  /* `.city-option`, `.city-main` e `.city-meta`: li veste il foglio comune
     (sezione 193), insieme al resto del suggeritore delle citta'. */

  .city-ac .spinner-ac {
    position: absolute;
    right: 0.6rem;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 16px;
    border: 2px solid var(--sw-line-strong, #cfd8e4);
    border-top-color: var(--sw-brand-600, #d92336);
    border-radius: 999px;
    animation: register-trkspin 0.75s linear infinite;
  }
  @keyframes register-trkspin {
    to {
      transform: translateY(-50%) rotate(360deg);
    }
  }

  .terms-check {
    display: flex;
    align-items: center;
    gap: 0.55rem;
  }
  .terms-check .form-check-label {
    line-height: 1.45;
    font-weight: 400;
  }

  .register-page__select-field {
    position: relative;
  }

  /* La colonna che ospita partita IVA e codice fiscale resta in pagina anche
     quando sono nascosti tutti e due: vuota, si porta dietro il rientro della
     griglia e apriva un buco fra la tendina fiscale e la nazione. Misurato:
     44,1px contro i 14px che separano gli altri campi. */
  #business-block .col-md-12:has(> #vat-wrap.d-none):has(> #taxcode-wrap.d-none) {
    display: none;
  }

  span.country-label.text-truncate {
    display: block;
    min-width: 0;
  }

  body:has(.register-page) .register-page {
    padding-top: clamp(2.6rem, 4vw, 4.25rem) !important;
  }

  body:has(.register-page) .register-page__main-row {
    align-items: flex-start !important;
  }

  body:has(.register-page) .register-page .login-page__brand-panel {
    min-height: auto !important;
  }

  body:has(.register-page) .register-page .login-page__brand-head {
    flex: 0 0 auto;
  }

  body:has(.register-page) .register-page .login-page__title {
    max-width: 45rem;
    font-size: clamp(2.55rem, 3.25vw, 4.1rem);
    line-height: 1.02;
  }

  body:has(.register-page) .register-page .login-page__lead {
    max-width: 35rem;
  }

  body:has(.register-page) .register-page .login-page__features {
    width: min(100%, 31rem);
    gap: 1.25rem;
  }

  body:has(.register-page) .register-page .login-page__form-shell {
    max-width: 980px !important;
  }

  body:has(.register-page) .register-page .login-page__card,
  body.nedate-ui-standard:has(.register-page) .register-page .login-page__card {
    display: grid !important;
    grid-template-columns: minmax(430px, 1fr) minmax(280px, 360px) !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .90) !important;
  }

  body:has(.register-page) .register-page .login-page__card > .card-body,
  body.nedate-ui-standard:has(.register-page) .register-page .login-page__card > .card-body {
    padding: clamp(1.7rem, 2.2vw, 2.25rem) !important;
    border-right: 1px solid rgba(20, 39, 74, .10) !important;
  }

  body:has(.register-page) .register-page .login-page__card h2 {
    font-size: clamp(2rem, 2.2vw, 2.65rem) !important;
  }

  body:has(.register-page) .register-page #registerForm {
    margin-top: 1.25rem !important;
  }



  body:has(.register-page) .register-page .form-label {
    color: var(--login-navy) !important;
    font-size: .78rem !important;
    font-weight: 900 !important;
  }

  body:has(.register-page) .register-page #business-block {
    margin-top: 1.35rem !important;
    padding-top: 1.25rem !important;
    border-top-color: rgba(20, 39, 74, .08) !important;
  }

  body:has(.register-page) .register-page__terms-panel {
    margin-top: 1.1rem !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  body:has(.register-page) .register-page #btn-register {
    min-height: 54px !important;
    margin-top: 1.35rem !important;
    border-radius: 9px !important;
  }

  body:has(.register-page) .register-page .login-page__divider {
    margin-top: 1.2rem !important;
    margin-bottom: 1.2rem !important;
  }

  body:has(.register-page) .register-page .login-page__form-shell > p:last-child {
    display: block;
    color: var(--login-muted) !important;
  }

  body:has(.register-page) .register-page__trust-strip {
    max-width: 1280px;
    margin: 2rem auto 0;
  }

  body:has(.register-page) .register-page__security-note {
    margin: 2rem 0 0;
    color: var(--login-muted);
    text-align: center;
    font-size: .92rem;
  }

  body:has(.register-page) .register-page__security-note i {
    margin-right: .55rem;
    color: var(--login-red);
  }

  @media (max-width: 1199.98px) {
    body:has(.register-page) .register-page .login-page__features {
      width: 100%;
    }

    body:has(.register-page) .register-page__trust-strip {
      max-width: 100%;
    }
  }

  @media (max-width: 959.98px) {
    body:has(.register-page) .register-page .login-page__card,
    body.nedate-ui-standard:has(.register-page) .register-page .login-page__card {
      grid-template-columns: 1fr !important;
    }

    body:has(.register-page) .register-page .login-page__card > .card-body,
    body.nedate-ui-standard:has(.register-page) .register-page .login-page__card > .card-body {
      border-right: 0 !important;
    }
  }

  body.nedate-ui-standard:has(.register-page) .register-page .register-page__main-row,
  body:has(.register-page) .register-page .register-page__main-row {
    align-items: flex-start !important;
  }







  /* ======================================================================
     Register page: FINAL FIX for business selects.
     Align Tax ID Type and Country exactly like the other icon fields:
     same icon X, same label X, same value/placeholder X, same font sizing.
     ====================================================================== */
  body:has(.register-page) .register-page #registerForm .country-btn.has-country .country-placeholder-icon,
  body.nedate-ui-standard:has(.register-page) .register-page #registerForm .country-btn.has-country .country-placeholder-icon {
    display: none !important;
  }



  /* Il nome del paese e la freccia: stessa regola della home, niente
     posizionamento assoluto e niente colori scritti a mano. */
  body:has(.register-page) .register-page #registerForm .country-btn .country-label.text-truncate,
  body.nedate-ui-standard:has(.register-page) .register-page #registerForm .country-btn .country-label.text-truncate {
    min-width: 0 !important;
  }


  /* Al buio ai campi ci pensano le regole comuni: qui non resta niente da
     forzare, ne' per la tendina fiscale ne' per il bottone della nazione. */


  /* ======================================================================
     Register page: FINAL dark-mode cleanup.
     Remove remaining light slabs/cards and restore readable dark surfaces.
     ====================================================================== */
  html[data-theme="dark"] body:has(.register-page),
  html[data-bs-theme="dark"] body:has(.register-page),
  body[data-theme="dark"]:has(.register-page),
  body[data-bs-theme="dark"]:has(.register-page),
  body.dark:has(.register-page),
  body.dark-mode:has(.register-page),
  body.theme-dark:has(.register-page) {
    --register-dark-surface: rgba(10, 19, 34, .92);
    --register-dark-surface-2: rgba(13, 24, 42, .96);
    --register-dark-border: rgba(148, 163, 184, .22);
    --register-dark-border-soft: rgba(148, 163, 184, .14);
    --register-dark-text: #f8fafc;
    --register-dark-muted: #a8b3c7;
  }

  html[data-theme="dark"] body:has(.register-page) .register-page #business-block,
  html[data-bs-theme="dark"] body:has(.register-page) .register-page #business-block,
  body[data-theme="dark"]:has(.register-page) .register-page #business-block,
  body[data-bs-theme="dark"]:has(.register-page) .register-page #business-block,
  body.dark:has(.register-page) .register-page #business-block,
  body.dark-mode:has(.register-page) .register-page #business-block,
  body.theme-dark:has(.register-page) .register-page #business-block,
  html[data-theme="dark"] body.nedate-ui-standard:has(.register-page) .register-page #business-block,
  html[data-bs-theme="dark"] body.nedate-ui-standard:has(.register-page) .register-page #business-block,
  body[data-theme="dark"].nedate-ui-standard:has(.register-page) .register-page #business-block,
  body[data-bs-theme="dark"].nedate-ui-standard:has(.register-page) .register-page #business-block,
  body.dark.nedate-ui-standard:has(.register-page) .register-page #business-block,
  body.dark-mode.nedate-ui-standard:has(.register-page) .register-page #business-block,
  body.theme-dark.nedate-ui-standard:has(.register-page) .register-page #business-block {
    border-top-color: var(--register-dark-border-soft) !important;
  }
  html[data-theme="dark"] body:has(.register-page) .register-page .form-label,
  html[data-bs-theme="dark"] body:has(.register-page) .register-page .form-label,
  body[data-theme="dark"]:has(.register-page) .register-page .form-label,
  body[data-bs-theme="dark"]:has(.register-page) .register-page .form-label,
  body.dark:has(.register-page) .register-page .form-label,
  body.dark-mode:has(.register-page) .register-page .form-label,
  body.theme-dark:has(.register-page) .register-page .form-label,
  html[data-theme="dark"] body:has(.register-page) .register-page .register-page__security-note,
  html[data-bs-theme="dark"] body:has(.register-page) .register-page .register-page__security-note,
  body[data-theme="dark"]:has(.register-page) .register-page .register-page__security-note,
  body[data-bs-theme="dark"]:has(.register-page) .register-page .register-page__security-note,
  body.dark:has(.register-page) .register-page .register-page__security-note,
  body.dark-mode:has(.register-page) .register-page .register-page__security-note,
  body.theme-dark:has(.register-page) .register-page .register-page__security-note {
    color: var(--register-dark-muted) !important;
  }
