/*
 * VirtualWorld v3.2.1 - unified modern typography
 * Presentation-only layer. No layout, behavior, database or game logic changes.
 */
:root {
    --vw-font-sans: "Heebo", "Segoe UI", Arial, sans-serif;
}

html {
    font-family: var(--vw-font-sans);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-synthesis: none;
}

body,
button,
input,
select,
textarea,
option {
    font-family: var(--vw-font-sans) !important;
}

button,
input,
select,
textarea {
    font-variant-numeric: tabular-nums;
}

/* Main world, navigation, chat and modal UI */
#gameShell,
#gameTopbar,
#containerWorld,
#popdown,
#hud,
#mallModal,
#playerMenu,
.vw-world-entry,
.mall-room-btn,
.mall-top-btn,
.mall-hotspot,
.mall-card,
.mall-card-btn,
.player-menu-btn,
.gesture-btn,
.public-chat-toggle,
.public-chat-pill,
.username,
.bubble,
.message,
.submitter,
.msg {
    font-family: var(--vw-font-sans) !important;
}

.mall-room-btn,
.mall-top-btn,
.mall-card-btn,
.player-menu-btn,
.gesture-btn,
.public-chat-toggle,
#sendchat,
#worldEntryRetry {
    font-weight: 800;
    letter-spacing: -0.012em;
}

.mall-hotspot.shop-hotspot,
.mall-hotspot.room-entry-hotspot,
.mall-hotspot.coming-soon-hotspot {
    font-family: var(--vw-font-sans) !important;
    font-weight: 800 !important;
    letter-spacing: -0.022em !important;
}

.username {
    font-weight: 700;
    letter-spacing: -0.01em;
}

#chatbar,
.mall-input,
.gift-message,
.social-form textarea,
#privateMessageText {
    font-weight: 500;
    letter-spacing: -0.006em;
}

/* Authentication, registration, password reset and profile pages */
.vw-auth-shell,
.vw-auth-topbar,
.vw-auth-card,
.vw-auth-hero,
.vw-auth-form-side,
.vw-auth-brand,
.vw-auth-toplinks,
.vw-field,
.vw-submit,
.vw-alert,
.vw-auth-links,
.vw-inline-note,
.vw-profile-preview {
    font-family: var(--vw-font-sans) !important;
}

.vw-auth-hero h1,
.vw-auth-title {
    letter-spacing: -0.035em;
}

.vw-auth-subtitle,
.vw-auth-hero p,
.vw-field small {
    font-weight: 500;
}

.vw-field label,
.vw-auth-toplinks a,
.vw-auth-links,
.vw-auth-feature {
    font-weight: 700;
}

.vw-field input,
.vw-field select {
    font-weight: 500;
    letter-spacing: -0.006em;
}

.vw-submit {
    font-weight: 800;
    letter-spacing: -0.018em;
}
