/* Il tema è centralizzato; la stampa resta su carta bianca. */
@media screen {
 html[data-theme]{color-scheme:light}
 html[data-theme=night]{color-scheme:dark}
 html[data-theme] body{background:var(--ui-bg);color:var(--ui-text)}
 html[data-theme] :is(dialog,.portal-confirm){background:var(--ui-surface);color:var(--ui-text);border-color:var(--ui-border)}
 html[data-theme] :is(input,select,textarea){color-scheme:inherit}
 html[data-theme] .portal-tool-page :is(table,thead,tbody,tr,th,td){border-color:var(--ui-border)}
 html[data-theme] .portal-tool-page :is(.notice,.badge,.flight-toolbar,.flight-query-controls,.read-only){background:var(--ui-surface-2);color:var(--ui-text)}
 html[data-theme=night] .portal-tool-page .notice.error{background:#421f32;color:#ffe1df;border-color:#e69999}
 html[data-theme=night] .portal-tool-page .notice.success{background:#163a32;color:#d5f5df;border-color:#6bb993}
 html[data-theme=night] .portal-tool-page .badge.CONFIRMED{background:#214c3b;color:#dcfce7}
 html[data-theme=night] .portal-tool-page .badge.PENDING{background:#503b19;color:#fff0bf}
 html[data-theme=night] .portal-tool-page .badge.DRAFT{background:#30375b;color:#f2f3ff}
 .simple-admin-hub{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin:20px 0}
 .simple-admin-hub>section{padding:18px;border:1px solid var(--ui-border);border-radius:12px;background:var(--ui-surface);color:var(--ui-text)}
 .simple-admin-hub h3{font:600 18px/1.4 'IBM Plex Sans',system-ui,sans-serif;margin:0 0 6px}
 .simple-admin-hub p{font-size:14px;color:var(--ui-muted);margin-bottom:14px}
 .simple-admin-hub a,.simple-admin-hub button{display:flex;align-items:center;min-height:44px;width:100%;box-sizing:border-box;padding:10px 12px;margin:8px 0 0;border:1px solid var(--ui-border);border-radius:8px;color:var(--ui-text);background:var(--ui-surface-2);text-decoration:none;text-align:left;font:600 14px/1.4 'IBM Plex Sans',system-ui,sans-serif}
 .simple-admin-hub .simple-log-card{border-top:3px solid var(--club-gold)}
 html[data-theme] .no-print:has(>#btn-print-landscape),html[data-theme] .no-print:has(>#btn-print-landscape) div{background:var(--ui-surface-2)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important}
 html[data-theme] .no-print:has(>#btn-print-landscape) span{color:var(--ui-text)!important}
 html[data-theme] #monthly-print-notice{background:var(--ui-action-soft)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important}
 html[data-theme] #monthly-print-notice *{color:var(--ui-text)!important}
 html[data-theme] .no-print:has(>#monthly-calendar-preview){background:var(--ui-surface-2)!important;border-color:var(--ui-border)!important}
 html[data-theme] .portal-header .portal-nav>a[aria-current=page],html[data-theme] .portal-header .portal-nav>a[aria-current=page] span,html[data-theme] .portal-header .portal-nav>details[open]>summary{color:var(--club-navy)!important;background:var(--club-gold)}
 .user-activity{grid-column:1/-1;font-size:13px;color:var(--ui-muted);overflow-wrap:anywhere}
 .users-page .activity-controls{grid-template-columns:repeat(3,minmax(0,1fr))}
 .activity-controls>p{grid-column:1/-1;font-size:13px;line-height:1.6;margin:0;color:var(--ui-muted)}
 #user-profile-dialog{width:min(850px,calc(100% - 32px));max-height:90dvh;box-sizing:border-box;padding:24px;overflow:auto;font:16px/1.5 'IBM Plex Sans',system-ui,sans-serif;border:1px solid var(--ui-border);border-radius:12px}
 #user-profile-dialog::backdrop{background:#0009}
 #user-profile-dialog :is(h2,p,label){color:var(--ui-text)}
 #user-profile-dialog .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 #user-profile-dialog input{width:100%;min-height:44px;font:inherit;padding:9px;border:1px solid var(--ui-border);border-radius:8px;background:var(--ui-surface-2);color:var(--ui-text)}
 #user-profile-dialog input[type=number]{height:44px}
 #user-profile-dialog button{min-height:44px;font:inherit;padding:10px 16px;background:var(--ui-surface-2);color:var(--ui-text);border:1px solid var(--ui-border);border-radius:8px;cursor:pointer}
 #user-profile-dialog .primary{background:var(--club-gold);color:var(--club-navy);font-weight:600}
 #user-profile-dialog #qualification-help{font-size:13px;line-height:1.7}
 #user-profile-dialog #profile-message.error{padding:12px;border:1px solid #b44;color:var(--ui-text);background:var(--ui-surface-2)}
 @media(max-width:600px){.users-page .activity-controls,#user-profile-dialog .grid{grid-template-columns:1fr}#user-profile-dialog{padding:18px}}
}
