/* Ajustes de tamanho por idioma (body.lang-pt / lang-en / lang-es, ligado por ui/i18n.js).
   O CSS do jogo foi medido no demo em português; o pacote de espanhol da referência repete os tamanhos do português
   (o texto mais longo encolhe na caixa), mas o inglês usa os valores do pacote base — várias letras maiores ou menores.
   Cada número abaixo = largura do texto desenhado no demo em inglês ÷ largura no DUAT com o CSS do português
   (medido ao vivo, celular 375×812). `scale` mantém o centro do rótulo (a referência ancora pelo centro); rótulos
   alinhados à esquerda escalam a partir da esquerda; botões e textos que quebram linha trocam o tamanho da fonte. */

/* ---------- retrato: barra, mensagens e botões laterais ---------- */
/* medido com o mesmo texto nos três idiomas: a mensagem do meio fica 5,5% menor e os "N OPÇÕES" um pouco maiores
   que o CSS de base (vale para todos) */
body.portrait #msg:not(.win) { scale: 0.945; }
body.lang-en.portrait #btn-buy .feature-title { scale: 0.902; }
body.portrait #btn-buy .feature-sub { scale: 1.04; }
body.lang-en.portrait #btn-ante .feature-title { scale: 1.22; }
body.portrait #btn-ante .feature-sub { scale: 1.067; }
/* referência: o nome do botão fica numa linha ("COMPRE FUNCIÓN" passa um pouco da largura do português) */
body.portrait #btn-buy .feature-title { white-space: nowrap; }
body.lang-en.portrait #btn-ante.active .feature-sub { scale: 1.254; }

/* ---------- retrato: comprar modo, confirmação, aviso ---------- */
body.lang-en.portrait .panel-offers.green .offer-title { scale: 1.27; }
body.lang-en.portrait .panel-offers.green .offer-desc { scale: 1.668; }
body.lang-en.portrait .panel-offers.green .stepper-label { scale: 1.244; }
body.lang-en.portrait .panel-confirm .offer-title { scale: 1.052; }
body.lang-en.portrait .panel-confirm .offer-desc { scale: 1.582; }
body.lang-en.portrait .panel-confirm .modal-actions .pill-btn { font-size: 29.9px; }

/* ---------- retrato: apostas especiais ---------- */
body.lang-en.portrait .panel-offers.red h2 { scale: 1.351; }
body.lang-es.portrait .panel-offers.red h2 { scale: 0.933; } /* encolhe na caixa */
body.lang-en.portrait .panel-offers.red .offer-card.ante-1 .offer-title { scale: 1.32; }
body.lang-en.portrait .panel-offers.red .offer-card:is(.ante-2, .ante-3) .offer-title { scale: 1.67; }
body.lang-en.portrait .panel-offers.red .offer-desc { scale: 1.29; }
body.lang-en.portrait .panel-offers.red .offer-card.ante-3 .offer-desc { scale: 1.203; }

/* ---------- retrato: janelas da plataforma ---------- */
body.lang-en.portrait .modal-card.panel-system h2 { scale: 1.069; }
/* menu do sistema: na referência cada linha tem tamanho próprio — a da bateria tem título maior; as outras do DUAT
   (música, efeitos, intro, saltar) seguem a linha "SOM" da referência */
body.portrait .panel-system .setting-row b { transform-origin: 0 50%; }
body.lang-pt.portrait .panel-system .setting-row:has([data-setting="battery"]) b { scale: 1.275; }
body.lang-en.portrait .panel-system .setting-row:has([data-setting="battery"]) b { scale: 1.215; }
body.lang-es.portrait .panel-system .setting-row:has([data-setting="battery"]) b { scale: 1.281; }
/* descrições: tamanho de fonte (não scale) para quebrar dentro da caixa — a referência também quebra em 2 linhas */
body.lang-pt.portrait .panel-system .setting-row:has([data-setting="battery"]) small { font-size: 18.2px; line-height: 21px; }
body.lang-en.portrait .panel-system .setting-row:has([data-setting="battery"]) small { font-size: 19.1px; line-height: 22px; }
body.lang-es.portrait .panel-system .setting-row:has([data-setting="battery"]) small { font-size: 20.6px; line-height: 23px; }
body.lang-en.portrait .panel-system .setting-row:not(:has([data-setting="battery"])) b { scale: 1.339; }
body.lang-pt.portrait .panel-system .setting-row:not(:has([data-setting="battery"])) small { font-size: 21.7px; line-height: 23px; }
body.lang-en.portrait .panel-system .setting-row:not(:has([data-setting="battery"])) small { font-size: 20px; line-height: 22px; }
body.lang-es.portrait .panel-system .setting-row:not(:has([data-setting="battery"])) small { font-size: 21.9px; line-height: 23px; }
body.lang-en.portrait .panel-system .stepper-label { scale: 0.82; }
body.lang-en.portrait .modal-card.panel-bet h2 { scale: 1.16; }
body.lang-en.portrait .panel-bet .stepper:has(#bet-level) .stepper-label { scale: 1.164; }
body.lang-en.portrait .panel-bet .stepper:has(#bet-coin) .stepper-label { scale: 0.842; }
body.lang-en.portrait .panel-bet .stepper:has(#bet-total) .stepper-label { scale: 0.82; }
body.lang-en.portrait .panel-bet .bet-max.pill-btn.pill-btn, body.lang-en.portrait.skin-button-primary .panel-bet .bet-max.pill-btn.primary { font-size: 27.4px; }
body.lang-en.portrait .modal-card.panel-auto h2 { scale: 1.256; }
body.lang-en.portrait .panel-auto .auto-chk span { scale: 1.155; transform-origin: 0 50%; }
body.lang-en.portrait .panel-auto .auto-start { font-size: 39px; }
body.lang-en.portrait .info-page :is(h2, .info-sub) { scale: 1.149; }

/* ---------- retrato: gamble, rodadas grátis ---------- */
body.lang-en.portrait .gb-title span { scale: 1.287; }
body.lang-en.portrait .gb-collect span { scale: 1.369; }
body.lang-en.portrait .fs-panel .fs-label { font-size: 59.6px; }
body.lang-en.portrait .fs-panel.last .fs-label { font-size: 67.9px; }
body.lang-en.portrait .fs-win-sub { font-size: 50.9px; }

/* ---------- retrato: intro ---------- */
/* slide 1 numa linha; 2 e 3 em duas linhas na caixa de 680 px, encolhidos por igual (×0,933) como na referência */
body.lang-en.portrait .intro-slide h1 { font-size: 40.3px; line-height: 46.9px; }
body.lang-en.portrait .intro-slide:first-child h1 { font-size: 43.2px; }
/* "não mostrar": fonte de 30 u = 24,6 px; en e es cabem numa linha (o pt quebra e encolhe para 22 px) */
body:is(.lang-en, .lang-es).portrait .intro-check { font-size: 24.6px; }
/* es: o texto mais longo encolhe para caber, como no pacote espanhol da referência */
body.lang-es.portrait .intro-slide:first-child h1 { font-size: 42.4px; }
body.lang-es.portrait .intro-slide:nth-child(3) h1 { font-size: 35.2px; line-height: 41.2px; }

/* ---------- paisagem (referência: demo de computador 1280×720) ----------
   Fator = (demo en ÷ DUAT en) ÷ (demo pt ÷ DUAT pt), medido na mesma janela — isola o efeito do idioma da diferença de
   escala geral do layout de paisagem (que vale para todos os idiomas e é tratada à parte). */
body.lang-en:not(.portrait):not(.mland) .intro-slide h1 { scale: 0.87; }
body.lang-en:not(.portrait):not(.mland) .intro-check span { scale: 1.464; transform-origin: 0 50%; }
body.lang-en:not(.portrait):not(.mland) .vol-badge { scale: 1.231; }
body.lang-en:not(.portrait) #btn-buy .feature-title { scale: 0.825; }
body.lang-en:not(.portrait) #btn-ante .feature-title { scale: 1.347; }
body.lang-en:not(.portrait) .panel-offers.green h2 { scale: 0.878; }
body.lang-en:not(.portrait) .panel-offers.green .offer-title { scale: 1.178; }
body.lang-en:not(.portrait) .panel-offers.green .offer-desc { scale: 1.471; }
body.lang-en:not(.portrait) .panel-offers.green .stepper-label { scale: 1.202; }
body.lang-en:not(.portrait) .panel-confirm .offer-desc { scale: 1.47; }
body.lang-en:not(.portrait) .panel-confirm .modal-actions .pill-btn { font-size: 27.4px; }
body.lang-en:not(.portrait) .panel-offers.red .offer-card.ante-1 .offer-title { scale: 1.29; }
body.lang-en:not(.portrait) .panel-offers.red .offer-card:is(.ante-2, .ante-3) .offer-title { scale: 1.638; }
body.lang-en:not(.portrait) .panel-offers.red .offer-desc { scale: 1.279; }
body.lang-en:not(.portrait) .panel-offers.red .offer-card.ante-3 .offer-desc { scale: 1.183; }
body.lang-en:not(.portrait) .gb-title span { scale: 1.377; }
body.lang-en:not(.portrait) .gb-collect span { scale: 1.278; }
body.lang-en:not(.portrait) .gb-press span { scale: 1.2; }
/* janelas da plataforma (o DUAT pt bate direto com o demo pt nelas); só no computador — o celular deitado tem as janelas
   próprias (ui/layout-mobile-land.css) */
body:not(.portrait):not(.mland) .panel-system .setting-row :is(b, small) { transform-origin: 0 50%; }
body.lang-en:not(.portrait):not(.mland) .panel-system .menu-row:not(.home-row) span { scale: 1.253; transform-origin: 0 50%; display: inline-block; }
body.lang-en:not(.portrait):not(.mland) .panel-system .stepper-label { scale: 1.218; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row:has([data-setting="battery"]) b { scale: 1.183; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row:has([data-setting="music"]) b { scale: 1.214; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row:has([data-setting="sfx"]) b { scale: 1.315; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row:has([data-setting="intro"]) b { scale: 1.213; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row:has([data-setting="skipScreens"]) b { scale: 1.23; }
body.lang-en:not(.portrait):not(.mland) .panel-system .setting-row small { font-size: 15.6px; }
body.lang-en:not(.portrait):not(.mland) .panel-bet .stepper:has(#bet-level) .stepper-label { scale: 1.12; }
body.lang-en:not(.portrait):not(.mland) .panel-bet .stepper:has(#bet-coin) .stepper-label { scale: 1.25; }
body.lang-en:not(.portrait):not(.mland) .panel-bet .stepper:has(#bet-total) .stepper-label { scale: 1.218; }
body.lang-en:not(.portrait):not(.mland) .panel-bet .bet-max.pill-btn.pill-btn { font-size: 26.3px; white-space: nowrap; }
body.lang-en:not(.portrait):not(.mland) .panel-auto .auto-chk span { scale: 0.907; transform-origin: 0 50%; }
body.lang-en:not(.portrait):not(.mland) .panel-auto .stepper-label { scale: 1.247; }
body.lang-en:not(.portrait):not(.mland) .panel-auto .auto-start.auto-start { font-size: 32.3px; }
