*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}
body{
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    color:#fff;line-height:1.6;-webkit-font-smoothing:antialiased;
    min-height:100vh;min-height:100dvh;background:#2a2a2e;text-align:center;
    overflow-x:hidden;position:relative;
    font-size:17.6px;
    scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;
    transition:background .8s cubic-bezier(.4,0,.2,1),color .8s cubic-bezier(.4,0,.2,1);
}
button, a, .btn, .nav-link, .lang-toggle, .theme-toggle, .contact-toggle, .scroll-top-btn, .toast, .floating-cubosaur, #minigame-canvas {
    -webkit-tap-highlight-color: transparent;
    touch-action: manipulation;
}

/* Заголовки */
.logo-text,.section-title,.faq-question,.changelog-version,.install-step h4,.page-404 h2,.page-404 .code{
    font-family:'DM Sans',system-ui,-apple-system,sans-serif;
}

/* ===== СВЕТЛАЯ ТЕМА ===== */
body.light{
    background:#f2f2f5;color:#1a1a1a;
    scrollbar-color:rgba(0,0,0,.15) transparent;
}
body.light .gradient-bg{
    background:radial-gradient(ellipse at 50% 30%,#d8d8e0 0%,#dddde4 25%,#e2e2e8 50%,#e8e8ec 70%,#eeeef2 85%,#f2f2f5 100%);
}
body.light .gradient-bg::after{
    background:radial-gradient(600px circle at 25% 35%,rgba(0,0,0,.05) 0%,rgba(0,0,0,.025) 30%,rgba(0,0,0,.008) 60%,transparent 100%),
               radial-gradient(600px circle at 75% 65%,rgba(0,0,0,.035) 0%,rgba(0,0,0,.018) 30%,rgba(0,0,0,.006) 60%,transparent 100%);
}
body.light .grid-overlay{
    background-image:linear-gradient(rgba(0,0,0,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.05) 1px,transparent 1px);
    opacity:.25;
}
body.light .particle-dot{background:#000}
body.light .loader-spin{border-color:rgba(0,0,0,.1);border-top-color:#1a1a1a}
body.light .logo-text{color:#1a1a1a}
body.light .logo-text span{color:#777}
body.light .logo-icon-fallback{background:rgba(0,0,0,.05);color:#1a1a1a;border:1px solid rgba(0,0,0,.12)}
body.light .tagline,.light .description-text,.light .faq-answer,.light .changelog-changes li,.light .install-step p{color:#555}
body.light .section-label{color:#888}
body.light .section-title,.light .faq-question,.light .changelog-version,.light .install-step h4{color:#1a1a1a}
body.light .feature-list li{color:#444}
body.light .changelog-date{color:#999}
body.light .changelog-changes li::before{color:#aaa}
body.light .changelog-category{color:#999}
body.light .install-step-icon{background:rgba(0,0,0,.05);color:#1a1a1a}
body.light .toast{background:#f0f0f3;color:#1a1a1a;box-shadow:0 8px 30px rgba(0,0,0,.15)}
body.light .btn{background:rgba(0,0,0,.05);color:#555}
body.light .btn:hover{background:rgba(0,0,0,.1);color:#1a1a1a;box-shadow:0 4px 16px rgba(0,0,0,.08)}
body.light .btn-primary{background:#1a1a1a;color:#fff;box-shadow:0 4px 26px rgba(0,0,0,.2)}
body.light .btn-primary:hover{background:#333;box-shadow:0 8px 38px rgba(0,0,0,.3)}
body.light .btn-support{color:#888}
body.light .btn-support:hover{color:#555}
body.light .agreement-text,.light .agreement-text a{color:#999}
body.light .agreement-text a:hover{color:#555}
body.light .download-warning{color:#7a6a30}
body.light .section-icon{background:rgba(0,0,0,.05);color:#888}
body.light .divider{background:rgba(0,0,0,.08)}
body.light footer,.light footer a{color:#999}
body.light footer a:hover{color:#1a1a1a}
body.light footer .disclaimer{color:#aaa}
body.light .faq-question::after,.light .feature-list li::before{color:#aaa}
body.light .scroll-top-btn{background:rgba(0,0,0,.06);color:#666}
body.light .scroll-top-btn:hover{background:rgba(0,0,0,.12);color:#1a1a1a}
body.light .page-404 h2{color:#1a1a1a}
body.light .page-404 p{color:#888}

/* Светлая тема — верхняя панель */
body.light .top-bar .lang-toggle{background:rgba(0,0,0,.06);color:#666}
body.light .top-bar .lang-toggle:hover{background:rgba(0,0,0,.12);color:#1a1a1a}
body.light .top-bar .theme-toggle{background:rgba(0,0,0,.06);color:#666}
body.light .top-bar .theme-toggle:hover{background:rgba(0,0,0,.12);color:#1a1a1a}
body.light .contact-panel{background:rgba(240,240,243,.95);border:1px solid rgba(0,0,0,.08)}
body.light .contact-label{color:#888}
body.light .contact-value{color:#555}
body.light .contact-value:hover{color:#1a1a1a;background:rgba(0,0,0,.05)}
body.light .contact-toggle{
    background:rgba(0,0,0,.06);color:#666;
}
body.light .contact-toggle:hover{
    background:rgba(0,0,0,.12);color:#1a1a1a;
}

/* Плавные переходы */
.gradient-bg,.gradient-bg::after,.grid-overlay,.particle-dot,
.logo-text,.logo-text span,.logo-icon-fallback,.tagline,
.btn,.btn-primary,.btn-support,.agreement-text,.agreement-text a,.download-warning,
.section-label,.section-title,.section-icon,.description-text,
.feature-list li,.feature-list li::before,.faq-question,.faq-question::after,
.faq-answer,.changelog-version,.changelog-date,.changelog-changes li,.changelog-changes li::before,
.divider,.loader-spin,footer,footer a,footer .disclaimer,
.scroll-top-btn,.contact-toggle,.top-bar .lang-toggle,.top-bar .theme-toggle,
.install-step h4,.install-step p,.install-step-icon,.toast,
.contact-panel,.contact-label,.contact-value{
    transition:color .8s cubic-bezier(.4,0,.2,1),background .8s cubic-bezier(.4,0,.2,1),border-color .8s cubic-bezier(.4,0,.2,1),box-shadow .8s cubic-bezier(.4,0,.2,1);
}

/* Скроллбар */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(255,255,255,.12);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.25)}

/* Фон */
.gradient-bg,.grid-overlay,#particles-canvas,.particles-css{position:fixed;inset:0;z-index:0;pointer-events:none}
.gradient-bg{
    background:radial-gradient(ellipse at 50% 30%,#3a3a40 0%,#333338 25%,#2d2d32 50%,#2a2a2e 70%,#25252a 85%,#222226 100%);
}
.gradient-bg::after{
    content:'';position:absolute;inset:0;
    background:radial-gradient(600px circle at 25% 35%,rgba(255,255,255,.07) 0%,rgba(255,255,255,.04) 30%,rgba(255,255,255,.01) 60%,transparent 100%),
               radial-gradient(600px circle at 75% 65%,rgba(255,255,255,.05) 0%,rgba(255,255,255,.03) 30%,rgba(255,255,255,.01) 60%,transparent 100%);
    animation:floatGlow 10s ease-in-out infinite;
}
@keyframes floatGlow{0%,100%{opacity:.4}50%{opacity:1}}
.grid-overlay{
    opacity:.2;
    background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
    background-size:66px 66px;
}

/* CSS-частицы */
.particles-css{display:none}
.particle-dot{position:absolute;border-radius:50%;background:#fff;opacity:0;animation:floatUp var(--dur,8s) var(--delay,0s) infinite ease-in}
@keyframes floatUp{0%{opacity:0;transform:translateY(0) translateX(0)}10%{opacity:var(--op,.15)}90%{opacity:var(--op,.15)}100%{opacity:0;transform:translateY(-100vh) translateX(var(--drift,20px))}}

/* Тост */
.toast-container{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:200;pointer-events:none}
.toast{
    background:rgba(255,255,255,.95);color:#1a1a1a;
    padding:14px 24px;border-radius:50px;
    font-size:14px;font-weight:500;
    box-shadow:0 8px 30px rgba(0,0,0,.4);
    cursor:pointer;pointer-events:none;
    opacity:0;transform:translateY(20px);
    transition:opacity .35s cubic-bezier(.4,0,.2,1), transform .35s cubic-bezier(.4,0,.2,1), background-color .35s cubic-bezier(.4,0,.2,1);
    white-space:nowrap;max-width:calc(100vw - 32px);overflow:hidden;text-overflow:ellipsis;
}
.toast.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.toast:hover{background:#fff}

/* Верхняя панель */
.top-bar{
    position:fixed;top:20px;right:20px;z-index:100;
    display:flex;align-items:center;gap:8px;
}
/* Кнопка "Связь" — слева */
.contact-toggle{
    position:fixed;top:20px;left:20px;z-index:100;
    height:44px;padding:0 16px;border-radius:50px;
    background:rgba(255,255,255,.06);color:#999;
    border:none;cursor:pointer;font-size:13px;font-weight:600;
    display:flex;align-items:center;gap:6px;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.top-nav{
    position:fixed;top:20px;left:28px;z-index:100;
    display:flex;align-items:center;gap:20px;
}
.nav-brand-wrapper{
    position:relative;
    display:inline-flex;
    align-items:center;
    height:44px;
}
.nav-link{
    height:44px;
    color:#999;text-decoration:none;
    display:flex;align-items:center;
    font-size:14px;font-weight:500;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    transition:color .8s cubic-bezier(.4,0,.2,1);
}
.nav-link:hover{color:#fff}
.nav-link.active{color:#fff;text-shadow:0 0 10px rgba(255,255,255,.3)}
.nav-link.home-link{height:44px;display:flex;align-items:center;font-family:'DM Sans',system-ui,-apple-system,sans-serif;font-weight:800;font-size:17px;color:#ddd;letter-spacing:-0.5px;transition:color .4s ease, transform .4s cubic-bezier(.4,0,.2,1);}
.nav-link.home-link:hover, .nav-link.home-link.active{color:#fff;transform:scale(1.03);}
.site-version{
    position:absolute;
    top:31px;left:0;
    font-size:9.5px;line-height:1;color:#777;font-weight:500;
    letter-spacing:-0.2px;white-space:nowrap;user-select:none;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    transition:color .4s ease;pointer-events:none;
}
body.light .site-version{color:#888}
.contact-toggle:hover{background:rgba(255,255,255,.12);color:#fff}
.lang-toggle{
    height:44px;padding:0 16px;border-radius:50px;
    background:rgba(255,255,255,.06);color:#999;
    border:none;cursor:pointer;font-size:13px;font-weight:600;
    display:flex;align-items:center;gap:6px;
    font-family:'Inter',system-ui,-apple-system,sans-serif;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.lang-toggle:hover{background:rgba(255,255,255,.12);color:#fff}
.theme-toggle{
    width:44px;height:44px;border-radius:50%;
    background:rgba(255,255,255,.06);color:#999;
    border:none;cursor:pointer;font-size:20px;
    display:flex;align-items:center;justify-content:center;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.theme-toggle:hover{background:rgba(255,255,255,.12);color:#fff}

/* Панель контактов — слева */
.contact-panel{
    position:fixed;top:72px;left:20px;z-index:99;
    background:rgba(40,40,46,.95);
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;padding:20px 24px;
    display:grid;grid-template-columns:1fr 1fr 1fr;
    gap:16px 24px;
    opacity:0;transform:translateY(-10px);
    pointer-events:none;
    transition:opacity .3s cubic-bezier(.4,0,.2,1), transform .3s cubic-bezier(.4,0,.2,1);
    backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
    box-shadow:0 12px 40px rgba(0,0,0,.3);
}
.contact-panel.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.contact-item{text-align:left;white-space:nowrap}
.contact-label{font-size:11px;font-weight:600;color:#888;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}
.contact-value{
    font-size:13px;color:#ccc;text-decoration:none;
    display:inline-block;padding:2px 6px;margin:-2px -6px;border-radius:6px;
    cursor:pointer;transition:color .2s ease, background-color .2s ease;
}
.contact-value:hover{color:#fff;background:rgba(255,255,255,.06)}

/* Кнопка наверх */
.scroll-top-btn{
    position:fixed;bottom:30px;right:30px;z-index:100;
    width:44px;height:44px;border-radius:50%;
    background:rgba(255,255,255,.06);color:#999;
    border:none;cursor:pointer;font-size:20px;
    display:flex;align-items:center;justify-content:center;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    opacity:0;transform:translateY(20px);pointer-events:none;
    transition:opacity .3s ease, transform .3s ease, background-color .3s ease, color .3s ease;
}
.scroll-top-btn.visible{opacity:1;transform:translateY(0);pointer-events:auto}
.scroll-top-btn:hover{background:rgba(255,255,255,.12);color:#fff}

/* Контейнер */
.container{position:relative;z-index:1;max-width:770px;margin:0 auto;padding:0 28px;transition:opacity .3s ease}
header{padding:110px 0 62px}
.logo{display:flex;flex-direction:column;align-items:center;gap:28px;margin-bottom:24px}
.logo-icon-wrapper{position:relative;width:110px;height:110px;margin:0 auto;filter:drop-shadow(0 16px 40px rgba(255,255,255,.12))}
body.light .logo-icon-wrapper{filter:drop-shadow(0 16px 40px rgba(0,0,0,.08))}
.logo-icon-fallback,.logo-icon{position:absolute;inset:0;width:110px;height:110px;border-radius:28px}
.logo-icon-fallback{background:rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center;font-size:52px;font-weight:700;color:#fff;z-index:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.logo-icon{z-index:1;object-fit:contain}
.logo-text{font-size:52px;font-weight:800;letter-spacing:-1.5px;color:#fff}
.logo-text span{color:#666;font-weight:700}
.tagline{color:#aaa;font-size:18.7px;margin:0 auto;max-width:440px}

/* Кнопки */
.actions{display:flex;flex-direction:column;align-items:center;gap:18px;margin-top:40px}
.actions-row{display:flex;flex-wrap:wrap;gap:11px;justify-content:center}
.download-wrapper{display:flex;flex-direction:column;align-items:center;width:100%}
.download-count{font-size:13px;color:#888;margin-top:6px;display:flex;align-items:center;gap:6px;justify-content:center}
.download-count span{color:#aaa;font-weight:600}
.btn{
    display:inline-flex;align-items:center;justify-content:center;gap:9px;
    padding:15.4px 31px;border-radius:50px;font-size:16.5px;font-weight:600;
    text-decoration:none;transition:color .8s cubic-bezier(.4,0,.2,1),background .8s cubic-bezier(.4,0,.2,1),box-shadow .8s cubic-bezier(.4,0,.2,1),transform .8s cubic-bezier(.4,0,.2,1);cursor:pointer;border:none;font-family:inherit;
    background:rgba(255,255,255,.04);color:#ccc;
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
}
.btn:hover{background:rgba(255,255,255,.1);color:#fff;transform:translateY(-2px);box-shadow:0 4px 16px rgba(255,255,255,.06)}
.btn-primary{background:#fff;color:#1a1a1a;box-shadow:0 4px 26px rgba(255,255,255,.2);padding:17.6px 44px;font-size:17.6px;white-space:nowrap}
.btn-primary:hover{background:#f0f0f0;color:#1a1a1a;box-shadow:0 8px 38px rgba(255,255,255,.35);transform:translateY(-3px)}
.btn-support{color:#888;font-size:14.3px;padding:11px 24px}
.btn-support:hover{color:#aaa;transform:translateY(-1px)}
.agreement-text{color:#666;font-size:12.1px;margin-top:8px;line-height:1.4;max-width:340px;text-wrap:balance}
.agreement-text a{color:#888;text-decoration:none}
.agreement-text a:hover{color:#bbb}
.download-warning{
    color:#b0a080;font-size:14.3px;line-height:1.6;text-align:center;max-width:440px;
    max-height:0;overflow:hidden;opacity:0;margin-top:0;
    transition:max-height .5s cubic-bezier(.4,0,.2,1), opacity .5s cubic-bezier(.4,0,.2,1), margin-top .5s cubic-bezier(.4,0,.2,1);
}
.download-warning.visible{max-height:200px;opacity:1;margin-top:14px}

/* Секции */
section{margin-bottom:80px}
.section-label{font-size:12.1px;font-weight:600;text-transform:uppercase;letter-spacing:3px;color:#555;margin-bottom:18px}
.section-title{font-size:31px;font-weight:700;margin-bottom:31px;color:#fff;letter-spacing:-.5px}
.section-icon{display:inline-block;width:44px;height:44px;margin-bottom:18px;background:rgba(255,255,255,.06);border-radius:13px;line-height:44px;font-size:20px;font-weight:300;color:#999}
.description-text{color:#aaa;font-size:17.6px;margin:0 auto 31px;line-height:1.8;max-width:530px}
.feature-list{list-style:none;display:grid;gap:0;max-width:485px;margin:0 auto;text-align:left}
.feature-list li{display:flex;align-items:flex-start;gap:16px;font-size:16.5px;color:#ccc;padding:15.4px 0}
.feature-list li::before{content:"→";display:flex;align-items:center;justify-content:center;min-width:22px;height:22px;color:#555;font-weight:300;font-size:15.4px;flex-shrink:0;margin-top:1px}
.faq-list,.changelog-list{display:grid;gap:0;max-width:530px;margin:0 auto;text-align:left}
.changelog-list{gap:72px}.faq-item{padding:22px 0}

/* Инструкция */
.install-steps{display:grid;gap:28px;max-width:530px;margin:0 auto;text-align:left}
.install-step{display:flex;gap:18px;align-items:flex-start}
.install-step-icon{
    width:48px;height:48px;border-radius:14px;
    background:rgba(255,255,255,.06);color:#fff;
    display:flex;align-items:center;justify-content:center;
    font-size:22px;flex-shrink:0;
}
.install-step h4{font-size:18px;font-weight:600;color:#fff;margin-bottom:4px}
.install-step p{font-size:15px;color:#aaa;line-height:1.6}

/* FAQ */
.faq-answer{color:#aaa;font-size:16.5px;margin-top:0;line-height:1.8;max-height:0;overflow:hidden;opacity:0;transition:max-height .4s cubic-bezier(.4,0,.2,1), opacity .4s cubic-bezier(.4,0,.2,1), margin-top .4s cubic-bezier(.4,0,.2,1)}
.faq-item.open .faq-answer{max-height:500px;opacity:1;margin-top:13px}
.faq-question{font-weight:600;font-size:18.7px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;user-select:none;gap:18px;color:#fff}
.faq-question:hover{color:#ccc}
.faq-question::after{content:"+";font-size:22px;color:#555;flex-shrink:0;transition:transform .35s ease, color .35s ease;font-weight:300}
.faq-item.open .faq-question::after{content:"−";transform:rotate(180deg);color:#fff}

/* Чейнджлог */
.changelog-header{margin-bottom:11px;display:flex;align-items:baseline;gap:13px}
.changelog-version{font-weight:700;font-size:18.7px;color:#fff}
.current-badge{display:inline-block;background:rgba(255,255,255,.1);color:#aaa;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:500;letter-spacing:.5px}
body.light .current-badge{background:rgba(0,0,0,.06);color:#888}
body.light .contact-toggle{background:rgba(0,0,0,.04);color:#888}
body.light .nav-link{color:#888}
body.light .nav-link:hover{color:#1a1a1a}
body.light .nav-link.active{color:#1a1a1a;text-shadow:none;font-weight:600}
body.light .nav-link.home-link{color:#111}
.changelog-date{font-size:14.3px;color:#555}
.changelog-category{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:1px;margin:14px 0 6px;transition:color .8s cubic-bezier(.4,0,.2,1)}
.changelog-entry .changelog-category:first-of-type{margin-top:4px}
.changelog-changes{list-style:none;display:grid;gap:9px}
.changelog-changes li{font-size:16.5px;color:#aaa;padding-left:24px;position:relative;line-height:1.7}
.changelog-changes li::before{content:"—";position:absolute;left:0;color:#444}
.divider{width:44px;height:2px;background:rgba(255,255,255,.06);border-radius:1px;margin:0 auto 62px}
.loader{padding:53px;color:#aaa}
.loader-spin{display:inline-block;width:26px;height:26px;border:2px solid rgba(255,255,255,.1);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* 404 */
.page-404{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center;padding:40px 20px}
.page-404 .code{font-size:120px;font-weight:800;letter-spacing:-4px;color:rgba(255,255,255,.1);line-height:1}
body.light .page-404 .code{color:rgba(0,0,0,.08)}
.page-404 h2{font-size:28px;margin:16px 0 8px;color:#fff}
.page-404 p{color:#888;margin-bottom:24px}

/* Подвал */
footer{padding:80px 0 48px;color:#555;font-size:14.3px;line-height:2}
footer a{color:#777;text-decoration:none;font-weight:500}
footer a:hover{color:#fff}
footer .disclaimer{color:#444;font-size:13.2px}

/* ===== АДАПТИВ ===== */
@media (max-width: 400px) {
    .nav-link{font-size:10px;padding:0 6px}
    .top-bar{gap:4px}
}
@media(max-width:600px){
    body{font-size:16px}
    .container{max-width:100%;padding:0 20px}
    header{padding:72px 0 44px}
    .logo{gap:18px;margin-bottom:18px}
    .logo-icon,.logo-icon-fallback,.logo-icon-wrapper{width:72px;height:72px;border-radius:22px}
    .logo-icon-fallback{font-size:34px}
    .logo-text{font-size:34px}
    .tagline{font-size:15px;max-width:300px}
    .actions{margin-top:32px;gap:14px}
    .actions-row{gap:8px}
    .btn{padding:13px 24px;font-size:15px}
    .btn-primary{padding:16px 36px;font-size:17px}
    .btn-support{font-size:13px;padding:10px 20px}
    .agreement-text{max-width:280px;font-size:11px;margin-top:6px}
    .download-warning{max-width:300px;font-size:12px;line-height:1.5}
    .download-warning.visible{max-height:200px}
    section{margin-bottom:56px;content-visibility:auto;contain-intrinsic-size:1px 300px}
    .section-title{font-size:26px;margin-bottom:24px}
    .section-label{margin-bottom:14px}
    .section-icon{width:38px;height:38px;margin-bottom:14px;font-size:18px;line-height:38px}
    .description-text{font-size:15px;max-width:100%;margin-bottom:24px}
    .feature-list,.faq-list,.changelog-list{max-width:100%}
    .feature-list li{font-size:14px;padding:12px 0;gap:12px}
    .feature-list li::before{min-width:20px;height:20px;font-size:13px}
    .faq-item{padding:18px 0}
    .faq-question{font-size:16px;gap:12px}
    .faq-question::after{font-size:20px}
    .faq-answer{font-size:14px}
    .faq-item.open .faq-answer{margin-top:10px}
    .changelog-list{gap:24px}
    .changelog-version{font-size:16px}
    .changelog-date{font-size:12px}
    .changelog-changes li{font-size:14px}
    .install-steps{gap:20px}
    .install-step h4{font-size:16px}
    .install-step p{font-size:13px}
    .install-step-icon{width:40px;height:40px;font-size:18px}
    .divider{margin-bottom:48px}
    footer{padding:56px 0 36px;font-size:13px}
    footer .disclaimer{font-size:11px}
    .top-bar{top:calc(14px + env(safe-area-inset-top, 0px));right:14px;gap:6px}
    .contact-toggle{height:38px;padding:0 12px;font-size:12px}
    .top-nav{top:calc(12px + env(safe-area-inset-top, 0px));left:18px;gap:12px;max-width:calc(100vw - 115px);overflow-x:auto;white-space:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}
    .top-nav::-webkit-scrollbar{display:none}
    .nav-link{font-size:12px;height:38px}
    .lang-toggle{height:38px;padding:0 12px;font-size:11px}
    .theme-toggle{width:38px;height:38px;font-size:18px}
    .scroll-top-btn{bottom:calc(20px + env(safe-area-inset-bottom, 0px));right:20px;width:38px;height:38px;font-size:18px}
    .page-404 .code{font-size:80px}
    .toast{font-size:13px;padding:12px 20px}
    .toast-container{bottom:calc(20px + env(safe-area-inset-bottom, 0px))}
    .contact-panel{top:58px;right:8px;left:8px;grid-template-columns:1fr 1fr;gap:12px 16px;padding:16px;border-radius:14px}
    .contact-value{font-size:12px}
}
@media(max-width:380px){
    header{padding:60px 0 36px}
    .logo-icon,.logo-icon-fallback,.logo-icon-wrapper{width:64px;height:64px;border-radius:18px}
    .logo-icon-fallback{font-size:30px}
    .logo-text{font-size:30px}
    .tagline{font-size:14px;max-width:260px}
    .btn{padding:11px 20px;font-size:14px}
    .btn-primary{padding:14px 30px;font-size:16px}
    .actions-row{gap:6px}
    .agreement-text{max-width:240px;font-size:10px}
    .download-warning{max-width:260px;font-size:11px}
    .section-title{font-size:24px}
    section{margin-bottom:44px}
    .faq-question{font-size:15px}
    .contact-panel{grid-template-columns:1fr 1fr;gap:8px 12px;padding:12px}
    .contact-label{font-size:10px}
    .contact-value{font-size:11px}
}
@media(hover:none) and (pointer:coarse){
    .btn{min-height:48px;padding-left:28px;padding-right:28px}
    .btn-primary{min-height:52px;padding-left:36px;padding-right:36px}
    .faq-question{min-height:48px}
    footer a{padding:4px 0;display:inline-block}
    .gradient-bg::before{display:none!important}
    #particles-canvas{display:none}
    .particles-css{display:block}
    .floating-cubosaur::after{top:-22px;left:-22px;right:-22px;bottom:-22px}
    .btn:active, .btn-primary:active, .lang-toggle:active, .theme-toggle:active, .scroll-top-btn:active, .contact-toggle:active {
        transform: scale(0.96);
        opacity: 0.85;
    }
}



/* Плавающий кубозаврик на фоне */
.floating-cubosaur {
    position: fixed;
    width: 9px;
    height: 9px;
    background: rgba(255, 255, 255, 0.6);
    box-shadow: 0 0 8px rgba(255,255,255,0.6), 0 0 15px rgba(255,255,255,0.3);
    cursor: pointer;
    z-index: 100;
    pointer-events: auto;
    will-change: transform, left, top, opacity;
    transition: scale 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), background 0.3s;
}
.floating-cubosaur::after {
    content: '';
    position: absolute;
    top: -12px; left: -12px; right: -12px; bottom: -12px;
}
.floating-cubosaur:hover {
    scale: 1.5;
    background: rgba(255, 255, 255, 0.9);
}
.floating-cubosaur.is-flying, .floating-cubosaur.is-flying:hover {
    transition: none !important;
    scale: 1 !important;
    pointer-events: none !important;
    animation: none !important;
}

.global-minigame-wrapper {
    position: relative;
    z-index: 100;
    width: 100%;
    background: transparent;
    padding-bottom: 40px;
    will-change: max-height, opacity;
}
#minigame-canvas {
    touch-action: none;
}



/* Стили для страницы соглашения */
.tos-container { max-width: 1000px !important; }
.tos-content { max-width: 900px; margin: 0 auto; font-size: 1.05rem; line-height: 1.7; color: #ccc; }
.tos-content a { color: #fff; text-decoration: underline; text-decoration-color: rgba(255,255,255,0.3); text-underline-offset: 4px; transition: text-decoration-color 0.2s; }
.tos-content a:hover { text-decoration-color: #fff; }
body.light .tos-content a { color: #000; text-decoration-color: rgba(0,0,0,0.3); }
body.light .tos-content a:hover { text-decoration-color: #000; }
body.light .tos-content { color: #444; }
body.light .tos-content h2 { color: #111 !important; }

/* Карточки для страницы О проекте */
.info-card {
    padding: 12px 0;
    background: transparent;
    border: none;
    margin-bottom: 24px;
}
.info-card h3 {
    font-size: 1.15rem;
    color: #fff;
    margin-bottom: 8px;
    font-weight: 700;
}
.info-card p {
    font-size: 1rem;
    color: #aaa;
    margin: 0;
    line-height: 1.6;
}
.stat-card {
    padding: 20px 16px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 16px;
    text-align: center;
    transition: transform 0.3s ease, border-color 0.3s ease;
}
.stat-card:hover {
    transform: translateY(-3px);
    border-color: rgba(255,255,255,0.15);
}
.stat-value {
    font-size: 1.8rem;
    font-weight: 800;
    color: #fff;
    font-family: 'DM Sans', sans-serif;
}
.stat-label {
    font-size: 0.85rem;
    color: #888;
    margin-top: 4px;
}
.about-quote {
    margin: 32px auto;
    padding: 18px 24px;
    background: rgba(255,255,255,0.02);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 14px;
    font-style: normal;
    color: #ccc;
    line-height: 1.6;
}
.warning-card {
    padding: 24px;
    background: rgba(255, 200, 0, 0.04);
    border: 1px solid rgba(255, 200, 0, 0.2);
    border-radius: 16px;
    margin-top: 40px;
    margin-bottom: 20px;
    text-align: left;
}
.warning-card h4 {
    font-size: 1.1rem;
    color: #ffcc00;
    margin-bottom: 10px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}
.warning-card p {
    font-size: 0.95rem;
    color: #aaa;
    margin: 0;
    line-height: 1.6;
}
.warning-card p + p {
    margin-top: 8px;
}

/* Светлая тема для карточек О проекте */
body.light .info-card {
    background: transparent;
    border: none;
}
body.light .stat-card {
    background: rgba(0,0,0,0.03);
    border-color: rgba(0,0,0,0.08);
}
body.light .info-card h3, body.light .stat-value {
    color: #1a1a1a;
}
body.light .info-card p, body.light .stat-label {
    color: #555;
}
body.light .about-quote {
    background: rgba(0,0,0,0.02);
    border-left-color: #1a1a1a;
    color: #444;
}
body.light .warning-card {
    background: rgba(230, 160, 0, 0.08);
    border-color: rgba(210, 140, 0, 0.3);
}
body.light .warning-card h4 {
    color: #c98a00;
}
body.light .warning-card p {
    color: #444;
}