/* ========== FONTS ========== */
/* local() → локальный woff2 → Google Fonts (через <link> в header) */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: local('Montserrat Regular'), local('Montserrat-Regular'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    font-display: block;
    src: local('Montserrat Medium'), local('Montserrat-Medium'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    font-display: block;
    src: local('Montserrat SemiBold'), local('Montserrat-SemiBold'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    font-display: block;
    src: local('Montserrat Bold'), local('Montserrat-Bold'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    font-display: block;
    src: local('Montserrat ExtraBold'), local('Montserrat-ExtraBold'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: local('Montserrat Black'), local('Montserrat-Black'),
         url('f41a9bc.BCAciLey.woff2') format('woff2');
}

/* ========== RESET ========== */
*,:after,:before{box-sizing:border-box;margin:0;padding:0}
ol[class],ul[class]{list-style:none;padding:0}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
a{color:inherit;text-decoration:none}
button{background-color:transparent;border:none;cursor:pointer;padding:0}

/* ========== SCROLLBAR (оригинальный оранжевый) ========== */
::-webkit-scrollbar{height:12px;width:6px}
::-webkit-scrollbar-track{background:#ffb800}
::-webkit-scrollbar-thumb,::-webkit-scrollbar-thumb:hover{background:#f96918}

/* ========== VARIABLES ========== */
:root{
    --orange-grad: linear-gradient(257.5deg,#f96918 -7.46%,#ffb800 74.36%);
    --orange:      #f5a623;
    --orange2:     #ffb800;
    --orange3:     #f96918;
    --bg:          #131313;
    --bg-card:     #1c1c1c;
    --bg-card2:    #252525;
    --bg-light:    #f2f2f2;
    --text-dark:   #1e1d1d;
    --text-light:  #dfdfdf;
    --text-muted:  #858585;
    --border:      #2e2e2e;
    --border-light:#e0e0e0;
    --red:         #ea4f3d;
    --green:       #28a745;
    --radius:      8px;
}

/* ========== SPLASH (index only) ========== */
.splash-screen {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: #131313;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: opacity .4s ease;
}
.splash-logo {
    width: 120px;
    animation: splash-pulse 1.5s ease-in-out infinite;
}
@keyframes splash-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.15); opacity: .8; }
}

/* ========== NAVBAR ========== */
.navbar-top {
    position: fixed; top: 0; left: 0; right: 0; z-index: 9999;
    background: rgba(0, 0, 0, 0.35);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-bottom: 1px solid rgba(255,255,255,.08);
    height: 80px;
    transition: background .3s ease, transform .3s ease;
}
.navbar-top.scrolled {
    background: rgba(17, 17, 17, 0.97);
    backdrop-filter: blur(0px);
    -webkit-backdrop-filter: blur(0px);
}
.navbar-top.hidden  { transform: translateY(-100%); }
.navbar-top.visible { transform: translateY(0); }

.nav-inner {
    max-width: 1400px; margin: 0 auto;
    padding: 0 36px; height: 80px;
    display: flex; align-items: center; gap: 0;
}

/* Logo */
.nav-logo { display: flex; align-items: center; flex-shrink: 0; margin-right: 48px; }
.nav-logo-img { width: 48px; height: auto; transition: .2s; }
.nav-logo-img:hover { transform: scale(1.07); }

/* Nav links */
.nav-links {
    display: flex; list-style: none; padding: 0; margin: 0;
    align-items: center; flex: 1; justify-content: center; gap: 2px;
}
.nav-link {
    display: flex; align-items: center; gap: 5px;
    color: #c8c8c8; font-size: 14px; font-weight: 700;
    font-family: Montserrat, sans-serif;
    letter-spacing: .5px; text-transform: uppercase;
    padding: 8px 16px; border-radius: 4px;
    transition: color .2s, transform .2s;
    white-space: nowrap;
}
.nav-link:hover { color: #ffffff; transform: rotate(-4deg); }
.nav-link--active { color: #ffffff; }
.nav-icon { width: 15px; height: 15px; flex-shrink: 0; }

/* Auth button */
.nav-auth { flex-shrink: 0; display: flex; align-items: center; gap: 10px; }
.nav-cabinet-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: linear-gradient(257.5deg, #f96918 -7.46%, #ffb800 74.36%);
    color: #fff; font-family: Montserrat, sans-serif;
    font-size: 14px; font-weight: 700; letter-spacing: .5px;
    text-transform: uppercase; white-space: nowrap;
    padding: 0 28px; height: 52px; border-radius: 8px;
    border: none; cursor: pointer; transition: .2s;
    box-shadow: 0 8px 28px rgba(255,184,0,.35);
    transform: matrix(1, -.01, -.06, 1, 0, 0);
}
.nav-cabinet-btn:hover { filter: brightness(1.1); transform: matrix(1,-.01,-.06,1,0,0) scale(1.04); }
.nav-logout-btn {
    color: #888; font-size: 13px; font-weight: 600;
    font-family: Montserrat, sans-serif;
    padding: 6px 12px; border-radius: 6px;
    border: 1px solid #333; transition: all .2s;
}
.nav-logout-btn:hover { color: #ea4f3d; border-color: #ea4f3d; }

/* ========== FOOTER ========== */
.site-footer {
    background: #111111;
    border-top: 1px solid rgba(255,255,255,.07);
    padding: 18px 28px 16px;
    position: relative;
    z-index: 9999;
}

/* Верхняя строка */
.footer-top {
    display: flex; align-items: center; justify-content: center;
    gap: 12px; margin-bottom: 12px;
}
.footer-logo-img {
    width: 36px; height: auto;
    filter: drop-shadow(0 0 10px rgba(255,184,0,.5));
}
.footer-brand {
    font-family: Montserrat, sans-serif;
    font-size: 15px; color: #ffffff; white-space: nowrap;
    letter-spacing: .5px;
}
.footer-brand strong { font-weight: 900; }

/* Нижняя строка */
.footer-bottom {
    display: flex; align-items: center; justify-content: center;
    gap: 24px; flex-wrap: wrap;
}
.footer-links {
    display: flex; align-items: center; gap: 20px;
    flex-wrap: wrap; justify-content: center;
}
.footer-links a {
    color: #bfbfbf; font-size: 13px; font-weight: 600;
    font-family: Montserrat, sans-serif;
    white-space: nowrap; transition: color .2s;
}
.footer-links a:hover { color: #fff; }
.footer-dev {
    color: #bfbfbf; font-size: 13px;
    font-family: Montserrat, sans-serif; white-space: nowrap;
}
.footer-dev strong { color: #fff; font-weight: 700; }

/* Payment icons */
.footer-payments { display: flex; align-items: center; gap: 10px; }
.pay-icon {
    display: flex; align-items: center; justify-content: center;
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 6px; padding: 4px 8px;
    opacity: .8; transition: opacity .2s; cursor: default;
}
.pay-icon:hover { opacity: 1; }
.pay-icon--arrow { width: 32px; height: 28px; padding: 5px; }
.pay-icon--arrow svg { width: 14px; height: 14px; }
.pay-icon--mir { width: 52px; height: 28px; }
.pay-icon--mir svg { width: 44px; height: 18px; }
.pay-icon--cards { width: 38px; height: 28px; padding: 3px 6px; }
.pay-icon--cards svg { width: 26px; height: 22px; }

/* ========== BASE ========== */
html{font-size:16px;scroll-behavior:smooth}
body{
    background:var(--bg);
    color:var(--text-light);
    font-family:Montserrat,sans-serif;
    line-height:1.5;
    text-rendering:optimizeSpeed;
}
.app{display:grid;grid-template-rows:max-content 1fr max-content;min-height:100vh}
.container{margin-left:auto;margin-right:auto;padding:0 .9375rem;width:80rem}
@media(max-width:90rem){.container{width:80rem}}
@media(max-width:80rem){.container{width:64rem}}
@media(max-width:64rem){.container{width:48rem}}
@media(max-width:48rem){.container{width:36rem}}
@media(max-width:36rem){.container{width:100%}}



/* LOGIN BUTTON (оригинальный стиль из entry.css) */
.login-button{
    align-content:center;align-items:center;
    background:var(--orange-grad);
    border:none;border-radius:8px;
    box-shadow:0 27px 64px -16px rgba(255,184,0,.64);
    color:#fff;cursor:pointer;
    display:flex;flex-wrap:wrap;
    font-size:14px;font-weight:700;gap:3px;
    height:60px;justify-content:center;
    line-height:22px;position:relative;
    text-transform:uppercase;
    transform:matrix(1,-.01,-.08,1,0,0);
    transition:.2s;width:200px;
}
.login-button:hover{scale:1.05}
.login-button i{font-size:16px}

/* user-profile */
.user-profile{
    align-items:center;background-color:#f2f2f2;
    border-radius:.375rem;cursor:pointer;
    display:inline-flex;padding:.71875rem 1rem;
    color:var(--text-dark);font-size:.75rem;font-weight:600;
    gap:8px;
}
.user-profile:hover{background-color:#e8e8e8}

.page-content{padding-top:0;min-height:100vh}
/* Страницы без hero — нужен отступ под шапку */
.page-content--offset{padding-top:80px}

/* ========== HERO ========== */
.hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.hero-bg {
    position: absolute; inset: 0;
    background-image: url('../123/052b314.CGti4mUG.jpg');
    background-size: cover;
    background-position: center top;
    z-index: 0;
}
.hero-bg::after {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(to top, rgba(10,10,10,.55) 0%, rgba(10,10,10,.15) 50%, transparent 100%);
}
/* title.png — на весь hero, позади текста */
.hero-title-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    opacity: .55;
    pointer-events: none;
    z-index: 1;
}
.hero-content {
    position: relative; z-index: 2;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px;
    padding: 0 24px;
}
.hero-online {
    display: inline-flex; align-items: center; gap: 8px;
    color: var(--orange2); font-size: 14px; font-weight: 700;
}
.hero h1 {
    font-size: clamp(4rem, 9vw, 7.5rem);
    font-weight: 900; line-height: 1;
    letter-spacing: -2px;
    color: #fff;
    text-transform: uppercase;
    text-shadow: 0 4px 40px rgba(0,0,0,.35);
    margin: 0;
}
.btn-play {
    display: inline-flex; align-items: center; gap: 10px;
    background: linear-gradient(257.5deg, #f96918 -7.46%, #ffb800 74.36%);
    color: #fff;
    padding: 0 52px; height: 56px;
    border-radius: 8px;
    font-size: 14px; font-weight: 900;
    font-family: Montserrat, sans-serif;
    letter-spacing: 1px; text-transform: uppercase;
    transition: .2s;
    box-shadow: 0 8px 32px rgba(255,184,0,.5);
    border: none; cursor: pointer;
}
.btn-play:hover { filter: brightness(1.1); transform: translateY(-2px); }
.hero-dots {
    position: absolute; bottom: 28px; left: 50%;
    transform: translateX(-50%); z-index: 2;
    display: flex; gap: 10px;
}
.hero-dot { width: 10px; height: 10px; border-radius: 50%; background: rgba(255,255,255,.3); }
.hero-dot.active { background: var(--orange2); }

/* ========== LAUNCHER SECTION ========== */
.launcher-section {
    background: #1a1a1a;
    padding: 60px 80px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 60px;
    overflow: hidden;
    position: relative;
    min-height: 460px;
}

/* Левая часть */
.launcher-text {
    flex: 0 0 auto;
    max-width: 420px;
    z-index: 2;
}
.launcher-text h2 {
    font-size: 1.8rem;
    font-weight: 700;
    color: #fff;
    margin-bottom: 6px;
    line-height: 1.2;
}
.launcher-sub {
    color: #888;
    font-size: 15px;
    font-weight: 400;
    margin-bottom: 36px;
    display: block;
}
.launcher-choose {
    font-size: clamp(2.5rem, 4vw, 3.8rem);
    font-weight: 900;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.0;
    margin-bottom: 14px;
}
.launcher-desc {
    color: #aaa;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 36px;
}
.launcher-btns {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 14px;
    align-items: center;
}
.btn-dl {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(257.5deg, #f96918 -7.46%, #ffb800 74.36%);
    color: #fff;
    padding: 0 24px;
    height: 52px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    font-family: Montserrat, sans-serif;
    letter-spacing: .8px;
    text-transform: uppercase;
    transition: .2s;
    box-shadow: 0 8px 28px rgba(255,184,0,.3);
    border: none;
    cursor: pointer;
    white-space: nowrap;
    flex-shrink: 0;
}
.btn-dl:hover { filter: brightness(1.1); transform: translateY(-2px); }
.btn-dl svg { width: 18px; height: 18px; flex-shrink: 0; }

/* Правая часть */
.launcher-right {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    z-index: 1;
}
.launcher-screenshot {
    width: 100%;
    max-width: 580px;
    border-radius: 14px;
    box-shadow: 0 24px 64px rgba(0,0,0,.7);
    display: block;
    border: 1px solid rgba(255,255,255,.08);
}

/* Блок с "ВЫБЕРИ СВОЙ ПУТЬ" */
.launcher-text-block {
    position: relative;
    margin-bottom: 36px;
    padding: 8px 0;
}
.launcher-spark {
    position: absolute;
    left: -80px;
    top: 50%;
    transform: translateY(-50%);
    width: 420px;
    opacity: .5;
    pointer-events: none;
    z-index: 0;
}
.launcher-border {
    position: absolute;
    left: -60px;
    top: 50%;
    transform: translateY(-50%);
    width: 380px;
    opacity: .85;
    pointer-events: none;
    z-index: 1;
}
.launcher-choose {
    position: relative;
    z-index: 2;
    font-size: clamp(2.5rem, 4vw, 3.8rem);
    font-weight: 900;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.0;
    margin-bottom: 14px;
}
.launcher-desc {
    position: relative;
    z-index: 2;
    color: #aaa;
    font-size: 15px;
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 0;
}

/* ========== NEWS SECTION ========== */
.news-section{padding:60px 80px;background:#131313;color:var(--text-dark)}
.news-section h2{
    font-size:clamp(2.5rem,5vw,4rem);font-weight:900;
    text-transform:uppercase;margin-bottom:36px;color:#ffffff;
}
.news-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.news-card{background:#fff;border:1px solid var(--border-light);border-radius:10px;overflow:hidden;transition:transform .2s;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.news-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.12)}
.news-card img{width:100%;height:180px;object-fit:cover;display:block}
.news-card-body{padding:16px}
.news-card-body h3{font-size:15px;font-weight:700;margin-bottom:10px;color:var(--text-dark)}
.news-card-body p{color:#666;font-size:13px;line-height:1.5;margin-bottom:14px}
.news-meta{display:flex;align-items:center;justify-content:space-between}
.news-date{color:#999;font-size:12px}
.news-more{color:var(--orange3);font-size:13px;font-weight:700;transition:color .2s}
.news-more:hover{color:var(--orange2)}

/* ========== SOCIALS SECTION ========== */
.socials-section {
    background: #131313 !important;
    padding: 48px 80px 56px;
    position: relative;
    z-index: 9999;
}

/* Обёртка с fgn2.png как рамка */
.socials-frame {
    position: relative;
    display: inline-flex;
    align-items: center;
}

/* fgn2.png — рамка вокруг иконок соцсетей, размер 552×198 */
.socials-border {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: fill;
    pointer-events: none;
    z-index: 0;
}

.socials-inner {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 28px 36px;
}

.social-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 16px;
    overflow: hidden;
    transition: transform .2s, box-shadow .2s;
    flex-shrink: 0;
}
.social-link:hover {
    transform: scale(1.08);
    box-shadow: 0 8px 24px rgba(0,0,0,.3);
}
.social-link img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* ========== CHOOSE PATH ========== */

/* ========== SOCIAL & FOOTER ========== */
.social-section{
    margin:0 60px 0;background:#1c1c1c;
    border:1px solid #2a2a2a;border-radius:14px;
    padding:40px 50px;display:flex;align-items:center;gap:28px;
}
.social-icon{
    width:70px;height:70px;border-radius:14px;
    display:flex;align-items:center;justify-content:center;
    cursor:pointer;transition:transform .2s;text-decoration:none;
}
.social-icon:hover{transform:scale(1.08)}
.social-vk{background:#0077FF}
.social-tg{background:#2AABEE}
.social-yt{background:#FF0000}

.site-footer{
    background:var(--bg);border-top:1px solid var(--border);
    padding:40px 60px;text-align:center;
}
.footer-logo-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:20px}
.footer-logo-row .logo-img{width:40px;filter:drop-shadow(2px 4px 100px white)}
.footer-brand{font-size:18px;font-weight:900;font-style:italic;color:#fff}
.footer-brand span{font-weight:300}
.footer-copy{color:var(--text-muted);font-size:13px;margin-bottom:14px}
.footer-links{display:flex;gap:24px;justify-content:center;flex-wrap:wrap;margin-bottom:10px}
.footer-links a{color:#fff;font-size:.875rem;font-weight:600;transition:.2s}
.footer-links a:hover{color:#858585}
.footer-dev{color:var(--text-muted);font-size:12px}
.footer-dev a{color:var(--text-muted);text-decoration:underline}

/* ========== AUTH PAGES ========== */
.auth-page{
    min-height:calc(100vh - 80px);display:flex;
    align-items:center;justify-content:center;padding:40px 24px;
    background:radial-gradient(ellipse 60% 40% at 50% 0%,rgba(249,105,24,.08) 0%,transparent 70%);
}
.auth-card{
    background:#1c1c1c;border:1px solid var(--border);
    border-radius:16px;padding:44px 40px;width:100%;max-width:420px;
    box-shadow:0 20px 60px rgba(0,0,0,.5);
}
.auth-card h2{font-size:1.7rem;font-weight:900;margin-bottom:6px;text-align:center;color:#fff}
.auth-sub{color:var(--text-muted);text-align:center;font-size:14px;margin-bottom:32px}
.form-group{margin-bottom:18px}
.form-group label{
    display:block;font-size:12px;font-weight:700;
    color:var(--text-muted);margin-bottom:7px;
    text-transform:uppercase;letter-spacing:.5px;
}
.form-group input{
    width:100%;background:#222;border:1px solid var(--border);
    color:#fff;padding:12px 14px;border-radius:8px;
    font-size:15px;font-family:Montserrat,sans-serif;
    outline:none;transition:border-color .2s;
}
.form-group input:focus{border-color:var(--orange3)}
.form-group input::placeholder{color:#555}
.btn-full{
    width:100%;background:var(--orange-grad);color:#fff;
    padding:14px;border-radius:8px;font-size:14px;font-weight:700;
    font-family:Montserrat,sans-serif;
    border:none;cursor:pointer;transition:.2s;
    text-transform:uppercase;letter-spacing:.5px;margin-top:6px;
    box-shadow:0 27px 64px -16px rgba(255,184,0,.4);
}
.btn-full:hover{scale:1.02;box-shadow:0 27px 64px -8px rgba(255,184,0,.6)}
.alert{padding:12px 14px;border-radius:8px;font-size:14px;margin-bottom:18px}
.alert-error{background:rgba(234,79,61,.1);border:1px solid rgba(234,79,61,.3);color:#fca5a5}
.alert-success{background:rgba(40,167,69,.1);border:1px solid rgba(40,167,69,.3);color:#86efac}
.auth-footer-link{text-align:center;margin-top:20px;font-size:14px;color:var(--text-muted)}
.auth-footer-link a{color:var(--orange3);font-weight:700}
.auth-footer-link a:hover{text-decoration:underline}

/* ========== FORBES ========== */
.forbes-page{min-height:calc(100vh - 80px);background:var(--bg)}
.forbes-top-tabs{display:flex;align-items:center;justify-content:center;gap:32px;padding:32px 24px 0}
.forbes-top-tab{
    color:var(--text-muted);font-size:13px;font-weight:700;
    text-transform:uppercase;letter-spacing:2px;
    padding:8px 4px;border-bottom:2px solid transparent;
    transition:all .2s;cursor:pointer;
}
.forbes-top-tab.active{color:#fff;border-bottom-color:var(--orange3)}
.forbes-top-tab:hover{color:#fff}

/* Podium */
.forbes-podium-wrap{
    display:flex;align-items:flex-end;justify-content:center;
    gap:0;padding:48px 24px 0;max-width:900px;margin:0 auto;
}
.podium-slot{flex:1;display:flex;flex-direction:column;align-items:center;max-width:280px}
.podium-slot .rank-num{
    font-size:1.8rem;font-weight:900;color:var(--orange3);margin-bottom:12px;
}
.podium-slot.rank-2 .rank-num,.podium-slot.rank-3 .rank-num{
    color:var(--text-muted);font-size:1.4rem;
}
.podium-frame{
    width:100%;border-radius:10px 10px 0 0;overflow:hidden;position:relative;
    border:2px solid rgba(249,105,24,.6);border-bottom:none;
}
.podium-slot.rank-2 .podium-frame,.podium-slot.rank-3 .podium-frame{
    border-color:rgba(120,120,120,.35);
}
.podium-frame-inner{
    padding:24px 16px 16px;
    background:linear-gradient(180deg,#2d1a00 0%,#1a1a1a 100%);
    display:flex;flex-direction:column;align-items:center;gap:8px;min-height:220px;
}
.podium-slot.rank-2 .podium-frame-inner,.podium-slot.rank-3 .podium-frame-inner{
    background:linear-gradient(180deg,#222 0%,#1a1a1a 100%);min-height:170px;
}
.podium-frame-inner .char-emoji{font-size:80px;line-height:1;display:block}
.podium-slot.rank-2 .char-emoji,.podium-slot.rank-3 .char-emoji{font-size:64px}
.podium-nick{font-size:13px;font-weight:700;color:#fff;text-align:center}
.podium-cash{font-size:12px;color:var(--text-muted);text-align:center}

/* Forbes table */
.forbes-table-wrap{max-width:1100px;margin:40px auto 60px;padding:0 24px}
.forbes-row{
    display:flex;align-items:center;gap:20px;
    padding:12px 24px;border-bottom:1px solid var(--border);
    transition:background .15s;
}
.forbes-row:hover{background:rgba(255,255,255,.03)}
.fr-num{width:32px;font-size:14px;font-weight:700;color:var(--text-muted);flex-shrink:0;text-align:center}
.fr-skin{width:44px;flex-shrink:0;display:flex;align-items:center;justify-content:center}
.fr-skin-img{width:44px;height:56px;object-fit:contain;object-position:top}
.fr-skin-empty{width:44px;height:44px;display:flex;align-items:center;justify-content:center;color:#444}
.fr-name{flex:1;font-size:15px;font-weight:700;color:#fff}
.fr-server{font-size:13px;color:var(--text-muted);width:120px;text-align:center;flex-shrink:0}
.fr-cash{font-size:15px;font-weight:700;color:#fff;white-space:nowrap;width:140px;text-align:right;flex-shrink:0}

/* Скины на подиуме */
.podium-skin-img{width:80px;height:110px;object-fit:contain;object-position:top;display:block;margin:0 auto}
.podium-slot.rank-2 .podium-skin-img{width:64px;height:90px}
.podium-slot.rank-3 .podium-skin-img{width:64px;height:90px}
.podium-skin-placeholder{display:flex;align-items:center;justify-content:center;height:90px}

/* Табы сортировки */
.forbes-sort-tabs{
    display:flex;gap:12px;justify-content:center;
    margin:20px 0 40px;flex-wrap:wrap;
}
.forbes-sort-tab{
    display:inline-flex;align-items:center;gap:8px;
    background:var(--bg-card2);color:var(--text-muted);
    padding:10px 28px;border-radius:8px;
    font-size:14px;font-weight:700;
    font-family:Montserrat,sans-serif;
    border:1px solid var(--border);transition:all .2s;
}
.forbes-sort-tab.active,.forbes-sort-tab:hover{
    background:var(--orange3);color:#fff;border-color:var(--orange3);
}

/* ========== SHOP (светлый фон как на скрине) ========== */
.shop-page{min-height:calc(100vh - 80px);background:#131313;color:var(--text-dark);padding:60px}
.shop-page h1{font-size:clamp(2rem,4vw,3rem);font-weight:900;margin-bottom:8px;color:#fff}
.shop-page h1 span{font-weight:300;color:#fff}
.shop-sub{color:#777;font-size:15px;margin-bottom:28px}
.shop-btn-pay{
    display:inline-block;background:var(--orange-grad);color:#fff;
    padding:14px 40px;border-radius:8px;font-size:13px;font-weight:700;
    text-transform:uppercase;letter-spacing:.5px;cursor:pointer;
    border:none;font-family:Montserrat,sans-serif;transition:.2s;
    margin-bottom:24px;
}
.shop-btn-pay:hover{scale:1.05}
.shop-discount{color:var(--orange3);font-size:1.2rem;font-weight:800;margin-bottom:40px}
.shop-section-title{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:900;text-transform:uppercase;text-align:center;margin-bottom:8px;color:#fff}
.shop-section-sub{text-align:center;color:#777;font-size:14px;margin-bottom:36px}
.money-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:60px}
.money-card{background:#f5f5f5;border-radius:10px;padding:24px 20px;text-align:center;transition:box-shadow .2s}
.money-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.1)}
.money-price{font-size:1.1rem;font-weight:900;margin-bottom:8px;color:var(--text-dark)}
.money-amount{font-size:2.2rem;font-weight:900;margin-bottom:14px;color:var(--text-dark)}
.money-card img{margin:0 auto;width:140px;height:100px;object-fit:contain}
.cars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.car-card{background:#f5f5f5;border-radius:10px;padding:16px;transition:box-shadow .2s}
.car-card:hover{box-shadow:0 4px 20px rgba(0,0,0,.1)}
.car-cat{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.car-name{font-size:14px;font-weight:700;margin-bottom:8px;color:var(--text-dark)}
.car-features{list-style:disc;padding-left:18px;font-size:13px;color:#555;margin-bottom:12px}
.car-card img{width:100%;height:110px;object-fit:contain;margin-bottom:12px}
.btn-buy{
    display:inline-flex;align-items:center;gap:6px;
    background:var(--orange-grad);color:#fff;
    padding:10px 20px;border-radius:6px;font-size:13px;font-weight:700;
    border:none;cursor:pointer;font-family:Montserrat,sans-serif;transition:.2s;
}
.btn-buy:hover{scale:1.05}

/* ========== CABINET ========== */
.cabinet-page{min-height:calc(100vh - 80px);padding:40px 60px 80px;max-width:1100px;margin:0 auto}
.cab-info-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}
.cab-bar-card{
    background:#1c1c1c;border:1px solid var(--border);
    border-radius:10px;padding:20px 24px;
    display:flex;align-items:center;gap:16px;
}
.cab-bar-card.offline{border-color:rgba(234,79,61,.4);background:rgba(234,79,61,.05)}
.cab-bar-card.online{border-color:rgba(40,167,69,.4);background:rgba(40,167,69,.05)}
.cab-bar-icon{font-size:22px;color:var(--text-muted);flex-shrink:0}
.cab-bar-card.offline .cab-bar-icon{color:var(--red)}
.cab-bar-card.online .cab-bar-icon{color:var(--green)}
.cab-bar-label{font-size:12px;color:var(--text-muted);margin-bottom:3px}
.cab-bar-value{font-size:15px;font-weight:700;color:#fff}
.cab-bar-card.offline .cab-bar-value{color:var(--red)}
.cab-bar-card.online .cab-bar-value{color:var(--green)}

.cab-section-title{font-size:14px;font-weight:900;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;color:#fff}
.cab-section-title span{color:var(--orange3)}

.cab-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}
.cab-card{
    background:#1c1c1c;border:1px solid var(--border);
    border-radius:10px;padding:22px;overflow:hidden;
    position:relative;transition:border-color .2s;
}
.cab-card:hover{border-color:rgba(249,105,24,.4)}
.cab-card.green{background:linear-gradient(135deg,#0a2318,#122d20);border-color:rgba(40,167,69,.25)}
.cab-card.blue{background:linear-gradient(135deg,#0d1533,#152040);border-color:rgba(13,110,253,.25)}
.cab-card.danger{border-color:rgba(234,79,61,.3);background:rgba(234,79,61,.04)}
.cab-card-icon{font-size:22px;color:var(--text-muted);margin-bottom:10px}
.cab-card.green .cab-card-icon{color:var(--green)}
.cab-card.danger .cab-card-icon{color:var(--red)}
.cab-card-val{font-size:1.2rem;font-weight:800;margin-bottom:4px;color:#fff}
.cab-card.green .cab-card-val{color:var(--green)}
.cab-card-lbl{font-size:12px;color:var(--text-muted)}
.cab-card-bg-icon{position:absolute;right:-10px;bottom:-10px;font-size:72px;opacity:.05;pointer-events:none}

.cab-action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:32px}
.cab-action{
    background:#1c1c1c;border:1px solid var(--border);
    border-radius:10px;padding:18px 20px;cursor:pointer;transition:all .2s;
}
.cab-action:hover{border-color:rgba(249,105,24,.4)}
.cab-action.danger{border-color:rgba(234,79,61,.3)}
.cab-action.success{border-color:rgba(40,167,69,.3)}
.cab-action.warning{border-color:rgba(255,184,0,.3)}
.cab-card-icon{font-size:20px;color:var(--text-muted);margin-bottom:8px}
.cab-action-val{font-size:14px;font-weight:700;margin-bottom:3px;color:#fff;word-break:break-all}
.cab-action.danger .cab-action-val{color:var(--red)}
.cab-action.success .cab-action-val{color:var(--green)}
.cab-action.warning .cab-action-val{color:var(--orange3)}
.cab-action-lbl{font-size:12px;color:var(--text-muted)}

/* ========== NEWS PAGE ========== */
.news-page{min-height:calc(100vh - 80px);padding:60px;background:#131313;color:var(--text-dark)}
.news-page h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:900;text-transform:uppercase;margin-bottom:40px;color:#fff

/* ========== RESPONSIVE ========== */
@media(max-width:1024px){
    .news-grid,.money-grid,.cars-grid{grid-template-columns:repeat(2,1fr)}
    .launcher-section,.choose-section{flex-direction:column;padding:60px 24px}
    .hero-content{padding:40px 24px 60px}
    .news-section,.social-section{padding:60px 24px}
    .social-section{margin:0 24px 0}
    .site-footer{padding:32px 24px}
    .cabinet-page,.shop-page,.news-page{padding:32px 24px 60px}
    .cab-info-bar,.cab-grid,.cab-action-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
    .navbar-link{margin-right:18px;font-size:11px}
    .navbar__container{padding:0 1rem}
}
@media(max-width:640px){
    .news-grid,.money-grid,.cars-grid{grid-template-columns:1fr}
    .cab-info-bar,.cab-grid,.cab-action-grid{grid-template-columns:1fr}
    .forbes-podium-wrap{gap:8px}
    .hero h1{font-size:3rem}
}

/* ========== LOGIN PAGE ========== */
.login-page {
    min-height: calc(100vh - 80px);
    background: #111;
    display: flex;
    flex-direction: column;
}
.login-topbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 40px;
}
.login-back {
    display: flex; align-items: center; gap: 8px;
    color: var(--orange3); font-size: 14px; font-weight: 600;
    font-family: Montserrat, sans-serif;
    transition: opacity .2s;
}
.login-back svg { width: 18px; height: 18px; }
.login-back:hover { opacity: .8; }
.login-topbar-right {
    color: #888; font-size: 14px; font-family: Montserrat, sans-serif;
}
.login-topbar-right a { color: var(--orange3); font-weight: 600; }
.login-topbar-right a:hover { text-decoration: underline; }

.login-wrap {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 24px 60px;
}
.login-card {
    background: #1c1c1c;
    border: 1px solid #2e2e2e;
    border-radius: 16px;
    padding: 40px 36px;
    width: 100%;
    max-width: 380px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.login-title {
    font-size: 1.6rem;
    font-weight: 900;
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
    margin-bottom: 6px;
    font-family: Montserrat, sans-serif;
}
.login-error {
    display: flex; align-items: center; gap: 8px;
    background: rgba(234,79,61,.1);
    border: 1px solid rgba(234,79,61,.3);
    color: #fca5a5;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13px;
    font-family: Montserrat, sans-serif;
}
.login-field {
    position: relative;
}
.login-input {
    width: 100%;
    background: #2a2a2a;
    border: 1px solid #3a3a3a;
    color: #fff;
    padding: 14px 44px 14px 16px;
    border-radius: 10px;
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    outline: none;
    transition: border-color .2s;
    appearance: none;
    -webkit-appearance: none;
}
.login-input:focus { border-color: var(--orange3); }
.login-input::placeholder { color: #666; }
.login-select { cursor: pointer; color: #aaa; }
.login-select option { background: #2a2a2a; color: #fff; }
.login-field-icon {
    position: absolute;
    right: 14px; top: 50%;
    transform: translateY(-50%);
    color: #666; pointer-events: none;
    display: flex; align-items: center;
}
.login-eye { pointer-events: auto; cursor: pointer; }
.login-eye:hover { color: #aaa; }
.login-btn {
    width: 100%;
    background: linear-gradient(257.5deg, #f96918 -7.46%, #ffb800 74.36%);
    color: #fff;
    height: 52px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 800;
    font-family: Montserrat, sans-serif;
    letter-spacing: .5px;
    border: none;
    cursor: pointer;
    transition: .2s;
}
.login-btn:hover { filter: brightness(1.1); transform: translateY(-1px); }
.login-vk-btn {
    display: flex; align-items: center; justify-content: center; gap: 10px;
    background: #0077FF;
    color: #fff;
    height: 50px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 700;
    font-family: Montserrat, sans-serif;
    transition: .2s;
}
.login-vk-btn:hover { filter: brightness(1.1); }
.login-forgot {
    text-align: center;
    color: #888;
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    transition: color .2s;
}
.login-forgot:hover { color: #fff; }

/* ========== CABINET PAGE ========== */
.cab2-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 40px 24px 80px;
    background: #111;
    min-height: calc(100vh - 80px);
}

/* Profile header */
.cab2-profile-header {
    display: flex;
    align-items: center;
    gap: 16px;
    background: #fff;
    border-radius: 14px;
    padding: 20px 24px;
    margin-bottom: 32px;
}
.cab2-avatar {
    width: 56px; height: 56px;
    border-radius: 50%;
    background: #ddd;
    display: flex; align-items: center; justify-content: center;
    overflow: hidden; flex-shrink: 0;
}
.cab2-greeting { color: #888; font-size: 13px; font-family: Montserrat, sans-serif; }
.cab2-name {
    font-size: 1.1rem;
    color: #111;
    font-family: Montserrat, sans-serif;
}
.cab2-name strong { font-weight: 900; }

/* Section title */
.cab2-section-title {
    font-size: 1rem;
    color: #fff;
    font-family: Montserrat, sans-serif;
    font-weight: 400;
    letter-spacing: .5px;
    margin-bottom: 16px;
    margin-top: 32px;
}
.cab2-section-title strong { font-weight: 900; }

/* Stats */
.cab2-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
.cab2-stat-card {
    background: #fff;
    border-radius: 12px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.cab2-stat-icon {
    width: 40px; height: 40px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
.cab2-stat-icon--purple { background: rgba(168,85,247,.15); color: #a855f7; }
.cab2-stat-icon--red    { background: rgba(239,68,68,.1);   color: #ef4444; }
.cab2-stat-icon--green  { background: rgba(34,197,94,.1);   color: #22c55e; }
.cab2-stat-value { font-size: 1.1rem; font-weight: 800; color: #111; font-family: Montserrat, sans-serif; }
.cab2-stat-label { font-size: 12px; color: #888; font-family: Montserrat, sans-serif; }

/* Info table */
.cab2-info-table {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
}
.cab2-info-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-bottom: 1px solid #f0f0f0;
}
.cab2-info-row:last-child { border-bottom: none; }
.cab2-info-key  { color: #888; font-size: 14px; font-family: Montserrat, sans-serif; }
.cab2-info-val  { color: #111; font-size: 14px; font-family: Montserrat, sans-serif; font-weight: 500; text-align: right; }
.cab2-online    { color: #22c55e; font-weight: 700; }
.cab2-offline   { color: #ef4444; font-weight: 700; }
.cab2-red       { color: #ef4444; }
.cab2-green     { color: #22c55e; }
.cab2-orange    { color: var(--orange3); }
.cab2-action-link { font-size: 14px; font-weight: 600; font-family: Montserrat, sans-serif; }
.cab2-red-link  { color: var(--orange3); }
.cab2-topup-link {
    display: inline-block;
    margin-top: 8px;
    color: #111;
    font-size: 13px;
    font-weight: 700;
    font-family: Montserrat, sans-serif;
    text-decoration: underline;
}

/* Finance */
.cab2-finance-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}
.cab2-finance-card {
    background: #fff;
    border-radius: 12px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.cab2-finance-card--donate { justify-content: center; min-height: 180px; }
.cab2-finance-right { display: flex; flex-direction: column; gap: 16px; }
.cab2-finance-card--cash, .cab2-finance-card--bank { flex: 1; }
.cab2-finance-icon {
    width: 44px; height: 44px;
    border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
}
.cab2-finance-icon--dark   { background: #222; }
.cab2-finance-icon--green  { background: rgba(34,197,94,.12); color: #22c55e; }
.cab2-finance-icon--yellow { background: rgba(245,158,11,.12); color: #f59e0b; }
.cab2-finance-val   { font-size: 1.1rem; font-weight: 800; color: #111; font-family: Montserrat, sans-serif; }
.cab2-finance-label { font-size: 12px; color: #888; font-family: Montserrat, sans-serif; }

@media (max-width: 640px) {
    .cab2-stats-grid, .cab2-finance-grid { grid-template-columns: 1fr; }
    .login-card { padding: 28px 20px; }
    .login-topbar { padding: 14px 20px; }
}

/* ========== CABINET v3 (без карточек) ========== */
.cab3-page {
    max-width: 860px;
    margin: 0 auto;
    padding: 48px 32px 100px;
    min-height: calc(100vh - 80px);
    color: #fff;
    font-family: Montserrat, sans-serif;
    position: relative;
    z-index: 1;
}

/* Фоновое изображение на всю страницу кабинета */
.cab3-bg {
    position: fixed;
    inset: 0;
    z-index: 0;
    background: url('../images/img1.jpg') center center / cover no-repeat;
    filter: brightness(.35);
    pointer-events: none;
}

.cab3-header {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 40px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 14px;
    padding: 20px 24px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.cab3-avatar {
    width: 54px; height: 54px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
}
.cab3-greeting { font-size: 13px; color: rgba(255,255,255,.6); margin-bottom: 2px; }
.cab3-name { font-size: 1.15rem; color: #fff; }
.cab3-name strong { font-weight: 900; }
.cab3-logout {
    margin-left: auto;
    color: rgba(255,255,255,.6);
    font-size: 13px;
    font-weight: 600;
    border: 1px solid rgba(255,255,255,.25);
    padding: 8px 18px;
    border-radius: 8px;
    transition: all .2s;
    background: transparent;
}
.cab3-logout:hover { color: #ea4f3d; border-color: #ea4f3d; }

.cab3-section {
    font-size: 1rem;
    font-weight: 400;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 16px;
    margin-top: 8px;
}
.cab3-section span { color: var(--orange3); font-weight: 900; }

.cab3-divider {
    border: none;
    border-top: 1px solid rgba(255,255,255,.1);
    margin: 28px 0;
}

/* Блок — полупрозрачный с белой обводкой */
.cab3-block {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 14px;
    padding: 4px 20px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    margin-bottom: 8px;
}

/* Статистика в ряд */
.cab3-row-grid {
    display: flex;
    gap: 0;
    flex-wrap: wrap;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 14px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    overflow: hidden;
    margin-bottom: 8px;
}
.cab3-stat {
    flex: 1;
    padding: 24px 28px;
    border-right: 1px solid rgba(255,255,255,.1);
}
.cab3-stat:last-child { border-right: none; }
.cab3-stat-val { font-size: 1.1rem; font-weight: 800; color: #fff; margin-bottom: 4px; }
.cab3-stat-sub { font-size: 12px; color: rgba(255,255,255,.5); }

/* Список строк */
.cab3-list {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 14px;
    overflow: hidden;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.cab3-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 13px 20px;
    border-bottom: 1px solid rgba(255,255,255,.07);
    font-size: 14px;
}
.cab3-item:last-child { border-bottom: none; }
.cab3-item > span:first-child { color: rgba(255,255,255,.5); }
.cab3-item > span:last-child  { color: #fff; font-weight: 500; text-align: right; }

/* Цвета */
.c-green  { color: #22c55e !important; font-weight: 700; }
.c-red    { color: #ea4f3d !important; font-weight: 700; }
.c-orange { color: var(--orange3) !important; font-weight: 600; }

@media (max-width: 640px) {
    .cab3-page { padding: 32px 16px 80px; }
    .cab3-row-grid { flex-direction: column; }
    .cab3-stat { border-right: none; border-bottom: 1px solid rgba(255,255,255,.1); }
    .cab3-stat:last-child { border-bottom: none; }
}

/* ========== MODAL WINDOWS ========== */
.cab-modal-overlay {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: rgba(0,0,0,.7);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    align-items: center;
    justify-content: center;
    padding: 20px;
}
.cab-modal-overlay.active {
    display: flex;
}
.cab-modal {
    background: #1c1c1c;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 16px;
    width: 100%;
    max-width: 440px;
    box-shadow: 0 24px 64px rgba(0,0,0,.6);
    overflow: hidden;
}
.cab-modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 24px 16px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}
.cab-modal-header h3 {
    font-size: 1rem;
    font-weight: 800;
    color: #fff;
    font-family: Montserrat, sans-serif;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin: 0;
}
.cab-modal-close {
    background: none;
    border: none;
    color: #888;
    font-size: 22px;
    cursor: pointer;
    line-height: 1;
    transition: color .2s;
    padding: 0;
}
.cab-modal-close:hover { color: #fff; }

.cab-modal-body {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}
.cab-modal-text {
    color: rgba(255,255,255,.7);
    font-size: 14px;
    font-family: Montserrat, sans-serif;
    line-height: 1.5;
    margin: 0;
}
.cab-modal-text strong { color: #fff; }

.cab-modal-field { display: flex; flex-direction: column; gap: 6px; }
.cab-modal-field label {
    font-size: 12px;
    font-weight: 700;
    color: rgba(255,255,255,.5);
    text-transform: uppercase;
    letter-spacing: .5px;
    font-family: Montserrat, sans-serif;
}
.cab-modal-field input {
    background: #262626;
    border: 1px solid rgba(255,255,255,.12);
    color: #fff;
    padding: 12px 14px;
    border-radius: 8px;
    font-size: 15px;
    font-family: Montserrat, sans-serif;
    outline: none;
    transition: border-color .2s;
}
.cab-modal-field input:focus { border-color: var(--orange3); }
.cab-modal-field input::placeholder { color: #555; }

.cab-modal-btn {
    width: 100%;
    background: linear-gradient(257.5deg, #f96918 -7.46%, #ffb800 74.36%);
    color: #fff;
    height: 48px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 800;
    font-family: Montserrat, sans-serif;
    letter-spacing: .5px;
    text-transform: uppercase;
    border: none;
    cursor: pointer;
    transition: .2s;
    margin-top: 4px;
}
.cab-modal-btn:hover { filter: brightness(1.1); transform: translateY(-1px); }
.cab-modal-btn--danger {
    background: linear-gradient(135deg, #ea4f3d, #c0392b);
    box-shadow: 0 4px 16px rgba(234,79,61,.3);
}

.cab-modal-alert {
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 13px;
    font-family: Montserrat, sans-serif;
}
.cab-modal-alert--error {
    background: rgba(234,79,61,.12);
    border: 1px solid rgba(234,79,61,.3);
    color: #fca5a5;
}
.cab-modal-alert--success {
    background: rgba(34,197,94,.1);
    border: 1px solid rgba(34,197,94,.3);
    color: #86efac;
}

/* Кнопка-ссылка в строке настроек */
.cab3-btn-link {
    background: none;
    border: none;
    cursor: pointer;
    font-family: Montserrat, sans-serif;
    font-size: 14px;
    font-weight: 600;
    padding: 0;
    text-align: right;
}

/* ========== LEGAL PAGES ========== */
.legal-page {
    max-width: 900px;
    margin: 0 auto;
    padding: 48px 24px 80px;
}
.legal-header {
    margin-bottom: 32px;
    padding-bottom: 20px;
    border-bottom: 1px solid #222;
}
.legal-header h1 {
    font-size: 1.6rem;
    font-weight: 900;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin: 0;
    font-family: Montserrat, sans-serif;
}
.legal-body h2 {
    font-size: 1.1rem;
    font-weight: 800;
    color: #ffb800;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin: 32px 0 16px;
    font-family: Montserrat, sans-serif;
}
.legal-body p {
    color: #aaa;
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 14px;
    font-family: Montserrat, sans-serif;
}
.legal-body p span {
    color: #fff;
    font-weight: 700;
}
.legal-body strong {
    color: #fff;
    font-weight: 700;
}
@media(max-width:640px){
    .legal-page{padding:32px 16px 60px}
    .legal-header h1{font-size:1.3rem}
    .legal-body h2{font-size:1rem}
    .legal-body p{font-size:13px}
}
