/* Family Hub V4.5.8 — composants d'interface communs, sans imposer la palette des jeux. */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[role="button"]:focus-visible{
  outline:3px solid var(--fh-focus,var(--accent,var(--gold2,#f0e5cc)));
  outline-offset:3px;
}

.fh-gamebar{
  position:sticky;top:0;z-index:35;
  min-height:52px;width:100%;
  display:grid;grid-template-columns:minmax(92px,1fr) auto minmax(92px,1fr);
  align-items:center;gap:8px;
  padding:max(6px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 6px max(10px,env(safe-area-inset-left));
  background:var(--fh-bar-bg,rgba(17,18,23,.94));
  border-bottom:1px solid var(--fh-bar-line,var(--line,rgba(255,255,255,.12)));
  backdrop-filter:blur(14px);
  color:var(--fh-bar-text,var(--text,#f5f3ef));
}
.fh-gamebar .fh-nav-button{
  width:max-content;max-width:100%;min-height:40px;
  display:inline-flex;align-items:center;justify-content:center;
  margin:0;padding:8px 10px;border:1px solid var(--fh-bar-line,var(--line,rgba(255,255,255,.16)));
  border-radius:12px;background:rgba(255,255,255,.035);
  color:var(--fh-bar-muted,var(--muted,#b7b7b7));
  font:700 .84rem/1.1 system-ui,-apple-system,Segoe UI,sans-serif;
  white-space:nowrap;box-shadow:none;
}
.fh-gamebar .fh-nav-button:first-child{justify-self:start}
.fh-gamebar .fh-nav-button:last-child{justify-self:end}
.fh-gamebar .fh-rules{width:40px;padding:8px;font-size:1rem}
.fh-gamebar .fh-game-identity{
  min-width:0;text-align:center;display:flex;flex-direction:column;
  align-items:center;justify-content:center;line-height:1.1;
}
.fh-gamebar .fh-game-identity strong{font-size:.92rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:42vw}
.fh-gamebar .fh-game-identity small{display:block;margin-top:3px;color:var(--fh-bar-muted,var(--muted,#aaa));font-size:.67rem;font-weight:600}
[data-fh-sync="connecting"]{color:var(--fh-bar-muted,var(--muted,#aaa))!important}
[data-fh-sync="synced"]{color:var(--fh-sync-good,var(--good,#8de09d))!important}
[data-fh-sync="offline"]{color:var(--fh-sync-bad,var(--danger,#ff969d))!important}

.fh-confirm-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}
.fh-confirm-overlay.hidden{display:none}
.fh-confirm-box{width:min(430px,100%);padding:25px;border:1px solid var(--fh-bar-line,var(--line,rgba(255,255,255,.16)));border-radius:24px;background:var(--panel,#191a20);color:var(--text,#f5f3ef);box-shadow:0 28px 90px rgba(0,0,0,.55);text-align:center}
.fh-confirm-icon{width:46px;height:46px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.07);color:var(--accent,#e9e1ce);font-size:1.35rem;font-weight:900}
.fh-confirm-box h2{margin:0 0 9px;font:800 1.25rem/1.2 system-ui,-apple-system,Segoe UI,sans-serif}
.fh-confirm-box p{margin:0;color:var(--muted,#aaa);font:500 .94rem/1.48 system-ui,-apple-system,Segoe UI,sans-serif;white-space:pre-line}
.fh-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:22px}
.fh-confirm-actions button{min-height:44px;margin:0;padding:10px 13px;border:1px solid var(--line,rgba(255,255,255,.16));border-radius:13px;font:800 .9rem/1.1 system-ui,-apple-system,Segoe UI,sans-serif}
.fh-confirm-cancel{background:var(--panel2,#24262e)!important;color:var(--text,#f5f3ef)!important}
.fh-confirm-accept{background:var(--accent,#e9e1ce)!important;color:#171719!important}
.fh-confirm-accept.danger{background:var(--danger,#ff969d)!important;color:#241013!important}

.fh-result-card{text-align:center}
.fh-result-kicker{margin-bottom:7px;color:var(--muted,#aaa);font-size:.7rem;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.fh-result-card .fh-result-title{margin:0 0 6px;font-size:1.3rem;line-height:1.2}
.fh-result-card .fh-result-summary{margin:0;color:var(--muted,#aaa);line-height:1.45}
.fh-result-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:15px}
.fh-result-actions button{min-height:44px;padding:11px 15px;border-radius:13px;font-weight:850}
.fh-result-actions .fh-result-primary{background:var(--accent,#e9e1ce);color:#171719}
.fh-result-actions .fh-result-secondary{background:var(--panel2,#24262e);color:var(--text,#f5f3ef);border:1px solid var(--line,rgba(255,255,255,.16))}

@media (pointer:coarse){
  .fh-gamebar .fh-nav-button{min-height:44px}
}
@media (max-width:430px){
  .fh-gamebar{grid-template-columns:minmax(78px,1fr) auto minmax(44px,1fr);padding-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))}
  .fh-gamebar .fh-nav-button{font-size:.76rem;padding-inline:8px}
  .fh-gamebar .fh-game-identity strong{font-size:.84rem;max-width:40vw}
  .fh-result-actions{display:grid;grid-template-columns:1fr}.fh-result-actions button{width:100%}
}
@media (orientation:landscape) and (max-height:560px){
  .fh-gamebar{min-height:42px;padding-top:max(3px,env(safe-area-inset-top));padding-bottom:3px}
  .fh-gamebar .fh-nav-button{min-height:36px;padding-block:6px}
  .fh-gamebar .fh-game-identity small{display:none}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
