/* ==============================
   GLOBAL
============================== */

:root{
    --primary:#6c3cff;
    --secondary:#00b9d8;
    --blue:#1677e8;
    --green:#10b981;
    --yellow:#ffc928;
    --orange:#ff8a18;
    --pink:#ec297b;

    --dark:#17233a;
    --text:#506078;
    --light:#f7f9fc;
    --white:#ffffff;
    --border:#e7ebf1;
}

*{
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
    scroll-padding-top:85px;
}

body{
    margin:0;
    font-family:"Poppins",Arial,Helvetica,sans-serif;
    background:
        radial-gradient(
            circle at 10% 10%,
            rgba(108,60,255,.05),
            transparent 25%
        ),
        radial-gradient(
            circle at 90% 30%,
            rgba(0,185,216,.05),
            transparent 25%
        ),
        #f6f8fc;

    color:var(--dark);
    line-height:1.75;
}

a{
    text-decoration:none;
    color:inherit;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

button{
    font-family:inherit;
}


/* ==============================
   MAIN WEBSITE
============================== */

.site-wrapper{
    width:100%;
    max-width:760px;
    min-height:100vh;
    margin:0 auto;
    background:var(--white);
    box-shadow:
        0 0 50px rgba(25,40,75,.06);
}


/* ==============================
   HEADER
============================== */

.header{
    position:sticky;
    top:0;
    z-index:9999;
    height:78px;

    background:
        rgba(255,255,255,.94);

    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);

    border-bottom:
        1px solid rgba(108,60,255,.10);
}

.header-inner{
    width:100%;
    height:100%;

    display:flex;
    align-items:center;
    justify-content:space-between;

    padding:0 22px;
}


/* ==============================
   BRAND
============================== */

.brand{
    display:flex;
    align-items:center;
    gap:11px;
}

.brand-logo{
    width:48px;
    height:48px;

    padding:3px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:14px;

    overflow:hidden;

    background:
        linear-gradient(
            135deg,
            #643cff,
            #00b9d8,
            #14c38e,
            #ffc928
        );

    box-shadow:
        0 6px 18px rgba(79,67,220,.20);
}

.brand-logo img{
    width:100%;
    height:100%;
    object-fit:contain;

    border-radius:11px;
}

.brand-name{
    font-size:21px;
    font-weight:700;

    letter-spacing:-.4px;

    background:
        linear-gradient(
            90deg,
            #683cff,
            #1683e8,
            #00b59d
        );

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;
}


/* ==============================
   MENU BUTTON
============================== */

.menu-button{
    width:44px;
    height:44px;

    border:0;
    border-radius:13px;

    background:
        linear-gradient(
            135deg,
            #f3f1ff,
            #eefbff
        );

    cursor:pointer;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    gap:5px;

    transition:.25s ease;
}

.menu-button:hover{
    transform:translateY(-1px);

    box-shadow:
        0 6px 16px rgba(80,70,180,.12);
}

.menu-button span{
    display:block;

    width:23px;
    height:3px;

    border-radius:20px;

    background:
        linear-gradient(
            90deg,
            #693cff,
            #1684e8
        );

    transition:.3s ease;
}

.menu-button.active span:nth-child(1){
    transform:
        translateY(8px)
        rotate(45deg);
}

.menu-button.active span:nth-child(2){
    opacity:0;
}

.menu-button.active span:nth-child(3){
    transform:
        translateY(-8px)
        rotate(-45deg);
}


/* ==============================
   DROPDOWN MENU
============================== */

.menu{
    position:absolute;

    top:70px;
    right:14px;

    width:235px;

    padding:6px;

    background:
        rgba(255,255,255,.98);

    border:
        1px solid rgba(108,60,255,.10);

    border-radius:18px;

    box-shadow:
        0 18px 45px rgba(24,39,75,.16);

    overflow:hidden;

    opacity:0;
    visibility:hidden;

    transform:
        translateY(-12px)
        scale(.98);

    transform-origin:
        top right;

    pointer-events:none;

    transition:
        opacity .25s ease,
        visibility .25s ease,
        transform .25s ease;
}

.menu.show{
    opacity:1;
    visibility:visible;

    transform:
        translateY(0)
        scale(1);

    pointer-events:auto;
}

.menu a{
    display:block;

    padding:12px 15px;

    margin:2px 0;

    border-radius:11px;

    font-size:15px;
    font-weight:500;

    color:#26354d;

    transition:.2s ease;
}

.menu a:hover{
    background:
        linear-gradient(
            90deg,
            rgba(108,60,255,.10),
            rgba(0,185,216,.08)
        );

    color:#6139dc;

    transform:
        translateX(3px);
}


/* ==============================
   HERO
============================== */

.hero{
    position:relative;

    overflow:hidden;

    text-align:center;

    padding:46px 24px 42px;

    background:

        radial-gradient(
            circle at 12% 20%,
            rgba(108,60,255,.13),
            transparent 28%
        ),

        radial-gradient(
            circle at 88% 18%,
            rgba(0,185,216,.13),
            transparent 28%
        ),

        radial-gradient(
            circle at 50% 100%,
            rgba(255,201,40,.12),
            transparent 35%
        ),

        linear-gradient(
            180deg,
            #ffffff,
            #f8fbff
        );

    border-bottom:
        1px solid #e8edf5;
}

.hero:before,
.hero:after{
    content:"";

    position:absolute;

    width:220px;
    height:220px;

    border-radius:50%;

    pointer-events:none;
}

.hero:before{
    left:-145px;
    bottom:-125px;

    border:
        35px solid rgba(108,60,255,.06);
}

.hero:after{
    right:-150px;
    top:120px;

    border:
        35px solid rgba(0,185,216,.06);
}


/* ==============================
   HERO LOGO
============================== */

.hero-logo{
    position:relative;
    z-index:2;

    width:115px;
    height:115px;

    margin:
        0 auto 22px;

    padding:5px;

    border-radius:28px;

    background:
        linear-gradient(
            135deg,
            #693cff,
            #1685e8,
            #00c5b0,
            #ffc928
        );

    box-shadow:
        0 15px 35px rgba(80,70,190,.20),
        0 0 0 9px rgba(108,60,255,.06);

    overflow:hidden;
}

.hero-logo img{
    width:100%;
    height:100%;

    object-fit:contain;

    border-radius:23px;

    background:#ffffff;
}


/* ==============================
   HERO TEXT
============================== */

.hero h1{
    position:relative;
    z-index:2;

    margin:
        0 0 12px;

    color:var(--dark);

    font-size:34px;
    font-weight:700;

    line-height:1.25;

    letter-spacing:-.8px;
}

.hero p{
    position:relative;
    z-index:2;

    max-width:540px;

    margin:
        0 auto 28px;

    color:#5b6b82;

    font-size:15.5px;
}


/* ==============================
   BUTTONS
============================== */

.hero-buttons{
    position:relative;
    z-index:3;

    max-width:540px;

    margin:0 auto;

    display:grid;

    grid-template-columns:
        1fr 1fr;

    gap:11px;
}

.btn{
    min-height:53px;

    padding:
        10px 15px;

    border-radius:15px;

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;

    font-weight:600;

    font-size:15px;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        opacity .2s ease;

    border:
        1px solid transparent;
}

.btn:hover{
    transform:
        translateY(-2px);
}

.btn:active{
    transform:
        translateY(0);
}


/* LOGIN */

.btn-primary{
    color:#ffffff;

    background:
        linear-gradient(
            135deg,
            #663cf0,
            #7c3aed
        );

    box-shadow:
        0 7px 18px rgba(108,60,255,.22);
}


/* REGISTER */

.btn-outline{
    color:#1677d2;

    background:#ffffff;

    border-color:
        rgba(22,132,232,.25);
}


/* DOWNLOAD */

.btn-download{
    grid-column:1 / -1;

    color:#ffffff;

    background:
        linear-gradient(
            90deg,
            #1685e8,
            #00b9d8
        );

    box-shadow:
        0 7px 18px rgba(0,150,210,.18);
}


/* TELEGRAM */

.btn-telegram{
    grid-column:1 / -1;

    color:#ffffff;

    background:
        linear-gradient(
            90deg,
            #168ee8,
            #00a8e8
        );

    box-shadow:
        0 7px 18px rgba(0,145,220,.18);
}


/* ==============================
   CONTENT
============================== */

.content{
    padding:
        18px 18px 100px;

    background:
        linear-gradient(
            180deg,
            #f9fbff,
            #ffffff 18%
        );
}


/* ==============================
   CARD
============================== */

.card{
    position:relative;

    margin:
        0 0 17px;

    padding:
        25px 22px;

    background:#ffffff;

    border:
        1px solid #e8edf3;

    border-radius:23px;

    box-shadow:
        0 8px 28px rgba(31,48,80,.035);
}

.card h2{
    position:relative;

    margin:
        0 0 18px;

    padding-bottom:11px;

    color:#17233a;

    font-size:22px;

    line-height:1.4;
}

.card h2:after{
    content:"";

    position:absolute;

    left:0;
    bottom:0;

    width:70px;
    height:3px;

    border-radius:20px;

    background:
        linear-gradient(
            90deg,
            #6b3cff,
            #1685e8,
            #00b99d
        );
}

.card h3{
    margin:
        23px 0 9px;

    color:#1d2c44;

    font-size:17px;

    line-height:1.5;
}

.card p{
    margin:
        0 0 14px;

    color:#5c6d83;

    font-size:15px;
}

.card strong{
    color:#394f74;
    font-weight:600;
}

.card ul,
.card ol{
    margin:
        10px 0 16px;

    padding-left:23px;

    color:#5c6d83;
}

.card li{
    margin-bottom:8px;
}


/* ==============================
   TABLE OF CONTENTS
============================== */

.toc{
    list-style:none !important;

    margin:0 !important;

    padding:0 !important;
}

.toc li{
    display:flex;
    align-items:center;

    gap:13px;

    margin:0;

    padding:12px 0;

    border-bottom:
        1px solid #edf1f5;
}

.toc li:last-child{
    border-bottom:0;
}

.toc-number{
    flex:
        0 0 31px;

    width:31px;
    height:31px;

    display:flex;
    align-items:center;
    justify-content:center;

    border-radius:50%;

    background:
        linear-gradient(
            135deg,
            #f0eaff,
            #e5f8ff
        );

    color:#643ce6;

    font-size:13px;
    font-weight:700;
}

.toc a{
    color:#263a55;

    font-size:15px;
    font-weight:500;

    transition:.2s ease;
}

.toc a:hover{
    color:#6239df;
}


/* ==============================
   TAGS
============================== */

.tags{
    display:flex;

    flex-wrap:wrap;

    gap:8px;
}

.tag{
    display:inline-block;

    padding:
        6px 13px;

    border-radius:30px;

    background:
        linear-gradient(
            135deg,
            #f2efff,
            #eefaff
        );

    border:
        1px solid rgba(108,60,255,.08);

    color:#5943a8;

    font-size:13px;

    font-weight:500;
}


/* ==============================
   TABLE
============================== */

.table-wrap{
    width:100%;

    overflow-x:auto;

    border:
        1px solid #e8edf2;

    border-radius:14px;
}

table{
    width:100%;

    min-width:420px;

    border-collapse:collapse;

    font-size:14px;
}

th{
    background:
        linear-gradient(
            90deg,
            #663cf0,
            #1685e8
        );

    color:#ffffff;

    text-align:left;

    padding:
        12px 14px;

    font-weight:600;
}

td{
    padding:
        11px 14px;

    color:#5a6c83;

    border-bottom:
        1px solid #edf0f4;
}

tr:nth-child(even) td{
    background:#f9fbff;
}


/* ==============================
   APP IMAGE
============================== */

.app-image{
    width:100%;

    max-height:390px;

    object-fit:contain;

    margin:
        22px auto;

    padding:5px;

    background:#ffffff;

    border:
        1px solid #e8edf3;

    border-radius:18px;

    box-shadow:
        0 10px 28px rgba(30,50,90,.08);
}


/* ==============================
   RESPONSIVE
============================== */

@media (max-width:600px){

    .site-wrapper{
        max-width:100%;
    }

    .header-inner{
        padding:
            0 16px;
    }

    .hero{
        padding:
            38px 18px 36px;
    }

    .hero-logo{
        width:100px;
        height:100px;
    }

    .hero h1{
        font-size:29px;
    }

    .hero p{
        font-size:14.5px;
    }

    .content{
        padding:
            14px 13px 80px;
    }

    .card{
        padding:
            22px 17px;

        border-radius:19px;
    }

    .card h2{
        font-size:20px;
    }

    .hero-buttons{
        gap:9px;
    }

    .btn{
        min-height:50px;
        font-size:14px;
    }

}

@media (max-width:380px){

    .brand-name{
        font-size:18px;
    }

    .brand-logo{
        width:43px;
        height:43px;
    }

    .hero-buttons{
        grid-template-columns:1fr;
    }

    .btn-primary,
    .btn-outline,
    .btn-download,
    .btn-telegram{
        grid-column:1 / -1;
    }

}
/* ==============================
   REFER CODE
============================== */

.refer-box{
    margin:20px 0;
    padding:20px;
    border-radius:18px;

    background:
        linear-gradient(
            135deg,
            rgba(108,60,255,.08),
            rgba(0,185,216,.07)
        );

    border:
        1px solid rgba(108,60,255,.13);

    text-align:center;

    box-shadow:
        0 8px 22px rgba(50,70,120,.04);
}

.refer-label{
    display:block;

    margin-bottom:10px;

    color:#5b6b82;

    font-size:13px;
    font-weight:500;
}

.refer-code{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    flex-wrap:wrap;

    gap:10px;

    font-size:22px;
    font-weight:700;

    letter-spacing:1px;

    color:#663cf0;
}

.copy-btn{
    border:0;

    padding:8px 13px;

    border-radius:10px;

    background:
        linear-gradient(
            135deg,
            #663cf0,
            #1685e8
        );

    color:#ffffff;

    cursor:pointer;

    font-size:12px;
    font-weight:600;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.copy-btn:hover{
    transform:translateY(-1px);

    box-shadow:
        0 6px 14px rgba(75,70,200,.22);
}

.copy-btn:active{
    transform:translateY(0);
}


/* ==============================
   INFO BOX
============================== */

.info-box{
    margin:19px 0;

    padding:15px 17px;

    border-left:
        4px solid #1685e8;

    background:
        linear-gradient(
            90deg,
            rgba(22,133,232,.07),
            rgba(0,185,216,.035)
        );

    border-radius:
        0 14px 14px 0;

    color:#5a6b81;

    font-size:14px;

    line-height:1.7;
}


/* ==============================
   PROS CONS
============================== */

.pros li::marker{
    color:#10a878;
}

.cons li::marker{
    color:#e85d6c;
}

.pros li,
.cons li{
    padding-left:3px;
}


/* ==============================
   FAQ
============================== */

.faq-item{
    padding:16px 0;

    border-bottom:
        1px solid #e9edf3;
}

.faq-item:last-child{
    border-bottom:0;
}

.faq-question{
    margin:0 0 7px;

    color:#1c2b43;

    font-size:16px;
    font-weight:600;

    line-height:1.55;
}

.faq-answer{
    margin:0;

    color:#5a6c83;

    font-size:14.5px;

    line-height:1.75;
}


/* ==============================
   FOOTER
============================== */

.footer{
    position:fixed;

    z-index:999;

    left:0;
    right:0;
    bottom:0;

    height:52px;

    padding:
        0 15px;

    background:
        rgba(255,255,255,.96);

    backdrop-filter:blur(12px);
    -webkit-backdrop-filter:blur(12px);

    border-top:
        1px solid #e7ecf2;

    box-shadow:
        0 -5px 20px rgba(30,50,90,.04);

    display:flex;
    align-items:center;
    justify-content:center;

    text-align:center;

    font-size:12.5px;

    color:#7a889b;
}

.footer strong{
    margin:0 3px;

    background:
        linear-gradient(
            90deg,
            #663cf0,
            #1685e8,
            #00b99d
        );

    -webkit-background-clip:text;
    background-clip:text;

    -webkit-text-fill-color:transparent;

    font-weight:700;
}


/* ==============================
   ACCESSIBILITY
============================== */

a:focus-visible,
button:focus-visible{
    outline:
        3px solid rgba(22,133,232,.28);

    outline-offset:3px;
}

.copy-btn{
    -webkit-tap-highlight-color:transparent;
}

.menu-button{
    -webkit-tap-highlight-color:transparent;
}


/* ==============================
   MOBILE
============================== */

@media(max-width:520px){

    .site-wrapper{
        box-shadow:none;
    }

    .header-inner{
        padding:0 16px;
    }

    .hero{
        padding:38px 20px 36px;
    }

    .hero h1{
        font-size:28px;
    }

    .hero p{
        font-size:14.5px;
    }

    .content{
        padding-left:13px;
        padding-right:13px;

        padding-bottom:85px;
    }

    .card{
        padding:21px 17px;

        border-radius:20px;
    }

    .card h2{
        font-size:20px;
    }

    .refer-box{
        padding:17px 13px;
    }

    .refer-code{
        font-size:19px;
    }

    .info-box{
        padding:14px 15px;
        font-size:13.5px;
    }

    .faq-question{
        font-size:15.5px;
    }

    .faq-answer{
        font-size:14px;
    }

    .footer{
        height:auto;

        min-height:50px;

        padding:
            10px 14px;

        font-size:11.5px;
    }

}


/* ==============================
   SMALL MOBILE
============================== */

@media(max-width:380px){

    .refer-code{
        width:100%;

        flex-direction:column;

        font-size:18px;
    }

    .copy-btn{
        width:100%;
    }

    .card{
        padding:
            19px 15px;
    }

}


/* ==============================
   TABLET / DESKTOP
============================== */

@media(min-width:521px){

    body{
        background:
            radial-gradient(
                circle at 10% 10%,
                rgba(108,60,255,.05),
                transparent 25%
            ),
            radial-gradient(
                circle at 90% 30%,
                rgba(0,185,216,.05),
                transparent 25%
            ),
            #f5f8fc;
    }

    .site-wrapper{
        min-height:100vh;
    }

}

/* =========================================
   PREMIUM RELATED PLATFORMS
========================================= */

.related-platforms {
    padding: 35px 20px;
    margin-top: 40px;
    background: #f8fafc;
    border-top: 1px solid #eaeef2;
}

.related-container {
    max-width: 1100px;
    margin: 0 auto;
}

/* Heading */
.related-platforms h2 {
    text-align: center;
    margin: 0 0 8px;
    font-size: 26px;
    font-weight: 700;
    color: #172033;
}

.related-description {
    text-align: center;
    margin: 0 auto 25px;
    font-size: 14px;
    color: #667085;
}

/* GRID */
.platform-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    width: 100%;
}

/* CARD */
.platform-card {
    display: flex !important;
    align-items: center !important;

    width: 100%;
    min-height: 58px;

    padding: 9px 12px !important;
    box-sizing: border-box;

    background: #ffffff;
    border: 1px solid #e6e9ed;
    border-radius: 9px;

    text-decoration: none !important;
    color: #172033 !important;

    gap: 10px;

    transition: all 0.2s ease;
}

/* Hover */
.platform-card:hover {
    transform: translateY(-2px);
    border-color: #d4d9df;
    box-shadow: 0 5px 15px rgba(0,0,0,0.06);
}

/* LOGO */
.platform-card img {
    width: 34px !important;
    height: 34px !important;

    min-width: 34px !important;
    min-height: 34px !important;

    padding: 3px;

    box-sizing: border-box;

    object-fit: contain;

    background: #ffffff;
    border: 1px solid #edf0f2;
    border-radius: 7px;

    display: block;
}

/* NAME */
.platform-card span {
    font-size: 14px !important;
    font-weight: 600;
    line-height: 1.2;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .platform-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .related-platforms {
        padding: 30px 12px;
    }

    .related-platforms h2 {
        font-size: 23px;
    }

    .related-description {
        font-size: 13px;
        margin-bottom: 20px;
    }

    .platform-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .platform-card {
        min-height: 54px;
        padding: 8px 9px !important;
        gap: 8px;
    }

    .platform-card img {
        width: 30px !important;
        height: 30px !important;

        min-width: 30px !important;
        min-height: 30px !important;
    }

    .platform-card span {
        font-size: 12px !important;
    }

}


/* =========================================
   VERY SMALL SCREEN
========================================= */

@media (max-width: 360px) {

    .platform-grid {
        grid-template-columns: 1fr !important;
    }

}