/*
==============================================================================
BTC TERMINAL ENGINE
Professional UI
Version : 4.0
Author  : Sitindaon
==============================================================================*/

/*==============================================================================
ROOT
==============================================================================*/

:root{

    --btc-bg:#0d1328;
    --btc-surface:#1b2443;
    --btc-surface-2:#232d50;

    --btc-border:#3d4d7a;

    --btc-primary:#52b6e3;
    --btc-primary-light:#78d3ff;

    --btc-success:#31d07d;
    --btc-warning:#ffc94d;
    --btc-danger:#ff5b6a;

    --btc-white:#ffffff;

    --btc-text:#eef3ff;
    --btc-text-muted:#aab8d8;

    --btc-radius:14px;

    --btc-shadow:
        0 8px 28px rgba(0,0,0,.35);

    --btc-transition:
        .25s ease;

}

/*==============================================================================
RESET
==============================================================================*/

.btc-terminal *,
.btc-terminal *::before,
.btc-terminal *::after{

    box-sizing:border-box;

}

.btc-terminal{

    color:var(--btc-text);

    font-family:
        "Inter",
        "Segoe UI",
        Arial,
        sans-serif;

    line-height:1.55;

    font-size:15px;

}

/*==============================================================================
MAIN CONTAINER
==============================================================================*/

.btc-terminal{

    max-width:1450px;

    margin:40px auto;

    padding:32px;

    background:var(--btc-bg);

    border-radius:16px;

    border:1px solid var(--btc-border);

    box-shadow:var(--btc-shadow);

    overflow:hidden;

}

/*==============================================================================
HEADER
==============================================================================*/

.btc-header{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;

    padding-bottom:22px;

    margin-bottom:30px;

    border-bottom:1px solid rgba(255,255,255,.12);

}

.btc-title{

    display:flex;

    align-items:center;

    gap:14px;

    margin:0;

    color:#ffd056;

    font-size:2.15rem;

    font-weight:800;

    letter-spacing:.04em;

    line-height:1.2;

    text-transform:uppercase;

}

.btc-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    min-width:145px;

    height:48px;

    padding:0 20px;

    border-radius:999px;

    background:linear-gradient(
        135deg,
        var(--btc-primary),
        #4aa5d4
    );

    color:#ffffff;

    font-size:.82rem;

    font-weight:700;

    letter-spacing:1px;

    text-transform:uppercase;

    transition:var(--btc-transition);

    cursor:default;

}

.btc-badge:hover{

    transform:translateY(-2px);

    box-shadow:

        0 10px 25px rgba(82,182,227,.35);

}

/*==============================================================================
GRID
==============================================================================*/

.btc-grid{

    display:grid;

    grid-template-columns:

        repeat(
            3,
            minmax(260px,1fr)
        );

    gap:22px;

    margin-bottom:28px;

}

/*==============================================================================
CARDS
==============================================================================*/

.btc-card{

    position:relative;

    background:linear-gradient(
        180deg,
        rgba(42,51,89,.96) 0%,
        rgba(37,46,82,.98) 100%
    );

    border:1px solid #465a9b;

    border-radius:14px;

    padding:28px 22px;

    margin-bottom:28px;

    overflow:hidden;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease;

}

/* ==========================================================================
   KPI ACCENT STRIP
   ========================================================================== */

.btc-card::before{

    content:"";

    position:absolute;

    top:0;

    left:0;

    width:100%;

    height:4px;

    background:var(--btc-border);

}

.btc-card.btc-bull::before{

    background:#2ecc71;

}

.btc-card.btc-bear::before{

    background:#ff4d4f;

}

.btc-card.btc-recovery::before{

    background:#3b82f6;

}

.btc-card.btc-expansion::before{

    background:#22c55e;

}

.btc-card.btc-distribution::before{

    background:#f59e0b;

}

.btc-card.btc-neutral::before{

    background:#64748b;

}

.btc-card::before{

    content:"";

    position:absolute;

    top:0;
    left:0;
    right:0;

    height:3px;

    background:linear-gradient(
        90deg,
        #58d5ff,
        #7ffff0
    );

    opacity:.55;

}

.btc-card:hover{

    transform:translateY(-4px);

    border-color:#68b8ff;

    box-shadow:
        0 12px 28px rgba(0,0,0,.35),
        0 0 18px rgba(88,213,255,.15);

}

.btc-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:22px;

    margin-bottom:30px;

}

.btc-center{

    display:flex;

    flex-direction:column;

    justify-content:center;

    align-items:center;

    min-height:155px;

    text-align:center;

}

/*==============================================================================
CARD LABEL
==============================================================================*/

.btc-label{

    margin-bottom:22px;

    color:#7ffff0;

    font-size:.92rem;

    font-weight:700;

    letter-spacing:.14em;

    line-height:1.4;

    text-transform:uppercase;

}

/*==============================================================================
CARD VALUE
==============================================================================*/

.btc-value{

    color:#ffffff;

    font-size:3rem;

    font-weight:800;

    line-height:1;

    letter-spacing:-0.03em;

    text-align:center;

    text-shadow:

        0 2px 10px rgba(0,0,0,.30);

}

.btc-value-small{

    font-size:2.35rem;

    line-height:1.15;

    word-break:break-word;

}

.btc-warning{

    color:var(--btc-warning);

}

.btc-success{

    color:var(--btc-success);

}

.btc-danger{

    color:var(--btc-danger);

}

/*==============================================================================
KPI EFFECT
==============================================================================*/

.btc-grid .btc-card::after{

    content:"";

    position:absolute;

    inset:0;

    border-radius:inherit;

    pointer-events:none;

    opacity:0;

    transition:.35s;

    background:

        radial-gradient(

            circle at top,

            rgba(82,182,227,.12),

            transparent 65%

        );

}

.btc-grid .btc-card:hover::after{

    opacity:1;

}

/*==============================================================================
SECTION SPACING
==============================================================================*/

.btc-terminal .btc-card{

    margin-bottom:24px;

}

.btc-terminal .btc-card:last-child{

    margin-bottom:0;

}

/*==============================================================================
PROGRESS PANEL
==============================================================================*/

.btc-progress{

    position:relative;

    width:100%;

    height:34px;

    overflow:hidden;

    border-radius:8px;

    background:#0b1225;

    border:1px solid #42527c;

    box-shadow:
        inset 0 2px 8px rgba(0,0,0,.45);

}

/*==============================================================================
PROGRESS FILL
==============================================================================*/

.btc-progress-fill{

    position:absolute;

    top:0;

    left:0;

    bottom:0;

    width:0;

    border-radius:8px 0 0 8px;

    background:

        linear-gradient(
            90deg,
            #49abd8,
            #63d0ff
        );

    transition:
        width .8s ease;

    overflow:hidden;

}

.btc-progress-fill::after{

    content:"";

    position:absolute;

    inset:0;

    opacity:.30;

    background:

        repeating-linear-gradient(

            -45deg,

            rgba(255,255,255,.18) 0,

            rgba(255,255,255,.18) 12px,

            transparent 12px,

            transparent 24px

        );

    animation:

        btc-progress-flow

        18s

        linear

        infinite;

}

/*==============================================================================
PROGRESS TEXT
==============================================================================*/

.btc-progress-text{

    position:absolute;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#ffffff;

    font-size:1rem;

    font-weight:700;

    letter-spacing:.5px;

    text-shadow:

        0 1px 3px rgba(0,0,0,.75);

    pointer-events:none;

}

/*==============================================================================
CHART CARD
==============================================================================*/

.btc-chart{

    width:100%;

    height:560px;

    overflow:hidden;

    border-radius:12px;

    border:1px solid rgba(255,255,255,.08);

    background:

        linear-gradient(

            180deg,

            #222d4d,

            #1d2743

        );

    transition:

        .3s ease;

}

.btc-chart:hover{

    border-color:

        rgba(82,182,227,.35);

}

/*==============================================================================
ECHART CONTAINER
==============================================================================*/

.btc-chart canvas{

    border-radius:12px;

}

/*==============================================================================
CHART CARD POLISH
==============================================================================*/

.btc-card:has(.btc-chart){

    padding:20px 20px 26px;

}

.btc-card:has(.btc-chart):hover{

    transform:none;

}

/*==============================================================================
LOADING PLACEHOLDER
==============================================================================*/

.btc-chart-loading{

    width:100%;

    height:560px;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#74fff2;

    font-size:15px;

    letter-spacing:2px;

    text-transform:uppercase;

}

.btc-chart-loading::before{

    content:"";

    width:26px;

    height:26px;

    margin-right:12px;

    border-radius:50%;

    border:

        3px solid

        rgba(255,255,255,.15);

    border-top-color:

        var(--btc-primary);

    animation:

        btc-spin

        .8s

        linear

        infinite;

}

/*==============================================================================
CHART REVEAL
==============================================================================*/

.btc-chart{

    opacity:0;

    transform:translateY(10px);

    animation:

        btc-chart-show

        .8s

        ease

        forwards;

}

/*==============================================================================
CHART HEADER SPACING
==============================================================================*/

.btc-card .btc-label + .btc-chart{

    margin-top:12px;

}

/*==============================================================================
EXPORT BUTTON POLISH
==============================================================================*/

.btc-chart:hover{

    box-shadow:

        inset 0 0 0 1px rgba(82,182,227,.15),

        0 14px 30px rgba(0,0,0,.22);

}

/*==============================================================================
TOOLBOX ICON
==============================================================================*/

.btc-chart{

    position:relative;

}

.btc-chart::after{

    content:"";

    position:absolute;

    inset:0;

    pointer-events:none;

    border-radius:12px;

}

/*==============================================================================
ANIMATION
==============================================================================*/

@keyframes btc-chart-show{

    from{

        opacity:0;

        transform:

            translateY(14px);

    }

    to{

        opacity:1;

        transform:none;

    }

}

@keyframes btc-progress-flow{

    from{

        background-position:

            0 0;

    }

    to{

        background-position:

            300px 0;

    }

}

@keyframes btc-spin{

    from{

        transform:rotate(0deg);

    }

    to{

        transform:rotate(360deg);

    }

}
/*==============================================================================
DOCUMENTATION PANEL
==============================================================================*/

.btc-doc{

    background:
        linear-gradient(
            180deg,
            #202b4a,
            #1a2340
        );

}

.btc-doc h5{

    margin:0 0 24px;

    color:#ffffff;

    font-size:1.15rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.btc-doc-grid{

    display:grid;

    grid-template-columns:

        repeat(
            2,
            minmax(280px,1fr)
        );

    gap:34px;

}

.btc-doc-grid p{

    margin:0 0 18px;

    color:var(--btc-text-muted);

    line-height:1.8;

}

.btc-doc-grid strong{

    display:block;

    margin-bottom:8px;

    color:var(--btc-white);

    font-weight:700;

}

/*=============================================================================
SYSTEM DOCUMENTATION
Version 4.4
Place at the END of terminal.css
=============================================================================*/

.btc-doc {

    margin-top: 20px;

    overflow: hidden;

}

.btc-doc summary {

    cursor: pointer;

    user-select: none;

    list-style: none;

    padding: 18px 22px;

    font-size: 14px;

    font-weight: 700;

    letter-spacing: 1px;

    color: #6fffe9;

    border-bottom: 1px solid rgba(255,255,255,.08);

    transition: .25s;

}

.btc-doc summary::-webkit-details-marker {

    display: none;

}

.btc-doc summary::after {

    content: "▼";

    float: right;

    color: #6fffe9;

    transition: transform .25s ease;

}

.btc-doc[open] summary::after {

    transform: rotate(180deg);

}

.btc-doc summary:hover {

    background: rgba(255,255,255,.04);

}

.btc-doc-item {

    padding: 18px 24px;

}

.btc-doc-title {

    font-size: 13px;

    font-weight: 700;

    color: #6fffe9;

    text-transform: uppercase;

    letter-spacing: .8px;

    margin-bottom: 8px;

}

.btc-doc-text {

    color: #c8d3e1;

    line-height: 1.75;

    font-size: 14px;

}

.btc-doc-divider {

    height: 1px;

    background: rgba(255,255,255,.06);

    margin: 0 24px;

}

/*=============================================================================
MOBILE
=============================================================================*/

@media (max-width:768px){

    .btc-doc summary{

        padding:16px;

        font-size:13px;

    }

    .btc-doc-item{

        padding:16px;

    }

    .btc-doc-title{

        font-size:12px;

    }

    .btc-doc-text{

        font-size:13px;

        line-height:1.6;

    }

    .btc-doc-divider{

        margin:0 16px;

    }

}

/*==============================================================================
DISCLAIMER
==============================================================================*/

.btc-disclaimer{

    margin-top:32px;

    color:#8da3c8;

    font-size:.90rem;

    line-height:1.8;

    text-align:center;

}
/*==============================================================================
MARKET PHASE COLORS
==============================================================================*/

.btc-bear{

    color:#ff5d5d;

    text-shadow:
        0 0 10px rgba(255,93,93,.35);

}

.btc-bull{

    color:#35ff83;

    text-shadow:
        0 0 10px rgba(53,255,131,.35);

}

.btc-recovery{

    color:#52d8ff;

    text-shadow:
        0 0 10px rgba(82,216,255,.35);

}

.btc-expansion{

    color:#ffc94d;

    text-shadow:
        0 0 10px rgba(255,201,77,.35);

}

.btc-distribution{

    color:#b56cff;

    text-shadow:
        0 0 10px rgba(181,108,255,.35);

}

.btc-neutral{

    color:#ffffff;

}
/*==============================================================================
LINKS
==============================================================================*/

.btc-terminal a{

    color:var(--btc-primary);

    text-decoration:none;

    transition:.25s;

}

.btc-terminal a:hover{

    color:var(--btc-primary-light);

}

/*==============================================================================
SELECTION
==============================================================================*/

.btc-terminal ::selection{

    background:#5dbbe8;

    color:#ffffff;

}

/*==============================================================================
SCROLLBAR
==============================================================================*/

.btc-terminal ::-webkit-scrollbar{

    width:10px;

    height:10px;

}

.btc-terminal ::-webkit-scrollbar-track{

    background:#10172d;

}

.btc-terminal ::-webkit-scrollbar-thumb{

    background:#41517d;

    border-radius:20px;

}

.btc-terminal ::-webkit-scrollbar-thumb:hover{

    background:#5d73ab;

}

/*==============================================================================
UTILITY
==============================================================================*/

.btc-hidden{

    display:none!important;

}

.btc-text-center{

    text-align:center;

}

.btc-mb-0{

    margin-bottom:0!important;

}

.btc-mt-0{

    margin-top:0!important;

}

/*==============================================================================
FADE
==============================================================================*/

.btc-fade{

    animation:

        btc-fade

        .45s ease;

}

@keyframes btc-fade{

    from{

        opacity:0;

    }

    to{

        opacity:1;

    }

}

/*==============================================================================
TABLET
==============================================================================*/

@media (max-width:1200px){

    .btc-terminal{

        padding:26px;

    }

    .btc-grid{

        grid-template-columns:

            repeat(
                2,
                minmax(260px,1fr)
            );

    }

    .btc-doc-grid{

        grid-template-columns:1fr;

        gap:20px;

    }

    .btc-chart{

        height:500px;

    }

}

/*==============================================================================
MOBILE
==============================================================================*/

@media (max-width:768px){

    .btc-terminal{

        margin:16px;

        padding:18px;

    }

    .btc-header{

        align-items:flex-start;

    }

    .btc-title{

        font-size:1.45rem;

        line-height:1.3;

    }

    .btc-badge{

        width:100%;

    }

    .btc-grid{

        grid-template-columns:1fr;

    }

    .btc-card{

        padding:18px;

    }

    .btc-label{

        font-size:.78rem;

    }

    .btc-value{

        font-size:1.7rem;

    }

    .btc-chart{

        height:360px;

    }

    .btc-progress{

        height:28px;

    }

    .btc-progress-text{

        font-size:.82rem;

    }

}

/*==============================================================================
SMALL MOBILE
==============================================================================*/

@media (max-width:480px){

    .btc-terminal{

        margin:10px;

        padding:14px;

        border-radius:10px;

    }

    .btc-title{

        font-size:1.2rem;

    }

    .btc-value{

        font-size:1.45rem;

    }

    .btc-chart{

        height:300px;

    }

    .btc-doc h5{

        font-size:1rem;

    }

    .btc-doc-grid p{

        font-size:.92rem;

    }

}

/*==============================================================================
PRINT
==============================================================================*/

@media print{

    .btc-badge{

        display:none;

    }

    .btc-chart{

        height:420px;

        break-inside:avoid;

    }

    .btc-card{

        box-shadow:none;

    }

}

/*==============================================================================
REDUCED MOTION
==============================================================================*/

@media (prefers-reduced-motion:reduce){

    *{

        animation:none!important;

        transition:none!important;

        scroll-behavior:auto!important;

    }

}