/* ==========================================================================
   Iscrizione dal sito (richieste v4, K2 + seconda parte 19/10/2026): pagina
   /iscriviti/ (t4-iscriviti.js). Scelta iniziale (accedi con il box oppure
   ospite), poi i passi: kart, dettagli, pilota, materiale, riepilogo, pagamento.
   - .t4is-steps   indicatore dei passi con il pallino del "sei qui"
   - .t4is-grid    modulo a sinistra, riepilogo con il prezzo a destra
   - .t4is-opt     card di scelta (stessa forma delle card del configuratore)
   Token e .t4-pill da t4-fx.css. Misure in px con clamp(): la root del tema
   cambia valore con la larghezza. Niente position:sticky (ScrollSmoother da
   992px). Movimento solo con prefers-reduced-motion: no-preference.
   ========================================================================== */
.t4is { color: var(--t4-navy); font-family: var(--t4-mono); font-size: 14px; line-height: 1.55; margin-top: clamp(24px, 3vw, 48px); }
.t4is *, .t4is *::before, .t4is *::after { box-sizing: border-box; }
.t4is :focus-visible { outline: 2px solid var(--t4-blue); outline-offset: 3px; }
.t4is a { color: var(--t4-blue); }
.t4is [hidden] { display: none !important; }

/* ---------------- passi ---------------- */
.t4is-steps { counter-reset: none; display: flex; gap: 6px; list-style: none; margin: 0 0 clamp(20px, 2.4vw, 36px); overflow-x: auto; padding: 0 0 4px; scrollbar-width: none; }
.t4is-steps::-webkit-scrollbar { display: none; }
.t4is-steps li { flex: 1 0 auto; min-width: 0; }
.t4is-steps__b {
  align-items: flex-start;
  background: none;
  border: 0;
  border-top: 2px solid var(--t4-hair);
  color: rgba(14, 20, 48, .5);
  display: flex;
  flex-direction: column;
  font: inherit;
  font-size: 11px;
  gap: 4px;
  letter-spacing: .1em;
  padding: 10px 2px 0;
  position: relative;
  text-align: left;
  text-transform: uppercase;
  width: 100%;
}
button.t4is-steps__b { cursor: pointer; }
button.t4is-steps__b:hover { color: var(--t4-navy); }
.t4is-steps__b b { font-weight: 400; }
.t4is-steps li.is-done .t4is-steps__b { border-top-color: var(--t4-ink); color: var(--t4-navy); }
.t4is-steps li.is-on .t4is-steps__b { border-top-color: var(--t4-blue); color: var(--t4-navy); }
/* il pallino del "sei qui" (piano v3 §0.1) */
.t4is-steps li.is-on .t4is-steps__b::after { background: var(--t4-blue); border-radius: 50%; content: ""; height: 6px; left: 2px; position: absolute; top: -4px; width: 6px; }
@media (max-width: 575px) { .t4is-steps li:not(.is-on) .t4is-steps__l { display: none; } }

/* ---------------- griglia: modulo + riepilogo ---------------- */
.t4is-grid { align-items: start; display: grid; gap: clamp(20px, 3vw, 56px); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 992px) { .t4is-grid { grid-template-columns: minmax(0, 1.55fr) minmax(320px, 1fr); } }

.t4is-step__k { color: var(--t4-blue); font-size: 11px; letter-spacing: .12em; margin: 0; text-transform: uppercase; }
.t4is-step__h { color: var(--t4-navy); font-family: var(--t4-head); font-size: clamp(24px, 2vw, 36px); font-weight: 500; letter-spacing: -.02em; line-height: 1.05; margin: 8px 0 0; text-transform: uppercase; }
.t4is-step__h:focus, .t4is .t4is-step__h:focus-visible { outline: none; }   /* fuoco da script sul titolo del passo: solo per i lettori di schermo */
.t4is-step__why { margin: 12px 0 0; max-width: 62ch; opacity: .8; }
.t4is fieldset { border: 0; margin: 0; min-width: 0; padding: 0; }
.t4is-sub { font-size: 11px; letter-spacing: .1em; margin: 26px 0 0; opacity: .7; text-transform: uppercase; }
.t4is-step > .t4is-sub:first-of-type { margin-top: 22px; }

/* card di scelta: input radio vero (tastiera, lettori di schermo), card disegnata */
.t4is-opts { display: grid; gap: 10px; margin-top: 14px; }
@media (min-width: 768px) { .t4is-opts--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.t4is-opt { cursor: pointer; display: block; position: relative; }
.t4is-opt input { height: 1px; left: 0; opacity: 0; position: absolute; top: 0; width: 1px; }
.t4is-opt__c {
  align-items: center;
  background: #fff;
  border: 1px solid var(--t4-hair);
  border-radius: 24px;
  column-gap: 14px;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) auto;
  height: 100%;
  min-height: 72px;
  padding: 16px 20px 16px 16px;
  transition: border-color .25s ease, box-shadow .25s ease, background-color .25s ease;
}
.t4is-opt:hover .t4is-opt__c { border-color: rgba(14, 20, 48, .38); }
.t4is-opt input:checked + .t4is-opt__c { background: linear-gradient(rgba(134, 160, 255, .12), rgba(134, 160, 255, .12)), #fff; border-color: var(--t4-blue); box-shadow: inset 0 0 0 1px var(--t4-blue); }
.t4is-opt input:focus-visible + .t4is-opt__c { outline: 2px solid var(--t4-blue); outline-offset: 3px; }
.t4is-opt__r { border: 1px solid rgba(14, 20, 48, .4); border-radius: 50%; display: grid; height: 20px; place-items: center; width: 20px; }
.t4is-opt__r::after { background: var(--t4-blue); border-radius: 50%; content: ""; height: 10px; transform: scale(0); transition: transform .25s var(--t4-ease); width: 10px; }
.t4is-opt input:checked + .t4is-opt__c .t4is-opt__r { border-color: var(--t4-blue); }
.t4is-opt input:checked + .t4is-opt__c .t4is-opt__r::after { transform: scale(1); }
.t4is-opt__t { display: grid; gap: 3px; min-width: 0; }
.t4is-opt__t strong { font-family: var(--t4-head); font-size: 17px; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; }
.t4is-opt__t small { font-size: 12px; line-height: 1.45; opacity: .72; }
.t4is-opt__p { font-size: 12px; justify-self: end; letter-spacing: .04em; text-align: right; text-transform: uppercase; white-space: nowrap; }
.t4is-opt__p.is-tbd, .t4is-tbd { color: #8a5a00; }
.t4is-opt__p.is-incl { color: var(--t4-blue); }
.t4is-opts--chips { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.t4is-opts--chips .t4is-opt__c { grid-template-columns: 22px minmax(0, 1fr); min-height: 64px; row-gap: 2px; }
.t4is-opts--chips .t4is-opt__p { grid-column: 2; justify-self: start; text-align: left; }

/* campi */
.t4is-fields { display: grid; gap: 18px 16px; grid-template-columns: minmax(0, 1fr); margin-top: 16px; }
@media (min-width: 768px) { .t4is-fields { grid-template-columns: repeat(2, minmax(0, 1fr)); } .t4is-field--full { grid-column: 1 / -1; } }
.t4is-field label { display: block; font-size: 11px; letter-spacing: .08em; line-height: 1.45; margin-bottom: 7px; opacity: .85; text-transform: uppercase; }
.t4is-field label i { color: var(--t4-blue); font-style: normal; }
.t4is-field :is(input, textarea, select) {
  appearance: none;
  background: #fff;
  border: 1px solid rgba(14, 20, 48, .45);
  border-radius: 12px;
  color: var(--t4-navy);
  font: inherit;
  font-size: 16px;   /* niente zoom su iOS */
  padding: 12px 14px;
  transition: border-color .25s ease;
  width: 100%;
}
.t4is-field textarea { min-height: 96px; resize: vertical; }
.t4is-field :is(input, textarea, select):focus-visible { border-color: var(--t4-blue); outline-offset: 2px; }
.t4is-field input::placeholder { color: rgba(14, 20, 48, .42); }
.t4is-field input[type=date]::-webkit-date-and-time-value { min-height: 1.5em; text-align: left; }
.t4is-field input[type=date]::-webkit-calendar-picker-indicator { cursor: pointer; }
.t4is-field small { display: block; font-size: 12px; line-height: 1.45; margin-top: 6px; opacity: .7; }
.t4is-unit { position: relative; }
.t4is-unit input { padding-right: 46px; }
.t4is-unit span { font-size: 12px; letter-spacing: .06em; opacity: .6; pointer-events: none; position: absolute; right: 14px; top: 50%; transform: translateY(-50%); text-transform: uppercase; }
.t4is [aria-invalid=true] { border-color: #b42318 !important; }
.t4is-err { color: #b42318; font-size: 12.5px; line-height: 1.4; margin: 6px 0 0; }
.t4is-consent { align-items: flex-start; display: flex; flex-wrap: wrap; gap: 0 12px; grid-column: 1 / -1; line-height: 1.5; }
.t4is-consent label { flex: 1 1 0; min-width: 0; }
.t4is-consent .t4is-err { flex-basis: 100%; padding-left: 32px; }
.t4is-consent input { accent-color: var(--t4-blue); flex: 0 0 auto; height: 20px; margin: 1px 0 0; width: 20px; }
.t4is-hp { height: 1px; left: -10000px; overflow: hidden; position: absolute; width: 1px; }

/* fila dei pulsanti del passo */
.t4is-nav { align-items: center; border-top: 1px solid var(--t4-hair); display: flex; flex-wrap: wrap; gap: 12px 16px; justify-content: space-between; margin-top: clamp(24px, 2.6vw, 40px); padding-top: 20px; }
.t4is-back { background: none; border: 0; color: var(--t4-navy); cursor: pointer; font: inherit; font-size: 12px; letter-spacing: .1em; padding: 10px 0; text-transform: uppercase; }
.t4is-back:hover { color: var(--t4-blue); }
.t4is-back[hidden] + .t4is-next, .t4is-nav > :only-child { margin-left: auto; }
.t4is-msg { color: #b42318; flex-basis: 100%; margin: 0; }
.t4is-msg.is-info { color: var(--t4-navy); opacity: .8; }

/* riepilogo del passo 4 */
.t4is-rev { border-top: 1px solid var(--t4-hair); margin: 18px 0 0; }
.t4is-rev > div { border-bottom: 1px solid var(--t4-hair); column-gap: 16px; display: grid; grid-template-columns: minmax(110px, 30%) minmax(0, 1fr) auto; padding: 12px 0; }
.t4is-rev dt { font-size: 11px; letter-spacing: .1em; opacity: .7; padding-top: 2px; text-transform: uppercase; }
.t4is-rev dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.t4is-edit { background: none; border: 0; color: var(--t4-blue); cursor: pointer; font: inherit; font-size: 11px; letter-spacing: .1em; padding: 2px 0; text-decoration: underline; text-transform: uppercase; }
.t4is-pay { background: rgba(134, 160, 255, .12); border-radius: 16px; margin-top: 18px; padding: 16px 18px; }
.t4is-pay p { margin: 0; }
.t4is-pay p + p { margin-top: 8px; }
.t4is-pay strong { font-family: var(--t4-head); font-size: 16px; font-weight: 500; }

/* ---------------- riepilogo laterale ---------------- */
.t4is-sum { background: var(--t4-grad); border-radius: 24px; box-shadow: 0 24px 60px rgba(14, 20, 48, .18); color: #fff; overflow: hidden; padding: clamp(20px, 2vw, 32px); position: relative; }
.t4is-sum__k { color: #c9d4ff; font-size: 11px; letter-spacing: .12em; margin: 0; text-transform: uppercase; }
.t4is-sum__t { font-family: var(--t4-head); font-size: clamp(24px, 2vw, 34px); font-weight: 500; letter-spacing: -.02em; line-height: 1.05; margin: 10px 0 0; text-transform: uppercase; }
.t4is-sum__p { margin: 8px 0 0; opacity: .85; }
.t4is-sum__dl { align-items: center; display: inline-flex; font-size: 12px; gap: 8px; letter-spacing: .04em; margin: 14px 0 0; }
.t4is-sum__dl.is-urgent { color: #ffb4ab; }
.t4is-lines { border-top: 1px solid rgba(255, 255, 255, .22); list-style: none; margin: 20px 0 0; padding: 0; }
.t4is-lines li { border-bottom: 1px solid rgba(255, 255, 255, .14); column-gap: 12px; display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: 10px 0; }
.t4is-lines li small { display: block; font-size: 11px; opacity: .7; }
.t4is-lines b { font-weight: 400; text-align: right; white-space: nowrap; }
.t4is-lines .is-tbd, .t4is-total .is-tbd { color: #ffd88a; }
.t4is-lines .is-empty { opacity: .6; }
.t4is-total { align-items: baseline; display: flex; gap: 12px; justify-content: space-between; margin: 16px 0 0; }
.t4is-total span { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.t4is-total b { font-family: var(--t4-head); font-size: clamp(30px, 2.6vw, 44px); font-weight: 500; letter-spacing: -.02em; line-height: 1; }
.t4is-sum__note { font-size: 12px; line-height: 1.5; margin: 14px 0 0; opacity: .8; }
.t4is-sum__acc { border-top: 1px solid rgba(255, 255, 255, .22); font-size: 12px; margin: 18px 0 0; padding-top: 14px; }
.t4is-sum__acc a { color: #fff; }

/* ---------------- esito, gare aperte, messaggi ---------------- */
.t4is-done { max-width: 760px; }
.t4is-done__code { display: inline-block; font-size: 12px; letter-spacing: .12em; margin-top: 16px; padding: 6px 12px; border: 1px solid var(--t4-hair); border-radius: 999px; }
.t4is-done__actions, .t4is-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; }
.t4is-load { opacity: .7; padding: 40px 0; }
.t4is-races { display: grid; gap: 12px; list-style: none; margin: 18px 0 0; padding: 0; }
@media (min-width: 768px) { .t4is-races { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.t4is-race { align-items: center; background: #fff; border: 1px solid var(--t4-hair); border-radius: 24px; display: grid; gap: 14px; grid-template-columns: minmax(0, 1fr) auto; padding: 18px 20px; }
.t4is-race strong { display: block; font-family: var(--t4-head); font-size: 18px; font-weight: 500; letter-spacing: -.01em; line-height: 1.2; }
.t4is-race small { display: block; font-size: 12px; margin-top: 4px; opacity: .72; }
/* "Iscriviti in un passo" è una pillola piena (23/10/2026): finché la card non è
   larga abbastanza il pulsante va sotto il nome della gara, non lo schiaccia */
@media (max-width: 1199px) { .t4is-race { grid-template-columns: minmax(0, 1fr); } .t4is-race .t4-pill { justify-self: start; } }
@media (max-width: 599px) { .t4is-race .t4-pill { justify-content: space-between; justify-self: stretch; } }

@media (prefers-reduced-motion: no-preference) {
  .t4is-step:not([hidden]) { animation: t4is-in .45s var(--t4-ease) both; }
  @keyframes t4is-in { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
}
/* i link a pillola tengono il colore della loro variante (non il blu dei link) */
.t4is a.t4-pill, .t4is a.t4-pill:hover { color: var(--pill-fg); text-decoration: none; }

/* Verifica v4 (D6): il prezzo compare solo al passo Riepilogo, qui nella colonna chiara */
.t4is-bill { margin-top: 24px; }
.t4is-bill .t4is-sub { margin: 0 0 10px; }
.t4is-bill ul { border-top: 1px solid var(--t4-hair); list-style: none; margin: 0; padding: 0; }
.t4is-bill li { border-bottom: 1px solid var(--t4-hair); column-gap: 12px; display: grid; grid-template-columns: minmax(0, 1fr) auto; padding: 10px 0; }
.t4is-bill li small { display: block; font-size: 11px; opacity: .7; }
.t4is-bill b { font-weight: 400; text-align: right; white-space: nowrap; }
.t4is-bill .is-tbd { color: #8a5a00; }
.t4is-bill__tot { align-items: baseline; display: flex; gap: 12px; justify-content: space-between; margin: 14px 0 0; }
.t4is-bill__tot > span { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.t4is-bill__tot b { font-family: var(--t4-head); font-size: clamp(26px, 2.2vw, 36px); font-weight: 500; letter-spacing: -.02em; line-height: 1; }

/* ---------------- seconda parte (19/10/2026): accesso, materiale ---------------- */
/* scelta iniziale: due card d'azione (link al login del box, pulsante ospite) */
.t4is-who { display: grid; gap: 12px; margin-top: 20px; }
@media (min-width: 768px) { .t4is-who { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.t4is-who__c {
  align-content: start;
  background: #fff;
  border: 1px solid var(--t4-hair);
  border-radius: 24px;
  color: var(--t4-navy);
  cursor: pointer;
  display: grid;
  font: inherit;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 20px 20px 22px;
  text-align: left;
  text-decoration: none;
  transition: border-color .25s ease, box-shadow .25s ease;
}
.t4is a.t4is-who__c { color: var(--t4-navy); text-decoration: none; }
.t4is-who__c:hover { border-color: var(--t4-blue); box-shadow: inset 0 0 0 1px var(--t4-blue); }
.t4is-who__c:focus-visible { outline: 2px solid var(--t4-blue); outline-offset: 3px; }
.t4is-who__t { display: grid; gap: 4px; }
.t4is-who__t small { font-size: 11px; letter-spacing: .1em; opacity: .7; text-transform: uppercase; }
.t4is-who__t strong { font-family: var(--t4-head); font-size: clamp(20px, 1.6vw, 26px); font-weight: 500; letter-spacing: -.01em; line-height: 1.1; }
.t4is-who__d { font-size: 13px; grid-column: 1 / -1; line-height: 1.5; opacity: .78; }
.t4is-who__i { align-self: start; background: var(--t4-navy); border-radius: 50%; color: #fff; display: grid; grid-column: 2; grid-row: 1; height: 36px; place-items: center; width: 36px; }
.t4is-who__i svg { height: 16px; width: 16px; }
.t4is-who__c:hover .t4is-who__i { background: var(--t4-blue); }
.t4is-who__note { font-size: 12.5px; }
.t4is-note { background: rgba(255, 196, 0, .14); border-radius: 14px; margin: 16px 0 0; max-width: 62ch; padding: 12px 16px; }

/* barra "collegato come" sopra i passi */
.t4is-me { align-items: center; border: 1px solid var(--t4-hair); border-radius: 999px; display: flex; flex-wrap: wrap; gap: 4px 14px; justify-content: space-between; margin: 0 0 clamp(16px, 2vw, 28px); padding: 8px 18px; }
.t4is-me p { margin: 0; }
@media (max-width: 575px) { .t4is-me { border-radius: 18px; } }
.t4is-block { margin: 16px 0 0; max-width: 62ch; padding-left: 18px; }
.t4is-block li + li { margin-top: 6px; }

/* dati del profilo (sola lettura) */
.t4is-rev--ro > div { grid-template-columns: minmax(110px, 30%) minmax(0, 1fr); }
.t4is-state { border: 1px solid var(--t4-hair); border-radius: 999px; font-size: 11px; letter-spacing: .06em; margin-left: 6px; padding: 1px 8px; text-transform: uppercase; white-space: nowrap; }
.t4is-state.is-ok { border-color: rgba(30, 130, 76, .4); color: #1e824c; }

/* passo materiale: sezioni della scheda, righe con i loro campi */
.t4is-mat { border-top: 1px solid var(--t4-hair) !important; margin-top: 22px !important; padding-top: 4px !important; }
.t4is-mat > .t4is-sub { float: left; margin-top: 18px; width: 100%; }
.t4is-mat > .t4is-sub + * { clear: both; }
.t4is-mrow { padding-top: 14px; }
.t4is-mrow__l { font-family: var(--t4-head); font-size: 15px; font-weight: 500; margin: 0; }
.t4is-mrow .t4is-fields { margin-top: 10px; }
.t4is-mrow__none { font-size: 13px; margin: 6px 0 0; max-width: 62ch; opacity: .8; }
@media (min-width: 768px) {
  .t4is-fields--1 { grid-template-columns: minmax(0, 1fr); }
  .t4is-fields--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
.t4is-sel { position: relative; }
.t4is-sel select { appearance: none; cursor: pointer; padding-right: 40px; }
.t4is-sel::after { border-bottom: 1.5px solid currentColor; border-right: 1.5px solid currentColor; content: ""; height: 8px; pointer-events: none; position: absolute; right: 18px; top: 45%; transform: translateY(-50%) rotate(45deg); width: 8px; }
.t4is-pay .t4is-pay__pdf { font-size: 12.5px; margin-top: 10px; opacity: .8; }

/* ---------------- 28/10/2026: fatturazione, chi incassa, bonifico/link ---------------- */
/* passo Fatturazione: "Usa i dati del pilota" sopra il nome dell'intestatario */
.t4is-billme { margin-bottom: -10px; }
.t4is-billme.is-off { display: none; }
.t4is-billme .t4is-edit { text-align: left; }
.t4is-field label i[hidden] { display: none; }

/* riepilogo: chi incassa e come si paga */
.t4is-pay__meta { display: grid; gap: 6px; margin: 0 0 12px; }
.t4is-pay__meta > div { column-gap: 12px; display: grid; grid-template-columns: minmax(96px, 30%) minmax(0, 1fr); }
.t4is-pay__meta dt { font-size: 11px; letter-spacing: .1em; opacity: .7; padding-top: 2px; text-transform: uppercase; }
.t4is-pay__meta dd { margin: 0; min-width: 0; overflow-wrap: anywhere; }
.t4is-terms { border-top: 1px solid var(--t4-hair); margin-top: 12px; padding-top: 10px; }
.t4is-terms .t4is-sub { margin: 0 0 4px; }
.t4is-terms p:not(.t4is-sub) { font-size: 12.5px; line-height: 1.5; margin: 0; opacity: .85; overflow-wrap: anywhere; }

/* esito: dati per pagare con bonifico o link */
.t4is-xfer { background: #fff; border: 1px solid var(--t4-hair); border-radius: 24px; margin-top: 24px; padding: clamp(18px, 2vw, 28px); }
.t4is-xfer > .t4is-sub:first-child { margin: 0; }
.t4is-xfer__rows { border-top: 1px solid var(--t4-hair); margin: 12px 0 0; }
.t4is-xfer__rows > div { align-items: center; border-bottom: 1px solid var(--t4-hair); column-gap: 16px; display: grid; grid-template-columns: minmax(96px, 26%) minmax(0, 1fr); padding: 10px 0; }
.t4is-xfer__rows dt { font-size: 11px; letter-spacing: .1em; opacity: .7; text-transform: uppercase; }
.t4is-xfer__rows dd { align-items: center; display: flex; flex-wrap: wrap; gap: 6px 12px; justify-content: space-between; margin: 0; min-width: 0; }
.t4is-xfer__v { min-width: 0; overflow-wrap: anywhere; }
.t4is-xfer__v code { background: none; color: inherit; font-family: var(--t4-mono); font-size: 15px; letter-spacing: .02em; padding: 0; }
.t4is-xfer__v b { font-family: var(--t4-head); font-size: 22px; font-weight: 500; letter-spacing: -.01em; }
.t4is-copy {
  background: none;
  border: 1px solid rgba(14, 20, 48, .3);
  border-radius: 999px;
  color: var(--t4-navy);
  cursor: pointer;
  flex: 0 0 auto;
  font: inherit;
  font-size: 11px;
  letter-spacing: .1em;
  min-height: 32px;
  padding: 5px 14px;
  text-transform: uppercase;
  transition: border-color .25s ease, background-color .25s ease, color .25s ease;
}
.t4is-copy:hover { border-color: var(--t4-blue); color: var(--t4-blue); }
.t4is-copy.is-ok { background: var(--t4-blue); border-color: var(--t4-blue); color: #fff; }
.t4is-xfer__txt { margin: 14px 0 0; max-width: 62ch; }
.t4is-xfer .t4is-actions { margin-top: 16px; }
.t4is-xfer__done { border-top: 1px solid var(--t4-hair); display: flex; flex-wrap: wrap; align-items: center; gap: 12px 16px; margin-top: 18px; padding-top: 16px; }
.t4is-xfer__done > p:not(.t4is-msg) { margin: 0; }
.t4is-xfer__ok { background: rgba(30, 130, 76, .1); border-radius: 14px; color: #14613a; flex-basis: 100%; padding: 12px 16px; }
.t4is-xfer__note { font-size: 13px; line-height: 1.5; margin: 14px 0 0; max-width: 62ch; }
.t4is-xfer__note strong { font-weight: 700; }
.t4is-sr { clip: rect(0 0 0 0); clip-path: inset(50%); height: 1px; overflow: hidden; position: absolute; white-space: nowrap; width: 1px; }
.t4is-note .t4is-edit { margin-left: 4px; }
@media (max-width: 575px) {
  .t4is-xfer__rows > div, .t4is-pay__meta > div { grid-template-columns: minmax(0, 1fr); row-gap: 4px; }
  .t4is-xfer__done .t4-pill { justify-content: space-between; width: 100%; }
}

/* starting permission dei piloti stranieri (cliente 30/10/2026) */
.t4is-sp { border-top: 1px solid rgba(14, 20, 48, .12); margin-top: 6px; padding-top: 18px; }
.t4is-sp[hidden], .t4is-fields[data-sp-date][hidden] { display: none; }
.t4is-sp .t4is-sub i { color: var(--t4-blue); font-style: normal; }
/* presa visione senza starting permission (cliente 05/11/2026) */
.t4is-sp-ack { margin-top: 14px; }
.t4is-sp-ack[hidden] { display: none; }
.t4is-field input[type=file] { cursor: pointer; padding: 10px 12px; }
