/* Sheryadetnare Android Native Polish v4.3.6
   Applied only inside Android WebView when html.shery-native-android is present. */
html.shery-native-android {
    --shery-safe-top: max(14px, env(safe-area-inset-top));
    --shery-safe-bottom: max(10px, env(safe-area-inset-bottom));
    --shery-native-top-gap: max(18px, var(--shery-safe-top, 18px));
    --shery-native-bottom-gap: max(12px, var(--shery-safe-bottom, 12px));
    touch-action: manipulation;
    overscroll-behavior: none;
    -webkit-tap-highlight-color: transparent;
}

html.shery-native-android *,
html.shery-native-android *::before,
html.shery-native-android *::after {
    -webkit-tap-highlight-color: transparent !important;
}

html.shery-native-android a,
html.shery-native-android button,
html.shery-native-android input,
html.shery-native-android select,
html.shery-native-android textarea,
html.shery-native-android [role="button"],
html.shery-native-android .cursor-pointer,
html.shery-native-android .menu-card {
    touch-action: manipulation;
}

html.shery-native-android body {
    padding-bottom: var(--shery-native-bottom-gap);
}

/* Global safe area for app headers */
html.shery-native-android body.play-app-root .game-header,
html.shery-native-android body.app-container .story-game-header,
html.shery-native-android body.game-app-root > .game-header,
html.shery-native-android body.online-app > .game-header,
html.shery-native-android body > header.game-header,
html.shery-native-android body > header.sticky {
    padding-top: max(24px, calc(var(--shery-native-top-gap) + 12px)) !important;
}

html.shery-native-android body.play-app-root .game-topbar,
html.shery-native-android body.app-container .story-header-inner,
html.shery-native-android body.game-app-root > .game-header > div:last-child,
html.shery-native-android body.online-app .header-inner {
    align-items: center;
}

html.shery-native-android body.play-app-root .game-shell,
html.shery-native-android body.app-container,
html.shery-native-android body.game-app-root,
html.shery-native-android body.online-app {
    min-height: 100dvh;
}

/* Main menu header/Profile/Coin spacing */
html.shery-native-android body.play-app-root .game-header {
    padding-left: 12px !important;
    padding-right: 12px !important;
    padding-bottom: 8px !important;
}

html.shery-native-android body.play-app-root .game-main-content {
    padding-top: max(20px, calc(var(--shery-native-top-gap) * .35)) !important;
}

/* Story map, offline group, online lobby safe header spacing */
html.shery-native-android body.app-container .story-game-header,
html.shery-native-android body.game-app-root > .game-header,
html.shery-native-android body.online-app > .game-header {
    margin-top: 0 !important;
}

html.shery-native-android body.game-app-root main.main-scroll,
html.shery-native-android body.online-app main.main-stage {
    padding-top: max(16px, calc(var(--shery-native-top-gap) * .35)) !important;
}

/* Layout based pages */
html.shery-native-android body > main,
html.shery-native-android .host-shell,
html.shery-native-android .auth-shell {
    padding-top: max(1rem, calc(var(--shery-native-top-gap) + .35rem));
}

html.shery-native-android .header-container {
    top: max(1rem, calc(var(--shery-native-top-gap) + .35rem)) !important;
}

html.shery-native-android .story-stage-page .header-container {
    left: .85rem;
    right: .85rem;
}

html.shery-native-android .story-stage-page .stage-wrapper {
    padding-top: max(4.5rem, calc(var(--shery-native-top-gap) + 3.4rem));
}

html.shery-native-android .round-v2-new-layout,
html.shery-native-android body.arrange-round-body main,
html.shery-native-android body:not(.story-stage-page) main.round-v2-new-layout {
    padding-top: max(.75rem, calc(var(--shery-native-top-gap) + .25rem));
}

/* Remove previous floating native controls from older cached versions */
html.shery-native-android .shery-native-close-fab,
html.shery-native-android .shery-mobile-game-toolbar {
    display: none !important;
}

html.shery-native-android .mobile-touch-active {
    transform: translateY(1px) scale(.992) !important;
    filter: brightness(1.08);
}

html.shery-native-android .shery-native-loading-target {
    pointer-events: none;
}

.shery-mobile-modal {
    position: fixed;
    inset: 0;
    z-index: 2147483500;
    display: grid;
    place-items: center;
    padding: 22px;
    background: rgba(2,6,23,.74);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    direction: rtl;
    font-family: Vazirmatn, Tahoma, Arial, sans-serif;
}

.shery-mobile-modal[hidden] { display: none !important; }

.shery-mobile-modal__card {
    width: min(92vw, 420px);
    color: #fff;
    border-radius: 28px;
    padding: 20px;
    border: 1px solid rgba(255,255,255,.14);
    background:
        radial-gradient(circle at 15% 0%, rgba(0,243,255,.14), transparent 30%),
        radial-gradient(circle at 100% 20%, rgba(255,0,127,.12), transparent 34%),
        linear-gradient(145deg, rgba(15,23,42,.98), rgba(8,10,24,.98));
    box-shadow: 0 24px 80px rgba(0,0,0,.60), inset 0 1px 0 rgba(255,255,255,.08);
    transform: translateY(8px) scale(.96);
    animation: sheryNativeModalIn .22s ease forwards;
}

@keyframes sheryNativeModalIn {
    to { transform: translateY(0) scale(1); }
}

.shery-mobile-modal__title {
    margin: 0 0 10px;
    font-size: 20px;
    font-weight: 950;
    line-height: 1.7;
}

.shery-mobile-modal__message {
    margin: 0;
    color: rgba(226,232,240,.88);
    font-size: 14px;
    line-height: 1.95;
}

.shery-mobile-modal__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-top: 18px;
}

.shery-mobile-modal__btn {
    min-height: 48px;
    border: 0;
    border-radius: 16px;
    font: inherit;
    font-weight: 900;
    color: #fff;
    background: rgba(255,255,255,.08);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10);
}

.shery-mobile-modal__btn--primary {
    color: #07111b;
    background: linear-gradient(135deg, #fbbf24, #f97316);
}

/* Instant action loading overlay for Android main menu navigation */
.shery-native-action-loader {
    position: fixed;
    inset: 0;
    z-index: 2147483400;
    display: grid;
    place-items: center;
    padding: 22px;
    direction: rtl;
    font-family: Vazirmatn, Tahoma, Arial, sans-serif;
    background:
        radial-gradient(circle at 50% 18%, rgba(139,92,246,.30), transparent 36%),
        radial-gradient(circle at 84% 82%, rgba(245,158,11,.18), transparent 34%),
        rgba(2,6,23,.82);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .16s ease, visibility .16s ease;
}

.shery-native-action-loader.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

.shery-native-action-loader[hidden] { display: none !important; }

.shery-native-action-loader__card {
    width: min(88vw, 360px);
    min-height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 24px 20px;
    text-align: center;
    color: #fff;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 30px;
    background:
        linear-gradient(145deg, rgba(30,41,59,.92), rgba(15,23,42,.98)),
        radial-gradient(circle at 50% 0%, rgba(251,191,36,.18), transparent 50%);
    box-shadow: 0 24px 75px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.10);
    transform: translateY(10px) scale(.96);
    animation: sheryNativeLoaderCardIn .18s ease forwards;
}

@keyframes sheryNativeLoaderCardIn {
    to { transform: translateY(0) scale(1); }
}

.shery-native-action-loader__logo {
    position: relative;
    width: 82px;
    height: 82px;
    display: grid;
    place-items: center;
    margin-bottom: 4px;
}

.shery-native-action-loader__logo span {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: conic-gradient(from 0deg, #fef08a, #f59e0b, #8b5cf6, #06b6d4, #fef08a);
    animation: sheryNativeLoaderSpin 1.1s linear infinite;
    box-shadow: 0 0 24px rgba(245,158,11,.36);
}

.shery-native-action-loader__logo::after {
    content: '';
    position: absolute;
    inset: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, #78350f, #f59e0b 52%, #fef3c7);
    box-shadow: inset 0 2px 8px rgba(255,255,255,.28), inset 0 -6px 12px rgba(120,53,15,.34);
}

.shery-native-action-loader__logo b {
    position: relative;
    z-index: 1;
    color: #fff7ed;
    font-size: 42px;
    line-height: 1;
    text-shadow: 0 3px 9px rgba(0,0,0,.45);
}

@keyframes sheryNativeLoaderSpin { to { transform: rotate(360deg); } }

.shery-native-action-loader__title {
    font-size: 18px;
    font-weight: 950;
    line-height: 1.7;
}

.shery-native-action-loader__text {
    color: rgba(226,232,240,.82);
    font-size: 12px;
    font-weight: 800;
}

.shery-native-action-loader__bar {
    width: min(230px, 74vw);
    height: 8px;
    margin-top: 4px;
    border-radius: 999px;
    background: rgba(15,23,42,.78);
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.08);
}

.shery-native-action-loader__bar i {
    display: block;
    width: 45%;
    height: 100%;
    border-radius: inherit;
    background: linear-gradient(90deg, #8b5cf6, #f59e0b, #fef08a);
    animation: sheryNativeLoaderBar 1.05s ease-in-out infinite;
}

@keyframes sheryNativeLoaderBar {
    0% { transform: translateX(130%); }
    100% { transform: translateX(-240%); }
}

html.shery-native-android .volumetric-beam,
html.shery-native-android .light-laser,
html.shery-native-android .ambient-blob,
html.shery-native-android .cyber-grid,
html.shery-native-android .game-orb,
html.shery-native-android .orb,
html.shery-native-android .note {
    will-change: auto;
}

@media (max-width: 640px) {
    html.shery-native-android body.play-app-root .game-header,
    html.shery-native-android body.app-container .story-game-header,
    html.shery-native-android body.game-app-root > .game-header,
    html.shery-native-android body.online-app > .game-header {
        padding-top: max(24px, calc(var(--shery-native-top-gap) + 14px)) !important;
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    html.shery-native-android body.play-app-root .game-profile-card,
    html.shery-native-android body.play-app-root .guest-auth-panel {
        max-width: 56% !important;
    }

    html.shery-native-android .round-v2-new-layout,
    html.shery-native-android body.arrange-round-body main { gap: 1rem; }
    html.shery-native-android #music-player-widget { margin-top: .35rem; }
}

/* Sheryadetnare Android Native Polish v4.3.6: guest menu + story action loading */
html.shery-native-android body.play-app-root .game-topbar.is-guest {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 48px;
    align-items: start !important;
    gap: 10px !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .game-header-actions {
    align-self: start !important;
    justify-content: flex-end !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .game-icon-button {
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-panel {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 104px !important;
    overflow: visible !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: center !important;
    gap: 10px !important;
    padding: 14px 64px 14px 14px !important;
    border-radius: 26px !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-panel::before {
    top: 15px !important;
    right: 14px !important;
    width: 38px !important;
    height: 38px !important;
    transform: rotate(-8deg) !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-copy {
    display: grid !important;
    gap: 4px !important;
    min-width: 0 !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-copy strong {
    display: block !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-copy small {
    display: block !important;
    max-width: none !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    color: rgba(226,232,240,.86) !important;
    font-size: 10px !important;
    line-height: 1.65 !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-buttons {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
}

html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-btn {
    width: 100% !important;
    min-width: 0 !important;
    height: 38px !important;
    padding: 0 8px !important;
    border-radius: 14px !important;
    font-size: 12px !important;
}

html.shery-native-android .story-panel-start-btn.is-native-loading {
    pointer-events: none !important;
    filter: brightness(1.08) saturate(1.08) !important;
}

html.shery-native-android .story-panel-start-btn.is-native-loading .story-panel-start-btn__icon {
    animation: sheryNativeStartPulse .85s ease-in-out infinite alternate;
}

@keyframes sheryNativeStartPulse {
    to { transform: scale(1.08) rotate(-5deg); }
}

@media (max-width: 380px) {
    html.shery-native-android body.play-app-root .game-topbar.is-guest {
        grid-template-columns: minmax(0, 1fr) 44px;
        gap: 8px !important;
    }
    html.shery-native-android body.play-app-root .game-topbar.is-guest .game-icon-button {
        width: 44px !important;
        height: 44px !important;
        flex-basis: 44px !important;
    }
    html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-panel {
        min-height: 108px !important;
        padding: 13px 58px 13px 12px !important;
    }
    html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-copy small {
        font-size: 9px !important;
        line-height: 1.6 !important;
    }
    html.shery-native-android body.play-app-root .game-topbar.is-guest .guest-auth-btn {
        height: 36px !important;
        font-size: 11px !important;
    }
}
