/* Fbrkha consolidated runtime stylesheet — v3.2.19. Legacy layers preserved in original cascade order, then normalized below. */
/* === legacy v3.2.0 === */
/* Fbrkh v3.2.0 — Fbrkha recovered paid-quality polish */
body.game-active .category-picker-block,
body.game-active .category-choice-grid,
body.game-active .category-choice-wrap,
body.game-active .category-choice,
body.game-active .category-choice-text{min-width:0}

body.game-active .category-preset-row.fbrkha-category-presets-v311{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px!important;
  overflow:visible!important;
}
body.game-active .category-preset-row .category-preset{
  min-width:0!important;
  width:100%;
  white-space:normal;
  line-height:1.15;
  overflow-wrap:anywhere;
}
body.game-active .category-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  overflow:visible!important;
}
body.game-active .category-choice-wrap{
  width:100%;
  max-width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:stretch;
  gap:6px;
}
body.game-active .category-choice{
  width:100%;
  max-width:100%;
  min-height:64px;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center;
  gap:8px!important;
  padding:9px 10px!important;
}
body.game-active .category-choice-text{
  display:grid;
  gap:2px;
  text-align:start;
  overflow-wrap:anywhere;
  word-break:normal;
}
body.game-active .category-choice-text strong,
body.game-active .category-choice-text small{
  min-width:0;
  max-width:100%;
  white-space:normal!important;
  overflow-wrap:anywhere;
}
body.game-active .category-choice-favorite-btn{
  align-self:center;
  flex:0 0 auto;
  min-width:42px;
  min-height:42px;
}

/* Keep the live stage readable as one composition instead of allowing the title to consume the viewport. */
body.game-active .question-stage,
body.game-active .host-voting-question,
body.game-active .player-answer-stage{
  min-width:0;
  max-width:100%;
}
body.game-active .question-stage h1,
body.game-active .host-voting-question h1{
  max-width:min(1180px,100%);
  margin-inline:auto;
  text-wrap:balance;
  overflow-wrap:anywhere;
  font-size:clamp(22px,3.55vw,54px)!important;
  line-height:1.12!important;
}

/* v3.2 final screens share one compact viewport contract. */
body.game-active :is(.final-score-stage,.final-podium-stage,.awards-page,.share-summary-stage).v320-final-shell{
  width:min(1080px,100%)!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
}
body.game-active .v320-final-shell .podium-grid{
  min-height:0;
  grid-template-rows:minmax(0,1fr);
}
body.game-active .v320-final-shell .podium-medal{
  width:46px;
  height:46px;
  margin-inline:auto;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(145deg,#ffe38b,#d99b22);
  color:#24152f;
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 10px 24px rgba(0,0,0,.2);
  font-size:20px!important;
  font-weight:1000;
}
body.game-active .v320-final-shell .podium-medal b{font:1000 20px/1 Alexandria,Arial,sans-serif}
body.game-active .v320-final-shell .summary-card-head,
body.game-active .v320-final-shell .ranking-heading,
body.game-active .v320-final-shell>header{min-width:0;text-align:center}

@media (max-width:900px){
  body.game-active .category-preset-row.fbrkha-category-presets-v311{grid-template-columns:repeat(3,minmax(0,1fr))}
  body.game-active .category-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:560px){
  body.game-active .category-preset-row.fbrkha-category-presets-v311{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.game-active .category-choice-grid{grid-template-columns:1fr!important}
}
@media (max-height:620px) and (orientation:landscape){
  body.game-active .question-stage,
  body.game-active .host-voting-question{
    min-height:0!important;
    padding-block:4px!important;
    gap:4px!important;
  }
  body.game-active .question-stage h1,
  body.game-active .host-voting-question h1{
    font-size:clamp(18px,6.2vh,31px)!important;
    line-height:1.08!important;
    margin-block:2px!important;
  }
  body.game-active .v320-final-shell .podium-card{padding:6px!important;min-height:0!important}
  body.game-active .v320-final-shell .podium-avatar{width:52px!important;height:52px!important;margin-bottom:3px!important}
  body.game-active .v320-final-shell .podium-medal{width:30px;height:30px;font-size:15px!important}
  body.game-active .v320-final-shell .podium-medal b{font-size:15px}
}
\n/* === legacy v3.2.2 === */
/* Fbrkha v3.2.2 — long category labels, host-stage safety, one round highlight. */
body.game-active .category-choice-text strong,
body.game-active .category-preset-row .category-preset {
  text-wrap: balance;
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none;
}
body.game-active.host-active .host-player-management {
  position: relative;
  z-index: 2;
  width: min(1120px, 100%);
  max-height: min(18vh, 128px);
  overflow: auto;
  overscroll-behavior: contain;
  margin: 8px auto 10px !important;
  padding: 7px 8px;
  border-radius: 15px;
}
body.game-active.host-active .host-player-management .player-chips {
  max-height: none !important;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}
body.game-active.host-active .host-tools-panel.always-visible {
  z-index: 150;
}
body.game-active .round-highlight-card {
  width: min(760px, 100%);
  margin: 0 auto 12px;
  display: grid;
  grid-template-columns: auto minmax(0,1fr);
  gap: 11px;
  align-items: center;
  padding: 11px 14px;
  border: 1px solid color-mix(in srgb, var(--fbrkh-theme-accent, #ffd34f) 48%, transparent);
  border-radius: 17px;
  background: color-mix(in srgb, var(--panel, #1b1231) 90%, var(--fbrkh-theme-accent, #ffd34f) 10%);
  box-shadow: 0 12px 32px rgba(0,0,0,.16);
}
body.game-active .round-highlight-card > span { font-size: clamp(26px,4vw,38px); }
body.game-active .round-highlight-card div { min-width:0; display:grid; gap:2px; }
body.game-active .round-highlight-card b { font-weight:1000; }
body.game-active .round-highlight-card small { opacity:.88; overflow-wrap:break-word; }
@media (max-height: 620px) and (orientation: landscape) {
  body.game-active.host-active .host-player-management { max-height: 86px; margin-block: 4px 6px !important; padding:4px 6px; }
}
\n/* === legacy v3.2.15 === */
/* Fbrkha v3.2.15 — readable categories, dense participant safety, stable mobile viewport. */
.category-choice-text strong,
body.game-active .category-choice-text strong{
  display:block!important;
  -webkit-box-orient:initial!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  overflow:visible!important;
  min-height:0!important;
  max-height:none!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.32!important;
  font-size:clamp(.84rem,1.55vw,1rem)!important;
}
.category-choice{min-height:86px;height:auto!important;align-items:stretch}
.category-choice-text{min-width:0;display:grid;align-content:center;gap:4px}
.modal-category-grid .category-choice{height:auto!important;min-height:48px!important}
.modal-category-grid .category-choice strong{white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.3!important;overflow-wrap:anywhere!important}

body.game-active.host-active .question-stage,
body.game-active.host-active .host-voting-content{flex:0 1 auto!important;max-height:none!important;overflow:visible!important}
body.game-active.host-active .host-player-management,
body.game-active.host-active .stage-players{
  position:relative!important;
  width:min(1180px,100%)!important;
  max-height:none!important;
  overflow:visible!important;
  margin:8px auto!important;
  padding:7px 8px!important;
}
body.game-active.host-active .host-player-management .player-chips,
body.game-active.host-active .stage-players .player-chips{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(132px,1fr))!important;
  gap:6px!important;
  max-height:none!important;
  overflow:visible!important;
}
body.game-active.host-active .player-chip{
  min-width:0!important;
  min-height:42px!important;
  padding:5px 8px!important;
  font-size:clamp(.74rem,1.25vw,.9rem)!important;
}
body.game-active.host-active .player-chip b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.game-active.host-active .player-chip-avatar{width:32px!important;height:32px!important;flex:0 0 32px!important}

/* iOS zooms form fields below 16px. Keep the computed size at or above that threshold. */
body.game-active .answer-input,
body.game-active input[type="text"],
body.game-active input[type="search"],
body.game-active input[type="email"],
body.game-active input[type="password"],
body.game-active textarea,
body.game-active select{
  font-size:16px!important;
  -webkit-text-size-adjust:100%;
}
body.game-active input,body.game-active textarea,body.game-active select{touch-action:manipulation}

/* Transitional scenes must size to their content instead of inheriting a clipped 100dvh child. */
body.game-active .reveal-transition-screen,
body.game-active .cinematic-stage,
body.game-active .player-round-recap,
body.game-active .round-highlight-card,
body.game-active .final-score-stage,
body.game-active .final-podium-stage,
body.game-active .awards-page,
body.game-active .share-summary-stage{max-height:none!important;overflow:visible!important}

@media (max-width:700px){
  body.game-active{overflow-x:hidden!important;overflow-y:auto!important;-webkit-text-size-adjust:100%}
  body.game-active #app,
  body.game-active .game-shell,
  body.game-active.host-active .game-shell.wide{
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.game-active.host-active #app,
  body.game-active.host-active .game-shell,
  body.game-active.host-active .game-shell.wide{padding-bottom:calc(76px + env(safe-area-inset-bottom))!important}
  body.game-active .question-stage,
  body.game-active .host-voting-content,
  body.game-active .mobile-question,
  body.game-active .answer-entry-card,
  body.game-active .vote-player-stage{height:auto!important;max-height:none!important;overflow:visible!important;flex:none!important}
  body.game-active .mobile-question{margin:8px auto!important;padding:8px!important}
  body.game-active .mobile-question h1{font-size:clamp(21px,6.1vw,34px)!important;line-height:1.34!important;margin:6px auto!important}
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips,
  body.game-active.host-active .lobby-panel .player-chips{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:5px!important;overflow:visible!important}
  body.game-active.host-active .player-chip{font-size:12px!important;min-height:40px!important}
  body.game-active .reveal-transition-screen{min-height:min(46dvh,420px)!important;padding:18px 10px!important}
  body.game-active .reveal-transition-screen h1{font-size:clamp(28px,9vw,46px)!important;line-height:1.22!important}
  body.game-active .final-score-stage,
  body.game-active .final-podium-stage,
  body.game-active .awards-page,
  body.game-active .share-summary-stage{min-height:0!important;height:auto!important;padding:10px 6px!important}
}
@media (max-width:390px){
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips{grid-template-columns:1fr 1fr!important}
  body.game-active .player-chip-avatar{width:30px!important;height:30px!important}
}
\n/* === legacy v3.2.16 === */
/* Fbrkha v3.2.16 — final category typography + mobile-first gameplay shell. */

/* 657 — category cards: the label owns the flexible column; controls never squeeze Arabic words. */
.category-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}
.category-choice-wrap{
  position:relative!important;
  min-width:0!important;
  min-height:88px!important;
}
.category-choice{
  width:100%!important;
  min-width:0!important;
  min-height:88px!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:36px minmax(0,1fr) 28px!important;
  grid-template-areas:"icon text check"!important;
  align-items:center!important;
  gap:10px!important;
  padding:12px 54px 12px 12px!important;
  text-align:right!important;
}
.category-choice-icon{grid-area:icon!important;align-self:center;justify-self:center;font-size:1.45rem!important}
.category-choice-text{grid-area:text!important;min-width:0!important;display:grid!important;align-content:center!important;gap:3px!important}
.category-choice-check{grid-area:check!important;align-self:center;justify-self:center}
.category-choice-text strong{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  line-break:auto!important;
  text-wrap:pretty!important;
  overflow:visible!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  line-height:1.42!important;
  font-size:clamp(.92rem,1.25vw,1.04rem)!important;
}
.category-choice-favorite-btn{
  position:absolute!important;
  inset-inline-start:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  width:38px!important;
  height:38px!important;
  z-index:4!important;
}
.category-choice-favorite-btn:hover,.category-choice-favorite-btn:focus-visible{transform:translateY(calc(-50% - 1px))!important}
.modal-category-grid .category-choice{
  min-height:64px!important;
  height:auto!important;
  grid-template-columns:36px minmax(0,1fr) auto!important;
  grid-template-areas:"icon text check"!important;
  padding:10px 12px!important;
}
.modal-category-grid .category-choice > span:first-child{grid-area:icon;justify-self:center}
.modal-category-grid .category-choice > strong{grid-area:text;min-width:0;white-space:normal!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important;line-height:1.4!important}
.modal-category-grid .category-choice > small{grid-area:check;white-space:nowrap}

@media(max-width:900px){
  .category-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:540px){
  .category-choice-grid{grid-template-columns:1fr!important;gap:8px!important}
  .category-choice-wrap,.category-choice{min-height:72px!important}
  .category-choice{grid-template-columns:32px minmax(0,1fr) 26px!important;padding-block:10px!important}
  .category-choice-text strong{font-size:1rem!important;line-height:1.4!important}
}

/* 658/664/665 — mobile-first gameplay flow, stable scale and always-visible participants. */
body.game-active :is(input,textarea,select){
  font-size:16px!important;
  -webkit-text-size-adjust:100%;
}
body.game-active .answer-input{
  touch-action:manipulation;
}
body.game-active.text-entry-focused{
  --fbrkha-input-focus:1;
}

@media(max-width:700px){
  html:has(body.game-active),
  body.game-active{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow-x:clip!important;
    overflow-y:auto!important;
    overscroll-behavior-x:none;
    -webkit-text-size-adjust:100%;
  }

  body.game-active #app,
  body.game-active .game-shell,
  body.game-active.host-active .game-shell.wide,
  body.game-active.player-active .game-shell.player-shell{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    min-height:100dvh!important;
    max-height:none!important;
    overflow:visible!important;
    box-sizing:border-box!important;
    transform:none!important;
    zoom:1!important;
    padding-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))!important;
    padding-bottom:max(76px,calc(64px + env(safe-area-inset-bottom)))!important;
  }
  body.game-active #app>*{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  body.game-active .question-stage,
  body.game-active .host-voting-content,
  body.game-active .host-voting-question,
  body.game-active .mobile-question,
  body.game-active .answer-entry-card,
  body.game-active .submission-card,
  body.game-active .vote-player-stage,
  body.game-active .vote-grid,
  body.game-active .reveal-stage,
  body.game-active .ranking-stage,
  body.game-active .reveal-transition-screen,
  body.game-active .cinematic-stage,
  body.game-active .player-round-recap,
  body.game-active .round-highlight-card,
  body.game-active .final-score-stage,
  body.game-active .final-podium-stage,
  body.game-active .awards-page,
  body.game-active .share-summary-stage,
  body.game-active .waiting-stage,
  body.game-active .result-reveal,
  body.game-active .scoreboard,
  body.game-active .team-scoreboard{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    flex:0 0 auto!important;
    box-sizing:border-box!important;
    transform:none!important;
  }

  body.game-active .game-hud,
  body.game-active .game-hud-main,
  body.game-active .game-hud-meta,
  body.game-active .host-toolbar,
  body.game-active .timer-shell,
  body.game-active .round-mode-banner,
  body.game-active .surprise-banner,
  body.game-active .personal-challenge{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.game-active .mobile-question,
  body.game-active .question-stage,
  body.game-active .host-voting-question{
    margin:8px auto!important;
    padding:8px 6px!important;
  }
  body.game-active .mobile-question h1,
  body.game-active .question-stage h1,
  body.game-active .host-voting-question h1{
    max-width:100%!important;
    margin:6px auto!important;
    font-size:clamp(22px,6.4vw,34px)!important;
    line-height:1.34!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    text-wrap:balance;
  }
  body.game-active .personal-challenge{
    margin:6px 0!important;
    padding:10px 12px!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.game-active .personal-challenge:not([open]){
    max-height:none!important;
    overflow:visible!important;
  }

  body.game-active .answer-entry-card,
  body.game-active .submission-card{
    min-height:0!important;
    padding:18px 14px!important;
    margin:8px auto!important;
  }
  body.game-active .mobile-answer-composer{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.game-active .host-player-management,
  body.game-active .stage-players{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:72px!important;
    max-height:min(34dvh, 270px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    margin:8px auto!important;
    padding:8px!important;
    flex:0 0 auto!important;
    box-sizing:border-box!important;
  }
  body.game-active .host-player-management .player-chips,
  body.game-active .stage-players .player-chips,
  body.game-active .lobby-panel .player-chips{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:6px!important;
    width:100%!important;
    min-width:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
  body.game-active .player-chip{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    min-height:44px!important;
    height:auto!important;
    padding:6px 7px!important;
    gap:5px!important;
    box-sizing:border-box!important;
  }
  body.game-active .player-chip b{
    min-width:0!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    line-height:1.2!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }

  body.game-active .reveal-transition-screen,
  body.game-active .cinematic-stage,
  body.game-active .player-round-recap,
  body.game-active .ranking-stage,
  body.game-active .final-score-stage,
  body.game-active .final-podium-stage,
  body.game-active .awards-page,
  body.game-active .share-summary-stage{
    min-height:0!important;
    padding:12px 6px!important;
    margin-block:8px!important;
  }

  body.game-active [data-fbrkha-phase="results"] .host-player-management,
  body.game-active [data-fbrkha-phase="final"] .host-player-management{
    max-height:min(28dvh,230px)!important;
  }
}

@media(max-width:380px){
  body.game-active .host-player-management .player-chips,
  body.game-active .stage-players .player-chips{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.game-active .player-chip{font-size:.72rem!important;padding-inline:5px!important}
  body.game-active .player-chip-avatar{width:28px!important;height:28px!important;flex:0 0 28px!important}
}
.question-inline-ltr{direction:ltr!important;unicode-bidi:isolate!important;display:inline-block!important;white-space:nowrap!important}

/* 658 — desktop host also reserves a compact, readable participant strip for long questions. */
@media(min-width:701px){
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{
    min-height:64px!important;
    max-height:min(18dvh,138px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    margin:6px auto!important;
    padding:6px 8px!important;
    gap:5px!important;
    overscroll-behavior:contain;
  }
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips{
    grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important;
    gap:5px!important;
  }
  body.game-active.host-active .player-chip{
    min-height:38px!important;
    height:auto!important;
    padding:4px 7px!important;
  }
  body.game-active.host-active .player-chip b{
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    line-height:1.18!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
  }
  body.game-active.host-active .question-stage h1,
  body.game-active.host-active .host-voting-question h1{
    font-size:clamp(24px,min(3.7vw,5vh),54px)!important;
    line-height:1.32!important;
  }
}
@media(min-width:701px){
  body.game-active.host-active .question-stage,
  body.game-active.host-active .host-voting-content{
    flex:0 0 auto!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding-block:clamp(10px,2.1vh,20px)!important;
  }
}

/* === v3.2.18 normalized Fbrkha layout === */
:root{
  --fbrkha-card-radius:18px;
  --fbrkha-touch:44px;
  --fbrkha-text-leading:1.48;
}

/* 667/671/672/673/677/695 — category cards: distinct regions, safe Arabic typography and touch sizes. */
.category-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.category-choice-wrap{
  position:relative!important;
  min-width:0!important;
  min-height:94px!important;
}
.category-choice{
  width:100%!important;
  min-width:0!important;
  min-height:94px!important;
  height:100%!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 32px!important;
  grid-template-areas:"icon text check"!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:4px!important;
  padding:14px!important;
  padding-inline-end:62px!important;
  box-sizing:border-box!important;
  text-align:start!important;
  border-radius:var(--fbrkha-card-radius)!important;
  overflow:hidden!important;
}
.category-choice-icon{
  grid-area:icon!important;
  align-self:center!important;
  justify-self:center!important;
  font-size:1.45rem!important;
  line-height:1!important;
}
.category-choice-text{
  grid-area:text!important;
  min-width:0!important;
  max-width:100%!important;
  display:grid!important;
  align-content:center!important;
  gap:5px!important;
}
.category-choice-text strong{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  -webkit-line-clamp:unset!important;
  line-clamp:unset!important;
  line-height:var(--fbrkha-text-leading)!important;
  font-family:'Alexandria','Segoe UI',Tahoma,Arial,sans-serif!important;
  font-size:clamp(.94rem,1.25vw,1.06rem)!important;
  font-weight:750!important;
  letter-spacing:-.015em!important;
}
.category-choice-status{
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.35!important;
  font-size:.78rem!important;
  font-weight:650!important;
  opacity:.78!important;
}
.category-choice-check{
  grid-area:check!important;
  align-self:center!important;
  justify-self:center!important;
  min-width:30px!important;
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  font-size:1rem!important;
  font-weight:900!important;
  line-height:1!important;
  pointer-events:none!important;
}
.category-choice:not(.selected) .category-choice-check{visibility:hidden!important}
.category-choice-favorite-btn{
  position:absolute!important;
  inset-inline-start:auto!important;
  inset-inline-end:8px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  min-width:44px!important;
  min-height:44px!important;
  width:44px!important;
  height:44px!important;
  display:grid!important;
  place-items:center!important;
  z-index:5!important;
  border-radius:999px!important;
  touch-action:manipulation!important;
}
.category-choice-favorite-btn:hover,.category-choice-favorite-btn:focus-visible{transform:translateY(calc(-50% - 1px))!important}
.category-choice-favorite-btn:active{transform:translateY(-50%) scale(.97)!important}

/* Keep modal cards on the same semantic slots; status stays under the label, check has its own cell. */
.modal-category-grid .category-choice{
  min-height:72px!important;
  height:auto!important;
  grid-template-columns:38px minmax(0,1fr) 32px!important;
  grid-template-areas:"icon text check"!important;
  padding:12px 14px!important;
}
.modal-category-grid .category-choice > .category-choice-icon{grid-area:icon!important}
.modal-category-grid .category-choice > .category-choice-text{grid-area:text!important}
.modal-category-grid .category-choice > .category-choice-check{grid-area:check!important}

html[data-theme="light"] .category-choice.selected{
  border-color:color-mix(in srgb,var(--accent,#8b5cf6) 68%,#5d3ca8)!important;
  background:color-mix(in srgb,var(--accent,#8b5cf6) 10%,#fff)!important;
  box-shadow:0 8px 24px rgba(88,61,153,.12)!important;
}
html[data-theme="dark"] .category-choice.selected{
  border-color:color-mix(in srgb,var(--accent,#a78bfa) 74%,#fff)!important;
  background:color-mix(in srgb,var(--accent,#8b5cf6) 16%,#171021)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.24)!important;
}
html[data-theme="light"] .category-choice-check{background:#6552b9!important;color:#fff!important}
html[data-theme="dark"] .category-choice-check{background:#c4b5fd!important;color:#211633!important}

/* 668/670/675 — setup and gameplay are both phone-safe; no game-active gate for public setup shell. */
@media(max-width:700px){
  html,body{max-width:100%!important;overflow-x:clip!important;-webkit-text-size-adjust:100%}
  .public-screen{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:clip!important;
    box-sizing:border-box!important;
    padding-inline:max(10px,env(safe-area-inset-left)) max(10px,env(safe-area-inset-right))!important;
    padding-bottom:max(24px,env(safe-area-inset-bottom))!important;
  }
  .public-screen>*{min-width:0!important;max-width:100%!important;box-sizing:border-box!important}
  .setup-card,.setup-feature-block,.category-picker-block,.category-choice-grid,.category-choice-wrap{min-width:0!important;max-width:100%!important}
  .category-choice-grid{grid-template-columns:1fr!important;gap:9px!important}
  .category-choice-wrap,.category-choice{min-height:82px!important}
  .category-choice{
    grid-template-columns:36px minmax(0,1fr) 30px!important;
    column-gap:10px!important;
    padding-block:11px!important;
    padding-inline-start:11px!important;
    padding-inline-end:60px!important;
  }
  .category-choice-text strong{font-size:1rem!important;line-height:1.45!important;font-weight:720!important}
  .category-choice-status{font-size:.76rem!important;line-height:1.32!important}
  body.game-active{
    width:100%!important;max-width:100%!important;min-height:100dvh!important;overflow-x:clip!important;overflow-y:auto!important;
    padding-left:env(safe-area-inset-left)!important;padding-right:env(safe-area-inset-right)!important;
  }
  body.game-active #app,
  body.game-active .game-shell,
  body.game-active.host-active .game-shell.wide,
  body.game-active.player-active .game-shell.player-shell{
    padding-inline:max(8px,env(safe-area-inset-left)) max(8px,env(safe-area-inset-right))!important;
    padding-bottom:max(76px,calc(64px + env(safe-area-inset-bottom)))!important;
  }
  body.game-active .host-toolbar .btn,
  body.game-active .final-actions .btn,
  body.game-active .share-actions .btn{
    min-height:44px!important;
    touch-action:manipulation!important;
  }
}
@media(max-width:380px){
  .category-choice{grid-template-columns:34px minmax(0,1fr) 30px!important;padding-inline-end:58px!important}
}

/* 676/689/695 — every visible user text container may wrap; names and summaries never escape their card. */
:where(.game-shell,.public-screen,.scoreboard-card,.final-score-stage,.final-podium-stage,.awards-page,.share-summary-stage,.share-summary-card,.award-card,.podium-card,.team-score-card){min-width:0!important;box-sizing:border-box!important}
:where(.scoreboard-name,.participant-name,.award-card h2,.award-card p,.award-winners b,.share-summary-card h1,.share-summary-card h2,.share-summary-card b,.share-summary-card strong,.share-summary-card small,.team-score-card b,.team-score-card span,.final-podium-stage h1,.final-podium-stage h2){
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  line-height:1.45!important;
}
.final-score-stage,
.final-podium-stage,
.awards-page,
.share-summary-stage{
  width:min(100%,1180px)!important;
  min-width:0!important;
  max-width:100%!important;
  margin-inline:auto!important;
  overflow:visible!important;
}
.final-podium-stage .podium-grid,
.awards-page .awards-grid,
.share-summary-card .summary-main-grid,
.share-summary-card .summary-bottom-grid,
.share-summary-card .share-mini-stats{
  min-width:0!important;
  max-width:100%!important;
}
.award-card,.share-summary-card,.scoreboard-row{min-width:0!important;overflow:hidden!important}
.scoreboard-row{grid-template-columns:minmax(30px,auto) minmax(0,1fr) minmax(74px,auto)!important}
.scoreboard-name{display:flex!important;align-items:center!important;gap:8px!important}

@media(max-width:700px){
  .final-score-stage,.final-podium-stage,.awards-page,.share-summary-stage{padding:10px 4px!important}
  .final-podium-stage .podium-grid,
  .awards-page .awards-grid,
  .share-summary-card .summary-main-grid,
  .share-summary-card .summary-bottom-grid{grid-template-columns:1fr!important}
  .scoreboard-row{grid-template-columns:32px minmax(0,1fr) minmax(68px,auto)!important;gap:7px!important}
  .scoreboard-name{font-size:.9rem!important;line-height:1.35!important}
  .share-summary-card{padding:14px 12px!important}
}

/* v3.2.18 final podium overflow guard: reserve the full two-line Arabic font box. */
.final-podium-stage .scoreboard-name{
  min-height:44px!important;
  align-items:flex-start!important;
}

/* v3.2.19 category card fix - 696: favorite, check, text and icon are real layout regions. */
.category-choice-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(300px,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.category-choice-wrap{
  position:relative!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  gap:8px!important;
  min-width:0!important;
  min-height:96px!important;
}
.category-choice{
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  min-height:96px!important;
  height:auto!important;
  display:grid!important;
  grid-template-columns:40px minmax(0,1fr) 32px!important;
  grid-template-areas:"icon text check"!important;
  align-items:center!important;
  column-gap:12px!important;
  row-gap:4px!important;
  padding:14px 12px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.category-choice-icon{
  grid-area:icon!important;
  width:40px!important;
  min-width:40px!important;
  display:grid!important;
  place-items:center!important;
}
.category-choice-text{
  grid-area:text!important;
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  align-content:center!important;
  gap:5px!important;
  padding:0!important;
}
.category-choice-text strong{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  hyphens:none!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.45!important;
  text-wrap:pretty!important;
}
.category-choice-status{
  min-width:0!important;
  max-width:100%!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  overflow:visible!important;
  text-overflow:clip!important;
  line-height:1.35!important;
}
.category-choice-check{
  grid-area:check!important;
  position:static!important;
  min-width:32px!important;
  width:32px!important;
  height:32px!important;
  margin:0!important;
  align-self:center!important;
  justify-self:center!important;
  z-index:auto!important;
}
.category-choice-favorite-btn{
  position:static!important;
  inset:auto!important;
  top:auto!important;
  transform:none!important;
  flex:0 0 44px!important;
  align-self:center!important;
  min-width:44px!important;
  min-height:44px!important;
  width:44px!important;
  height:44px!important;
  margin:0!important;
  z-index:auto!important;
}
.category-choice-favorite-btn:hover,.category-choice-favorite-btn:focus-visible{
  transform:translateY(-1px)!important;
}
.category-choice-favorite-btn:active{
  transform:scale(.97)!important;
}
@media(max-width:700px){
  .category-choice-wrap{
    gap:8px!important;
    min-height:88px!important;
  }
  .category-choice{
    min-height:88px!important;
    grid-template-columns:36px minmax(0,1fr) 32px!important;
    column-gap:10px!important;
    padding:12px 10px!important;
  }
  .category-choice-icon{
    width:36px!important;
    min-width:36px!important;
  }
}
@media(max-width:380px){
  .category-choice-wrap{gap:6px!important}
  .category-choice{
    grid-template-columns:34px minmax(0,1fr) 30px!important;
    column-gap:8px!important;
    padding:11px 9px!important;
  }
  .category-choice-check{min-width:30px!important;width:30px!important;height:30px!important}
}

/* === v3.2.20 mobile-first runtime layout (729-745) === */
:root{
  --fbrkha-host-toolbar-reserve:104px;
  --fbrkha-mobile-safe-gap:max(10px,env(safe-area-inset-bottom));
}
body.game-active.host-active .game-shell,
body.game-active.host-active .game-shell.wide{
  height:auto!important;
  min-height:100dvh!important;
  max-height:none!important;
  overflow:visible!important;
  padding-bottom:var(--fbrkha-host-toolbar-reserve)!important;
}
body.game-active .question-stage,
body.game-active .host-voting-content,
body.game-active .host-voting-question,
body.game-active .mobile-question{
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  flex:0 0 auto!important;
}
body.game-active .question-visual{
  width:min(520px,92vw)!important;
  max-width:100%!important;
  margin:6px auto!important;
  display:grid!important;
  place-items:center!important;
}
body.game-active .question-visual-img{
  display:block!important;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:min(31dvh,290px)!important;
  object-fit:contain!important;
}
body.game-active.host-active .host-player-management,
body.game-active.host-active .stage-players{
  position:relative!important;
  z-index:2!important;
  width:min(1180px,100%)!important;
  min-width:0!important;
  min-height:64px!important;
  max-height:min(36dvh,320px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
  margin:8px auto!important;
  padding:8px!important;
  box-sizing:border-box!important;
}
body.game-active.host-active .host-player-management .player-chips,
body.game-active.host-active .stage-players .player-chips,
body.game-active.host-active .lobby-panel .player-chips{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;
  gap:7px!important;
  width:100%!important;
  max-height:none!important;
  overflow:visible!important;
}
body.game-active .player-live-status{
  display:block!important;
  min-width:0!important;
  font-size:.68rem!important;
  line-height:1.15!important;
  opacity:.82!important;
  white-space:nowrap!important;
}
body.game-active .player-chip.disconnected-player .player-live-status{color:#ffb4b4!important;opacity:1!important}
body.game-active.host-active .host-tools-panel.always-visible{
  max-height:min(92px,24dvh)!important;
  overflow:auto!important;
}
body.game-active .answer-input,
body.game-active #answerInput,
body.game-active #hostAnswerInput{
  font-size:16px!important;
  line-height:1.45!important;
  transform:none!important;
  zoom:normal!important;
}
@media(max-width:700px){
  :root{--fbrkha-host-toolbar-reserve:132px}
  body.game-active,
  body.game-active.player-active,
  body.game-active.host-active{
    min-height:100dvh!important;
    height:auto!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    -webkit-text-size-adjust:100%!important;
  }
  body.game-active #app,
  body.game-active .game-shell,
  body.game-active .game-shell.player-shell,
  body.game-active .game-shell.wide{
    min-height:100dvh!important;
    height:auto!important;
    max-height:none!important;
    overflow:visible!important;
    transform:none!important;
  }
  body.game-active .question-visual{width:min(100%,430px)!important;margin-block:4px!important}
  body.game-active .question-visual-img{max-height:min(25dvh,220px)!important}
  body.game-active .mobile-question h1,
  body.game-active .question-stage h1,
  body.game-active .host-voting-question h1{
    font-size:clamp(20px,6vw,31px)!important;
    line-height:1.38!important;
    margin:6px auto!important;
    text-wrap:balance!important;
  }
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{
    max-height:min(34dvh,280px)!important;
    min-height:70px!important;
  }
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips,
  body.game-active.host-active .lobby-panel .player-chips{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body.game-active .player-chip{min-height:48px!important;height:auto!important;align-items:center!important}
  body.game-active .mobile-answer-composer{
    position:relative!important;
    bottom:auto!important;
    margin-bottom:var(--fbrkha-mobile-safe-gap)!important;
  }
}
@media(max-width:370px){
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips{grid-template-columns:1fr 1fr!important}
  body.game-active .player-chip{font-size:.72rem!important}
}
@media(min-width:701px) and (max-height:820px){
  body.game-active.host-active .question-stage,
  body.game-active.host-active .host-voting-content{padding-block:8px!important;margin-block:4px!important}
  body.game-active.host-active .question-visual-img{max-height:min(25dvh,210px)!important}
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:min(24dvh,190px)!important}
}

/* v3.2.20: iOS/Safari must never auto-zoom Fbrkha answer editors. */
@media (hover:none), (pointer:coarse), (max-width: 760px){
  #answerInput,
  #hostAnswerInput,
  .answer-input,
  .answer-composer input,
  .answer-composer textarea{
    font-size:17px!important;
    line-height:1.55!important;
    min-height:48px;
  }
}

/* v3.2.20 mobile participant chip geometry: keep identity/status/actions independent. */
body.game-active .player-chip{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  column-gap:7px!important;
  row-gap:0!important;
}
body.game-active .player-chip-info{
  min-width:0;
  display:grid;
  align-content:center;
  gap:2px;
  text-align:start;
}
body.game-active .player-chip-info b{
  min-width:0!important;
  margin:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  line-height:1.2!important;
  display:block!important;
}
body.game-active .player-chip-info .player-live-status{
  justify-self:start;
  min-width:0!important;
  max-width:100%;
  padding:2px 6px!important;
  font-size:10px!important;
  line-height:1.15!important;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.game-active .player-chip-actions{
  min-width:30px;
  display:grid;
  place-items:center;
  gap:3px;
}
body.game-active .player-chip-actions:empty{display:none}
body.game-active .player-chip-actions .chip-kick{
  margin:0!important;
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  min-height:32px!important;
  font-size:9px!important;
}
@media(max-width:700px){
  body.game-active .player-chip{padding:5px 6px!important;column-gap:5px!important}
  body.game-active .player-chip-avatar{width:30px!important;height:30px!important;flex-basis:30px!important;transform:none!important}
  body.game-active .player-chip-actions{min-width:28px}
  body.game-active .player-chip-actions .chip-kick{width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important}
}

/* v3.2.20 short-desktop voting geometry: keep all participant rows above the fixed host toolbar. */
@media(min-width:701px) and (max-height:900px){
  body.game-active.host-active .host-voting-content,
  body.game-active.host-active .question-stage{gap:6px!important;padding-block:6px!important;margin-block:2px!important}
  body.game-active.host-active .question-visual{width:min(430px,48vw)!important;margin-block:3px!important}
  body.game-active.host-active .question-visual-img{max-height:min(21dvh,175px)!important}
  body.game-active.host-active .host-voting-question h1,
  body.game-active.host-active .question-stage h1{font-size:clamp(24px,min(3vw,4.6vh),42px)!important;line-height:1.2!important;margin:4px auto!important}
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:min(16dvh,112px)!important;margin-block:4px calc(var(--fbrkha-host-toolbar-reserve) + 4px)!important;padding:5px 7px!important}
  body.game-active.host-active .host-player-management .player-chips,
  body.game-active.host-active .stage-players .player-chips{grid-template-columns:repeat(auto-fit,minmax(136px,1fr))!important;gap:4px!important}
  body.game-active.host-active .player-chip{min-height:38px!important;padding:3px 5px!important;column-gap:4px!important;font-size:11px!important}
  body.game-active.host-active .player-chip-avatar{width:26px!important;height:26px!important;flex-basis:26px!important;transform:none!important}
  body.game-active.host-active .player-chip-info .player-live-status{font-size:9px!important;padding:1px 4px!important}
  body.game-active.host-active .player-chip-actions .answer-status-check{display:none!important}
  body.game-active.host-active .player-chip-actions{min-width:48px!important}
  body.game-active.host-active .player-chip-actions .chip-kick{width:auto!important;height:32px!important;min-width:48px!important;min-height:32px!important;padding-inline:8px!important;white-space:nowrap!important;line-height:1!important;font-size:10px!important}
}
@media(min-width:701px) and (max-height:660px){
  :root{--fbrkha-host-toolbar-reserve:82px}
  body.game-active.host-active .question-visual{width:min(360px,42vw)!important}
  body.game-active.host-active .question-visual-img{max-height:min(19dvh,120px)!important}
  body.game-active.host-active .host-voting-question h1,
  body.game-active.host-active .question-stage h1{font-size:clamp(22px,min(2.7vw,4.2vh),32px)!important}
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:96px!important}
  body.game-active.host-active .host-tools-panel.always-visible{max-height:66px!important;padding-block:5px!important}
  body.game-active.host-active .host-tools-panel.always-visible .host-toolbar{padding:4px!important;gap:5px!important}
  body.game-active.host-active .host-tools-panel.always-visible .btn{min-height:34px!important;padding:6px 9px!important}
}

/* v3.2.20 mobile participant visibility: status text replaces the redundant check icon so 12 players fit without hidden rows. */
@media(max-width:700px){
  body.game-active .player-chip-actions .answer-status-check{display:none!important}
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:min(43dvh,360px)!important}
}

/* v3.2.20 final desktop density pass: all 12 participant cards must be fully visible without an internal scroll. */
@media(min-width:701px) and (max-height:900px){
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:132px!important}
}
@media(min-width:701px) and (max-height:660px){
  body.game-active.host-active .host-voting-content,
  body.game-active.host-active .question-stage{gap:3px!important;padding-block:2px!important;margin-block:0!important}
  body.game-active.host-active .question-visual{width:min(320px,38vw)!important;margin-block:1px!important}
  body.game-active.host-active .question-visual-img{max-height:min(14dvh,88px)!important}
  body.game-active.host-active .host-voting-question h1,
  body.game-active.host-active .question-stage h1{font-size:clamp(20px,min(2.45vw,3.8vh),28px)!important;margin:2px auto!important}
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{max-height:132px!important;margin-top:2px!important}
  body.game-active.host-active .player-chip{min-height:36px!important}
}

/* v3.2.22 — Fbrkha mobile viewport/layout final guard. */
@media(max-width:700px){
  body.game-active.player-active .answer-entry-card,
  body.game-active.player-active .submission-card{
    flex:0 0 auto!important;
    min-height:0!important;
    height:auto!important;
    max-height:none!important;
    align-self:auto!important;
    overflow:visible!important;
  }
  body.game-active.player-active .mobile-answer-composer{
    flex:0 0 auto!important;
    min-height:0!important;
    height:auto!important;
    position:relative!important;
    inset:auto!important;
    padding:12px!important;
    margin:8px auto max(14px,env(safe-area-inset-bottom))!important;
  }
  body.game-active.player-active .mobile-question h1,
  body.game-active.player-active .vote-grid .vote-option b,
  body.game-active.player-active .result-reveal,
  body.game-active.player-active .result-reveal :is(h1,h2,h3,p,b,strong,span){
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  body.game-active.player-active .mobile-question h1{
    font-size:clamp(21px,6.1vw,32px)!important;
    line-height:1.36!important;
  }
  body.game-active.player-active .vote-option{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  body.game-active.player-active .vote-option b{
    overflow-wrap:anywhere!important;
  }
  body.game-active.player-active .result-reveal{
    overflow-x:clip!important;
  }
}

/* v3.2.22 — participant avatars are easier to recognize while text/actions keep their own columns. */
body.game-active .player-chip-avatar,
body.game-active.host-active .player-chip-avatar,
body.game-active.player-active .player-chip-avatar{
  width:50px!important;
  height:50px!important;
  flex:0 0 50px!important;
  transform:none!important;
}
body.game-active .player-chip-actions{
  min-width:48px!important;
}
body.game-active .player-chip-actions .chip-kick{
  width:auto!important;
  min-width:48px!important;
  height:32px!important;
  min-height:32px!important;
  padding-inline:8px!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-size:10px!important;
}
@media(max-width:700px){
  body.game-active .player-chip-avatar,
  body.game-active.host-active .player-chip-avatar,
  body.game-active.player-active .player-chip-avatar{
    width:46px!important;
    height:46px!important;
    flex:0 0 46px!important;
  }
  body.game-active .player-chip-actions{min-width:46px!important}
  body.game-active .player-chip-actions .chip-kick{
    min-width:46px!important;
    height:32px!important;
    min-height:32px!important;
    padding-inline:7px!important;
    font-size:10px!important;
  }
}
@media(min-width:701px) and (max-height:660px){
  body.game-active.host-active .player-chip-avatar{
    width:46px!important;
    height:46px!important;
    flex-basis:46px!important;
  }
}


/* v3.2.23 — only truly dense 9–12 player lists shrink avatars; normal/short screens keep them visibly large. */
body.game-active .dense-player-list .player-chip-avatar,
body.game-active.host-active .dense-player-list .player-chip-avatar,
body.game-active.player-active .dense-player-list .player-chip-avatar{
  width:36px!important;
  height:36px!important;
  flex:0 0 36px!important;
}
@media(max-width:700px){
  body.game-active .dense-player-list .player-chip-avatar,
  body.game-active.host-active .dense-player-list .player-chip-avatar,
  body.game-active.player-active .dense-player-list .player-chip-avatar{width:34px!important;height:34px!important;flex:0 0 34px!important}
}

/* v3.2.23 — iOS/WebKit text entry must stay above the auto-zoom threshold even under accessibility/font metrics. */
@media (hover:none), (pointer:coarse), (max-width:900px){
  body.game-active #answerInput,
  body.game-active #hostAnswerInput,
  body.game-active .answer-input{
    font-size:18px!important;
    line-height:1.5!important;
    -webkit-text-size-adjust:100%!important;
  }
}

/* v3.2.22 — option visual neutrality: all choices use identical text treatment. */
body.game-active .vote-option b{
  font-variant-numeric:tabular-nums!important;
  font-feature-settings:"tnum" 1!important;
  white-space:normal!important;
  letter-spacing:normal!important;
  font-style:normal!important;
  text-decoration:none!important;
}

/* v3.2.22 — keep the results summary inside the physical mobile viewport. */
@media(max-width:700px){
  body.game-active.player-active .answers-voters-summary{
    box-sizing:border-box!important;
    width:min(100%,calc(100vw - 12px))!important;
    max-width:calc(100vw - 12px)!important;
    margin-inline:auto!important;
    transform-origin:center top!important;
  }
}

/* v3.2.28 — unified mobile viewport + count-aware participant density. */
@media(max-width:700px){
  html:has(body.game-active),body.game-active{min-height:calc(var(--fbrkha-stable-vh,1dvh) * 100)!important}
  body.game-active .game-shell{min-height:calc(var(--fbrkha-stable-vh,1dvh) * 100)!important}
  body.game-active.keyboard-open .game-shell{padding-bottom:max(18px,env(safe-area-inset-bottom))!important}
  body.game-active .player-chips.players-density-compact{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  body.game-active .player-chips.players-density-compact .player-chip-avatar{width:54px!important;height:54px!important;flex-basis:54px!important}
  body.game-active .player-chips.players-density-balanced{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  body.game-active .player-chips.players-density-balanced .player-chip-avatar{width:44px!important;height:44px!important;flex-basis:44px!important}
  body.game-active .player-chips.players-density-dense{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}
  body.game-active .player-chips.players-density-dense .player-chip{min-height:52px!important;padding:6px!important}
  body.game-active .player-chips.players-density-dense .player-chip-info b{font-size:.78rem!important;line-height:1.2!important}
}
@media(min-width:701px){
  body.game-active .player-chips.players-density-compact{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))!important}
  body.game-active .player-chips.players-density-balanced{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important}
  body.game-active .player-chips.players-density-dense{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))!important}
}

/* v3.2.35 — neutral vote geometry: the longest choice determines one density for every card. */
body.game-active .vote-option{
  min-height:88px!important;
  align-content:center!important;
}
body.game-active .vote-option.vote-density-medium b{
  font-size:.96em!important;
  line-height:1.42!important;
}
body.game-active .vote-option.vote-density-long b{
  font-size:.9em!important;
  line-height:1.38!important;
}
@media(max-width:700px){
  body.game-active .vote-option{min-height:82px!important}
  body.game-active .vote-option.vote-density-long b{font-size:.92em!important}
}

/* v3.2.41 — special-round host fit: the mode banner must not push long voting content under fixed host controls. */
@media (min-width:701px) and (max-height:900px){
  body.game-active.host-active .round-mode-banner{
    width:min(1180px,calc(100% - 24px))!important;
    max-width:min(1180px,calc(100% - 24px))!important;
    margin:4px auto!important;
    padding:7px 11px!important;
    gap:8px!important;
    border-radius:14px!important;
  }
  body.game-active.host-active .round-mode-banner>span{font-size:20px!important}
  body.game-active.host-active .round-mode-banner>div{gap:1px!important}
  body.game-active.host-active .round-mode-banner strong{
    font-size:clamp(18px,2vw,27px)!important;
    line-height:1.15!important;
  }
  body.game-active.host-active .round-mode-banner small{
    font-size:clamp(12px,1.25vw,16px)!important;
    line-height:1.25!important;
  }
  body.game-active.host-active .host-voting-content>.vote-grid{
    gap:6px!important;
  }
  body.game-active.host-active .host-voting-content>.vote-grid .vote-option{
    min-height:68px!important;
    padding-block:7px!important;
  }
  body.game-active.host-active .host-player-management,
  body.game-active.host-active .stage-players{
    margin-top:3px!important;
  }
}
