/* Compact home and public navigation; game-board layouts stay in arena-layout.css. */
.arena-home .lobby-shell{max-width:1760px}
.arena-home .lobby-header,.arena-public .lobby-header{gap:16px;padding:12px clamp(16px,3vw,44px)}
.arena-home .lobby-header>.server-state{display:flex;color:#ffb5b5;margin-left:auto}
.site-navigation{display:flex;align-items:center;gap:12px}
.site-navigation a{text-decoration:none}
.site-navigation .header-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px}
.menu-toggle{display:none}
.arena-home .lobby-main{padding:24px clamp(16px,3vw,44px) 36px}
/* Visible on keyboard focus only; normal mouse/touch layout stays unchanged. */
.arena-home .skip-to-content{position:fixed;top:12px;left:12px;z-index:9999;padding:12px 16px;border-radius:9px;background:#ffe3a8;color:#091325;font:700 14px/1.3 Arial,sans-serif;text-decoration:none;transform:translateY(-220%)}
.arena-home .skip-to-content:focus{transform:none;outline:3px solid #fff;outline-offset:2px}
.home-start{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);align-items:center;gap:30px;max-width:1500px;margin:0 auto 24px}
.arena-home .lobby-intro{display:flex;flex-direction:column;align-items:center;gap:14px;min-height:0;margin:0;padding:12px 0;text-align:center}
.arena-home .lobby-intro .eyebrow{align-self:center}
.arena-home .lobby-intro h1{font-size:clamp(34px,3.5vw,58px);line-height:1.08}
.arena-home .lobby-intro .subtitle{font-size:17px}
.arena-home .lobby-intro .welcome{font-size:13px;line-height:1.6}
.arena-home .hero-actions{margin:0}
.arena-home .game-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.arena-home .mode-card{min-height:178px;padding:16px;gap:8px;align-items:center;text-align:center}
.arena-home .mode-icon{font-size:25px}
.arena-home .mode-title{font-size:18px}
.arena-home .mode-copy{width:100%;text-align:center}
.arena-home .lobby-content{max-width:1500px}
.arena-home .lobby-sidebar{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;align-items:stretch}
.arena-home .side-card{padding:18px;text-align:center}
.arena-home .side-card .profile-row{justify-content:center;text-align:center}
.arena-home .side-card .profile-row>div:last-child{min-width:0}
.arena-home .side-card #retryServerButton{display:block;margin:10px auto 0}
.arena-home .quick-rules{max-width:1500px;margin:24px auto 0;text-align:center}
.arena-home .quick-rules .how-to-link{justify-self:center;width:100%;text-align:center}
.arena-home .quick-rules ol{padding-left:0;list-style-position:inside;text-align:center}
/* Top three players share the same all-time rankings as the leaderboard page. */
.arena-home .home-top-leaderboard{
  min-width:0;margin-top:19px;padding-top:16px;border-top:1px solid #3d5e83;
}
.arena-home .home-top-leaderboard h3{
  margin:0 0 12px;font-size:16px;color:var(--arena-gold-hi);text-align:center;
}
.arena-home .side-card #homeTopStatus{
  margin:8px 0 12px;font-size:12px;color:var(--arena-muted);text-align:center;
}
.arena-home .home-top-players{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;
  list-style:none;margin:0;padding:0;
}
.arena-home .home-top-player{
  min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;
  padding:12px 7px;border:1px solid #3b5b80;border-radius:12px;
  background:#102747;text-align:center;
}
.arena-home .home-top-medal{font-size:28px;line-height:1.15}
.arena-home .home-top-name{
  max-width:100%;overflow-wrap:anywhere;font-size:clamp(12px,1.3vw,15px);
  line-height:1.25;color:var(--arena-text);
}
.arena-home .home-top-success{
  color:var(--arena-gold-hi);font-size:19px;line-height:1.2;font-weight:800;
  font-variant-numeric:tabular-nums;
}
.arena-home .home-top-player small{
  font-size:11px;line-height:1.35;color:var(--arena-muted);
}
.arena-home .home-top-link{
  display:inline-block;margin-top:12px;color:var(--arena-gold-hi);
  font-size:12px;font-weight:700;text-decoration:underline;
}
@media(max-width:420px){
  .arena-home .home-top-players{gap:6px}
  .arena-home .home-top-player{padding:10px 4px}
  .arena-home .home-top-medal{font-size:25px}
  .arena-home .home-top-name{font-size:12px}
  .arena-home .home-top-success{font-size:17px}
  .arena-home .home-top-player small{font-size:10px}
}
/* Compact, responsive settings. Help and diagnostics remain accessible on demand. */
#onlineGameSettingsDialog{width:min(94vw,580px);max-height:calc(100dvh - 24px)}
#onlineGameSettingsDialog .online-game-settings-body{padding:16px 18px;gap:9px;text-align:left}
#onlineGameSettingsDialog h2{margin:0 0 2px;font-size:23px}
#onlineGameSettingsDialog .settings-main{display:grid;gap:10px;min-width:0}
#onlineGameSettingsDialog .settings-main h3{margin:0;padding:0;border:0;color:var(--arena-gold-hi);font-size:15px}
#onlineGameSettingsDialog .settings-toggle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
#onlineGameSettingsDialog .settings-toggle-grid .check-line{min-width:0;min-height:43px;display:flex;align-items:center;gap:7px;margin:0;padding:8px;border:1px solid #426181;border-radius:10px;background:#112b4c;font-size:12px;line-height:1.2}
#onlineGameSettingsDialog .settings-toggle-grid .check-line input{flex:none;width:18px;height:18px;margin:0}
#onlineGameSettingsDialog .settings-select-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#onlineGameSettingsDialog .settings-field{display:grid;grid-template-rows:32px auto;gap:4px;min-width:0}
#onlineGameSettingsDialog .settings-field label{display:flex;align-items:flex-end;min-width:0;font-size:12px;line-height:1.2}
#onlineGameSettingsDialog .settings-field select{box-sizing:border-box;width:100%;min-width:0;min-height:43px;font-size:14px;padding:8px!important}
#onlineGameSettingsDialog .settings-inline-note{font-size:12px;line-height:1.4}
#onlineGameSettingsDialog :is(.settings-help-details,.settings-report-details){margin:0;padding:7px 10px;border:1px solid #39597e;border-radius:10px;background:#102846}
#onlineGameSettingsDialog :is(.settings-help-details,.settings-report-details) summary{cursor:pointer;min-height:28px;line-height:28px;font-size:12px;font-weight:700;color:#dce7f5}
#onlineGameSettingsDialog :is(.settings-help-details,.settings-report-details) p{margin:8px 0 0;font-size:12px;line-height:1.5}
#onlineGameSettingsDialog .version-history{margin:0;padding:7px 10px}
#onlineGameSettingsDialog .version-history summary{min-height:28px;line-height:28px;font-size:12px}
#onlineGameSettingsDialog .online-game-settings-actions{gap:8px;margin-top:3px}
#onlineGameSettingsDialog .online-game-settings-actions .gold-button{min-width:0}
#onlineGameSettingsDialog .settings-report-problem{align-self:center;min-height:32px;margin:0;padding:3px 8px;background:transparent;border:0;box-shadow:none;color:#dce7f5;font-size:12px;text-decoration:underline}
#onlineGameSettingsDialog .settings-report-problem:hover:not(:disabled){background:transparent;border:0;color:var(--arena-gold-hi);box-shadow:none}
@media(max-width:340px){
  #onlineGameSettingsDialog .online-game-settings-body{padding:12px}
  #onlineGameSettingsDialog .settings-toggle-grid .check-line{font-size:11px;gap:5px;padding:6px}
  #onlineGameSettingsDialog .settings-select-grid{gap:6px}
}
.arena-public .public-page{width:min(100% - 32px,1000px);margin:30px auto 48px;line-height:1.6}
.public-page h1{color:var(--arena-gold-hi);margin:0 0 8px;font-size:clamp(30px,4vw,44px)}
.public-page .page-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;margin-bottom:22px}
.public-page .page-heading p{margin:0;color:var(--arena-muted)}
.leaderboard-wrap{overflow-x:auto;border:1px solid #365578;border-radius:14px;background:#102440}
.leaderboard-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.leaderboard-table caption{text-align:left;padding:14px 18px;color:var(--arena-muted)}
.leaderboard-table th,.leaderboard-table td{padding:13px 18px;text-align:right;border-top:1px solid #304b70}
.leaderboard-table th{color:var(--arena-gold-hi);background:#163052}
.leaderboard-table th:nth-child(-n+2),.leaderboard-table td:nth-child(-n+2){text-align:left}
.leaderboard-table td:nth-child(2){overflow-wrap:anywhere;min-width:120px}
.leaderboard-table tbody tr:first-child{background:#eac1610c}
.leaderboard-status{color:var(--arena-muted)}
@media(max-width:1050px){
  .home-start{grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);gap:20px}
  .arena-home .lobby-intro h1{font-size:38px}
}
@media(min-width:761px){
  .arena-home .home-start:has(#resumeCard:not([hidden])){align-items:end}
}
@media(max-width:760px){
  .arena-home .lobby-header,.arena-public .lobby-header{flex-wrap:wrap;gap:10px;z-index:5}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-height:44px}
  .site-navigation{display:none;flex:0 0 100%;width:100%;padding-top:10px;border-top:1px solid #365578}
  .site-navigation.is-open{display:flex;flex-direction:column;align-items:stretch;gap:7px}
  .site-navigation a,.site-navigation button{display:flex;align-items:center;text-align:center;justify-content:center;width:100%;min-height:44px}
  .home-start{grid-template-columns:minmax(0,1fr);gap:18px}
  .arena-home .lobby-intro{padding:0;gap:10px}
  .arena-home .lobby-intro h1{font-size:clamp(32px,7vw,46px)}
  .arena-home .lobby-main{padding-top:18px}
  .arena-home .lobby-sidebar{grid-template-columns:minmax(0,1fr)}
  .leaderboard-table th,.leaderboard-table td{padding:12px 9px;font-size:13px}
}
@media(max-width:420px){
  .arena-home .game-options{grid-template-columns:minmax(0,1fr)}
  .arena-home .mode-card{min-height:150px}
  .arena-home .mini-brand .brand-logo,.arena-public .mini-brand .brand-logo{max-width:52vw;height:48px}
}

/* Online activity and resumable matches share one card. */
.arena-home .resume-section{margin-top:18px;padding-top:16px;border-top:1px solid #365578}
.arena-home .resume-section h3{margin:0 0 8px;font-size:15px;color:var(--arena-gold-hi)}
.arena-home .resume-section p{margin:8px 0 12px}
@media(max-width:760px){
  .arena-home .lobby-header>.server-state{order:2;flex-basis:100%;margin:0}
  .arena-home .site-navigation{order:3}
}

.friend-entry{flex-wrap:wrap;gap:8px}
.friend-entry>span{flex:1;min-width:120px;overflow-wrap:anywhere}
.friend-presence{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px;background:#94a3b8}
.friend-presence.is-online{background:#55df91}
.friend-presence.is-offline{background:#ff7272}
.friend-entry .friend-remove{display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;min-height:44px;padding:0;border-color:transparent;background:transparent;box-shadow:none;color:#ffb5b5;font-size:25px;line-height:1}
.friend-entry .friend-remove:hover:not(:disabled){background:#ff727214;border-color:#ff727260}

.arena-home .lobby-intro .hero-resume{width:min(100%,430px);box-sizing:border-box;margin-top:4px;padding:12px 16px;border:1px solid #48688f;border-radius:16px;background:#1c3658}
.arena-home .lobby-intro .hero-resume h2{margin:0 0 6px;color:var(--arena-gold-hi);font-size:18px}
.arena-home .lobby-intro .hero-resume p{margin:0 0 8px;font-size:13px}
.arena-home .lobby-intro .hero-resume .resume-choice h3{margin:0 0 4px;color:var(--arena-gold-hi);font-size:13px;letter-spacing:.02em}
.arena-home .lobby-intro .hero-resume .resume-choice:not([hidden]) ~ .resume-choice:not([hidden]){margin-top:16px;padding-top:16px;border-top:1px solid #48688f}
.arena-home .lobby-intro .hero-resume .gold-button{max-width:100%;white-space:normal;min-height:44px}
.arena-home .lobby-intro .hero-resume .online-resume-note{margin:10px 0 0;font-size:12px;color:var(--arena-muted)}

/* Disabled online choices are clearly unavailable while the API is offline. */
.arena-home .mode-card:disabled{opacity:.82;filter:grayscale(.2);cursor:not-allowed}

/* One visual language for all regular home cards and mobile navigation.
   Only the saved-match card uses a subtly brighter variant. */
.arena-home{
  --home-card-background:linear-gradient(150deg,#1b365c 0%,#0d2342 100%);
  --home-card-border:#3a5a7e;
  --home-card-shadow:0 8px 24px rgba(2,10,25,.36);
}
.arena-home :is(.mode-card,.side-card,.quick-rules){
  background:var(--home-card-background);
  border-color:var(--home-card-border);
  box-shadow:var(--home-card-shadow);
}
.arena-home :is(.site-navigation .header-link,.site-navigation .gold-button,.menu-toggle){
  background:var(--home-card-background);
  border-color:var(--home-card-border);
  box-shadow:var(--home-card-shadow);
}
.arena-home .lobby-intro .hero-resume{
  background:linear-gradient(150deg,#234263 0%,#163153 100%);
  border-color:#607c9e;
  box-shadow:var(--home-card-shadow);
}
/* Keep interactive affordances and online availability distinct. */
.arena-home .mode-card:hover{
  border-color:var(--arena-gold);
  box-shadow:0 10px 24px #020915,0 0 0 1px #e7bb644a;
}
.arena-home :is(.site-navigation .header-link,.site-navigation .gold-button,.menu-toggle):hover:not(:disabled){
  border-color:var(--arena-gold);
  background:#264570;
}

/* Small announcement label above the new mini-games navigation item. */
.arena-home .site-navigation .mini-games-link{position:relative}
.arena-home .mini-games-new{
  position:absolute;top:-9px;right:8px;z-index:1;pointer-events:none;
  padding:3px 7px;border-radius:999px;border:1px solid #fb929b;
  background:#b42332;color:#fff8f8;box-shadow:0 2px 8px #21070c99;
  font-size:9px;line-height:1;font-weight:850;letter-spacing:.3px;
  white-space:nowrap;
}
@media(max-width:760px){
  .arena-home .mini-games-new{top:-5px;right:12px}
}

/* Five top-level links can exceed the available width on small tablets. */
@media (min-width:761px) and (max-width:1050px){
  .arena-home .lobby-header{flex-wrap:wrap;justify-content:center}
  .arena-home .lobby-header .site-navigation{flex:0 0 100%;justify-content:center;gap:8px}
  .arena-home .lobby-header .server-state{margin-left:auto}
}

/* Homepage text follows the existing Běžná / Větší / Největší preference.
   Raise the smallest defaults without scaling the game-board geometry. */
.arena-home .lobby-intro .welcome,
.arena-home .quick-rules :is(p:not(.eyebrow),ol){
  font-size:calc(14px * var(--arena-game-text-scale));
}
.arena-home .mode-copy,
.arena-home .side-card p,
.arena-home .side-card .presence-explain,
.arena-home .side-card .online-time-help,
.arena-home .subline,
.arena-home .online-presence span,
.arena-home .home-top-player small{
  font-size:calc(13px * var(--arena-game-text-scale));
  line-height:1.5;
}
.arena-home .mode-action,
.arena-home .home-top-link,
.arena-home .side-card #homeTopStatus,
.arena-home .lobby-footer{
  font-size:calc(13px * var(--arena-game-text-scale));
  line-height:1.4;
}
.arena-home .side-card #homeTopStatus{font-size:calc(14px * var(--arena-game-text-scale))}
.arena-home .mode-action{letter-spacing:.04em}
.arena-home .home-top-link,
.arena-home .lobby-footer :is(.arena-privacy-link,.arena-cookie-settings){
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:8px 12px;
}
.arena-home .home-top-link{margin-top:4px}
