/* ============================================================
   LiveRates.html — rate table skin
   Visual reference: "Ranka Bulllion 2.0.1/index.html" (#gvData /
   #gvData_top3 inline style block) and
   "Ranka Bulllion 2.0.1/css/ranka-theme.css" (colour palette).
   This file is the single source of styling for the rate table on
   LiveRates.html — it replaces the old dark "rg-" theme table CSS
   that used to live in css/custom.css.
   ============================================================ */
@import url("https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700&family=Inter:wght@400;500;600;700;800&display=swap");

#my-tab {
    --rkt-gold: #c9a84c;
    --rkt-gold-dark: #8b6914;
    --rkt-gold-deeper: #6b4f10;
    --rkt-gold-light: #f5e6c8;
    --rkt-gold-pale: #fff9f0;
    --rkt-gold-border: #e2c97a;
    --rkt-white: #ffffff;
    --rkt-text-dark: #1a1a1a;
    --rkt-text-mid: #5a5a5a;
    --rkt-buy: #1e8c3a;
    --rkt-sell: #c0392b;
    --rkt-buy-neutral-bg: #c9e0f7;
    --rkt-buy-neutral-border: #9cc3ea;
    --rkt-buy-neutral-text: #1f4e7d;
    --rkt-sell-neutral-bg: #f8cfe0;
    --rkt-sell-neutral-border: #ec9fbd;
    --rkt-sell-neutral-text: #7a2a45;
    --rkt-line: rgba(201, 168, 76, 0.3);
    --rkt-commodity-icon-col: 12%;
    font-family: "Inter", "Segoe UI", sans-serif;
}

/* ---------- GOLD / SILVER stacked sections (no swiper, no tabs) ---------- */
#my-tab .rg-rate-section {
    width: 100%;
    margin: 0 0 18px;
}

#my-tab .rg-rate-section:last-child {
    margin-bottom: 0;
}

#my-tab .rg-section-label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 10px;
    color: var(--rkt-gold-dark);
    font-family: "Playfair Display", Georgia, serif;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

#my-tab .rg-section-label::before,
#my-tab .rg-section-label::after {
    content: "";
    flex: 1 1 auto;
    height: 1px;
    background: linear-gradient(90deg, rgba(201, 168, 76, 0.05) 0%, var(--rkt-gold-border) 50%, rgba(201, 168, 76, 0.05) 100%);
}

/* ---------- Shared table shell ---------- */
#my-tab .Trending_Table_Root {
    width: 100% !important;
    max-width: 100% !important;
    border: 0 !important;
    border-collapse: separate !important;
    background: transparent !important;
    margin: 0 auto;
}

#my-tab .Trending_Table_Child1,
#my-tab .Trending_Table_Child2,
#my-tab #gvData,
#my-tab #gvData_silver,
#my-tab #gvData_top3,
#my-tab #gvData_top3_silver {
    background: transparent !important;
    color: var(--rkt-text-dark) !important;
}

/* ---------- Top stat cards (#gvData_top3 / #gvData_top3_silver) ---------- */
#my-tab #gvData_top3,
#my-tab #gvData_top3_silver {
    background: var(--rkt-white) !important;
    border: 1px solid var(--rkt-gold-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 5px 16px rgba(139, 105, 20, 0.12) !important;
    overflow: hidden;
    padding: 0 !important;
    margin-top: 0 !important;
}

#my-tab #gvData_top3 table.table1001,
#my-tab #gvData_top3_silver table.table1001 {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background: transparent !important;
    box-sizing: border-box;
}

#my-tab #gvData_top3 table.table1001 > tbody > tr > td,
#my-tab #gvData_top3_silver table.table1001 > tbody > tr > td {
    position: relative;
    width: 33.333% !important;
    max-width: 33.333% !important;
    min-width: 0 !important;
    height: 112px !important;
    max-height: 112px !important;
    padding: 0 !important;
    vertical-align: top !important;
    box-sizing: border-box;
    overflow: hidden;
}

#my-tab #gvData_top3 table.table1001 > tbody > tr > td:not(:last-child)::after,
#my-tab #gvData_top3_silver table.table1001 > tbody > tr > td:not(:last-child)::after {
    content: "";
    position: absolute;
    right: 0;
    top: 18%;
    width: 1px;
    height: 64%;
    background: var(--rkt-line);
}

#my-tab #gvData_top3 table.table1001 > tbody > tr > td:nth-child(n + 4),
#my-tab #gvData_top3_silver table.table1001 > tbody > tr > td:nth-child(n + 4) {
    display: none !important;
}

#my-tab #gvData_top3 table.goldd,
#my-tab #gvData_top3_silver table.goldd {
    width: 100% !important;
    height: 112px !important;
    min-height: 112px !important;
    max-height: 112px !important;
    table-layout: fixed !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#my-tab #gvData_top3 table.goldd td,
#my-tab #gvData_top3_silver table.goldd td {
    background: transparent !important;
    color: var(--rkt-text-dark) !important;
    max-width: 100%;
    overflow: hidden;
}

#my-tab #gvData_top3 .table1001 table tr:nth-child(1) td,
#my-tab #gvData_top3_silver .table1001 table tr:nth-child(1) td {
    height: 26px !important;
    padding: 9px 4px 0 !important;
    vertical-align: middle !important;
}

#my-tab #gvData_top3 .table1001 table tr:nth-child(2) td,
#my-tab #gvData_top3_silver .table1001 table tr:nth-child(2) td {
    height: 44px !important;
    padding: 2px 4px !important;
    vertical-align: middle !important;
}

#my-tab #gvData_top3 .table1001 table tr:nth-child(3) td,
#my-tab #gvData_top3_silver .table1001 table tr:nth-child(3) td {
    height: 32px !important;
    padding: 2px 4px 8px !important;
    vertical-align: top !important;
}

#my-tab #gvData_top3 .top3-heading,
#my-tab #gvData_top3_silver .top3-heading {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 4px;
    width: 100%;
    min-width: 0;
    text-align: center !important;
    background: transparent !important;
}

#my-tab #gvData_top3 .top3-label,
#my-tab #gvData_top3_silver .top3-label {
    display: inline-block;
    min-width: 0;
    max-width: 100%;
    color: var(--rkt-text-mid) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.2;
}

#my-tab #gvData_top3 span.top5span,
#my-tab #gvData_top3_silver span.top5span {
    color: var(--rkt-text-dark) !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
}

#my-tab #gvData_top3 .top3-range,
#my-tab #gvData_top3_silver .top3-range {
    display: block;
    width: 100%;
    min-width: 0;
    color: var(--rkt-text-mid) !important;
    font-size: 9.5px !important;
    font-weight: 500 !important;
    letter-spacing: 0;
    text-align: center !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

#my-tab #gvData_top3 .boxImg,
#my-tab #gvData_top3 .boxImg1,
#my-tab #gvData_top3 .top-card-img,
#my-tab #gvData_top3_silver .boxImg,
#my-tab #gvData_top3_silver .boxImg1,
#my-tab #gvData_top3_silver .top-card-img {
    display: block;
    width: 18px !important;
    height: 18px !important;
    max-width: 18px;
    max-height: 18px;
    margin: 0 !important;
    object-fit: contain;
    flex-shrink: 0;
}

/* ---------- Main rate list (#gvData / #gvData_silver) ---------- */
#my-tab #gvData,
#my-tab #gvData_silver {
    width: 100% !important;
    max-width: 100% !important;
    border: 0 !important;
    border-radius: 14px !important;
    overflow: hidden;
    margin-top: 18px !important;
    box-shadow: 0 5px 16px rgba(139, 105, 20, 0.12) !important;
    box-sizing: border-box;
    background: var(--rkt-white) !important;
}

#my-tab .rg-commodity-heading {
    display: grid;
    grid-template-columns: var(--rkt-commodity-icon-col) minmax(0, 1fr) 25% 25%;
    align-items: center;
    width: 100%;
    min-height: 38px;
    margin: 0;
    padding: 0;
    background: var(--rkt-white) !important;
    border-bottom: 1px solid #ece7df !important;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    color: var(--rkt-text-dark) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    line-height: 1.2;
    overflow: hidden;
}

/* Products / Buy / Sell Header Strip */
/* #my-tab .rg-commodity-heading {
    display: grid;
    grid-template-columns: var(--rkt-commodity-icon-col) minmax(0, 1fr) 25% 25%;
    align-items: center;

    background: #ffffff !important;
    color: #222 !important;

    padding: 12px 15px !important;
    margin: 10px 12px 8px !important;

    border: 1px solid #ece7df !important;
    border-radius: 12px 12px 0 0 !important;
    border-bottom: 1px solid #ece7df !important;

    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    overflow: hidden;
} */

#my-tab .rg-commodity-heading > div {
    min-width: 0;
}

#my-tab .rg-heading-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

#my-tab .rg-heading-icon::before {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    background: url("../img/icons-gold-bars.png") center / contain no-repeat;
    opacity: 0.95;
}

#my-tab .rg-heading-title {
    text-align: left;
    padding-left: 2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--rkt-text-dark);
}

#my-tab .rg-heading-buy,
#my-tab .rg-heading-sell {
    text-align: center;
}

#my-tab .rg-heading-buy i,
#my-tab .rg-heading-sell i {
    font-size: 11px;
    margin-left: 3px;
}

#my-tab .rg-heading-buy i {
    color: var(--rkt-buy);
}

#my-tab .rg-heading-sell i {
    color: var(--rkt-sell);
}

#my-tab #gvData table.tt_33,
#my-tab #gvData_silver table.tt_33 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-sizing: border-box;
}

#my-tab #gvData table.tt_33 td,
#my-tab #gvData_silver table.tt_33 td {
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
}

#my-tab #gvData table.res_mob_font_width,
#my-tab #gvData_silver table.res_mob_font_width {
    position: relative;
    width: calc(100% - 20px) !important;
    max-width: calc(100% - 20px) !important;
    table-layout: fixed;
    background: var(--rkt-white) !important;
    border: 1px solid rgba(201, 168, 76, 0.35) !important;
    border-radius: 14px !important;
    box-shadow: 0 4px 14px rgba(139, 105, 20, 0.10);
    border-collapse: separate !important;
    border-spacing: 4px 0 !important;
    margin: 8px auto !important;
    cursor: pointer;
    box-sizing: border-box;
    overflow: hidden;
}

#my-tab #gvData table.res_mob_font_width::after,
#my-tab #gvData_silver table.res_mob_font_width::after {
    content: "\276F";
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--rkt-gold-dark);
    font-size: 13px;
    font-weight: 700;
    opacity: 0.55;
    pointer-events: none;
}

#my-tab #gvData table.res_mob_font_width:first-of-type,
#my-tab #gvData_silver table.res_mob_font_width:first-of-type {
    margin-top: 10px !important;
}

#my-tab #gvData table.res_mob_font_width:last-of-type,
#my-tab #gvData_silver table.res_mob_font_width:last-of-type {
    margin-bottom: 10px !important;
}

#my-tab #gvData table.res_mob_font_width .scrip-row-icon,
#my-tab #gvData_silver table.res_mob_font_width .scrip-row-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px;
    object-fit: contain;
    border: 1.5px solid var(--rkt-gold-border);
    border-radius: 50%;
    background: var(--rkt-gold-pale);
    padding: 5px;
}

/* Silver_Bar.png already has its own circular border baked in —
   drop the CSS badge ring so it doesn't get a double circle */
#my-tab #gvData table.res_mob_font_width .scrip-row-icon[src*="silver"],
#my-tab #gvData_silver table.res_mob_font_width .scrip-row-icon[src*="silver"] {
    border: 0;
    background: transparent;
    padding: 3px;
}

#my-tab #gvData span.buy_sell_label,
#my-tab #gvData_silver span.buy_sell_label {
    color: var(--rkt-text-dark) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.01em;
    line-height: 1.25;
}

/* The coloured "pill" lives on a ::before inset from the cell edges —
   a <td> can't take margin and its own background always fills the
   full row height, so this is how we get a short badge with breathing
   room above/below instead of a block spanning the whole row. */
#my-tab #gvData table.res_mob_font_width td[id$="BUY3"],
#my-tab #gvData_silver table.res_mob_font_width td[id$="BUY3"],
#my-tab #gvData table.res_mob_font_width td[id$="SELL3"],
#my-tab #gvData_silver table.res_mob_font_width td[id$="SELL3"] {
    position: relative;
    vertical-align: middle;
    background: transparent !important;
    box-shadow: none !important;
    padding: 12px 6px !important;
}

/* Row cells come from inline style="padding: ..." written by the JS
   that renders these rows — override with !important here rather than
   touching every JS file that builds a row. */
#my-tab #gvData table.res_mob_font_width tr td:nth-child(1),
#my-tab #gvData_silver table.res_mob_font_width tr td:nth-child(1) {
    padding: 12px 6px !important;
}

#my-tab #gvData table.res_mob_font_width tr td:nth-child(2),
#my-tab #gvData_silver table.res_mob_font_width tr td:nth-child(2) {
    padding: 14px 0px 14px 8px !important;
}

#my-tab #gvData table.res_mob_font_width td[id$="BUY3"] > *,
#my-tab #gvData_silver table.res_mob_font_width td[id$="BUY3"] > *,
#my-tab #gvData table.res_mob_font_width td[id$="SELL3"] > *,
#my-tab #gvData_silver table.res_mob_font_width td[id$="SELL3"] > * {
    position: relative;
    z-index: 1;
}

#my-tab #gvData table.res_mob_font_width td[id$="BUY3"]::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="BUY3"]::before {
    content: "";
    position: absolute;
    top: 3px;
    bottom: 2px;
    left: 6px;
    right: 6px;
    z-index: 0;
    border-radius: 8px;
    background: var(--rkt-buy-neutral-bg);
    box-shadow: inset 0 0 0 1px var(--rkt-buy-neutral-border);
}

#my-tab #gvData table.res_mob_font_width td[id$="SELL3"]::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="SELL3"]::before {
    content: "";
    position: absolute;
    top: 3px;
    bottom: 2px;
    left: 6px;
    right: 6px;
    z-index: 0;
    border-radius: 8px;
    background: var(--rkt-sell-neutral-bg);
    box-shadow: inset 0 0 0 1px var(--rkt-sell-neutral-border);
}

/* Rate up / down / unchanged — JS writes the colour inline on the value span (green / red / #FFFFFF) */
#my-tab #gvData table.res_mob_font_width td[id$="BUY3"]:has(span.top55span[style*="color:green"])::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="BUY3"]:has(span.top55span[style*="color:green"])::before,
#my-tab #gvData table.res_mob_font_width td[id$="SELL3"]:has(span.top55span[style*="color:green"])::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="SELL3"]:has(span.top55span[style*="color:green"])::before {
    background: rgba(30, 140, 58, 0.12);
    box-shadow: none;
}

#my-tab #gvData table.res_mob_font_width td[id$="BUY3"]:has(span.top55span[style*="color:red"])::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="BUY3"]:has(span.top55span[style*="color:red"])::before,
#my-tab #gvData table.res_mob_font_width td[id$="SELL3"]:has(span.top55span[style*="color:red"])::before,
#my-tab #gvData_silver table.res_mob_font_width td[id$="SELL3"]:has(span.top55span[style*="color:red"])::before {
    background: rgba(192, 57, 43, 0.1);
    box-shadow: none;
}

#my-tab #gvData span.top55span,
#my-tab #gvData_silver span.top55span {
    display: inline-block !important;
    font-family: "Playfair Display", Georgia, serif !important;
    font-size: clamp(14px, 2.35vw, 18px) !important;
    font-weight: 700 !important;
    line-height: 1.1 !important;
    padding: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--rkt-text-dark) !important;
}

#my-tab #gvData span.top55span[style*="color:green"],
#my-tab #gvData_silver span.top55span[style*="color:green"] {
    color: #ffffff !important;
    background: var(--rkt-buy) !important;
    padding: 1px 5px !important;
    border-radius: 999px !important;
}

#my-tab #gvData span.top55span[style*="color:red"],
#my-tab #gvData_silver span.top55span[style*="color:red"] {
    color: #ffffff !important;
    background: var(--rkt-sell) !important;
    padding: 1px 5px !important;
    border-radius: 999px !important;
}

#my-tab #gvData span.sell,
#my-tab #gvData_silver span.sell {
    display: block !important;
    margin-top: 3px;
    color: var(--rkt-text-mid) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
    white-space: nowrap;
}

#my-tab #gvData span.rate-value,
#my-tab #gvData_silver span.rate-value {
    color: inherit !important;
}

#my-tab #gvData span.sell.rate-low,
#my-tab #gvData_silver span.sell.rate-low {
    color: var(--rkt-sell) !important;
}

#my-tab #gvData span.sell.rate-high,
#my-tab #gvData_silver span.sell.rate-high {
    color: var(--rkt-buy) !important;
}

/* ---------- Responsive ---------- */
@media screen and (max-width: 520px) {
    #my-tab table.table1001 {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        border-spacing: 4px 0 !important;
    }

    #my-tab table.table1001 > tbody {
        display: block !important;
        width: 100% !important;
    }

    #my-tab table.table1001 > tbody > tr {
        display: flex !important;
        width: 100% !important;
        gap: 4px;
    }

    #my-tab table.table1001 > tbody > tr > td {
        display: block !important;
        flex: 1 1 0 !important;
        width: auto !important;
        max-width: none !important;
    }

    #my-tab table.goldd {
        height: 112px !important;
        min-height: 112px !important;
        max-height: 112px !important;
    }

    #my-tab .table1001 table tr:nth-child(1) td {
        height: 24px !important;
        padding: 7px 2px 0 !important;
    }

    #my-tab .table1001 table tr:nth-child(2) td {
        height: 38px !important;
        padding: 2px 2px !important;
    }

    #my-tab .table1001 table tr:nth-child(3) td {
        height: 32px !important;
        padding: 2px 2px 8px !important;
    }

    #my-tab #gvData_top3 .boxImg,
    #my-tab #gvData_top3 .boxImg1,
    #my-tab #gvData_top3 .top-card-img,
    #my-tab #gvData_top3_silver .boxImg,
    #my-tab #gvData_top3_silver .boxImg1,
    #my-tab #gvData_top3_silver .top-card-img {
        width: 15px !important;
        height: 15px !important;
    }

    #my-tab #gvData_top3 span.top5span,
    #my-tab #gvData_top3_silver span.top5span {
        font-size: 19px !important;
    }

    #my-tab #gvData_top3 .top3-label,
    #my-tab #gvData_top3_silver .top3-label {
        font-size: 9px !important;
    }

    #my-tab #gvData_top3 .top3-range,
    #my-tab #gvData_top3_silver .top3-range {
        font-size: 9px !important;
    }

    #my-tab .rg-commodity-heading {
        grid-template-columns: 16% 26% 29% 29%;
        min-height: 34px !important;
        font-size: 11px !important;
    }

    #my-tab #gvData table.res_mob_font_width > tbody > tr,
    #my-tab #gvData_silver table.res_mob_font_width > tbody > tr {
        display: grid !important;
        grid-template-columns: 16% 26% 29% 29%;
        align-items: center;
        width: 100% !important;
    }

    #my-tab #gvData table.res_mob_font_width > tbody > tr > td,
    #my-tab #gvData_silver table.res_mob_font_width > tbody > tr > td {
        display: block !important;
        width: auto !important;
        max-width: 100% !important;
        min-width: 0 !important;
        padding-top: 9px !important;
        padding-bottom: 9px !important;
        overflow: hidden;
    }

    #my-tab #gvData .scrip-row-icon,
    #my-tab #gvData_silver .scrip-row-icon {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px;
        padding: 3px !important;
        margin: 0 auto;
    }

    #my-tab #gvData span.buy_sell_label,
    #my-tab #gvData_silver span.buy_sell_label {
        font-size: 12px !important;
    }

    #my-tab #gvData span.top55span,
    #my-tab #gvData_silver span.top55span {
        font-size: 13px !important;
        padding: 1px 5px !important;
    }

    #my-tab #gvData span.sell,
    #my-tab #gvData_silver span.sell {
        font-size: 9px !important;
    }

    #my-tab .rg-section-label {
        font-size: 13px;
    }
}
