/* ---------- MOBILE (max-width: 768px) ---------- */
.top_nav {
    width: calc(100% - 24px);
    padding: 0 16px;
}

.top_nav_left {
    gap: 8px;
}

.top_nav_right {
    justify-content: space-between;
    width: 100%;
}

.top_nav_buttons {
    display: none;
}

.top_nav_buttons.mobile_open {
    display: flex;
    flex-direction: column;
    height: auto;
    position: fixed;
    top: 52px;
    left: 12px;
    width: 30%;
    min-width: 120px;
    background-color: rgba(12, 13, 21, 0.98);
    border: 1px solid var(--web_color_secondary_border);
    border-radius: 12px;
    padding: 8px;
    gap: 4px;
    animation: fadeIn 0.2s ease;
    z-index: 999;
}

.top_nav_buttons.mobile_open .top_nav_button,
.top_nav_buttons.mobile_open .top_nav_button_secondary {
    display: block;
    width: 100%;
    transform: none;
    border: none;
    border-radius: 8px;
    padding: 12px 16px;
    text-align: center;
}

.top_nav_buttons.mobile_open .top_nav_button:hover {
    background-color: var(--web_color_secondary_hover);
}

.top_nav_buttons.mobile_open .top_nav_button span {
    font-size: 18px;
}

.mobile_menu {
    display: flex;
    order: 0;
}

#auth_area {
    order: 1;
}

.hero_title {
    font-size: clamp(2rem, 8vw, 3.5rem);
}

.hero_content {
    flex-direction: column;
    text-align: center;
}

.hero_text {
    order: 1;
}

.hero_logo {
    order: 2;
    width: 400px;
}

.hero_logo img {
    width: 100%;
}

.hero_buttons {
    justify-content: center;
}

.server_status_div {
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.server_status {
    bottom: 20px;
    left: 20px;
    right: 20px;
    transform: none;
    justify-content: center;
    margin-left: 0;
    margin-right: 0;
}

.about_us_container {
    grid-template-columns: 1fr;
    grid-template-rows: auto auto auto;
    aspect-ratio: auto;
    gap: 10px;
    padding: 10px;
}

.about_us_overlay {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    height: auto;
    clip-path: none;
    border-radius: 10px;
    order: 1;
    padding: 20px;
}

.about_us_overlay .big {
    font-size: 36px;
}

.about_us_overlay p {
    font-size: 16px;
}

.about_us_left_top {
    grid-column: 1;
    grid-row: 2;
    order: 2;
}

.about_us_left_bottom {
    grid-column: 1;
    grid-row: 3;
    order: 3;
}

.about_us_right {
    grid-column: 1;
    grid-row: 4;
    order: 4;
}

.vip_options {
    flex-direction: column;
    align-items: center;
}

.vip_option {
    max-width: 100%;
    width: 100%;
    padding: 32px 24px;
}

.jobs_options {
    flex-direction: column;
    align-items: center;
}

.jobs_option {
    width: 100%;
    max-width: 350px;
    padding: 32px 24px;
}

.section {
    padding: 60px 0;
}

.footer {
    padding: 36px 0;
}

.about_us_text_big,
.vip_text_big,
.jobs_text_big {
    font-size: 36px;
}

.footer_content {
    flex-direction: column-reverse;
}

.footer_left {
    text-align: center;
}

.footer_desc {
    max-width: 100%;
}

.footer_socials {
    justify-content: center;
}

.footer_right {
    justify-content: center;
}

/* ---------- PROFILE MOBILE ---------- */
.profile_stats_grid {
    grid-template-columns: 1fr;
}

.inventory_grid {
    grid-template-columns: repeat(3, 80px);
}

.profile_card {
    flex-direction: column;
    padding: 20px;
}

.profile_card_left {
    width: 100%;
}

.profile_char_placeholder {
    width: 80px;
    height: 160px;
}

.profile_separator {
    width: 100%;
    height: 1px;
    margin: 16px 0;
}

.profile_card_right {
    width: 100%;
}

.profile_stat_row {
    flex-direction: column;
    gap: 2px;
    padding: 8px 12px;
}

.stat_name {
    min-width: auto;
    font-size: 14px;
}

.stat_value {
    font-size: 16px;
}

.profile_loading .title {
    font-size: 24px;
}

.profile_not_found .title {
    font-size: 28px;
}

.profile_not_found .description {
    font-size: 16px;
}
