/* ===== RESET & BASE ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#000000;--bg2:#0a0a0c;--bg3:#111215;--bg4:#17191f;--text:#f0f2f5;--text2:#949eb0;--text3:#5c6475;--green:#00e676;--green2:#00b0ff;--red:#ff1744;--gold:#ffea00;--border:#1b1d24}
html{scroll-behavior:smooth}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:var(--green);text-decoration:none}
.container{max-width:1200px;margin:0 auto;padding:0 20px}

/* ===== TOP HEADER ===== */
.top-header{position:sticky;top:0;z-index:100;background:rgba(0,0,0,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--border)}
.header-inner{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;height:60px}
.header-left{display:flex;align-items:center;gap:32px}
.brand{font-size:22px;font-weight:800;color:var(--green);cursor:pointer;display:flex;align-items:center;gap:8px}
.brand i{font-size:24px}
.brand-logo{height:38px;width:auto;max-width:180px;object-fit:contain;border-radius:4px}
.desktop-nav{display:flex;gap:4px}
.dnav{padding:8px 16px;border-radius:8px;font-size:14px;font-weight:500;color:var(--text2);transition:.2s}
.dnav:hover{color:var(--text);background:var(--bg3)}
.dnav.active{color:var(--green);background:rgba(0,230,118,.1)}
.header-right{display:flex;align-items:center;gap:12px}
.lang-selector{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text2);cursor:pointer;padding:6px 12px;border-radius:8px;border:1px solid var(--border);transition:.2s}
.lang-selector:hover{border-color:var(--green);color:var(--text)}
.lang-selector img{width:18px;height:13px;border-radius:2px}
.header-btn{padding:8px 20px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s}
.login-btn{background:var(--green);color:#000;font-weight:700}
.login-btn:hover{background:var(--green);opacity:0.9}
.hamburger{display:none;background:none;border:none;color:var(--text);font-size:22px;cursor:pointer;padding:8px}

/* ===== MOBILE MENU ===== */
.mobile-menu-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:200}
.mobile-menu-overlay.open{display:block}
.mobile-menu{position:fixed;top:0;right:-280px;width:280px;height:100%;background:var(--bg2);z-index:201;transition:right .3s;padding:20px;overflow-y:auto}
.mobile-menu.open{right:0}
.mm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}
.mm-close{font-size:22px;cursor:pointer;color:var(--text2)}
.mm-link{display:flex;align-items:center;gap:12px;padding:14px 12px;border-radius:10px;font-size:15px;color:var(--text2);transition:.2s;margin-bottom:2px}
.mm-link:hover,.mm-link.active{color:var(--text);background:var(--bg3)}
.mm-link i{width:20px;text-align:center}
.mm-divider{height:1px;background:var(--border);margin:12px 0}

/* ===== PAGES ===== */
.main-content{padding-top:0;padding-bottom:0;min-height:calc(100vh - 60px)}
.page{display:none;animation:fadeUp .3s ease}
.page.active{display:block}
@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* ===== HERO CAROUSEL ===== */
.hero-carousel{position:relative;width:100%;height:380px;overflow:hidden}
.carousel-slides{position:relative;width:100%;height:100%}
.carousel-slide{position:absolute;inset:0;opacity:0;transition:opacity .8s}
.carousel-slide.active{opacity:1}
.slide-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:40px 8%;position:relative;overflow:hidden}
.slide-crypto{background:linear-gradient(135deg,rgba(0,0,0,0.85),rgba(17,18,21,0.65)),url('hero_crypto.png') no-repeat center/cover}
.slide-trade{background:linear-gradient(135deg,rgba(0,0,0,0.85),rgba(17,18,21,0.65)),url('hero_trade.png') no-repeat center/cover}
.slide-earn{background:linear-gradient(135deg,rgba(0,0,0,0.85),rgba(17,18,21,0.65)),url('hero_earn.png') no-repeat center/cover}
.slide-text h2{font-size:clamp(24px,4vw,42px);font-weight:800;line-height:1.2;color:#fff;text-shadow:0 2px 20px rgba(0,0,0,.5)}
.slide-text p{font-size:clamp(13px,1.5vw,16px);color:rgba(255,255,255,.55);margin-top:10px;max-width:400px}
.slide-cta{margin-top:20px;padding:12px 28px;border:none;border-radius:10px;background:var(--green2);color:#fff;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s;display:inline-flex;align-items:center;gap:8px}
.slide-cta:hover{background:var(--green);transform:translateY(-2px)}
.slide-visual{font-size:clamp(80px,12vw,160px);color:rgba(255,255,255,.08);animation:float 3s ease-in-out infinite}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
.carousel-dots{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:2}
.dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.25);cursor:pointer;transition:.3s}
.dot.active{background:var(--green);width:28px;border-radius:5px}
.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:rgba(0,0,0,.4);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.1);color:#fff;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s;z-index:3}
.carousel-arrow:hover{background:rgba(76,175,80,.4)}
.carousel-arrow.left{left:16px}
.carousel-arrow.right{right:16px}

/* ===== QUICK ACTIONS ===== */
.quick-actions{display:flex;justify-content:center;gap:24px;padding:24px 20px;background:var(--bg2);border-bottom:1px solid var(--border)}
.action-item{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:.2s}
.action-item:hover{transform:translateY(-3px)}
.action-item:active{transform:scale(.95)}
.action-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,rgba(76,175,80,.15),rgba(76,175,80,.05));display:flex;align-items:center;justify-content:center;font-size:22px;color:var(--green);border:1px solid rgba(76,175,80,.2)}
.action-item span{font-size:12px;color:var(--text2)}
.notif-wrap{position:relative}
.notif-badge{position:absolute;top:-5px;right:-5px;width:18px;height:18px;border-radius:50%;background:var(--red);color:#fff;font-size:10px;display:flex;align-items:center;justify-content:center}

/* ===== SECTION TITLE ===== */
.section-title{padding:24px 0 16px;font-size:18px;font-weight:700;display:flex;align-items:center;gap:10px}
.accent-bar{width:4px;height:20px;border-radius:2px;background:var(--green)}

/* ===== HOT LIST ===== */
.hot-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;padding-bottom:20px}
.hot-item{display:flex;align-items:center;padding:16px;background:var(--bg3);border-radius:14px;cursor:pointer;transition:.2s;border:1px solid transparent}
.hot-item:hover{border-color:var(--border);transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.3)}
.coin-logo{width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;margin-right:14px;flex-shrink:0}
.coin-info{flex:1;min-width:0}
.coin-name{font-size:15px;font-weight:600}
.coin-pair{font-size:12px;color:var(--text2);margin-top:2px}
.coin-price-area{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:3px}
.coin-price{font-size:15px;font-weight:600}
.coin-change{font-size:12px;font-weight:600;padding:2px 8px;border-radius:4px}
.coin-change.positive{color:var(--green);background:rgba(76,175,80,.1)}
.coin-change.negative{color:var(--red);background:rgba(239,83,80,.1)}
.sparkline-canvas{width:70px;height:30px;margin-left:12px;flex-shrink:0}

/* ===== MAIN LANDING GRID & TABULAR MARKETS & LIVE TRADES ===== */
.main-landing-grid {
    display: grid;
    grid-template-columns: 1.8fr 1.2fr;
    gap: 24px;
    margin-top: 24px;
    margin-bottom: 24px;
}
@media (max-width: 900px) {
    .main-landing-grid {
        grid-template-columns: 1fr;
    }
}
.markets-table-container {
    background: #0d0e12;
    border: 1px solid rgba(255, 255, 255, 0.06);
    border-radius: 20px;
    padding: 16px 20px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4);
    overflow-x: auto;
}
.markets-table {
    width: 100%;
    border-collapse: collapse;
}
.markets-table th {
    padding: 16px 12px;
    font-size: 11px;
    color: var(--text3);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}
.markets-table td {
    padding: 18px 12px;
    vertical-align: middle;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}
.hot-table-row {
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.15s ease;
}
.hot-table-row:hover {
    background: rgba(255, 255, 255, 0.02) !important;
}

/* Coin cell styles */
.coin-cell {
    display: flex;
    align-items: center;
    gap: 12px;
}
.coin-logo {
    width: 36px;
    height: 36px;
    font-size: 16px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: bold;
    flex-shrink: 0;
    box-shadow: inset 0 0 10px rgba(255, 255, 255, 0.05);
}
.coin-meta {
    display: flex;
    flex-direction: column;
}
.coin-symbol-text {
    font-weight: 600;
    font-size: 14px;
    color: var(--text);
}
.coin-pair-text {
    font-size: 11px;
    color: var(--text2);
    text-transform: uppercase;
    margin-top: 2px;
}
.price-mono {
    font-family: 'Roboto Mono', 'SF Pro Mono', monospace;
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
}

/* Change pills */
.coin-change-pill {
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    padding: 6px 10px;
    border-radius: 8px;
    font-size: 13px;
    font-family: 'Roboto Mono', monospace;
}
.positive-pill {
    background: rgba(0, 230, 118, 0.08);
    color: var(--green);
    border: 1px solid rgba(0, 230, 118, 0.15);
}
.negative-pill {
    background: rgba(255, 23, 68, 0.08);
    color: var(--red);
    border: 1px solid rgba(255, 23, 68, 0.15);
}

/* Canvas Sparkline */
.sparkline-canvas {
    width: 70px;
    height: 26px;
    vertical-align: middle;
}

/* Trade Button */
.trade-btn-inline {
    background: transparent;
    border: 1px solid var(--green);
    color: var(--green);
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.trade-btn-inline:hover {
    background: var(--green);
    color: #000;
    box-shadow: 0 0 12px rgba(0, 230, 118, 0.3);
}

/* Mobile optimizations — only hide Trend/Action on very small screens */
@media (max-width: 480px) {
    .markets-table th:nth-child(4),
    .markets-table td:nth-child(4),
    .markets-table th:nth-child(5),
    .markets-table td:nth-child(5) {
        display: none;
    }
    .markets-table th, .markets-table td {
        padding: 10px 6px;
    }
    .markets-table-container {
        padding: 10px 8px;
        border-radius: 12px;
    }
    .coin-symbol-text {
        font-size: 13px;
    }
    .coin-logo {
        width: 30px;
        height: 30px;
        font-size: 13px;
    }
}
.live-trades-box {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    height: 480px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
}
.live-trades-header {
    display: flex;
    justify-content: space-between;
    font-size: 12px;
    color: var(--text2);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-bottom: 1px solid var(--border);
    padding-bottom: 12px;
    margin-bottom: 10px;
}
.live-trades-scroll-wrap {
    flex: 1;
    overflow: hidden;
    position: relative;
}
.live-trades-marquee {
    display: flex;
    flex-direction: column;
    animation: scrollMarqueeDown 35s linear infinite;
}
.live-trades-marquee:hover {
    animation-play-state: paused;
}
@keyframes scrollMarqueeDown {
    0% { transform: translateY(-50%); }
    100% { transform: translateY(0); }
}

/* ===== PLATFORM STATS & FEATURES ===== */
.platform-stats-section {
    padding: 32px 0 40px;
    border-top: 1px solid var(--border);
    margin-top: 16px;
}
.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-bottom: 32px;
}
.stat-card {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    text-align: center;
    transition: transform 0.2s ease, border-color 0.2s ease;
}
.stat-card:hover {
    transform: translateY(-2px);
    border-color: var(--green);
}
.stat-icon {
    font-size: 24px;
    color: var(--green);
    margin-bottom: 10px;
}
.stat-value {
    font-size: 28px;
    font-weight: 700;
    color: var(--text);
    margin-bottom: 4px;
}
.stat-label {
    font-size: 13px;
    color: var(--text2);
}
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px;
}
.feature-card {
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 20px;
    transition: transform 0.2s ease, border-color 0.2s ease;
}
.feature-card:hover {
    transform: translateY(-2px);
    border-color: var(--green);
}
.feature-icon {
    font-size: 20px;
    color: var(--green);
    margin-bottom: 12px;
}
.feature-title {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 8px;
}
.feature-desc {
    font-size: 13px;
    color: var(--text2);
    line-height: 1.6;
}
/* ===== PAGE HEADING ===== */
.page-heading{display:flex;align-items:center;justify-content:space-between;padding:28px 0 20px;gap:16px;flex-wrap:wrap}
.page-heading h1{font-size:24px;font-weight:700}
.search-wrap{display:flex;align-items:center;gap:10px;background:var(--bg3);border-radius:10px;padding:10px 16px;border:1px solid var(--border);min-width:240px;transition:.2s}
.search-wrap:focus-within{border-color:var(--green)}
.search-wrap i{color:var(--text3);font-size:14px}
.search-wrap input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:14px;font-family:inherit}
.search-wrap input::placeholder{color:var(--text3)}

/* ===== MARKET GRID ===== */
.market-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;padding-bottom:40px}

/* ===== MINER TABS & GRID ===== */
.miner-tabs{display:flex;gap:8px;padding-bottom:16px;flex-wrap:wrap}
.mtab{padding:10px 20px;border-radius:24px;background:var(--bg3);color:var(--text2);border:1px solid var(--border);font-size:13px;cursor:pointer;transition:.2s;font-family:inherit}
.mtab:hover{color:var(--text)}
.mtab.active{background:var(--green2);color:#fff;border-color:var(--green2)}
.miner-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;padding-bottom:40px}
.miner-card{background:var(--bg3);border-radius:16px;padding:20px;border:1px solid var(--border);position:relative;overflow:hidden;transition:.2s}
.miner-card:hover{border-color:var(--green2);transform:translateY(-2px);box-shadow:0 8px 30px rgba(0,0,0,.3)}
.miner-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--green2),var(--green))}
.miner-header{display:flex;align-items:center;gap:14px;margin-bottom:14px}
.miner-img{width:52px;height:52px;border-radius:10px;background:var(--bg4);display:flex;align-items:center;justify-content:center;font-size:24px;color:var(--green)}
.miner-title{font-size:15px;font-weight:600}
.miner-time{font-size:11px;color:var(--text3);margin-top:3px}
.miner-currency{font-size:11px;color:var(--green)}
.miner-buy{position:absolute;top:20px;right:20px;padding:8px 22px;border-radius:8px;background:var(--green2);color:#fff;border:none;font-size:13px;cursor:pointer;font-family:inherit;transition:.2s}
.miner-buy:hover{background:var(--green)}
.miner-progress{width:100%;height:6px;background:var(--bg4);border-radius:3px;margin:12px 0 8px;overflow:hidden}
.miner-progress-bar{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--green2),var(--green));transition:width 1s}
.miner-progress-label{font-size:10px;color:var(--green);text-align:right;margin-bottom:10px}
.miner-stats{display:flex;justify-content:space-between;font-size:12px;color:var(--text2)}
.miner-stats span{display:flex;flex-direction:column;gap:3px}
.miner-stats .stat-label{font-size:10px;color:var(--text3)}
.miner-stats .stat-value{font-weight:600;color:var(--text)}
.miner-stats .stat-type{color:var(--green);font-size:11px}

/* ===== CONTRACT LAYOUT ===== */
.contract-layout{display:grid;grid-template-columns:1fr 320px;gap:24px;padding-top:24px;padding-bottom:40px}
.contract-left{min-width:0}
.contract-top-bar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:12px}
.detail-back{width:36px;height:36px;border-radius:8px;background:var(--bg3);display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text2);transition:.2s}
.detail-back:hover{color:var(--text);background:var(--bg4)}
.contract-pair{font-size:20px;font-weight:700}
.contract-price-row{display:flex;align-items:baseline;gap:12px}
.contract-big-price{font-size:28px;font-weight:700}
.contract-change{font-size:14px;font-weight:600;padding:3px 10px;border-radius:6px}
.contract-stats{display:flex;gap:24px;padding:12px 0;border-bottom:1px solid var(--border);margin-bottom:12px;flex-wrap:wrap}
.cs-item{display:flex;flex-direction:column;gap:2px}
.cs-label{font-size:11px;color:var(--text3)}
.cs-val{font-size:14px;font-weight:600}
.tf-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-bottom:4px}
.tf-btn{flex:1;padding:10px;background:none;border:none;border-bottom:2px solid transparent;color:var(--text3);font-size:13px;cursor:pointer;font-family:inherit;transition:.2s;max-width:70px;text-align:center}
.tf-btn.active{color:var(--text);border-bottom-color:var(--green)}
.tf-btn:hover{color:var(--text2)}
.chart-box{width:100%;height:420px;background:var(--bg);border-radius:8px;border:1px solid var(--border);overflow:hidden}
.contract-right{position:sticky;top:80px;align-self:start}
.trade-panel{background:var(--bg3);border-radius:16px;padding:24px;border:1px solid var(--border)}
.trade-panel h3{font-size:16px;font-weight:600;margin-bottom:20px;color:var(--text)}
.trade-pair-select{margin-bottom:16px}
.trade-pair-select label,.trade-amount label{font-size:12px;color:var(--text2);display:block;margin-bottom:6px}
.trade-pair-select select,.trade-amount input{width:100%;padding:12px;border-radius:8px;background:var(--bg4);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:inherit;outline:none}
.trade-pair-select select:focus,.trade-amount input:focus{border-color:var(--green)}
.trade-amount{margin-bottom:20px}
.trade-btns{display:flex;flex-direction:column;gap:10px}
.btn-buy-up{padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,#6b8f3a,#4caf50);color:#fff;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:.2s;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-buy-down{padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,#ef5350,#c62828);color:#fff;font-size:15px;font-weight:700;cursor:pointer;font-family:inherit;transition:.2s;display:flex;align-items:center;justify-content:center;gap:8px}
.btn-buy-up:hover{box-shadow:0 4px 20px rgba(76,175,80,.4);transform:translateY(-1px)}
.btn-buy-down:hover{box-shadow:0 4px 20px rgba(239,83,80,.4);transform:translateY(-1px)}
.btn-buy-up:active,.btn-buy-down:active{transform:scale(.97)}

.duration-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
    margin-top: 6px;
}
.duration-item {
    background: var(--bg4);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 8px 4px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 3px;
    user-select: none;
}
.duration-item:hover {
    border-color: var(--green);
}
.duration-item.active {
    background: rgba(0, 229, 137, 0.1);
    border-color: var(--green);
    box-shadow: 0 0 10px rgba(0, 229, 137, 0.15);
}
.duration-item.active span:first-child {
    color: var(--green) !important;
}

/* ===== ASSETS ===== */
.assets-locked{text-align:center;padding:80px 20px;color:var(--text2)}
.assets-locked i{font-size:56px;color:var(--text3);margin-bottom:20px}
.assets-locked h3{font-size:18px;margin-bottom:24px;font-weight:500}
.cta-btn{padding:14px 44px;border:none;border-radius:10px;background:var(--green2);color:#fff;font-size:15px;font-weight:600;cursor:pointer;font-family:inherit;transition:.2s}
.cta-btn:hover{background:var(--green)}

/* ===== ASSETS / DASHBOARD ===== */
.dashboard-container {
    max-width: 800px;
    margin: 30px auto;
    padding-bottom: 60px;
}
.balance-card {
    background: linear-gradient(135deg, var(--bg3), var(--bg4));
    border-radius: 20px;
    padding: 30px;
    border: 1px solid var(--border);
    margin-bottom: 24px;
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.4);
    position: relative;
    overflow: hidden;
}
.balance-card::after {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 250px;
    height: 250px;
    background: radial-gradient(circle, rgba(76,175,80,0.1) 0%, transparent 70%);
    pointer-events: none;
}
.bal-label {
    font-size: 13px;
    color: var(--text2);
    display: flex;
    align-items: center;
    gap: 6px;
}
.bal-val {
    font-size: 38px;
    font-weight: 800;
    color: var(--green);
    margin: 12px 0 6px;
    font-variant-numeric: tabular-nums;
}
.bal-btc {
    font-size: 14px;
    color: var(--text2);
    margin-bottom: 24px;
}
.bal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    border-top: 1px solid var(--border);
    padding-top: 20px;
}
.bal-sub {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.bal-sub-lbl {
    font-size: 11px;
    color: var(--text3);
}
.bal-sub-val {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
}
.dash-actions-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
    margin-bottom: 24px;
}
.dash-act-btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    background: var(--bg2);
    border: 1px solid var(--border);
    padding: 16px 10px;
    border-radius: 14px;
    cursor: pointer;
    transition: all 0.2s;
    text-align: center;
}
.dash-act-btn:hover {
    border-color: var(--green);
    background: var(--bg3);
    transform: translateY(-2px);
}
.dash-act-btn i {
    font-size: 20px;
    color: var(--green);
}
.dash-act-btn span {
    font-size: 12px;
    font-weight: 500;
    color: var(--text2);
}
.dash-panel {
    background: var(--bg2);
    border-radius: 20px;
    border: 1px solid var(--border);
    padding: 24px;
    margin-bottom: 20px;
}
.dash-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--border);
    padding-bottom: 12px;
}
.dash-panel-title {
    font-size: 16px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 8px;
}
.dash-panel-title i {
    color: var(--green);
}
.panel-close {
    cursor: pointer;
    font-size: 18px;
    color: var(--text3);
    transition: color 0.2s;
}
.panel-close:hover {
    color: var(--text);
}
.form-group {
    margin-bottom: 18px;
}
.form-group label {
    display: block;
    font-size: 12px;
    color: var(--text2);
    margin-bottom: 6px;
    font-weight: 500;
}
.form-group input, .form-group select {
    width: 100%;
    padding: 12px 14px;
    border-radius: 10px;
    background: var(--bg3);
    border: 1px solid var(--border);
    color: var(--text);
    font-size: 14px;
    font-family: inherit;
    outline: none;
}
.form-group input:focus, .form-group select:focus {
    border-color: var(--green);
}
.qr-container {
    text-align: center;
    padding: 16px;
    background: #fff;
    border-radius: 12px;
    width: 140px;
    height: 140px;
    margin: 10px auto;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(0,0,0,0.1);
}
.qr-container i {
    font-size: 90px;
    color: #111;
}
.wallet-address-copy {
    display: flex;
    gap: 8px;
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 8px;
    padding: 10px;
    align-items: center;
    justify-content: space-between;
    margin-top: 10px;
    cursor: pointer;
}
.wallet-address-copy span {
    font-family: monospace;
    font-size: 13px;
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.submit-btn {
    width: 100%;
    padding: 14px;
    background: var(--green2);
    border: none;
    border-radius: 10px;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.submit-btn:hover {
    background: var(--green);
}
.submit-btn:active {
    transform: scale(0.98);
}
.my-miners-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.my-miner-card {
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 12px;
    padding: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
}
.my-miner-info {
    flex: 1;
}
.my-miner-name {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 4px;
}
.my-miner-yield {
    font-size: 12px;
    color: var(--text2);
    margin-top: 4px;
}
.claim-btn {
    padding: 8px 16px;
    border-radius: 8px;
    border: none;
    background: var(--green2);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}
.claim-btn:hover {
    background: var(--green);
}
.kyc-badge {
    font-size: 11px;
    padding: 2px 6px;
    border-radius: 4px;
    font-weight: 600;
}
.kyc-badge.unverified {
    background: rgba(239,83,80,0.1);
    color: var(--red);
}
.kyc-badge.verified {
    background: rgba(76,175,80,0.1);
    color: var(--green);
}
.kyc-badge.pending {
    background: rgba(240,185,11,0.1);
    color: var(--gold);
}

/* ===== AUTH ===== */
.auth-wrapper{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 60px);padding:40px 20px}
.auth-card{width:100%;max-width:420px;background:var(--bg2);border-radius:20px;padding:36px;border:1px solid var(--border)}
.auth-back{font-size:14px;color:var(--text2);cursor:pointer;margin-bottom:20px;display:inline-flex;align-items:center;gap:6px;transition:.2s}
.auth-back:hover{color:var(--text)}
.auth-logo{text-align:center;margin-bottom:28px}
.auth-logo-img{width:220px;height:auto;margin:0 auto 12px;display:block;border-radius:6px;box-shadow:0 4px 12px rgba(0,0,0,.2)}
.auth-logo h2{font-size:20px;font-weight:600}
.auth-form{display:flex;flex-direction:column;gap:6px}
.auth-form label{font-size:13px;font-weight:500;margin-top:10px}
.auth-form input[type="email"],.auth-form input[type="text"],.auth-form input[type="password"],.auth-form input[type="number"]{width:100%;padding:14px;border-radius:10px;background:var(--bg4);border:1px solid var(--border);color:var(--text);font-size:14px;font-family:inherit;outline:none;transition:.2s}
.auth-form input:focus{border-color:var(--green)}
.auth-form input::placeholder{color:var(--text3)}
.pw-field{position:relative}
.pw-field input{width:100%;padding-right:44px}
.pw-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);cursor:pointer;color:var(--text3);font-size:16px}
.check-label{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text2);margin:10px 0;cursor:pointer}
.check-label input{width:16px;height:16px;accent-color:var(--green)}
.auth-submit{width:100%;padding:14px;border:none;border-radius:10px;background:linear-gradient(135deg,#6b8f3a,#5a7a2e);color:#fff;font-size:16px;font-weight:600;cursor:pointer;margin-top:18px;font-family:inherit;transition:.2s}
.auth-submit:hover{background:linear-gradient(135deg,#4caf50,#6b8f3a)}
.auth-submit:active{transform:scale(.97)}
.auth-links{text-align:center;margin-top:20px;font-size:14px;color:var(--text2)}
.auth-links a{color:var(--green)}
.auth-note{text-align:center;font-size:12px;color:var(--text3);margin-top:14px}
.auth-note a{color:var(--green)}

/* ===== LANGUAGE MODAL ===== */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.65);z-index:300;display:none;align-items:center;justify-content:center;backdrop-filter:blur(6px)}
.modal-overlay.show{display:flex}
.lang-modal{background:var(--bg2);border-radius:20px;padding:12px;width:90%;max-width:380px;max-height:70vh;overflow-y:auto;border:1px solid var(--border)}
.lang-modal-title{padding:14px 16px 10px;font-size:16px;font-weight:600}
.lang-option{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;cursor:pointer;font-size:14px;transition:.2s}
.lang-option:hover{background:var(--bg3)}
.lang-option.active{background:rgba(76,175,80,.12);color:var(--green)}
.lang-option img{width:22px;height:16px;border-radius:2px}

/* ===== BOTTOM NAV (mobile only) ===== */
.bottom-nav{display:none;position:fixed;bottom:0;left:0;right:0;height:64px;background:rgba(11,14,20,.95);backdrop-filter:blur(16px);border-top:1px solid var(--border);z-index:100;align-items:center;justify-content:space-around}
.bnav-item{display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;padding:6px 0;width:60px;-webkit-tap-highlight-color:transparent;position:relative}
.bnav-item i{font-size:18px;color:var(--text3);transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), color 0.3s}
.bnav-item span{font-size:10px;color:var(--text3);transition:color 0.3s, transform 0.3s;font-weight:500}
.bnav-item.active i{color:var(--green);animation:bnavBounce 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards}
.bnav-item.active span{color:var(--green);font-weight:600}
.bnav-item.center{position:relative}
.center-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#6b8f3a,#4caf50);display:flex;align-items:center;justify-content:center;position:absolute;top:-24px;box-shadow:0 4px 16px rgba(76,175,80,.4);border:3px solid var(--bg);transition:transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.3s}
.center-btn i{font-size:18px;color:#fff;transition:transform 0.3s}
.bnav-item.center.active .center-btn{transform:scale(1.1);box-shadow:0 6px 20px rgba(76,175,80,.6)}
.bnav-item.center.active .center-btn i{transform:rotate(15deg)}
.bnav-item.center span{margin-top:22px}

@keyframes bnavBounce {
  0% { transform: scale(1); }
  50% { transform: scale(1.3); }
  100% { transform: scale(1.15); }
}

/* ===== TOAST ===== */
.toast{position:fixed;top:80px;left:50%;transform:translateX(-50%);background:var(--bg3);color:var(--text);padding:14px 28px;border-radius:12px;font-size:14px;border:1px solid var(--border);z-index:500;opacity:0;transition:.3s;pointer-events:none;box-shadow:0 8px 32px rgba(0,0,0,.5)}
.toast.show{opacity:1}

/* ===== RESPONSIVE ===== */
@media(max-width:900px){
  .contract-layout{grid-template-columns:1fr}
  .contract-right{position:static}
  .chart-box{height:320px}
}
@media(max-width:768px){
  html, body {
      overflow-x: hidden !important;
      width: 100% !important;
      max-width: 100vw !important;
      -webkit-overflow-scrolling: touch;
  }
  .desktop-nav{display:none}
  .hamburger{display:flex}
  .bottom-nav{display:flex}
  .main-content{padding-bottom:64px; overflow-x: hidden; width: 100%;}
  .hero-carousel{height:260px}
  .slide-inner{padding:24px 5%}
  .slide-visual{font-size:60px}
  .quick-actions{gap:12px;padding:16px 10px}
  .action-icon{width:44px;height:44px;font-size:18px;border-radius:12px}
  .hot-list{grid-template-columns:1fr}
  .market-grid{grid-template-columns:1fr}
  .miner-grid{grid-template-columns:1fr}
  .page-heading{flex-direction:column;align-items:stretch}
  .page-heading h1{font-size:20px}
  .search-wrap{min-width:unset}
  .contract-layout{padding-top:12px}
  .chart-box{height:280px}
  .carousel-arrow{display:none}
  .header-btn{display:none}
  .page { overflow-x: hidden; width: 100%; max-width: 100vw; }
  .container { overflow-x: hidden; max-width: 100%; }
  .auth-wrapper { padding: 20px 12px; min-height: auto; }
  .auth-card { padding: 24px 16px; max-width: 100%; }
  .dashboard-container { padding: 0 12px; margin: 16px auto; }
  .balance-card { padding: 18px 14px; }
  .bal-val { font-size: 26px; }
  .trade-panel { padding: 16px; }
  .contract-stats { gap: 12px; }
  .contract-big-price { font-size: 22px; }
  .contract-pair { font-size: 17px; }
  .auth-form input[type="email"],
  .auth-form input[type="text"],
  .auth-form input[type="password"],
  .auth-form input[type="number"],
  .form-group input,
  .form-group select {
      font-size: 16px !important;
  }
}
@media(max-width:480px){
  .dash-actions-grid {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
  .dash-act-btn {
    padding: 12px 6px !important;
  }
  .bal-grid {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }
}
@media(max-width:400px){
  .hero-carousel{height:220px}
  .slide-text h2{font-size:20px}
  .action-item span{font-size:10px}
  .container{padding:0 12px}
}

/* ===== LOGGED IN DASHBOARD ===== */
.dashboard-container {
    max-width: 600px;
    margin: 30px auto;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.balance-card {
    background: linear-gradient(135deg, var(--bg3) 0%, #202735 100%);
    border-radius: 20px;
    padding: 24px;
    border: 1px solid var(--border);
    box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}
.bal-label {
    font-size: 14px;
    color: var(--text2);
    font-weight: 500;
}
.kyc-badge {
    font-size: 10px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 12px;
    text-transform: uppercase;
}
.kyc-badge.unverified {
    background: rgba(239,83,80,0.15);
    color: var(--red);
    border: 1px solid rgba(239,83,80,0.3);
}
.kyc-badge.pending {
    background: rgba(255,167,38,0.15);
    color: #ffa726;
    border: 1px solid rgba(255,167,38,0.3);
}
.kyc-badge.verified {
    background: rgba(76,175,80,0.15);
    color: var(--green);
    border: 1px solid rgba(76,175,80,0.3);
}
.bal-val {
    font-size: 32px;
    font-weight: 700;
    color: #ffffff;
    margin-top: 10px;
    letter-spacing: -0.5px;
    font-family: monospace;
}
.bal-btc {
    font-size: 14px;
    color: var(--text3);
    margin-top: 4px;
    font-family: monospace;
}
.bal-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 24px;
    border-top: 1px solid var(--border);
    padding-top: 16px;
}
.bal-sub {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.bal-sub-lbl {
    font-size: 12px;
    color: var(--text3);
}
.bal-sub-val {
    font-size: 16px;
    font-weight: 600;
    color: var(--text);
    font-family: monospace;
}
.dash-actions-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.dash-act-btn {
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 16px;
    padding: 16px 8px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
}
.dash-act-btn:hover {
    background: var(--bg2);
    border-color: var(--green);
    transform: translateY(-2px);
}
.dash-act-btn i {
    font-size: 20px;
    color: var(--green);
}
.dash-act-btn span {
    font-size: 12px;
    color: var(--text2);
    font-weight: 500;
}
.dash-panel {
    background: var(--bg2);
    border: 1px solid var(--border);
    border-radius: 20px;
    overflow: hidden;
}
.wallet-address-copy {
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--bg3);
    border: 1px solid var(--border);
    padding: 14px 18px;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    margin-bottom: 15px;
}
.wallet-address-copy:hover {
    border-color: var(--green);
    background: rgba(76,175,80,0.05);
}
.form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 20px;
}
.form-group label {
    font-size: 13px;
    color: var(--text2);
    font-weight: 500;
}
.form-group input, .form-group select {
    background: var(--bg3);
    border: 1px solid var(--border);
    border-radius: 10px;
    padding: 12px 14px;
    color: var(--text);
    font-family: inherit;
    font-size: 14px;
    transition: border-color 0.2s ease;
}
.form-group input:focus, .form-group select:focus {
    border-color: var(--green);
    outline: none;
}
.submit-btn {
    width: 100%;
    background: var(--green);
    color: #ffffff;
    border: none;
    border-radius: 12px;
    padding: 14px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s ease;
}
.submit-btn:hover {
    opacity: 0.9;
}

@keyframes modalSlideIn {
    from { opacity: 0; transform: translateY(30px) scale(0.97); }
    to { opacity: 1; transform: translateY(0) scale(1); }
}
