.customization-entry{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid color-mix(in srgb,var(--primary) 40%,var(--border));background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 14%,var(--surface)),var(--surface));}.customization-entry span,.custom-lab-hero>span{font-size:.7rem;font-weight:900;letter-spacing:.12em;color:var(--primary)}.customization-entry h2{margin:5px 0}.customization-entry p{margin:0;color:var(--muted)}
.customization-modal{width:min(760px,calc(100vw - 24px));max-height:min(900px,calc(100dvh - 24px));}.customization-lab{display:grid;gap:12px}.custom-lab-hero{padding:18px;border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 20%,var(--surface)),var(--surface-2));border:1px solid var(--border)}.custom-lab-hero h3{font-size:1.35rem;margin:5px 0}.custom-lab-hero p{margin:0;color:var(--muted)}
.customization-lab details{border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}.customization-lab summary{list-style:none;display:flex;align-items:center;gap:12px;padding:15px;cursor:pointer}.customization-lab summary::-webkit-details-marker{display:none}.customization-lab summary>b{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--primary) 14%,var(--surface));color:var(--primary)}.customization-lab summary span{display:grid;gap:2px}.customization-lab summary small{color:var(--muted);font-weight:500}.customization-lab details[open]>summary{border-bottom:1px solid var(--border)}
.custom-panel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px}.custom-panel-grid label,.custom-member-grid label{display:grid;gap:6px;font-size:.75rem;font-weight:800;color:var(--muted)}.custom-panel-grid input,.custom-panel-grid select,.custom-member-grid input,.custom-member-grid select,.custom-rule-row select{width:100%;min-width:0;border:1px solid var(--border);background:var(--surface-2);color:var(--text);border-radius:12px;padding:11px}.custom-panel-grid .wide{grid-column:1/-1}.custom-panel-grid input[type=color]{padding:4px;height:46px}.custom-switch{display:flex!important;grid-auto-flow:column;justify-content:start;align-items:center;color:var(--text)!important}.custom-switch input{width:auto}
.custom-member-list,.custom-rule-list,.custom-match-list,.custom-season-options{display:grid;gap:10px;padding:15px}.custom-member-row,.custom-rule-row,.custom-match-row{border:1px solid var(--border);border-radius:14px;padding:12px;background:var(--surface-2)}.custom-member-head{display:flex;align-items:center;gap:10px}.custom-member-head .player-photo,.custom-member-head .avatar{width:42px;height:42px}.custom-member-head div{display:grid}.custom-member-head small,.custom-rule-row small,.custom-match-row small{color:var(--muted)}.custom-member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:12px}.custom-member-toggles{display:flex;gap:14px;flex-wrap:wrap;margin-top:12px;font-size:.82rem;font-weight:700}.custom-rule-row,.custom-match-row{display:flex;align-items:center;gap:10px}.custom-rule-row>div,.custom-match-row>div{display:grid;gap:3px;flex:1}.custom-rule-row select{width:auto}.custom-inline-actions{padding:0 15px 15px}.custom-season-options label{font-weight:750}.custom-sticky-actions{position:sticky;bottom:-1px;padding:12px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(10px);border-top:1px solid var(--border);z-index:2}
@media(max-width:560px){.customization-entry{align-items:flex-start;flex-direction:column}.customization-entry .btn{width:100%}.custom-panel-grid{grid-template-columns:1fr}.custom-panel-grid .wide{grid-column:auto}.custom-member-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.custom-rule-row{align-items:stretch;flex-direction:column}.custom-rule-row select,.custom-rule-row .btn{width:100%}}
.overdue-toggle{width:100%;margin-top:12px}
.overdue-month-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:13px;padding:4px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.overdue-month-switch button{min-height:38px;padding:8px 10px;border:0;border-radius:9px;background:transparent;color:var(--muted);font:inherit;font-size:12px;font-weight:850;cursor:pointer}.overdue-month-switch button.is-active{background:var(--surface);color:var(--primary);box-shadow:0 3px 10px color-mix(in srgb,#000 10%,transparent)}@media(max-width:380px){.overdue-month-switch button{padding-inline:6px;font-size:11px}}

/* Calendario squadra: card compatte con stemmi e gerarchia mobile. */
.team-calendar-match{grid-template-columns:52px minmax(0,1fr) auto;align-items:start;padding:14px;background:linear-gradient(145deg,var(--surface-2),var(--surface));box-shadow:0 8px 24px rgba(5,16,35,.08)}
.team-calendar-date{position:sticky;top:38px;border:1px solid var(--border);background:color-mix(in srgb,var(--primary) 10%,var(--surface))}
.team-calendar-date>span{color:var(--primary);font-size:8px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}
.team-calendar-copy>small{display:inline-flex;padding:4px 7px;border-radius:999px;background:color-mix(in srgb,var(--primary) 12%,transparent)}
.team-calendar-teams{display:grid;grid-template-columns:minmax(0,1fr) 22px minmax(0,1fr);align-items:start;gap:6px;margin-top:9px}
.team-calendar-teams>div{display:grid;justify-items:center;min-width:0;text-align:center}
.team-calendar-teams em{align-self:center;color:var(--muted);font-size:9px;font-style:normal;font-weight:900}
.team-calendar-teams strong{display:-webkit-box;overflow:hidden;margin-top:6px;font-size:11px;line-height:1.2;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.team-calendar-crest{display:grid;width:48px;height:48px;place-items:center;border:0;background:transparent;box-shadow:none}
.team-calendar-crest img{display:block;width:44px;height:44px;margin:auto;object-fit:contain;object-position:center}
.team-calendar-crest b{font-size:12px;color:var(--primary)}
.team-calendar-copy>span{margin-top:10px;text-align:center}
.team-calendar-result{padding-top:4px}
@media(max-width:420px){.team-calendar-match{grid-template-columns:46px minmax(0,1fr);gap:9px}.team-calendar-result{position:absolute;right:14px;margin-top:1px}.team-calendar-match{position:relative}.team-calendar-copy>small{max-width:calc(100% - 62px)}.team-calendar-actions{grid-column:2}.team-calendar-crest{width:42px;height:42px}.team-calendar-crest img{width:34px;height:34px}}
.settings-page,.settings-page>.card,.settings-page>.section-head,.settings-page>.data-management,.data-management>.card{width:100%;max-width:100%;box-sizing:border-box;margin-inline:0}.data-management{display:grid;gap:14px}.data-action-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px}.data-action-row .btn{min-width:110px}.customization-lab{width:100%}.custom-panel-note{margin:0;padding:0 15px 15px}.customization-lab #addManualMatch{display:block;width:calc(100% - 30px);margin:0 15px 15px}
@media(max-width:560px){.data-action-row{grid-template-columns:1fr}.data-action-row .btn{width:100%}.customization-modal{width:calc(100vw - 16px)}}

/* Calendario: layout leggibile e stabile anche sugli iPhone piu stretti. */
@media(max-width:600px){
 .team-calendar-backdrop{align-items:stretch;padding:0;overflow:hidden;background:var(--surface)}
 .team-calendar-modal{width:100%;height:100dvh;max-height:none;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));border-radius:0;overscroll-behavior:contain}
 .team-calendar-modal>.row{position:sticky;top:calc(-1 * max(16px,env(safe-area-inset-top)));z-index:10;margin:-16px -16px 0;padding:max(16px,env(safe-area-inset-top)) 16px 10px;background:var(--surface);box-shadow:0 8px 14px color-mix(in srgb,var(--surface) 92%,transparent)}
 .team-calendar-toolbar{flex-wrap:wrap;overflow:visible;gap:7px}
 .team-calendar-filter{min-height:36px;padding:7px 11px}
 .team-calendar-match{grid-template-columns:48px minmax(0,1fr) 54px;grid-template-areas:"date badge result" "teams teams teams" "actions actions actions";gap:9px 10px;padding:12px}
 .team-calendar-date{grid-area:date;position:static;top:auto}
 .team-calendar-copy{display:contents}
 .team-calendar-copy>small{grid-area:badge;align-self:center;justify-self:start;max-width:100%;margin:0}
 .team-calendar-teams{grid-area:teams;width:100%;margin-top:2px;align-items:start}
 .team-calendar-copy>span{grid-area:teams;align-self:end;margin-top:0;padding-top:82px;pointer-events:none}
 .team-calendar-result{grid-area:result;position:static;align-self:start;margin:0;padding-top:3px;text-align:right}
 .team-calendar-actions{grid-area:actions;justify-content:center;margin-top:3px}
 .team-calendar-crest{width:48px;height:48px}
 .team-calendar-crest img{width:44px;height:44px}
 .team-calendar-teams strong{font-size:11px;-webkit-line-clamp:3}
}

/* Respiro uniforme nella pagina Gestione squadra. */
.settings-page{width:calc(100% - 24px);max-width:760px;margin-inline:auto!important;padding-bottom:18px}
.settings-page>.card,.settings-page>.data-management{margin-bottom:16px}
.settings-page>.section-head{padding-inline:4px;margin:22px 0 10px}
.data-management{gap:16px}
.data-management>.card{border-radius:20px;box-shadow:0 7px 22px rgba(5,16,35,.07)}
.season-settings-overview{margin:16px 18px!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:420px){.settings-page{width:calc(100% - 20px)}.customization-entry,.birthday-settings{padding:18px}.season-settings-overview{margin:14px 15px!important;grid-template-columns:1fr!important}.data-section-heading,.data-action-row{padding-left:15px;padding-right:15px}}

.custom-category-list{display:grid;gap:9px;padding:15px}.custom-category-row{display:grid;grid-template-columns:18px minmax(0,1fr) 46px auto;align-items:center;gap:10px;padding:11px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.custom-category-row>div:nth-child(2){display:grid;gap:4px;min-width:0}.custom-category-row input[data-category-name]{width:100%;min-width:0;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);font-weight:800}.custom-category-row small{color:var(--muted);font-size:10px}.custom-category-swatch{width:16px;height:38px;border-radius:999px;background:var(--swatch);box-shadow:inset 0 0 0 1px #ffffff40}.custom-category-row input[type=color]{width:42px;height:38px;padding:3px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.custom-category-order{display:grid;grid-template-columns:repeat(2,30px);gap:4px}.custom-category-order button{width:30px;height:30px;padding:0;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-weight:900}.custom-history-choice{display:flex;align-items:flex-start;gap:9px;margin:0 15px 10px;padding:12px;border-radius:12px;background:color-mix(in srgb,var(--primary) 9%,var(--surface));font-size:12px;font-weight:750}.custom-history-choice input{margin-top:2px}@media(max-width:430px){.custom-category-row{grid-template-columns:14px minmax(0,1fr) 42px}.custom-category-order{grid-column:2/-1;justify-content:end}.custom-category-swatch{width:12px}.custom-category-row input[type=color]{width:40px}}

/* Pagamenti: solo dati essenziali e compilazione rapida del saldo. */
.payments-table-header,.payment-row{grid-template-columns:minmax(170px,1.5fr) minmax(150px,1fr) minmax(90px,.65fr);min-width:0}
.payment-paid-cell{gap:7px}
.payment-fill-button{min-height:36px;padding:7px 10px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--primary) 12%,var(--surface));color:var(--primary);font:inherit;font-size:11px;font-weight:900;cursor:pointer}
.payment-fill-button:active{transform:scale(.97)}
@media(max-width:600px){.payments-table-card{overflow:visible}.payments-table-header{display:none}.payment-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;min-width:0;margin:10px;padding:13px;border:1px solid var(--border);border-radius:16px;background:var(--surface)!important}.payment-row+.payment-row{border-top:1px solid var(--border)}.payment-player{grid-column:1/-1;padding-bottom:10px!important;border-bottom:1px solid var(--border);background:transparent!important}.payment-paid-cell,.payment-row>.payment-remaining,.payment-row>.payment-ok{display:grid;gap:5px;align-items:center}.payment-paid-cell{grid-template-columns:minmax(0,1fr) auto}.payment-paid-cell:before,.payment-row>.payment-remaining:before,.payment-row>.payment-ok:before{grid-column:1/-1;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.payment-paid-cell:before{content:"Versato"}.payment-row>.payment-remaining:before,.payment-row>.payment-ok:before{content:"Rimanente"}.payment-paid-input{width:100%;min-width:0}.payment-fill-button{min-height:38px}}


/* Pagamenti mobile: elenco compatto su una sola riga. */
@media(max-width:600px){
 .payments-table-card{overflow:hidden;border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 24px rgba(5,16,35,.06)}
 .payments-table-header{display:grid;grid-template-columns:minmax(0,1fr) 98px 58px;gap:6px;min-width:0;padding:9px 10px;font-size:8px}
 .payments-table-header .payment-sticky{position:static;background:transparent;color:inherit;box-shadow:none}
 .payments-table-header>div:last-child{text-align:right}
 .payments-table-body{display:block}
 .payment-row{grid-template-columns:minmax(0,1fr) 98px 58px;gap:6px;min-width:0;margin:0;padding:9px 10px;border:0;border-radius:0;background:var(--surface)!important;box-shadow:none}
 .payment-row+.payment-row{border-top:1px solid var(--border)}
 .payment-player{grid-column:auto;padding:0!important;border:0;box-shadow:none;background:transparent!important}
 .payment-player .player-avatar{width:30px;height:30px;flex-basis:30px}
 .payment-player strong{font-size:11px;line-height:1.15}
 .payment-status,.payment-arrears{margin-top:2px;font-size:8px;line-height:1.15}
 .payment-paid-cell{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:4px;min-width:0;padding:0;background:transparent;border:0}
 .payment-paid-cell:before,.payment-row>.payment-remaining:before,.payment-row>.payment-ok:before{display:none}
 .payment-paid-input{width:100%;min-width:0;min-height:34px;padding:6px;border-radius:9px;background:var(--surface-2);font-size:13px}
 .payment-fill-button{min-width:34px;min-height:34px;padding:4px;border-radius:9px;font-size:0}
 .payment-fill-button:after{content:"✓";font-size:14px;font-weight:950}
 .payment-fill-button[hidden]{display:none}
 .payment-row>.payment-remaining,.payment-row>.payment-ok{display:block;min-width:0;padding:0;text-align:right;font-size:12px;white-space:nowrap;background:transparent;border:0}
}


/* Pagamenti mobile: righe piu leggibili e controlli touch. */
@media(max-width:600px){.payment-row{min-height:62px;padding-block:11px}.payment-player .player-avatar{width:36px;height:36px;flex-basis:36px}.payment-player strong{font-size:12px;line-height:1.2}.payment-status,.payment-arrears{font-size:9px;line-height:1.2}.payment-paid-input{min-height:40px;padding:7px;font-size:14px}.payment-fill-button{min-width:38px;min-height:40px}.payment-row>.payment-remaining,.payment-row>.payment-ok{font-size:13px}}

/* Classifica campionato */
.team-standings-modal{width:min(620px,100%)}
.team-standings{display:grid;gap:12px;margin-top:12px}
.team-standings-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--border);border-radius:16px;background:linear-gradient(145deg,color-mix(in srgb,var(--primary) 12%,var(--surface-2)),var(--surface-2))}
.team-standings-heading>div{display:grid;gap:3px}.team-standings-heading strong{font-size:14px}.team-standings-heading span{color:var(--muted);font-size:10px}.team-standings-live{display:inline-flex!important;align-items:center;gap:6px;white-space:nowrap;font-weight:800}.team-standings-live i{width:7px;height:7px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 16%,transparent)}
.team-standings-labels,.team-standing-row{display:grid;grid-template-columns:28px minmax(0,1fr) 28px 34px 34px;align-items:center;gap:7px}.team-standings-labels{padding:0 12px;color:var(--muted);font-size:9px;font-weight:900;text-align:center;text-transform:uppercase}.team-standings-labels span:nth-child(2){text-align:left}
.team-standings-list{display:grid;gap:6px}.team-standing-row{min-height:58px;padding:8px 12px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);font-size:12px;text-align:center}.team-standing-row.is-own-team{border-color:color-mix(in srgb,var(--primary) 65%,var(--border));background:linear-gradient(100deg,color-mix(in srgb,var(--primary) 18%,var(--surface-2)),var(--surface-2));box-shadow:0 7px 20px color-mix(in srgb,var(--primary) 13%,transparent)}.team-standing-position{font-size:14px}.team-standing-team{display:flex;align-items:center;min-width:0;gap:9px;text-align:left}.team-standing-team>span{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center}.team-standing-team img{width:34px;height:34px;object-fit:contain}.team-standing-team b{color:var(--primary);font-size:10px}.team-standing-team>div{min-width:0}.team-standing-team strong{display:block;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.team-standing-team small{display:block;margin-top:3px;color:var(--muted);font-size:9px;white-space:nowrap}.team-standing-difference{color:var(--muted);font-weight:750}.team-standing-points{display:grid;width:31px;height:31px;place-items:center;border-radius:10px;background:color-mix(in srgb,var(--primary) 15%,var(--surface));color:var(--primary);font-size:14px}
@media(max-width:520px){.team-standings-modal{width:100%;height:100dvh;max-height:none;padding:max(16px,env(safe-area-inset-top)) 12px max(16px,env(safe-area-inset-bottom));border-radius:0}.team-standings-modal>.row{position:sticky;top:calc(-1 * max(16px,env(safe-area-inset-top)));z-index:10;margin:-16px -12px 0;padding:max(16px,env(safe-area-inset-top)) 12px 10px;background:var(--surface);box-shadow:0 8px 14px color-mix(in srgb,var(--surface) 92%,transparent)}.team-standings{margin-top:6px}.team-standings-heading{padding:11px 12px}.team-standing-row{padding:8px 9px}.team-standings-labels,.team-standing-row{grid-template-columns:24px minmax(0,1fr) 24px 31px 32px;gap:5px}.team-standing-team{gap:7px}.team-standing-team>span{flex-basis:34px;width:34px;height:34px}.team-standing-team img{width:31px;height:31px}}

/* Classifica con statistiche in colonne */
.team-standings-table{overflow-x:auto;border-radius:14px;overscroll-behavior-x:contain;scrollbar-width:thin}
.team-standings-labels,.team-standing-row{width:100%;min-width:690px;grid-template-columns:32px minmax(190px,1fr) repeat(6,34px) 42px 42px;gap:5px}
.team-standings-labels{position:sticky;top:0;z-index:3;padding:7px 12px;background:var(--surface)}
.team-standing-row{min-height:56px}
.team-standing-team strong{white-space:normal;line-height:1.15}
.team-standing-team small{display:none}
@media(max-width:520px){.team-standings-table{margin-inline:-2px;padding-bottom:5px}.team-standings-labels,.team-standing-row{min-width:650px;grid-template-columns:28px minmax(170px,1fr) repeat(6,32px) 39px 39px}.team-standing-row{padding:8px 10px}.team-standing-team>span{flex-basis:32px;width:32px;height:32px}.team-standing-team img{width:30px;height:30px}}

/* Classifica interamente visibile senza scorrimento orizzontale */
.team-standings-table{overflow-x:visible;width:100%;padding-bottom:0}
.team-standings-labels,.team-standing-row{width:100%;min-width:0;grid-template-columns:22px minmax(105px,1fr) repeat(6,24px) 28px 30px;gap:2px}
.team-standings-labels{padding:6px 5px;font-size:8px}
.team-standing-row{min-height:52px;padding:6px 5px;font-size:10px}
.team-standing-team{gap:5px}.team-standing-team>span{flex:0 0 27px;width:27px;height:27px}.team-standing-team img{width:25px;height:25px}.team-standing-team strong{display:-webkit-box;overflow:hidden;font-size:10px;line-height:1.12;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.team-standing-position{font-size:11px}.team-standing-points{width:28px;height:28px;border-radius:8px;font-size:12px}
@media(max-width:380px){.team-standings-labels,.team-standing-row{grid-template-columns:20px minmax(92px,1fr) repeat(6,21px) 25px 27px;gap:1px}.team-standing-row{padding-inline:3px}.team-standing-team>span{flex-basis:24px;width:24px;height:24px}.team-standing-team img{width:22px;height:22px}.team-standing-team strong{font-size:9px}.team-standing-points{width:25px;height:25px}}

/* Classifica più leggibile: statistiche essenziali */
.team-standings-labels,.team-standing-row{grid-template-columns:25px minmax(88px,.9fr) repeat(4,30px) 36px 38px;gap:4px}
.team-standings-labels{padding:7px 7px;font-size:9px}
.team-standing-row{min-height:58px;padding:7px;font-size:12px}
.team-standing-team{gap:6px}.team-standing-team>span{flex-basis:31px;width:31px;height:31px}.team-standing-team img{width:29px;height:29px}.team-standing-team strong{font-size:11px;line-height:1.16}.team-standing-position{font-size:13px}.team-standing-difference{font-size:12px}.team-standing-points{width:34px;height:34px;font-size:14px}
@media(max-width:380px){.team-standings-labels,.team-standing-row{grid-template-columns:22px minmax(78px,.85fr) repeat(4,27px) 32px 34px;gap:3px}.team-standing-row{padding-inline:5px;font-size:11px}.team-standing-team>span{flex-basis:28px;width:28px;height:28px}.team-standing-team img{width:26px;height:26px}.team-standing-team strong{font-size:10px}.team-standing-points{width:31px;height:31px;font-size:13px}}

/* Configurazione futura tramite solo codice Tuttocampo (anteprima locale). */
.team-code-preview-row{border-color:color-mix(in srgb,var(--primary) 42%,var(--border));background:linear-gradient(120deg,color-mix(in srgb,var(--primary) 12%,var(--surface)),var(--surface))}
.team-code-setup{display:grid;gap:16px}.team-code-hero{padding:18px;border-radius:18px;background:linear-gradient(135deg,color-mix(in srgb,var(--primary) 22%,var(--surface-2)),var(--surface-2));border:1px solid color-mix(in srgb,var(--primary) 34%,var(--border))}.team-code-hero>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.13em}.team-code-hero h3{margin:5px 0 6px;font-size:21px}.team-code-hero p{margin:0;color:var(--muted);line-height:1.45}.team-code-input{display:grid;gap:7px}.team-code-input>span{font-size:11px;font-weight:900;color:var(--muted)}.team-code-input>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.team-code-input input{min-width:0;font-size:18px;font-weight:850;letter-spacing:.05em}.team-code-input small{color:var(--muted)}.team-code-result{min-height:92px;padding:16px;border:1px dashed var(--border);border-radius:17px;background:var(--surface-2)}.team-code-result>p{margin:0;color:var(--muted)}.team-code-result.is-loading{display:grid;place-items:center}.team-code-result.is-error{border-color:color-mix(in srgb,#ef4444 55%,var(--border));background:color-mix(in srgb,#ef4444 8%,var(--surface-2))}.team-code-result.is-error strong{color:#ef4444}.team-code-identity{display:flex;align-items:center;gap:13px}.team-code-identity img{width:62px;height:62px;object-fit:contain}.team-code-identity>div{display:grid;gap:2px;min-width:0}.team-code-identity small{color:var(--primary);font-size:10px;font-weight:900}.team-code-identity strong{font-size:19px}.team-code-identity span{color:var(--muted);font-size:12px}.team-code-detected{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.team-code-detected>div{display:grid;gap:3px;padding:11px;border-radius:12px;background:var(--surface)}.team-code-detected span{color:var(--muted);font-size:10px}.team-code-detected strong{font-size:13px}.team-code-result details{margin-top:12px}.team-code-result details summary{cursor:pointer;color:var(--primary);font-weight:800}.team-code-result details p{display:grid;gap:2px;margin:8px 0;padding:9px;border-radius:10px;background:var(--surface)}.team-code-result details small{overflow:hidden;color:var(--muted);font-size:10px;text-overflow:ellipsis;white-space:nowrap}.team-code-safe-note,.team-code-staged{margin-top:12px!important;padding:10px;border-radius:11px;background:color-mix(in srgb,var(--primary) 10%,var(--surface));color:var(--text)!important;font-size:11px}.team-code-staged{color:var(--primary)!important;font-weight:850}
@media(max-width:520px){.team-code-input>div{grid-template-columns:1fr}.team-code-input button{width:100%}.team-code-detected{grid-template-columns:1fr 1fr}.team-code-setup-modal{width:min(100%,calc(100vw - 20px))}}
.team-code-row-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.team-refresh-panel{display:grid;gap:15px}.team-refresh-heading{display:flex;align-items:center;gap:12px;padding:16px;border-radius:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--primary) 14%,var(--surface-2)),var(--surface-2))}.team-refresh-heading>span{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:var(--primary);color:white;font-size:23px;font-weight:900}.team-refresh-heading>div{display:grid;gap:3px}.team-refresh-heading small{color:var(--muted)}.team-refresh-checks{display:grid;gap:8px}.team-refresh-check{display:flex;align-items:center;gap:11px;padding:11px;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.team-refresh-check i{display:grid;flex:0 0 30px;width:30px;height:30px;place-items:center;border-radius:10px;font-style:normal;font-weight:900}.team-refresh-check span{display:grid;gap:2px}.team-refresh-check small{color:var(--muted)}.team-refresh-check.is-ok i{background:color-mix(in srgb,#22c55e 16%,var(--surface));color:#16a34a}.team-refresh-check.is-warning i{background:color-mix(in srgb,#f59e0b 17%,var(--surface));color:#d97706}@media(max-width:520px){.team-code-row-actions{width:100%}.team-code-row-actions .btn{flex:1}.team-refresh-check{padding:10px}}
.season-roster-import{display:grid;gap:13px}.season-roster-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--border);border-radius:15px;background:var(--surface-2)}.season-roster-toolbar>div{display:grid;gap:3px}.season-roster-toolbar small{color:var(--muted);line-height:1.35}.season-roster-result{padding:14px;border:1px dashed var(--border);border-radius:15px;background:var(--surface-2)}.season-roster-result>p{margin:0;color:var(--muted)}.season-roster-result.is-warning{border-color:color-mix(in srgb,#f59e0b 48%,var(--border));background:color-mix(in srgb,#f59e0b 8%,var(--surface))}.season-roster-result.is-warning p{margin:5px 0}.season-roster-result.is-warning small{color:var(--muted)}.season-roster-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.season-roster-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:330px;overflow:auto}.season-roster-person{display:grid;grid-template-columns:auto 42px minmax(0,1fr);align-items:center;gap:9px;padding:9px;border:1px solid var(--border);border-radius:13px;background:var(--surface);cursor:pointer}.season-roster-person.is-existing{opacity:.72;cursor:default}.season-roster-photo{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border-radius:12px;background:color-mix(in srgb,var(--primary) 14%,var(--surface-2));color:var(--primary);font-size:11px;font-weight:900}.season-roster-photo img{width:100%;height:100%;object-fit:cover}.season-roster-person>span:last-child{display:grid;gap:3px;min-width:0}.season-roster-person strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.season-roster-person small,.season-roster-warning{color:var(--muted);font-size:10px}.season-roster-warning{margin:10px 0 0}.season-roster-person input{width:18px;height:18px;accent-color:var(--primary)}@media(max-width:600px){.season-roster-toolbar{align-items:stretch;flex-direction:column}.season-roster-toolbar .btn{width:100%}.season-roster-list{grid-template-columns:1fr;max-height:42dvh}.season-roster-summary{align-items:stretch;flex-direction:column}.season-roster-summary .btn{width:100%}}
.team-standings-labels,.team-standing-row{width:100%;min-width:0;grid-template-columns:22px minmax(105px,1fr) repeat(6,24px) 28px 30px;gap:2px}
.team-standings-labels{padding:6px 5px;font-size:8px}
.team-standing-row{min-height:52px;padding:6px 5px;font-size:10px}
.team-standing-team{gap:5px}.team-standing-team>span{flex:0 0 27px;width:27px;height:27px}.team-standing-team img{width:25px;height:25px}.team-standing-team strong{display:-webkit-box;overflow:hidden;font-size:10px;line-height:1.12;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.team-standing-position{font-size:11px}.team-standing-points{width:28px;height:28px;border-radius:8px;font-size:12px}
@media(max-width:380px){.team-standings-labels,.team-standing-row{grid-template-columns:20px minmax(92px,1fr) repeat(6,21px) 25px 27px;gap:1px}.team-standing-row{padding-inline:3px}.team-standing-team>span{flex-basis:24px;width:24px;height:24px}.team-standing-team img{width:22px;height:22px}.team-standing-team strong{font-size:9px}.team-standing-points{width:25px;height:25px}}

/* Classifica più leggibile: statistiche essenziali */
.team-standings-labels,.team-standing-row{grid-template-columns:25px minmax(88px,.9fr) repeat(4,30px) 36px 38px;gap:4px}
.team-standings-labels{padding:7px 7px;font-size:9px}
.team-standing-row{min-height:58px;padding:7px;font-size:12px}
.team-standing-team{gap:6px}.team-standing-team>span{flex-basis:31px;width:31px;height:31px}.team-standing-team img{width:29px;height:29px}.team-standing-team strong{font-size:11px;line-height:1.16}.team-standing-position{font-size:13px}.team-standing-difference{font-size:12px}.team-standing-points{width:34px;height:34px;font-size:14px}
@media(max-width:380px){.team-standings-labels,.team-standing-row{grid-template-columns:22px minmax(78px,.85fr) repeat(4,27px) 32px 34px;gap:3px}.team-standing-row{padding-inline:5px;font-size:11px}.team-standing-team>span{flex-basis:28px;width:28px;height:28px}.team-standing-team img{width:26px;height:26px}.team-standing-team strong{font-size:10px}.team-standing-points{width:31px;height:31px;font-size:13px}}

