/* Brazil: compact Android displays, iPhone safe areas, Chromium/WebKit and embedded web views. */
#betConfirmation .product-dialog-heading { display:grid; grid-template-columns:minmax(0,1fr) auto 34px; gap:10px; align-items:start; }
#betConfirmation .product-dialog-heading h2 { font-size:clamp(18px,4.7vw,23px); line-height:1.2; }
.bet-review-balance { padding:7px 9px; border-radius:12px; background:var(--purple-soft); color:var(--purple-dark); text-align:right; max-width:130px; }
.bet-review-balance span { display:block; font-size:10px; line-height:1.3; }
.bet-review-balance strong { display:block; font-size:clamp(12px,3.2vw,14px); line-height:1.4; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
:root { --safe-top:env(safe-area-inset-top,0px); --safe-right:env(safe-area-inset-right,0px); --safe-bottom:env(safe-area-inset-bottom,0px); --safe-left:env(safe-area-inset-left,0px); }
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
.phone-shell { min-height:100vh; min-height:100svh; }
.phone-shell .topbar { height:calc(70px + var(--safe-top)); padding-top:var(--safe-top); padding-left:max(20px,var(--safe-left)); padding-right:max(20px,var(--safe-right)); }
.phone-shell .page { padding-left:max(18px,var(--safe-left)); padding-right:max(18px,var(--safe-right)); }
.phone-shell .app-page { padding-bottom:calc(94px + var(--safe-bottom)); }
.phone-shell input,.phone-shell select,.phone-shell textarea { font-size:16px; }
.auth-overlay { inset:auto 0 auto; top:var(--visual-top,0px); height:100vh; height:var(--visual-height,100dvh); padding:12px; padding-top:max(12px,var(--safe-top)); padding-bottom:max(12px,var(--safe-bottom)); padding-left:max(12px,var(--safe-left)); padding-right:max(12px,var(--safe-right)); }
.auth-modal { max-height:calc(100vh - 24px); max-height:calc(var(--visual-height,100dvh) - max(12px,var(--safe-top)) - max(12px,var(--safe-bottom))); overscroll-behavior:contain; -webkit-overflow-scrolling:touch; }
.auth-modal > .auth-close { position:sticky; top:0; right:auto; display:block; margin:0 0 -36px auto; z-index:2; }
.phone-shell .auth-modal input,.phone-shell .auth-modal select { scroll-margin-block:20px; }
.product-dialog { max-height:88vh; max-height:calc(var(--visual-height,100dvh) - 32px - var(--safe-top) - var(--safe-bottom)); overscroll-behavior:contain; }
.telegram-invite { max-height:80vh; max-height:calc(var(--visual-height,100dvh) - 140px - var(--safe-top) - var(--safe-bottom)); overscroll-behavior:contain; }
.bottom-nav { padding-bottom:calc(4px + var(--safe-bottom)); padding-left:max(8px,var(--safe-left)); padding-right:max(8px,var(--safe-right)); }
.bottom-nav::before { left:max(8px,var(--safe-left)); width:calc((100% - max(8px,var(--safe-left)) - max(8px,var(--safe-right))) / 4); }
.keyboard-open .bottom-nav { visibility:hidden; pointer-events:none; }
.keyboard-open .auth-overlay { padding-bottom:12px; }
.keyboard-open .auth-modal { max-height:calc(var(--visual-height,100vh) - max(12px,var(--safe-top)) - 12px); }
.keyboard-open .toast { bottom:calc(var(--visual-bottom,0px) + 12px); }
.auth-brand > div,.account-card > div,.telegram-account > span:nth-child(2) { min-width:0; }
.account-card h2,.telegram-account strong { overflow-wrap:anywhere; }
.bet-tools { flex-wrap:wrap; gap:8px; }
.captcha-row > * { min-width:0; }
.carousel-controls > button { position:relative; }
.carousel-controls > button::after { content:''; position:absolute; inset:-7px; }
.telegram-link,.account-actions button { min-height:44px; }
.carousel-slide .telegram-link { min-height:36px; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .topbar,.bottom-nav { background:#fffdf9; } }
@media (pointer:coarse) { .topbar,.bottom-nav,.auth-overlay { backdrop-filter:none; -webkit-backdrop-filter:none; } }
@media (max-width:360px) { .auth-modal { padding:16px; } .auth-modal .form-card { padding:14px; gap:13px; } .auth-brand { gap:8px; } .auth-brand img { width:40px;height:40px; } .auth-brand span { font-size:12px; } .account-card { gap:10px;padding:14px; } .account-card h2 { font-size:17px; } .slide-telegram .telegram-link { min-height:32px; } }
@media (max-height:500px) and (orientation:landscape) { .auth-overlay { align-items:center; } .auth-modal { border-radius:18px; } .telegram-invite { max-height:calc(var(--visual-height,100vh) - 80px - var(--safe-bottom)); padding:18px; } .telegram-invite-icon { width:40px;height:40px;margin-bottom:10px; } .telegram-invite-icon svg { width:25px;height:25px; } .telegram-invite h2 { font-size:20px;margin-bottom:6px; } .telegram-invite > p:not(.eyebrow) { margin-bottom:10px; } }
