/* V1.4.0 — Harmonisation de /rooms avec les cartes de /games-center */
.rooms-page{
  width:min(1220px,100%);margin:0 auto;padding:20px 14px 60px;
  background:transparent;
}
.rooms-shell{
  background:transparent!important;border:0!important;border-radius:0!important;
  padding:clamp(10px,2vw,24px)!important;box-shadow:none!important;overflow:visible!important;
}
.v15-rooms-hero{
  position:relative;isolation:isolate;overflow:hidden;text-align:right!important;
  display:flex;flex-direction:column;align-items:flex-start;gap:10px;
  min-height:0!important;padding:clamp(24px,4vw,42px)!important;
  border:0!important;border-radius:28px!important;
  background:linear-gradient(115deg,#104f49 0%,#08786e 56%,#249887 100%)!important;
  color:#fff;box-shadow:0 16px 36px rgba(9,78,73,.18)!important;
}
.v15-rooms-hero .v15-hero-orb{z-index:-1;opacity:.3;border-color:rgba(255,255,255,.22)!important}
.v15-rooms-hero .v15-hero-icon{position:absolute;left:clamp(20px,7vw,90px);top:50%;transform:translateY(-50%);font-size:clamp(70px,10vw,118px);opacity:.95;filter:drop-shadow(0 8px 12px rgba(0,0,0,.14));animation:none!important}
.v15-rooms-hero .v15-hero-badge{order:0;align-self:flex-start;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);color:#fff;border-radius:999px;padding:9px 14px;font-size:13px;font-weight:800}
.v15-rooms-hero h1{order:1;margin:0!important;color:#fff!important;background:none!important;-webkit-text-fill-color:#fff!important;font-size:clamp(30px,4vw,46px)!important;line-height:1.25;max-width:760px}
.v15-rooms-hero p{order:2;color:rgba(255,255,255,.9)!important;font-size:clamp(14px,1.5vw,17px)!important;line-height:1.9;max-width:760px;margin:0!important}
.v15-hero-stats{order:3;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:4px;padding:10px 15px;border-radius:15px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);color:#fff;font-size:13px}
.v15-hero-stats b{color:#ffdc75}
.v15-rooms-hero .rooms-player{order:4;width:min(100%,730px);max-width:730px;margin:8px 0 0!important;padding:16px 18px!important;border:1px solid rgba(255,255,255,.7)!important;border-radius:18px!important;background:#fff!important;color:#173b59!important;box-shadow:0 12px 28px rgba(0,0,0,.08)!important}
.rooms-player-current{color:#173b59!important}
.rooms-change-name summary{background:#fff;color:#17436a;border-color:#cbdff0!important}
.rooms-identity-required{display:flex;flex-direction:column;align-items:stretch;gap:8px}
.rooms-identity-required p{color:#526b7c!important}
.v15-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:32px 0 18px;text-align:right}
.v15-section-heading>div>span{display:inline-block;color:#087c70;font-size:13px;font-weight:900;margin-bottom:5px}
.v15-section-heading h2{color:#173f5d;font-size:clamp(25px,3vw,34px);margin:0;line-height:1.35}
.v15-section-heading small{color:#587487;max-width:400px;line-height:1.8}
.v15-rooms-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px!important;align-items:stretch}
.v15-mode-card{
  min-height:320px!important;padding:0 0 20px!important;overflow:hidden!important;
  display:flex;flex-direction:column;align-items:stretch!important;text-align:right!important;
  border:1px solid rgba(203,222,235,.9)!important;border-radius:22px!important;
  background:linear-gradient(to bottom,#fff 0%,#fff 100px,#fff 100%)!important;
  box-shadow:0 12px 28px rgba(17,57,83,.09)!important;
  transform:none;opacity:1;animation:none!important;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease!important;
}
.v15-mode-card::before{content:""!important;position:absolute!important;inset:0 0 auto!important;width:100%!important;height:108px!important;top:0!important;left:0!important;border-radius:0!important;z-index:0!important;opacity:1!important;background:var(--card-accent,#0f766e)!important;}
.v15-mode-card::after{content:""!important;position:absolute!important;top:10px!important;left:10px!important;width:54px!important;height:54px!important;border-radius:15px!important;background:rgba(255,255,255,.94)!important;border:1px solid rgba(255,255,255,.65)!important;z-index:1!important;opacity:1!important}
.v15-mode-card .room-mode-icon{position:relative;z-index:2;align-self:flex-start;margin:15px auto 66px 15px!important;width:52px!important;height:52px!important;border-radius:15px!important;font-size:29px!important;background:rgba(255,255,255,.95)!important;border:1px solid rgba(255,255,255,.8)!important;box-shadow:0 5px 12px rgba(0,0,0,.12)!important;animation:none!important}
.v15-mode-card h2{position:relative;z-index:2;margin:0 20px 8px!important;color:#173f5d!important;font-size:21px!important;line-height:1.5}
.v15-mode-card p{position:relative;z-index:2;margin:0 20px 16px!important;color:#60798a!important;font-size:14px!important;line-height:1.85;flex:1}
.v15-mode-card .rooms-link-btn,.v15-mode-card .mode-btn{position:relative;z-index:2;align-self:flex-start;width:auto!important;max-width:calc(100% - 40px);margin:0 20px!important;min-height:46px!important;padding:10px 15px!important;border:0!important;border-radius:12px!important;color:#fff!important;font-size:14px!important;font-weight:900!important;box-shadow:0 5px 0 color-mix(in srgb,var(--card-accent,#0f766e) 72%,#173f5d)!important;background:var(--card-accent,#0f766e)!important}
.v15-mode-card small{position:relative;z-index:2;margin:13px 20px 0!important;color:#647d8e!important;font-size:12px!important;line-height:1.7}
.v15-mode-card:hover,.v15-mode-card:focus-within,.v16-mode-card.is-selected{transform:translateY(-5px)!important;box-shadow:0 20px 36px rgba(17,57,83,.14)!important;border-color:color-mix(in srgb,var(--card-accent,#0f766e) 35%,#cbdde8)!important}
.rooms-active{border-radius:18px!important}
.rooms-login-hint{margin-top:20px;padding:18px;border:1px solid #c9e5ef;border-radius:16px;background:#fff;color:#17445e;text-align:center}
@media(max-width:1000px){.v15-rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v15-rooms-hero .v15-hero-icon{left:24px;opacity:.45}}
@media(max-width:650px){
 .rooms-page{padding:10px 8px 36px!important}.rooms-shell{padding:7px!important}
 .v15-rooms-hero{padding:22px 18px!important;border-radius:20px!important;text-align:right!important}
 .v15-rooms-hero .v15-hero-icon{position:static;transform:none;align-self:flex-start;font-size:46px;opacity:1;margin:0 0 2px}
 .v15-rooms-hero h1{font-size:29px!important}.v15-rooms-hero p{font-size:14px!important}
 .v15-hero-stats{width:100%;box-sizing:border-box;justify-content:center;font-size:12px}
 .v15-rooms-hero .rooms-player{width:100%;box-sizing:border-box;padding:13px!important}
 .v15-section-heading{align-items:flex-start;flex-direction:column;gap:4px;margin:25px 2px 14px}
 .v15-rooms-grid{grid-template-columns:1fr!important;gap:14px!important}
 .v15-mode-card{min-height:280px!important;border-radius:19px!important}
 .v15-mode-card::before{height:94px!important}
 .v15-mode-card .room-mode-icon{margin-bottom:53px!important;width:48px!important;height:48px!important}
 .v15-mode-card h2{font-size:20px!important}
 .v15-mode-card .rooms-link-btn,.v15-mode-card .mode-btn{width:calc(100% - 40px)!important;max-width:none;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.v15-mode-card,.v15-rooms-hero .v15-hero-icon{animation:none!important;transition:none!important}.v15-mode-card:hover,.v15-mode-card:focus-within{transform:none!important}}

/* V1.4.1 — Alignement visuel de la bannière /rooms sur l'accueil */
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero{
  position:relative!important;isolation:isolate!important;overflow:hidden!important;
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;
  width:100%!important;min-height:300px!important;box-sizing:border-box!important;
  margin:0 auto 28px!important;padding:clamp(28px,4vw,48px)!important;
  border:0!important;border-radius:26px!important;
  background:radial-gradient(circle at 15% 22%,rgba(255,255,255,.09),transparent 22%),linear-gradient(115deg,#104f49 0%,#08786e 56%,#249887 100%)!important;
  color:#fff!important;text-align:right!important;box-shadow:0 16px 36px rgba(9,78,73,.18)!important;
}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero::before{
  content:"";position:absolute;z-index:-1;left:23%;top:14%;width:76px;height:76px;border-radius:22px;
  background:rgba(255,207,76,.92);transform:rotate(10deg);opacity:.88;box-shadow:0 8px 20px rgba(0,0,0,.12);pointer-events:none;
}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-icon{
  position:absolute!important;left:clamp(24px,7vw,90px)!important;right:auto!important;top:50%!important;
  transform:translateY(-50%)!important;font-size:clamp(70px,9vw,108px)!important;opacity:.96!important;
  filter:drop-shadow(0 8px 12px rgba(0,0,0,.16))!important;
}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-badge{
  align-self:flex-start!important;background:rgba(255,255,255,.12)!important;color:#fff!important;
  border:1px solid rgba(255,255,255,.26)!important;border-radius:999px!important;padding:8px 13px!important;
}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero h1{color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:clamp(32px,3.6vw,46px)!important;line-height:1.3!important;margin:4px 0 0!important;max-width:760px!important;text-shadow:none!important}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero > p{color:rgba(255,255,255,.92)!important;max-width:760px!important;font-size:clamp(14px,1.35vw,17px)!important;line-height:1.9!important;margin:0!important}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-stats{background:rgba(255,255,255,.1)!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;border-radius:14px!important;margin-top:5px!important}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-stats b{color:#ffdc75!important}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .rooms-player{position:relative!important;z-index:2;width:min(100%,735px)!important;box-sizing:border-box!important;background:#fff!important;color:#173b59!important;border:1px solid rgba(255,255,255,.8)!important;border-radius:18px!important;padding:16px 18px!important;margin:8px 0 0!important;box-shadow:0 12px 28px rgba(0,0,0,.1)!important}
.rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .rooms-player-current{color:#173b59!important}
@media(max-width:650px){
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero{min-height:0!important;padding:24px 18px!important;border-radius:20px!important;gap:10px!important}
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero::before{width:42px;height:42px;left:18px;top:22px;border-radius:12px}
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-icon{position:static!important;transform:none!important;align-self:flex-start!important;font-size:44px!important;margin:0!important}
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero h1{font-size:29px!important}
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .v15-hero-stats{justify-content:center;width:100%;box-sizing:border-box;gap:8px 10px}
 .rooms-page .rooms-shell > header.rooms-hero.v15-rooms-hero .rooms-player{width:100%!important;padding:13px!important}
}


/* V1.4.2 — Reprise de la bannière d'accueil sur /rooms, sans modifier les fonctions */
.rooms-page .rooms-shell > header.rooms-home-banner{
  position:relative!important;isolation:isolate;overflow:hidden!important;display:flex!important;
  width:100%!important;min-height:0!important;box-sizing:border-box!important;
  margin:0 auto 28px!important;padding:clamp(28px,4vw,42px)!important;
  border:0!important;border-radius:26px!important;
  background:linear-gradient(115deg,#104f49 0%,#08786e 56%,#249887 100%)!important;
  color:#fff!important;text-align:right!important;box-shadow:0 16px 36px rgba(9,78,73,.18)!important;
}
.rooms-page .rooms-home-banner:before{content:"ض";position:absolute;z-index:-1;left:22%;top:17%;display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:18px;background:#ffcf4c;color:#14554c;font-size:38px;font-weight:900;transform:rotate(9deg);opacity:.9;box-shadow:0 8px 20px rgba(0,0,0,.12);pointer-events:none}
.rooms-home-banner-content{position:relative;width:100%;max-width:1120px;margin:0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.rooms-home-logo{display:block;width:64px!important;height:64px!important;object-fit:contain;margin:0 0 -4px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.12))}
.rooms-page .rooms-home-banner h1{order:1;margin:0!important;color:#fff!important;background:none!important;-webkit-text-fill-color:#fff!important;font-size:clamp(30px,3.4vw,44px)!important;font-weight:900!important;line-height:1.3!important;max-width:780px}
.rooms-page .rooms-home-banner> .rooms-home-banner-content>p{order:2;margin:0!important;max-width:760px;color:rgba(255,255,255,.92)!important;font-size:clamp(14px,1.35vw,17px)!important;font-weight:600;line-height:1.9!important}
.rooms-page .rooms-home-banner .rooms-home-player{order:3;width:min(100%,735px);max-width:735px;box-sizing:border-box;margin:8px 0 0!important;padding:18px 20px!important;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid rgba(255,255,255,.8)!important;border-radius:18px!important;background:#fff!important;color:#173b59!important;box-shadow:0 12px 28px rgba(0,0,0,.08)!important;text-align:right}
.rooms-home-player-info{display:flex;flex-direction:column;gap:5px;min-width:130px;color:#173b59}
.rooms-home-player-label{font-size:13px;font-weight:700;color:#64748b}
.rooms-home-player-info strong{font-size:17px;font-weight:900;color:#172b45;overflow-wrap:anywhere}
.rooms-home-player-country{font-size:13px;color:#64748b}
.rooms-home-player-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rooms-page .rooms-home-start-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 20px;border:0;border-radius:14px;background:#ffca3a;color:#173b59!important;text-decoration:none!important;font-family:inherit;font-size:15px;font-weight:900;line-height:1.4;box-shadow:0 5px 0 #173b59;cursor:pointer;white-space:nowrap}
.rooms-page .rooms-home-start-btn:hover{filter:brightness(1.04);transform:translateY(-1px)}
.rooms-page .rooms-home-change-name summary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 16px;border:2px solid #214767!important;border-radius:14px;background:#fff!important;color:#2563eb!important;font-weight:900;cursor:pointer;list-style:none;white-space:nowrap}
.rooms-page .rooms-home-change-name summary::-webkit-details-marker{display:none}
.rooms-page .rooms-home-change-name[open]{position:relative}
.rooms-page .rooms-home-change-name .rooms-change-name-form{margin-top:12px}
.rooms-page .rooms-home-change-name small{display:block;color:#64748b;line-height:1.7;margin-top:8px}
.rooms-page .rooms-home-identity{display:block}
.rooms-page .rooms-home-identity .rooms-name-form label{display:block;color:#173b59;font-weight:800;margin-bottom:8px}
.rooms-home-name-row{display:flex;align-items:center;gap:10px}
.rooms-home-name-row input{flex:1;min-width:0}
@media(max-width:650px){
 .rooms-page .rooms-shell > header.rooms-home-banner{padding:22px 18px!important;border-radius:20px!important}
 .rooms-home-banner-content{gap:10px}
 .rooms-home-logo{width:54px!important;height:54px!important}
 .rooms-page .rooms-home-banner h1{font-size:29px!important}
 .rooms-page .rooms-home-banner> .rooms-home-banner-content>p{font-size:14px!important}
 .rooms-page .rooms-home-banner .rooms-home-player{width:100%;padding:14px!important;align-items:stretch;flex-direction:column;gap:12px}
 .rooms-home-player-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
 .rooms-page .rooms-home-start-btn,.rooms-page .rooms-home-change-name summary{width:100%;box-sizing:border-box;padding:10px 8px;font-size:13px;white-space:normal}
 .rooms-home-name-row{flex-direction:column;align-items:stretch}
 .rooms-home-name-row input,.rooms-home-name-row .rooms-home-start-btn{width:100%;box-sizing:border-box}
 .rooms-home-banner:before{left:8%;top:12%;width:48px;height:48px;font-size:27px;opacity:.28}
}


/* V1.4.3 — Exact visual transfer of the homepage hero to /rooms.
   Only presentation changes; room routes, forms and game handlers remain intact. */
.rooms-page .rooms-shell > header.rooms-home-banner-exact{
 position:relative!important;isolation:isolate;overflow:hidden!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;
 width:min(1160px,calc(100% - 40px))!important;min-height:0!important;box-sizing:border-box!important;
 margin:24px auto 28px!important;padding:30px 34px!important;border:0!important;border-radius:27px!important;
 background:linear-gradient(120deg,#103e38 0%,#0f766e 68%,#2b9182 100%)!important;
 box-shadow:0 16px 36px rgba(15,75,69,.16)!important;text-align:right!important;color:#fff!important;
}
.rooms-page .rooms-home-banner-exact:before{content:"ح";position:absolute;z-index:-1;left:12%;top:24%;display:grid;place-items:center;width:76px;height:80px;border:1px solid #ffffff44;border-radius:20px;background:linear-gradient(145deg,#ffffff30,#ffffff0c);box-shadow:0 14px 28px #062e2b35;font-size:39px;font-weight:900;color:#fff;transform:rotate(-12deg);pointer-events:none}
.rooms-page .rooms-home-banner-exact:after{content:"ض";position:absolute;z-index:-1;left:24%;top:18%;display:grid;place-items:center;width:68px;height:74px;border-radius:19px;background:linear-gradient(145deg,#f6d878,#c99d3a);box-shadow:0 14px 28px #062e2b35;font-size:36px;font-weight:900;color:#173b34;transform:rotate(10deg);pointer-events:none}
.rooms-page .rooms-home-banner-exact .rooms-home-banner-content{position:relative;z-index:1;width:100%;max-width:100%;margin:0;display:flex;flex-direction:column;align-items:flex-start;gap:0}
.rooms-page .rooms-home-banner-exact .rooms-home-logo{display:block;width:64px!important;height:64px!important;object-fit:contain;margin:0 0 -4px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.12))}
.rooms-page .rooms-home-banner-exact h1{order:1;max-width:720px;margin:0 0 8px!important;color:#fff!important;background:none!important;-webkit-text-fill-color:#fff!important;font-size:clamp(29px,3.2vw,41px)!important;font-weight:900!important;line-height:1.25!important}
.rooms-page .rooms-home-banner-exact .rooms-home-banner-content>p{order:2;max-width:720px;margin:0!important;color:#e1f4ef!important;font-size:15px!important;font-weight:600;line-height:1.75!important}
.rooms-page .rooms-home-banner-exact .rooms-home-player{order:3;max-width:760px;width:min(100%,760px);margin:17px 0 0 auto!important;padding:13px 16px!important;border:1px solid #ffffff50!important;border-radius:17px!important;background:#fff!important;color:#173b34!important;box-shadow:0 10px 25px #062e2b25!important;text-align:right;box-sizing:border-box}
.rooms-page .rooms-home-banner-exact section.rooms-home-player{display:grid!important;grid-template-columns:auto minmax(110px,1fr) auto;align-items:center;gap:12px}
.rooms-page .rooms-home-banner-exact .rooms-home-player-avatar{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:#eff6ff;border:1px solid #dbeafe;font-size:30px}
.rooms-page .rooms-home-banner-exact .rooms-home-player-info{display:flex;flex-direction:column;gap:5px;min-width:0;color:#173b34}
.rooms-page .rooms-home-banner-exact .rooms-home-player-label{font-size:13px;font-weight:700;color:#64748b}
.rooms-page .rooms-home-banner-exact .rooms-home-player-info strong{font-size:17px;font-weight:900;color:#172b45;overflow-wrap:anywhere}
.rooms-page .rooms-home-banner-exact .rooms-home-player-country{font-size:13px;color:#64748b}
.rooms-page .rooms-home-banner-exact .rooms-home-player-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.rooms-page .rooms-home-banner-exact .rooms-home-start-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 16px;border:0;border-radius:14px;background:#ffca3a;color:#173b59!important;text-decoration:none!important;font-family:inherit;font-size:15px;font-weight:900;line-height:1.4;box-shadow:0 5px 0 #173b59;cursor:pointer;white-space:nowrap}
.rooms-page .rooms-home-banner-exact .rooms-home-change-summary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 16px;border:2px solid #214767!important;border-radius:14px;background:#fff!important;color:#2563eb!important;font-weight:900;cursor:pointer;list-style:none;white-space:nowrap}
.rooms-page .rooms-home-banner-exact .rooms-home-change-summary::-webkit-details-marker{display:none}
.rooms-page .rooms-home-banner-exact .rooms-home-change-name[open]{position:relative}
.rooms-page .rooms-home-banner-exact .rooms-change-name-form{margin-top:12px}
.rooms-page .rooms-home-banner-exact .rooms-change-name-form label,.rooms-page .rooms-home-banner-exact .hero-player-form label{display:block;color:#61716b;font-weight:800;margin-bottom:8px}
.rooms-page .rooms-home-banner-exact .rooms-home-name-row{display:flex;align-items:center;gap:10px}
.rooms-page .rooms-home-banner-exact .rooms-home-name-row input{flex:1;min-width:0}
.rooms-page .rooms-home-banner-exact .rooms-change-name-form small,.rooms-page .rooms-home-banner-exact .hero-player-form small{display:block;color:#64748b;line-height:1.7;margin-top:8px}
.rooms-page .rooms-home-banner-exact .hero-player-form{display:block}
@media(max-width:760px){
 .rooms-page .rooms-shell > header.rooms-home-banner-exact{width:calc(100% - 24px)!important;margin-top:12px!important;padding:23px 20px!important;border-radius:22px!important}
 .rooms-page .rooms-home-banner-exact:before{left:7%;top:17%;transform:scale(.72) rotate(-12deg)}
 .rooms-page .rooms-home-banner-exact:after{left:22%;top:14%;transform:scale(.72) rotate(10deg)}
 .rooms-page .rooms-home-banner-exact .rooms-home-logo{width:50px!important;height:50px!important}
 .rooms-page .rooms-home-banner-exact h1{font-size:clamp(25px,7vw,32px)!important}
 .rooms-page .rooms-home-banner-exact section.rooms-home-player{grid-template-columns:auto 1fr;gap:10px;padding:13px!important}
 .rooms-page .rooms-home-banner-exact .rooms-home-player-actions{grid-column:1/-1;width:100%;display:flex;flex-direction:row;flex-wrap:wrap}
 .rooms-page .rooms-home-banner-exact .rooms-home-start-btn,.rooms-page .rooms-home-banner-exact .rooms-home-change-summary{flex:1 1 145px;width:auto;white-space:normal}
}
@media(max-width:420px){
 .rooms-page .rooms-shell > header.rooms-home-banner-exact{padding:20px 15px!important}
 .rooms-page .rooms-home-banner-exact:before,.rooms-page .rooms-home-banner-exact:after{opacity:.35}
 .rooms-page .rooms-home-banner-exact .rooms-home-player-actions{flex-direction:column}
 .rooms-page .rooms-home-banner-exact .rooms-home-start-btn,.rooms-page .rooms-home-banner-exact .rooms-home-change-summary{width:100%;flex:auto}
 .rooms-page .rooms-home-banner-exact .rooms-home-name-row{flex-direction:column;align-items:stretch}
 .rooms-page .rooms-home-banner-exact .rooms-home-name-row input,.rooms-page .rooms-home-banner-exact .rooms-home-name-row .rooms-home-start-btn{width:100%;box-sizing:border-box}
}


/* V1.4.5 — uniform card actions and predictable room grid layout */
.rooms-page .rooms-shell .v15-rooms-grid{
  display:grid!important;
  width:100%!important;
  max-width:100%!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  gap:20px!important;
  margin-inline:auto!important;
}
.rooms-page .rooms-shell .v15-mode-card{
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  min-height:350px!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  text-align:right!important;
  padding:0 0 18px!important;
  opacity:1!important;
  visibility:visible!important;
}
.rooms-page .rooms-shell .v15-mode-card h2{margin:0 20px 8px!important;min-height:1.5em}
.rooms-page .rooms-shell .v15-mode-card p{flex:1 1 auto!important;margin:0 20px 18px!important}
.rooms-page .rooms-shell .v15-mode-card form{
  display:flex!important;
  width:calc(100% - 40px)!important;
  max-width:none!important;
  margin:auto 20px 0!important;
  padding:0!important;
}
.rooms-page .rooms-shell .v15-mode-card .rooms-link-btn,
.rooms-page .rooms-shell .v15-mode-card .mode-btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  flex:0 0 auto!important;
  align-self:stretch!important;
  box-sizing:border-box!important;
  width:calc(100% - 40px)!important;
  max-width:none!important;
  min-width:0!important;
  min-height:54px!important;
  margin:auto 20px 0!important;
  padding:11px 12px!important;
  text-align:center!important;
  line-height:1.45!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
}
.rooms-page .rooms-shell .v15-mode-card form .mode-btn{width:100%!important;margin:0!important}
.rooms-page .rooms-shell .v15-mode-card .v16-card-arrow{flex:0 0 auto!important;margin-inline-start:4px!important}
.rooms-page .rooms-shell .v15-mode-card small{display:block!important;margin:13px 20px 0!important;min-height:1.7em}
@media(max-width:1000px){
 .rooms-page .rooms-shell .v15-rooms-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:650px){
 .rooms-page .rooms-shell .v15-rooms-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
 .rooms-page .rooms-shell .v15-mode-card{min-height:0!important;height:auto!important;padding-bottom:18px!important}
 .rooms-page .rooms-shell .v15-mode-card p{flex:0 0 auto!important}
 .rooms-page .rooms-shell .v15-mode-card .rooms-link-btn,
 .rooms-page .rooms-shell .v15-mode-card .mode-btn{width:calc(100% - 36px)!important;margin-inline:18px!important}
 .rooms-page .rooms-shell .v15-mode-card form{width:calc(100% - 36px)!important;margin-inline:18px!important}
 .rooms-page .rooms-shell .v15-mode-card small{margin-inline:18px!important}
}


/* V1.4.6 — increase game mode cards height by 20% without changing game behavior */
.rooms-page .rooms-shell .v15-mode-card{
  min-height:420px!important; /* 350px + 20% */
}
@media (max-width: 768px){
  .rooms-page .rooms-shell .v15-mode-card{
    min-height:336px!important; /* 280px + 20% */
    height:auto!important;
  }
}
