/* ==========================================================================
   LUMORA — SALA DE JOGO
   Arquivo consolidado na revisão 0.33.30.16.
   A ordem interna preserva a cascata das folhas históricas para evitar
   regressões visuais. Cada seção indica a origem do bloco.
   ========================================================================== */


/* --------------------------------------------------------------------------
   Origem consolidada: room-0333011.css
   -------------------------------------------------------------------------- */
/* LUMORA 0.33.30.11 — real game room, based on the approved independent HTML.
   Only the existing room nodes are restyled/repositioned. Phaser, socket events,
   competitive rules, chat handlers and fullscreen retain their existing owners. */

html:not(.lumora-mobile-device) body {
  background:radial-gradient(850px 420px at 78% -10%,#39216a99,transparent 67%),#0c0722!important;
}
html:not(.lumora-mobile-device) body .app {
  width:min(1440px,calc(100vw - 24px))!important;
  max-width:none!important;
  height:calc(100dvh - 20px)!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:67px minmax(0,1fr)!important;
  gap:11px!important;
  margin:0 auto!important;
  font-family:'Nunito','Segoe UI',sans-serif!important;
  color:#f1ecff!important;
}
/* Same permanent navigation language as the 0.33.30.x Lobby, not an extra toolbar. */
html:not(.lumora-mobile-device) body .app > .topbar.lumora-room-topbar {
  grid-column:1/-1!important;grid-row:1!important;
  min-width:0!important;min-height:67px!important;height:67px!important;
  display:flex!important;flex-wrap:nowrap!important;align-items:center!important;
  gap:13px!important;padding:8px 13px!important;
  background:#1a1235!important;border:1px solid #493781!important;
  border-radius:16px!important;box-shadow:none!important;
  overflow:visible!important;position:relative!important;z-index:110!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .brand-wrap{display:flex!important;align-items:center!important;flex:0 0 auto!important;min-width:0!important;margin:0!important}
html:not(.lumora-mobile-device) body .app > .topbar .brand-logo,
html:not(.lumora-mobile-device) body .app > .topbar .brand-logo img{
  width:150px!important;max-width:150px!important;height:49px!important;max-height:49px!important;
  object-fit:contain!important;filter:none!important;margin:0!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav{
  display:flex!important;flex:1 1 auto!important;align-items:center!important;
  min-width:0!important;max-width:none!important;gap:2px!important;
  overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav::-webkit-scrollbar{display:none}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav .top-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  gap:8px!important;flex:0 0 auto!important;width:auto!important;min-width:0!important;
  height:37px!important;min-height:37px!important;max-height:37px!important;
  padding:0 11px!important;margin:0!important;border:1px solid transparent!important;
  border-radius:9px!important;background:transparent!important;color:#b8abd9!important;
  box-shadow:none!important;font:800 12px/1 'Nunito',sans-serif!important;
  letter-spacing:0!important;white-space:nowrap!important;text-transform:none!important;
  cursor:pointer!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav .top-btn i{
  display:inline-block!important;color:#ad9dda!important;font-size:13px!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav .top-btn:hover{
  color:#fff!important;background:#281c4e!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav .top-btn:focus-visible,
html:not(.lumora-mobile-device) body .app > .topbar .room-account-button:focus-visible{
  outline:2px solid #ffc857!important;outline-offset:2px!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .wallet{
  display:flex!important;flex:0 0 auto!important;align-items:center!important;gap:13px!important;
  margin:0!important;padding:0!important;border:0!important;background:transparent!important;
  white-space:nowrap!important;font:800 12px/1 'Nunito',sans-serif!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .wallet span{display:inline-flex!important;align-items:center!important;gap:5px!important}
html:not(.lumora-mobile-device) body .app > .topbar #fragmentsWallet{color:#ffc857!important}
html:not(.lumora-mobile-device) body .app > .topbar #prismsWallet{color:#6ad4ff!important}
html:not(.lumora-mobile-device) body .app > .topbar .wallet .lumora-currency-icon{
  width:17px!important;height:17px!important;max-width:17px!important;object-fit:contain!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-wrap{position:relative!important;flex:0 0 auto!important;z-index:112!important}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-button{
  display:flex!important;align-items:center!important;gap:8px!important;min-width:120px!important;
  height:43px!important;max-height:43px!important;padding:4px 9px 4px 5px!important;
  background:#241a45!important;border:1px solid #493781!important;border-radius:10px!important;
  color:#f1ecff!important;box-shadow:none!important;cursor:pointer!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-avatar{
  position:relative!important;flex:0 0 32px!important;width:32px!important;height:32px!important;
  display:grid!important;place-items:center!important;border-radius:9px!important;background:#281b51!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-avatar img{
  width:31px!important;height:31px!important;object-fit:contain!important;display:block!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-dot{
  position:absolute;right:0;bottom:0;width:7px;height:7px;background:#3ee0a0;border-radius:50%;border:1px solid #241a45;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-copy{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;max-width:110px!important;
  gap:2px!important;text-align:left!important;line-height:1!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-copy strong{
  font:800 12px 'Nunito',sans-serif!important;color:#fff!important;max-width:100%!important;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-copy small{font:700 10px 'Nunito',sans-serif;color:#aca0cd}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-button>i{color:#ad9fcf!important;font-size:10px!important;margin-left:auto!important}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu{
  position:absolute!important;right:0!important;top:calc(100% + 8px)!important;
  display:flex!important;flex-direction:column!important;width:225px!important;
  padding:8px!important;background:#1d1345!important;border:1px solid #58428f!important;
  border-radius:12px!important;box-shadow:0 18px 42px #08031880!important;z-index:1000!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu[hidden]{display:none!important}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu small{
  display:block!important;padding:7px 9px 10px!important;margin-bottom:5px!important;
  border-bottom:1px solid #382962!important;color:#aaa0ce!important;font:700 10px/1.4 'Nunito',sans-serif!important;
  overflow-wrap:anywhere!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu button{
  display:flex!important;align-items:center!important;gap:10px!important;width:100%!important;
  height:auto!important;min-height:37px!important;padding:10px!important;margin:0!important;
  border:0!important;border-radius:8px!important;background:transparent!important;box-shadow:none!important;
  color:#e6ddfa!important;font:800 12px 'Nunito',sans-serif!important;text-align:left!important;cursor:pointer!important;
}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu button i{width:16px!important;color:#ffc857!important}
html:not(.lumora-mobile-device) body .app > .topbar .room-account-menu button:hover{background:#281b51!important;color:#fff!important}
/* Unrelated legacy buttons/slots retain their nodes and handlers but are not a second navigation. */
html:not(.lumora-mobile-device) body .app > .topbar .responsive-editor-slot,
html:not(.lumora-mobile-device) body .app > .topbar .responsive-version-slot{display:none!important}

/* Real Phaser takes the full upper row; the existing room DOM supplies all 3 lower panels. */
html:not(.lumora-mobile-device) body .app > .left-column{display:contents!important}
html:not(.lumora-mobile-device) body .app > .left-column > .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){
  --room-bottom:clamp(160px,22vh,210px);
  grid-column:1/-1!important;grid-row:2!important;
  display:grid!important;grid-template-columns:minmax(0,1.9fr) minmax(205px,1fr) minmax(205px,1fr)!important;
  grid-template-rows:minmax(0,1fr) var(--room-bottom)!important;
  grid-template-areas:'game game game' 'chat players arrivals'!important;
  gap:11px!important;padding:7px!important;
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
  border:1px solid #624491!important;border-radius:16px!important;
  background:#100a2b!important;box-shadow:inset 0 0 0 1px #92632f!important;overflow:hidden!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen)::before,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen)::after{display:none!important;content:none!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) #game.lumora-game-playfield{
  grid-area:game!important;position:relative!important;inset:auto!important;
  width:auto!important;height:100%!important;min-width:0!important;min-height:0!important;
  max-width:100%!important;max-height:100%!important;aspect-ratio:5 / 3!important;
  align-self:center!important;justify-self:center!important;
  background:#071a2b!important;border:1px solid #382962!important;border-radius:11px!important;
  overflow:hidden!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) #game.lumora-game-playfield > canvas{
  width:100%!important;height:100%!important;object-fit:contain!important;max-width:100%!important;max-height:100%!important;
  margin:0!important;display:block!important;position:absolute!important;inset:0!important;border-radius:10px!important;
}
/* All three panels are visually separate and retain the original live node IDs. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .room-section,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .arrivals-section{
  position:relative!important;inset:auto!important;min-width:0!important;min-height:0!important;
  height:100%!important;max-height:none!important;width:100%!important;
  display:grid!important;padding:0!important;margin:0!important;
  border:1px solid #493781!important;border-radius:14px!important;background:#160e35!important;
  box-shadow:none!important;backdrop-filter:none!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud{
  grid-area:chat!important;grid-template-rows:44px minmax(0,1fr) 51px!important;gap:0!important;
  overflow:visible!important;align-self:stretch!important;justify-self:stretch!important;
  pointer-events:auto!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-room-hud{
  display:contents!important;border:0!important;box-shadow:none!important;background:transparent!important;
  height:auto!important;max-height:none!important;overflow:visible!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .room-section{
  grid-area:players!important;grid-template-rows:30px 23px 20px minmax(0,1fr) 32px!important;
  overflow:hidden!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .arrivals-section{
  grid-area:arrivals!important;grid-template-rows:44px minmax(0,1fr)!important;
  overflow:hidden!important;
}
/* Heads and panel content */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .panel-title,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .sidebar-kicker{
  display:flex!important;align-items:center!important;gap:9px!important;
  height:44px!important;min-height:44px!important;max-height:44px!important;
  padding:0 13px!important;margin:0!important;
  border-bottom:1px solid #34265f!important;
  font:800 15px/1 'Baloo 2','Nunito',sans-serif!important;
  color:#f1ecff!important;text-transform:none!important;letter-spacing:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .panel-title i,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .sidebar-kicker i{color:#b99afa!important;font-size:15px!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .room-head{
  display:flex!important;align-items:center!important;gap:8px!important;margin:0!important;
  padding:5px 11px 0!important;min-height:30px!important;max-height:30px!important;
  border:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section #roomName{
  font:800 13px/1.25 'Nunito',sans-serif!important;max-width:100%!important;color:#f1ecff!important;
  white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section #roomCount{
  margin-left:auto!important;color:#c2afea!important;font:800 12px 'Nunito',sans-serif!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .sidebar-kicker{
  display:flex!important;align-items:center!important;gap:8px!important;
  padding:2px 11px!important;margin:0!important;color:#f1ecff!important;
  font:800 13px 'Baloo 2','Nunito',sans-serif!important;text-transform:none!important;letter-spacing:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .sidebar-kicker i{
  color:#c09cff!important;font-size:13px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .room-round-status{
  display:block!important;min-height:0!important;max-height:20px!important;
  padding:1px 11px 4px!important;margin:0!important;font-size:10px!important;
  line-height:1.25!important;color:#a99acc!important;overflow:hidden!important;text-overflow:ellipsis!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .players,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrivals{
  min-height:0!important;height:auto!important;max-height:none!important;
  overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain!important;
  align-content:start!important;scrollbar-width:thin!important;scrollbar-color:#8b5cf6 #160e35!important;
  margin:0!important;padding:7px 9px 10px!important;gap:6px!important;background:transparent!important;border:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .players{display:flex!important;flex-direction:column!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .player-row{
  display:grid!important;grid-template-columns:16px 32px minmax(0,1fr) auto!important;
  gap:7px!important;align-items:center!important;flex:0 0 auto!important;
  min-height:47px!important;height:auto!important;max-height:none!important;
  padding:5px 8px!important;margin:0!important;border:1px solid #3f2d70!important;
  border-radius:9px!important;background:#1e1541!important;font:700 12px 'Nunito',sans-serif!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .player-row.you{
  border-color:#94723c!important;background:#33234d!important;box-shadow:inset 3px 0 0 #ffc857!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section .player-num{
  color:#8c7eb7!important;font-size:10px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-avatar{
  width:32px;height:32px;min-width:32px;display:grid;place-items:center;background:#302353;
  border:1px solid #6d529e;border-radius:50%;overflow:hidden;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-avatar img{
  display:block;width:31px;height:31px;object-fit:contain;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-details{
  display:flex;flex-direction:column;gap:3px;min-width:0;overflow:hidden;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-name{
  color:#f1ecff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px;font-weight:800;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-name.clickable-player{cursor:pointer}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-name.clickable-player:hover{text-decoration:underline;text-underline-offset:2px}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-status{font-size:9px;color:#aaa0ce;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-status.state-live{color:#3ee0a0!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-status.state-waiting{color:#b8abd9!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-status.state-finish{color:#ffc857!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-status.state-dead{color:#ff7a90!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-player-crown{color:#ffc857;font-size:13px}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section #mapEditorLaunch{
  position:relative!important;inset:auto!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:calc(100% - 18px)!important;height:29px!important;min-height:29px!important;
  margin:0 9px 6px!important;padding:0 8px!important;box-sizing:border-box!important;
  border:1px solid #58428f!important;border-radius:9px!important;background:#281c4d!important;
  color:#eae2ff!important;box-shadow:none!important;text-decoration:none!important;
  font:800 11px 'Nunito',sans-serif!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section #mapEditorLaunch:hover{border-color:#ffc857!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-room-hud .legend{display:none!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrivals{
  display:flex!important;flex-direction:column!important;gap:7px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-row{
  display:flex!important;align-items:center!important;gap:9px!important;
  min-height:53px!important;max-height:none!important;padding:9px!important;margin:0!important;
  background:#201640!important;border:1px solid #483474!important;border-radius:9px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-row.first{
  border-color:#94723c!important;background:#33234d!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-row .place{
  width:24px;min-width:24px;text-align:center;font-size:14px;color:#ffc857!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-player{
  display:flex;flex-direction:column;gap:3px;min-width:0;overflow:hidden;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-player b{
  white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:11px;color:#f1ecff;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .arrival-player small{
  color:#6ad4ff;font-size:10px;font-variant-numeric:tabular-nums;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .waiting{
  display:grid!important;place-items:center!important;text-align:center!important;
  min-height:75px!important;margin:0!important;color:#aaa0ce!important;font-size:11px!important;
}
/* Chat remains the original live feed/input/emoji widget. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed{
  min-width:0!important;min-height:0!important;max-height:none!important;height:auto!important;
  padding:8px 13px!important;margin:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  background:transparent!important;font:700 12px/1.48 'Nunito',sans-serif!important;
  color:#d7caee!important;scrollbar-width:thin!important;scrollbar-color:#8b5cf6 #160e35!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed .chat-line{
  margin:0 0 5px!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;font:700 12px/1.4 'Nunito',sans-serif!important;
  white-space:normal!important;overflow-wrap:anywhere!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed .chat-line .author{color:#c6a1ff!important;font-weight:900!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed .chat-line.system .author{color:#3ee0a0!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed .chat-line.reward .author{color:#ffc857!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatFeed .chat-time{font-size:10px!important;color:#8074ad!important;margin-right:6px!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .chat-compose-wrap{
  display:block!important;position:relative!important;z-index:15!important;margin:0!important;padding:7px 9px!important;
  border-top:1px solid #382962!important;background:transparent!important;min-width:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .chat-row{
  display:grid!important;grid-template-columns:36px minmax(0,1fr) 45px!important;
  gap:7px!important;align-items:center!important;width:100%!important;height:36px!important;min-height:36px!important;
  margin:0!important;padding:0!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud :is(.chat-emoji-btn,.chat-send,#chatInput){
  height:36px!important;min-height:36px!important;max-height:36px!important;border-radius:9px!important;
  box-shadow:none!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud #chatInput{
  width:100%!important;min-width:0!important;padding:0 12px!important;
  background:#110c2a!important;border:1px solid #493781!important;color:#f1ecff!important;
  font:700 12px 'Nunito',sans-serif!important;line-height:36px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud :is(.chat-emoji-btn,.chat-send){
  display:grid!important;place-items:center!important;width:100%!important;padding:0!important;
  border:1px solid #4e3a82!important;background:#281c4d!important;color:#f1ecff!important;font-size:16px!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .chat-send{
  background:#8856ed!important;border-color:#996af8!important;color:#fff!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .chat-emoji-picker{
  position:absolute!important;left:8px!important;bottom:51px!important;max-height:145px!important;overflow-y:auto!important;
  z-index:30!important;scrollbar-width:thin!important;scrollbar-color:#8b5cf6 #160e35!important;
}
/* Scrollbars follow the same style as the rest of Lumora. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage :is(#chatFeed,.players,.arrivals,.chat-emoji-picker)::-webkit-scrollbar{width:7px!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage :is(#chatFeed,.players,.arrivals,.chat-emoji-picker)::-webkit-scrollbar-track{background:#160e35!important;border-radius:8px!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage :is(#chatFeed,.players,.arrivals,.chat-emoji-picker)::-webkit-scrollbar-thumb{background:#8b5cf6!important;border:2px solid #160e35!important;border-radius:8px!important}
/* Voting is still the original votePanel, now a Phaser overlay only, not a fourth bottom card. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-vote-hud:not([hidden]){
  grid-area:game!important;position:relative!important;inset:auto!important;
  align-self:end!important;justify-self:center!important;
  transform:none!important;margin:0 0 12px!important;width:min(510px,calc(100% - 30px))!important;
  min-width:0!important;max-width:none!important;height:auto!important;z-index:45!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-vote-hud[hidden]{display:none!important}
/* Fullscreen remains Phaser-only, exactly as in the approved gameplay behavior. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage.lumora-native-fullscreen{
  display:block!important;grid-template:none!important;padding:0!important;inset:0!important;
  height:100vh!important;width:100vw!important;max-height:none!important;border:0!important;border-radius:0!important;
}
/* Compact laptop layout: keep all three bottom panels usable without hiding chat. */
@media(max-width:1150px){
  html:not(.lumora-mobile-device) body .app > .topbar.lumora-room-topbar{gap:8px!important;padding:7px 9px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .brand-logo,
  html:not(.lumora-mobile-device) body .app > .topbar .brand-logo img{width:125px!important;max-width:125px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .lumora-main-nav .top-btn{padding:0 8px!important;font-size:11px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .wallet{gap:6px!important;font-size:10px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){
    grid-template-columns:minmax(0,1.7fr) minmax(195px,1fr) minmax(195px,1fr)!important;
    gap:8px!important;
  }
}
@media(max-height:730px){
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){--room-bottom:150px}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .room-section{grid-template-rows:30px 23px 20px minmax(0,1fr) 31px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .room-section #mapEditorLaunch{height:26px!important;min-height:26px!important}
}
/* 0.34.0.5 — o Phaser oficial usa 1000×600 (5:3). Em viewports estreitos e altos,
   a largura passa a ser o limitador sem deformar a área jogável. */
@media (max-aspect-ratio:1/1){
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) #game.lumora-game-playfield{
    width:100%!important;height:auto!important;max-height:100%!important;aspect-ratio:5 / 3!important;
  }
}
@media (max-width:1050px){
  html:not(.lumora-mobile-device) body .app{width:calc(100vw - 12px)!important;height:calc(100dvh - 12px)!important}
  html:not(.lumora-mobile-device) body .app > .topbar.lumora-room-topbar{min-height:60px!important;height:60px!important;padding:6px 8px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .brand-logo,
  html:not(.lumora-mobile-device) body .app > .topbar .brand-logo img{width:112px!important;max-width:112px!important;height:42px!important;max-height:42px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .room-account-button{min-width:102px!important;height:40px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .wallet{gap:5px!important}
  html:not(.lumora-mobile-device) body .app > .topbar .wallet span{font-size:9px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){--room-bottom:145px!important;gap:7px!important;padding:6px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud{grid-template-rows:34px minmax(0,1fr) 44px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .phaser-chat-hud .panel-title,
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage .arrivals-section .sidebar-kicker{height:34px!important;min-height:34px!important;max-height:34px!important;padding:0 10px!important;font-size:13px!important}
}
@media(max-height:680px){
  html:not(.lumora-mobile-device) body .app > .topbar.lumora-room-topbar{min-height:56px!important;height:56px!important}
  html:not(.lumora-mobile-device) body .app{grid-template-rows:56px minmax(0,1fr)!important;gap:7px!important}
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){--room-bottom:132px!important}
}
@media(prefers-reduced-motion:reduce){
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage *{transition:none!important;animation:none!important}
}


/* --------------------------------------------------------------------------
   Origem consolidada: room-0333012.css
   -------------------------------------------------------------------------- */
/* Lumora 0.33.30.12 — targeted room + library polish.
   No Phaser physics or server-side competitive logic changed. */

/* The official Lobby must completely replace the room header on exit.
   The room bar formerly had z-index 110, above the fixed Lobby (100). */
html:not(.lumora-mobile-device) body:has(#lumora-lobby.open) .app > .topbar.lumora-room-topbar {
  display:none!important;visibility:hidden!important;pointer-events:none!important;
}
html:not(.lumora-mobile-device) body #lumora-lobby.lobby-minimal-astral.open {
  z-index:300!important;
}
/* No room shortcut to Lobby; leave via the existing account menu instead. */
html:not(.lumora-mobile-device) body .app .lumora-main-nav #roomNavLobbyBtn {display:none!important}
/* Remove old creator shortcut from the room and let its panel use the last row. */
html:not(.lumora-mobile-device) body .app #mapEditorLaunch {display:none!important}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .room-section {
  grid-template-rows:30px 23px 20px minmax(0,1fr)!important;
}
@media(max-height:730px){
 html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .room-section {
  grid-template-rows:30px 23px 20px minmax(0,1fr)!important;
 }
}
/* Old chat CSS forced min-width:58px over the new 45px send column. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud .chat-row {
  grid-template-columns:36px minmax(0,1fr) 45px!important;
  min-width:0!important;overflow:visible!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud #chatSend {
  box-sizing:border-box!important;display:grid!important;place-items:center!important;
  width:45px!important;min-width:0!important;max-width:45px!important;
  height:36px!important;min-height:36px!important;max-height:36px!important;
  margin:0!important;padding:0!important;line-height:1!important;
  position:relative!important;inset:auto!important;transform:none!important;
  pointer-events:auto!important;cursor:pointer!important;z-index:17!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen) .phaser-chat-hud #chatSend i {
  display:block!important;line-height:1!important;font-size:17px!important;pointer-events:none!important;
}
/* Creator lives in the Library header and follows the Lobby button vocabulary. */
html body #modalBackdrop[data-modal-kind="fragmentLibrary"] .fragment-library-head-actions {
  display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;min-width:0;
}
html body #modalBackdrop[data-modal-kind="fragmentLibrary"] .fragment-library-create {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;
  border:1px solid #ffc857!important;border-radius:9px!important;background:#ffc857!important;
  color:#271630!important;min-height:37px!important;padding:8px 13px!important;
  font:800 12px 'Nunito','Segoe UI',sans-serif!important;cursor:pointer;
}
html body #modalBackdrop[data-modal-kind="fragmentLibrary"] .fragment-library-create:hover {background:#ffda7e!important}
@media(max-width:770px) {
 html body #modalBackdrop[data-modal-kind="fragmentLibrary"] .fragment-library-head-actions {justify-content:flex-start;width:100%;}
}

/* ==========================================================================
   0.34.0.5 — CANVAS RESPONSIVO / VIEWPORT COMPETITIVO FIXO
   O parent visual cresce conforme a tela, sempre em 5:3. Phaser.Scale.FIT
   mantém internamente 1000×600; fullscreen usa letterbox em vez de stretch.
   ========================================================================== */
/* Em desktops largos, a Sala usa uma moldura um pouco mais compacta e
   devolve altura aos três painéis inferiores. O viewport Phaser continua 1000×600. */
@media(min-width:1500px) and (min-height:820px){
  html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:not(.lumora-native-fullscreen){
    --room-bottom:clamp(185px,20vh,205px)!important;
    width:min(1160px,100%)!important;
    justify-self:center!important;
  }
}

/* Fullscreen: a superfície fullscreen ocupa o monitor, mas o canvas fica
   centralizado em 5:3. As barras externas pertencem ao frame, nunca ao jogo. */
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage.lumora-native-fullscreen,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:fullscreen{
  position:fixed!important;
  inset:0!important;
  display:block!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:#061726!important;
  overflow:hidden!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage.lumora-native-fullscreen #game.lumora-game-playfield,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:fullscreen #game.lumora-game-playfield{
  position:absolute!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  transform:none!important;
  border:0!important;
  border-radius:0!important;
  background:#061726!important;
  overflow:hidden!important;
}
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage.lumora-native-fullscreen #game.lumora-game-playfield > canvas,
html:not(.lumora-mobile-device) body .app .game-frame.lumora-room-stage:fullscreen #game.lumora-game-playfield > canvas{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  right:auto!important;
  bottom:auto!important;
  transform:translate(-50%,-50%)!important;
  width:min(100vw,166.6667vh)!important;
  height:min(100vh,60vw)!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:5 / 3!important;
  object-fit:contain!important;
  margin:0!important;
  border-radius:0!important;
}

