*{box-sizing:border-box}body{margin:0;background:#12101b;color:#f7f1e6;font-family:system-ui,-apple-system,Arial,sans-serif}header{text-align:center;padding:36px 16px 28px;background:radial-gradient(ellipse at top,#523044,#201628 70%);border-bottom:4px solid #f9bd48}.eyebrow{color:#ffc864;font-size:12px;letter-spacing:3px;font-weight:900}h1{font-size:clamp(48px,9vw,90px);line-height:.9;letter-spacing:-3px;margin:16px 0;color:#ffc65b;text-shadow:4px 5px 0 #8b3e37}header p{color:#ead4bb}main{max-width:1080px;margin:28px auto;padding:0 16px;min-height:55vh}.columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.panel{background:#211c2c;border:1px solid #534359;border-radius:18px;padding:24px;margin-bottom:20px;box-shadow:0 8px 25px #0003}h2{color:#ffd073;margin-top:0}h3{color:#ffd073}label{display:block;margin:13px 0;color:#eee;font-size:14px}input,select{display:block;width:100%;margin-top:7px;background:#15121f;color:white;border:1px solid #695b6f;border-radius:9px;padding:12px;font:inherit}button{border:1px solid #ffce69;background:transparent;color:#ffce69;border-radius:9px;padding:11px 18px;cursor:pointer;font-weight:800}button.primary{background:#ffc657;color:#251824;width:100%;margin-top:10px}a{color:#ffd273;text-decoration:none}.league,.members>div{display:flex;justify-content:space-between;gap:12px;padding:12px;border-bottom:1px solid #514354}.league span,.members span{color:#c6afcf}.identity{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.identity form{display:inline}.small{font-size:13px;color:#c8bacf}.alert{padding:14px;background:#5b2937;border:1px solid #c76d80;border-radius:10px;margin-bottom:20px}.link{background:#3a3047;padding:14px;border-radius:10px;margin-top:12px}footer{text-align:center;color:#b6a8b9;padding:30px;font-size:12px}@media(max-width:550px){.panel{padding:18px}}
.rank-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #514354;padding:12px 4px}.rank-row span{color:#ffcf76}.raclette-form fieldset{border:1px solid #514354;border-radius:12px;margin:15px 0}.participant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:6px}.participant-grid label{display:flex;align-items:center;gap:8px;margin:4px}.participant-grid input{width:auto;margin:0}.history-item{padding:12px;border-bottom:1px solid #514354}.history-item p{margin:5px 0;color:#c8bacf}.success{padding:14px;background:#204a3c;border:1px solid #5fc4a1;border-radius:10px;margin-bottom:20px}

.account-link,.league-button{display:inline-block;background:#ffc657;color:#251824;padding:11px 16px;border-radius:10px;font-weight:800}.account-link{font-size:14px}.league-card{border:1px solid #55445f;border-radius:14px;padding:18px;margin:14px 0;background:#191523}.league-card h3{margin:0}.league-card p{margin:9px 0}.league-button{margin-top:8px}.league-nav{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:18px;padding:12px 18px;background:#2a2235;border-radius:12px;color:#ffd273;font-weight:800}.account-heading{background:linear-gradient(110deg,#2b2039,#211c2c)}

.manage-button{display:inline-block;margin:8px 0 0 10px;padding:10px 12px;border:1px solid #ffc657;border-radius:10px}.create-league{margin:20px 0}.create-league summary{cursor:pointer;color:#ffd273;font-weight:800;padding:12px}.league-card{margin:12px 0}.account-heading{padding:16px 22px}

/* Configuration des membres : rôle et bouton sur une seule ligne */
.member-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.member-actions{margin-left:auto;display:flex;align-items:center}
.member-actions .role-form{display:flex!important;align-items:center!important;justify-content:flex-end;gap:10px;flex-wrap:nowrap;margin:0!important}
.member-actions .role-form select{width:190px!important;min-width:160px;max-width:190px;margin:0!important;flex:none}
.member-actions .role-form button{width:auto!important;min-width:110px;margin:0!important;white-space:nowrap}
.member-actions .role-form button:disabled{opacity:.4;cursor:not-allowed}
.member-actions .role-form .sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;margin:-1px;padding:0;border:0}
@media(max-width:520px){.member-row{align-items:flex-start}.member-actions{width:100%;margin-left:0}.member-actions .role-form{width:100%;justify-content:flex-start}.member-actions .role-form select{min-width:0;flex:1;width:auto!important}}

/* V9 — Identité visuelle V8 (connexion, Mon compte, configuration) */
:root{--ink:#25231f;--muted:#77736b;--cream:#fffaf0;--paper:#fffdf8;--gold:#e9b949;--red:#b8422f;--line:#e9e1d2}
body{background:var(--cream);color:var(--ink);font-family:ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif}
header{background:var(--ink);border-bottom:3px solid var(--gold);padding:30px 16px;color:#fff8e8}
header h1,h1{color:#fff8e8;text-shadow:none;font-size:clamp(36px,6vw,62px);letter-spacing:-2px}
header .eyebrow{color:var(--gold)}
header p{color:#d7d0c2}
.panel,.league-card,.create-league,.account-heading{background:var(--paper);color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:none}
h2,h3{color:var(--ink)}
label{color:var(--ink)}
input,select,textarea{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:10px}
button{border-color:var(--gold);color:var(--ink)}
button.primary,.league-button,.account-link{background:var(--red);color:#fff;border-color:var(--red)}
a{color:var(--red)}
.small,.league span,.members span,.rank-row span,.history-item p{color:var(--muted)}
.league,.members>div,.rank-row,.history-item{border-color:var(--line)}
.league-card{background:#fff}
.league-nav,.link{background:#f1eadb;color:var(--ink)}
.create-league summary{color:var(--ink)}
.manage-button{border-color:var(--gold);color:var(--ink)}
.alert{background:#fff0c9;color:#7c2e23;border:1px solid #e9b949}
.success{background:#e7f0e0;color:#35502e;border:1px solid #b6d1ab}
footer{color:var(--muted)}
@media(max-width:550px){.panel{padding:17px}}

/* CORRECTIF VISIBLE : déconnexion du portail (sélecteur spécifique au HTML) */
header .identity form button.v9-logout-visible,
header .identity form button.v9-logout-visible:hover,
header .identity form button.v9-logout-visible:focus-visible {
 display:inline-flex !important; align-items:center !important; justify-content:center !important;
 min-width:126px !important; min-height:42px !important; padding:10px 16px !important;
 background:#fff4d9 !important; color:#241f1a !important; border:2px solid #f3bd4d !important;
 font-size:14px !important; font-weight:800 !important; opacity:1 !important;
 visibility:visible !important; -webkit-text-fill-color:#241f1a !important;
}

/* Administration V9 : guide des rôles et exclusion des membres */
.v9-role-help{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}
.v9-role-help>div{padding:14px;border:1px solid #e9e1d2;border-radius:14px;background:#fff9ec}
.v9-role-help strong{color:#25231f;font-size:14px}
.v9-role-help p{color:#69645b;font-size:12px;line-height:1.5;margin:7px 0 0}
.member-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.v9-remove-form{display:inline-flex!important;margin:0!important;padding:0!important}
.member-actions .v9-remove-button{width:auto!important;margin:0!important;min-width:92px;padding:9px 12px!important;border:1px solid #ba4434!important;border-radius:10px;background:#fff7f5!important;color:#a63325!important;font-size:13px;font-weight:800;cursor:pointer}
.member-actions .v9-remove-button:hover{background:#fce2dd!important}
@media(max-width:750px){.v9-role-help{grid-template-columns:1fr}.member-actions{justify-content:flex-start}}

.v9-trash{margin:20px 0;padding:16px;border:1px solid #e9e1d2;border-radius:16px;background:#fffaf0}
.v9-trash-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid #e9e1d2}
.v9-trash-row>span{min-width:0;overflow-wrap:anywhere;font-size:13px}
.v9-trash-row small{color:#746e65;line-height:1.5}
.v9-trash-row form{margin:0;flex-shrink:0}
.v9-trash-row button{margin:0;padding:9px 12px;font-size:12px}
.v9-trash-row .v9-danger{background:#fff1ed!important;border:1px solid #b8422f!important;color:#9a2c21!important}
@media(max-width:600px){.v9-trash-row{align-items:flex-start;flex-direction:column}.v9-trash-row form{width:100%}}

/* Formulaires compacts et suppression de compte */
.v9-select-action{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0 24px}
.v9-select-action label{flex-basis:100%;margin:0;font-weight:700;font-size:13px}
.v9-select-action select{flex:1 1 340px;min-width:0;max-width:100%;background:#fff;border:1px solid #e6d9c6;border-radius:10px;padding:11px;color:#25231f}
.v9-select-action button{flex:0 0 auto;min-height:42px;margin:0!important}
.v9-account-delete,.v9-transfer{border:1px solid #e9e1d2;border-radius:14px;margin:20px 0;padding:14px;background:#fffaf0}
.v9-account-delete summary,.v9-transfer summary{font-weight:800;cursor:pointer}
.v9-delete-inner{padding:12px 2px 2px}
.v9-delete-inner p{line-height:1.6;color:#5f574e}
.v9-delete-form{max-width:500px}
.v9-delete-form input{display:block;width:100%;margin:6px 0 14px}
.v9-delete-form .v9-danger{background:#a83325!important;color:white!important;border:1px solid #a83325!important}
.v9-transfer-form{display:flex;gap:10px;flex-wrap:wrap}
.v9-transfer-form select{min-width:240px;flex:1}
@media(max-width:550px){.v9-select-action{display:block}.v9-select-action select,.v9-select-action button{display:block;width:100%;margin:8px 0!important}}

/* Espace personnel : e-mail et mot de passe */
.v9-account-settings{margin:18px 0;border:1px solid #e9e1d2;border-radius:16px;background:#fffdf8;overflow:hidden}
.v9-account-settings>summary{padding:16px 18px;cursor:pointer;font-weight:800;color:#25231f}
.v9-account-settings[open]>summary{border-bottom:1px solid #e9e1d2}
.v9-settings-inner{padding:18px}
.v9-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:14px}
.v9-settings-card{min-width:0;padding:16px;border:1px solid #e9e1d2;border-radius:14px;background:#fffaf0}
.v9-settings-card h3{margin:0 0 14px}
.v9-settings-card form{display:flex;flex-direction:column;gap:10px}
.v9-settings-card label{display:flex;flex-direction:column;gap:5px;font-weight:650}
.v9-settings-card input{box-sizing:border-box;width:100%;min-width:0}
.v9-settings-card input[readonly]{background:#f0ede6;color:#5e5b55}
.v9-settings-card button{align-self:flex-start}
@media(max-width:720px){.v9-settings-grid{grid-template-columns:1fr}}
