:root {
    --navy: #051428;
    --navy2: #081f3d;
    --navy3: #0c2d57;
    --blue: #0c6fe8;
    --cyan: #00d4ff;
    --sky: #38bdf8;
    --orange: #f59e0b;
    --orange-dark: #d97706;
    --ink: #0f172a;
    --muted: #64748b;
    --soft: #f4f7fb;
    --line: #dbe5f0;
    --white: #ffffff;
    --green: #10b981;
    --red: #ef4444;
    --shadow: 0 18px 50px rgba(5, 20, 40, 0.10);
    --shadow-lg: 0 24px 64px rgba(4, 15, 32, 0.22);

    /* ZU Mining Logo-Matched Brand Design System Tokens */
    --zm-navy-deep: #030c1a;
    --zm-navy-core: #06162d;
    --zm-navy-mid: #0a2244;
    --zm-navy-royal: #0e3160;
    --zm-cyan-electric: #00d4ff;
    --zm-cyan-ice: #7dd3fc;
    --zm-blue-primary: #0c6fe8;
    --zm-blue-deep: #0353b8;
    --zm-gold-bright: #ffe066;
    --zm-gold-metallic: #fbbf24;
    --zm-amber-rich: #f59e0b;
    --zm-amber-deep: #d97706;

    /* Reusable Brand Gradients & Specular Highlights */
    --zm-grad-cyan-blue: linear-gradient(135deg, #0ea5e9 0%, #0c6fe8 52%, #0353b8 100%);
    --zm-grad-cyan-blue-hover: linear-gradient(135deg, #38bdf8 0%, #0e7afe 48%, #0262d6 100%);
    --zm-grad-gold-amber: linear-gradient(135deg, #ffd452 0%, #fbbf24 42%, #f59e0b 78%, #d97706 100%);
    --zm-grad-gold-amber-hover: linear-gradient(135deg, #ffe066 0%, #fcd34d 42%, #f59e0b 80%, #b45309 100%);
    --zm-grad-cyan-gold: linear-gradient(135deg, #38bdf8 0%, #00d4ff 46%, #fbbf24 100%);
    --zm-grad-cyan-gold-hover: linear-gradient(135deg, #7dd3fc 0%, #00e5ff 44%, #fcd34d 100%);
    --zm-grad-navy-header: linear-gradient(135deg, #051326 0%, #0a2244 55%, #0d2d59 100%);
    --zm-gloss-top: inset 0 1px 0 rgba(255, 255, 255, 0.36);
    --zm-gloss-gold: inset 0 1px 0 rgba(255, 255, 255, 0.62);
    --zm-gloss-navy: inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding-top: 0;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    color: var(--ink);
    background: #f8fafc;
    overflow-x: hidden;
}

a {
    text-decoration: none;
    color: inherit;
}

.shell {
    width: min(1240px, calc(100% - 32px));
    margin: 0 auto;
}

.public-content {
    padding-top: var(--public-header-offset, 86px);
}

/* Top Ticker Bar */
.ticker {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1100;
    background: #030d1c;
    color: #dbe9f7;
    border-bottom: 1px solid rgba(56, 189, 248, 0.16);
    overflow: hidden;
}

.ticker-inner {
    display: flex;
    align-items: center;
    gap: 16px;
    min-height: 36px;
}

.ticker-label {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.14em;
    color: var(--cyan);
    background: rgba(0, 212, 255, 0.1);
    border: 1px solid rgba(0, 212, 255, 0.25);
    padding: 3px 9px;
    border-radius: 999px;
    white-space: nowrap;
}

.ticker-live-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #10b981;
    box-shadow: 0 0 8px #10b981;
}

.ticker-track {
    overflow: hidden;
    white-space: nowrap;
    flex: 1;
}

.ticker-run {
    display: flex;
    width: max-content;
    animation: tickerMove var(--ticker-speed, 36s) linear infinite;
    will-change: transform;
}

.ticker-run:hover {
    animation-play-state: paused;
}

.ticker-group {
    display: flex;
    flex: 0 0 max-content;
    align-items: center;
}

.ticker-message {
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    margin-right: 52px;
    font-size: 12px;
}

.ticker-text {
    display: inline-block;
    flex: 0 0 auto;
}

.ticker-gradient {
    background: linear-gradient(90deg, var(--ticker-color, #38bdf8), #fbbf24);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent !important;
}

.ticker-run a {
    color: #38bdf8;
    font-weight: 800;
    margin-left: 8px;
}

.ticker-icon {
    width: 18px;
    height: 18px;
    object-fit: contain;
    margin-right: 6px;
}

.ticker-emoji {
    color: initial !important;
    background: none !important;
    -webkit-text-fill-color: initial !important;
    font-family: "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", sans-serif;
}

@keyframes tickerMove {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

/* Main Site Header & Navigation */
.site-header {
    position: fixed;
    top: var(--ticker-height, 0px);
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background: linear-gradient(180deg, rgba(4, 15, 32, 0.98) 0%, rgba(6, 22, 46, 0.96) 100%);
    backdrop-filter: blur(18px);
    border-bottom: 1px solid rgba(56, 189, 248, 0.24);
    box-shadow: 0 12px 32px rgba(2, 10, 24, 0.42), inset 0 -1px 0 rgba(251, 191, 36, 0.16);
}

.header-inner {
    height: 82px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 0 12px;
    box-sizing: border-box;
}

.brand {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    margin-left: 4px;
}

.brand img {
    display: block;
    width: 210px;
    height: auto;
    max-height: 66px;
    object-fit: contain;
    transition: transform 0.2s ease;
}

.brand:hover img {
    transform: scale(1.02);
}

.nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    flex-wrap: nowrap;
    margin: 0 auto;
}

.nav > a,
.nav-dropdown-trigger {
    padding: 8px 11px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
    color: #cbd5e1;
    white-space: nowrap;
    transition: all 0.18s ease;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    line-height: 1.2;
}

.nav > a:hover,
.nav-dropdown-wrap:hover .nav-dropdown-trigger,
.nav-dropdown-wrap.is-open .nav-dropdown-trigger {
    color: #ffffff;
    background: rgba(56, 189, 248, 0.10);
}

.nav > a.active,
.nav-dropdown-trigger.active {
    color: #38bdf8;
    background: rgba(56, 189, 248, 0.14);
    box-shadow: inset 0 -2px 0 #00d4ff;
}

.nav-dropdown-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
}

.nav-dropdown-caret {
    opacity: 0.8;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.nav-dropdown-wrap:hover .nav-dropdown-caret,
.nav-dropdown-wrap:focus-within .nav-dropdown-caret,
.nav-dropdown-wrap.is-open .nav-dropdown-caret {
    transform: rotate(180deg);
    opacity: 1;
    color: #38bdf8;
}

.nav-dropdown-menu {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    min-width: 248px;
    padding: 7px;
    border-radius: 12px;
    background: linear-gradient(180deg, rgba(6, 20, 43, 0.98) 0%, rgba(4, 14, 32, 0.99) 100%);
    border: 1px solid rgba(56, 189, 248, 0.32);
    box-shadow: 0 16px 36px rgba(2, 8, 20, 0.65), 0 0 0 1px rgba(251, 191, 36, 0.12) inset;
    backdrop-filter: blur(16px);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
    z-index: 120;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.nav-dropdown-menu::before {
    content: '';
    position: absolute;
    top: -10px;
    left: 0;
    right: 0;
    height: 10px;
}

.nav-dropdown-wrap:hover .nav-dropdown-menu,
.nav-dropdown-wrap:focus-within .nav-dropdown-menu,
.nav-dropdown-wrap.is-open .nav-dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.nav-dropdown-item {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 9px 12px;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.16s ease, border-color 0.16s ease;
    border: 1px solid transparent;
}

.nav-dropdown-item:hover {
    background: rgba(56, 189, 248, 0.12);
    border-color: rgba(56, 189, 248, 0.25);
}

.nav-dropdown-item.active {
    background: rgba(56, 189, 248, 0.16);
    border-color: rgba(0, 212, 255, 0.4);
}

.nav-dropdown-item-title {
    font-size: 12.5px;
    font-weight: 800;
    color: #f8fafc;
    line-height: 1.25;
}

.nav-dropdown-item.active .nav-dropdown-item-title,
.nav-dropdown-item:hover .nav-dropdown-item-title {
    color: #38bdf8;
}

.nav-dropdown-item-sub {
    font-size: 11px;
    font-weight: 600;
    color: #94a3b8;
    line-height: 1.3;
}

.header-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    margin-right: 6px;
}

.header-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 9px 15px;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 850;
    color: #031022 !important;
    background: var(--zm-grad-cyan-gold);
    border: 1px solid rgba(253, 224, 71, 0.55);
    box-shadow: 0 4px 16px rgba(0, 212, 255, 0.26), var(--zm-gloss-gold);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
    white-space: nowrap;
}

.header-cta-btn:hover {
    background: var(--zm-grad-cyan-gold-hover);
    transform: translateY(-1.5px);
    box-shadow: 0 7px 22px rgba(0, 212, 255, 0.36), 0 2px 10px rgba(251, 191, 36, 0.28), var(--zm-gloss-gold);
}

/* ZU Trader Ecosystem Navigation CTA */
.nav-zu-trader-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 7px 11px;
    border-radius: 9px;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1.2;
    white-space: nowrap;
    text-decoration: none;
    color: #fef3c7 !important;
    background: linear-gradient(135deg, #130d04 0%, #221505 50%, #140d03 100%);
    border: 1px solid rgba(245, 158, 11, 0.6);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.45), 0 0 10px rgba(245, 158, 11, 0.18), inset 0 1px 0 rgba(251, 191, 36, 0.3);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease, color 0.18s ease;
}

.nav-zu-trader-btn .nav-zu-trader-icon {
    color: #f59e0b;
    stroke: #f59e0b;
    flex-shrink: 0;
    transition: transform 0.2s ease, stroke 0.2s ease;
}

.nav-zu-trader-btn .nav-zu-trader-ext {
    color: #fbbf24;
    opacity: 0.7;
    flex-shrink: 0;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

.nav-zu-trader-btn:hover {
    color: #ffffff !important;
    background: linear-gradient(135deg, #1c1305 0%, #2f1d07 50%, #1c1204 100%);
    border-color: #fbbf24;
    transform: translateY(-1px);
    box-shadow: 0 4px 18px rgba(245, 158, 11, 0.4), 0 0 16px rgba(251, 191, 36, 0.28), inset 0 1px 0 rgba(253, 230, 138, 0.5);
}

.nav-zu-trader-btn:hover .nav-zu-trader-icon {
    stroke: #fde047;
    transform: scale(1.15);
}

.nav-zu-trader-btn:hover .nav-zu-trader-ext {
    opacity: 1;
    transform: translate(1px, -1px);
}

/* Mobile ZU Trader CTA */
.mobile-nav a.mobile-nav-zu-trader-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    color: #fef3c7 !important;
    background: linear-gradient(135deg, rgba(26, 17, 4, 0.95) 0%, rgba(44, 28, 6, 0.98) 100%);
    border: 1px solid rgba(245, 158, 11, 0.65);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4), 0 0 12px rgba(245, 158, 11, 0.2), inset 0 1px 0 rgba(251, 191, 36, 0.25);
    text-decoration: none;
    transition: all 0.18s ease;
}

.mobile-nav-zu-trader-left {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.mobile-nav-zu-trader-left svg {
    color: #f59e0b;
    stroke: #f59e0b;
}

.mobile-nav-zu-trader-tag {
    font-size: 10px;
    font-weight: 750;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 99px;
    background: rgba(245, 158, 11, 0.18);
    border: 1px solid rgba(245, 158, 11, 0.4);
    color: #fcd34d;
}

.mobile-nav a.mobile-nav-zu-trader-btn:hover {
    background: linear-gradient(135deg, #241706 0%, #362208 100%);
    border-color: #fbbf24;
    color: #ffffff !important;
}

.mobile-menu {
    display: none;
    border: 1px solid rgba(148, 163, 184, 0.28);
    background: rgba(15, 23, 42, 0.7);
    color: #f8fafc;
    border-radius: 10px;
    padding: 8px 10px;
    cursor: pointer;
}

.mobile-nav {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 999;
    max-height: calc(100vh - var(--public-header-offset, 118px));
    overflow-y: auto;
    box-shadow: 0 20px 44px rgba(2, 8, 20, 0.72);
}

.mobile-nav a {
    padding: 10px 12px;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 700;
    color: #dbeafe;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.07);
}

.mobile-nav a.active,
.mobile-nav a:hover {
    background: rgba(56, 189, 248, 0.15);
    border-color: rgba(56, 189, 248, 0.35);
    color: #38bdf8;
}

.mobile-nav-submenu-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.mobile-nav a.mobile-nav-subitem {
    padding: 8px 12px 8px 20px;
    font-size: 12px;
    font-weight: 600;
    color: #93c5fd;
    background: rgba(15, 23, 42, 0.55);
    border-left: 2px solid rgba(56, 189, 248, 0.45);
}

@media (min-width: 1121px) {
    .mobile-menu,
    .mobile-nav,
    .mobile-nav.open {
        display: none !important;
    }
}

@media (max-width: 1280px) {
    .brand img {
        width: 186px;
    }
    .nav > a,
    .nav-dropdown-trigger {
        padding: 7px 9px;
        font-size: 12.4px;
    }
    .nav-zu-trader-btn {
        padding: 6px 9px;
        font-size: 11.8px;
        gap: 5px;
    }
    .header-cta-btn {
        padding: 8px 13px;
        font-size: 12px;
    }
}

@media (max-width: 1220px) and (min-width: 1121px) {
    .header-inner {
        gap: 8px;
        padding: 0 6px;
    }
    .brand {
        margin-left: 0;
    }
    .brand img {
        width: 160px;
    }
    .nav {
        gap: 2px;
    }
    .nav > a,
    .nav-dropdown-trigger {
        padding: 6px 7px;
        font-size: 11.7px;
    }
    .nav-zu-trader-btn {
        padding: 5px 7px;
        font-size: 11.2px;
        gap: 4px;
    }
    .header-actions {
        margin-right: 0;
    }
    .header-cta-btn {
        padding: 7px 11px;
        font-size: 11.5px;
    }
}

@media (max-width: 1120px) {
    .nav {
        display: none;
    }
    .mobile-menu {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }
    .mobile-nav.open {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
        padding: 14px 16px 18px;
        background: #06172e;
        border-top: 1px solid rgba(56, 189, 248, 0.15);
        border-bottom: 1px solid rgba(56, 189, 248, 0.25);
    }
}

@media (max-width: 640px) {
    .header-inner {
        height: 70px;
    }
    .brand img {
        width: 170px;
    }
    .mobile-nav.open {
        grid-template-columns: 1fr;
    }
    .ticker-label {
        display: none;
    }
}

@media (max-width: 480px) {
    .header-inner {
        gap: 8px;
        padding: 0 4px;
    }
    .brand {
        margin-left: 0;
    }
    .brand img {
        width: 140px;
    }
    .header-actions {
        gap: 6px;
        margin-right: 0;
    }
    .header-cta-btn {
        padding: 7px 10px;
        font-size: 11.5px;
    }
}

/* Premium Hero Section & Live Mining Profitability Dashboard */
.zm-hero {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 82% 16%, rgba(0, 212, 255, 0.16), transparent 36%),
        radial-gradient(circle at 12% 86%, rgba(245, 158, 11, 0.11), transparent 34%),
        linear-gradient(135deg, #030b18 0%, #05162e 50%, #082347 100%);
    color: #ffffff;
    padding: 46px 0 52px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.22);
}

.zm-hero-grid {
    display: grid;
    grid-template-columns: 0.96fr 1.04fr;
    gap: 38px;
    align-items: center;
}

.zm-hero-grid > * {
    min-width: 0;
}

.zm-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    border-radius: 999px;
    background: rgba(0, 212, 255, 0.10);
    border: 1px solid rgba(56, 189, 248, 0.28);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #7dd3fc;
}

.zm-eyebrow-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #10b981;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.18);
    flex-shrink: 0;
}

.zm-hero h1 {
    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.08;
    letter-spacing: -0.03em;
    font-weight: 900;
    margin: 18px 0 14px;
    color: #ffffff;
}

.zm-hero h1 span {
    background: linear-gradient(90deg, #38bdf8 0%, #00d4ff 48%, #fbbf24 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.zm-hero-lead {
    font-size: 16.5px;
    line-height: 1.65;
    color: #cbd5e1;
    max-width: 600px;
    margin: 0 0 20px;
}

.zm-hero-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.zm-hero-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 9px;
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(148, 163, 184, 0.18);
    font-size: 12px;
    font-weight: 700;
    color: #e2e8f0;
}

.zm-hero-ctas {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 22px;
}

.btn-zm-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 24px;
    border-radius: 12px;
    font-size: 14.5px;
    font-weight: 850;
    color: #031022 !important;
    background: var(--zm-grad-cyan-gold);
    border: 1px solid rgba(253, 224, 71, 0.55);
    box-shadow: 0 10px 26px rgba(0, 212, 255, 0.26), 0 4px 12px rgba(245, 158, 11, 0.18), var(--zm-gloss-gold);
    transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease, border-color 0.18s ease;
    cursor: pointer;
    text-decoration: none;
}

.btn-zm-primary:hover {
    background: var(--zm-grad-cyan-gold-hover);
    border-color: #fde047;
    transform: translateY(-1.5px);
    box-shadow: 0 14px 32px rgba(0, 212, 255, 0.34), 0 6px 16px rgba(251, 191, 36, 0.26), var(--zm-gloss-gold);
}

.btn-zm-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 22px;
    border-radius: 12px;
    font-size: 14.5px;
    font-weight: 800;
    color: #f8fafc !important;
    background: linear-gradient(135deg, rgba(12, 34, 66, 0.92) 0%, rgba(7, 22, 44, 0.96) 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.45);
    box-shadow: 0 8px 20px rgba(2, 8, 22, 0.36), var(--zm-gloss-navy);
    transition: background 0.18s ease, border-color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
    text-decoration: none;
}

.btn-zm-secondary:hover {
    background: linear-gradient(135deg, rgba(16, 46, 88, 0.96) 0%, rgba(10, 31, 62, 0.99) 100%);
    border-color: #fbbf24;
    color: #ffffff !important;
    box-shadow: 0 12px 26px rgba(0, 212, 255, 0.22), 0 0 0 1px rgba(251, 191, 36, 0.24), var(--zm-gloss-top);
    transform: translateY(-1.5px);
}

.zm-hero-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    padding-top: 20px;
    border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.zm-hero-metric {
    background: rgba(15, 23, 42, 0.42);
    border: 1px solid rgba(148, 163, 184, 0.12);
    border-radius: 12px;
    padding: 11px 12px;
}

.zm-hero-metric strong {
    display: block;
    font-size: 21px;
    font-weight: 900;
    color: #38bdf8;
    line-height: 1.15;
}

.zm-hero-metric span {
    display: block;
    margin-top: 3px;
    font-size: 11px;
    color: #94a3b8;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

/* Right Hero Panel — Live Mining Profitability Dashboard */
.zm-profit-dashboard {
    background: linear-gradient(165deg, rgba(9, 28, 56, 0.96) 0%, rgba(4, 13, 28, 0.98) 100%);
    border: 1px solid rgba(56, 189, 248, 0.30);
    border-radius: 20px;
    padding: 18px 18px 14px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.48), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
}

.zm-dash-header {
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.16);
}

.zm-dash-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 12px;
}

.zm-dash-title-group {
    display: flex;
    align-items: center;
    gap: 10px;
}

.zm-dash-icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: rgba(0, 212, 255, 0.12);
    border: 1px solid rgba(56, 189, 248, 0.28);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.zm-dash-heading {
    margin: 0;
    font-size: 14.5px;
    font-weight: 900;
    letter-spacing: 0.02em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-dash-subtitle {
    margin: 3px 0 0;
    font-size: 11.5px;
    color: #94a3b8;
    line-height: 1.3;
}

.zm-dash-subtitle strong {
    color: #7dd3fc;
    font-weight: 800;
}

.zm-dash-status-group {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
}

.zm-dash-freshness {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 10.5px;
    font-weight: 800;
    padding: 4px 9px;
    border-radius: 999px;
    letter-spacing: 0.03em;
}

.zm-dash-freshness.is-live {
    background: rgba(16, 185, 129, 0.14);
    color: #34d399;
    border: 1px solid rgba(16, 185, 129, 0.32);
}

.zm-dash-freshness.is-updating {
    background: rgba(56, 189, 248, 0.14);
    color: #7dd3fc;
    border: 1px solid rgba(56, 189, 248, 0.34);
}

.zm-dash-freshness.is-stale {
    background: rgba(245, 158, 11, 0.14);
    color: #fbbf24;
    border: 1px solid rgba(245, 158, 11, 0.32);
}

.zm-dash-freshness.is-unavailable {
    background: rgba(239, 68, 68, 0.14);
    color: #f87171;
    border: 1px solid rgba(239, 68, 68, 0.32);
}

.zm-dash-status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.zm-dash-rate-pill {
    font-size: 10.5px;
    font-weight: 800;
    padding: 4px 9px;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.78);
    color: #cbd5e1;
    border: 1px solid rgba(148, 163, 184, 0.22);
    white-space: nowrap;
}

/* GPU & ASIC Mode Switcher Tabs — Both Always Styled as Distinct Professional Buttons */
.zm-dash-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 6px;
    border-radius: 14px;
    background: rgba(3, 10, 22, 0.78);
    border: 1px solid rgba(148, 163, 184, 0.20);
    margin-bottom: 10px;
}

.zm-dash-tab {
    appearance: none;
    box-sizing: border-box;
    width: 100%;
    min-height: 64px;
    border: 1.5px solid rgba(100, 149, 214, 0.36);
    background: linear-gradient(145deg, rgba(16, 33, 61, 0.92) 0%, rgba(9, 21, 40, 0.96) 100%);
    color: #cbd5e1;
    border-radius: 11px;
    padding: 9px 12px;
    text-align: left;
    cursor: pointer;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 4px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.06), 0 2px 8px rgba(0, 0, 0, 0.24);
}

.zm-dash-tab:hover {
    color: #f8fafc;
    border-color: rgba(56, 189, 248, 0.58);
    background: linear-gradient(145deg, rgba(22, 46, 84, 0.95) 0%, rgba(12, 30, 58, 0.98) 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.10), 0 4px 12px rgba(0, 0, 0, 0.28);
}

.zm-dash-tab:focus-visible {
    outline: 2px solid #38bdf8;
    outline-offset: 2px;
}

.zm-dash-tab.is-active {
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.22) 0%, rgba(12, 111, 232, 0.32) 100%);
    border-color: #38bdf8;
    color: #ffffff;
    box-shadow: 0 0 0 1px rgba(56, 189, 248, 0.24), 0 6px 16px rgba(0, 180, 255, 0.20), inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.zm-dash-tab-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    flex-wrap: wrap;
}

.zm-dash-tab-title {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
    font-weight: 850;
    line-height: 1.2;
    color: #e2e8f0;
}

.zm-dash-tab-title svg {
    color: #7dd3fc;
    flex-shrink: 0;
}

.zm-dash-tab.is-active .zm-dash-tab-title {
    color: #ffffff;
}

.zm-dash-tab.is-active .zm-dash-tab-title svg {
    color: #38bdf8;
}

.zm-dash-tab-hw-badge {
    display: inline-flex;
    align-items: center;
    font-size: 10px;
    font-weight: 800;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(15, 23, 42, 0.68);
    color: #94a3b8;
    border: 1px solid rgba(148, 163, 184, 0.26);
    white-space: nowrap;
}

.zm-dash-tab:hover .zm-dash-tab-hw-badge {
    color: #cbd5e1;
    border-color: rgba(56, 189, 248, 0.36);
}

.zm-dash-tab.is-active .zm-dash-tab-hw-badge {
    background: rgba(3, 15, 33, 0.68);
    color: #7dd3fc;
    border-color: rgba(56, 189, 248, 0.52);
}

.zm-dash-tab-meta {
    font-size: 10px;
    font-weight: 700;
    color: #94a3b8;
    letter-spacing: 0.02em;
    line-height: 1.25;
}

.zm-dash-tab.is-active .zm-dash-tab-meta {
    color: #bae6fd;
}

.zm-dash-col-legend {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 6px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #64748b;
}

/* Scrollable Coin Profitability List (~5 cards visible on desktop) */
.zm-dash-panel {
    position: relative;
    margin-top: 8px;
}

.zm-dash-panel[hidden] {
    display: none !important;
}

.zm-dash-scroll-viewport {
    max-height: 410px;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-right: 4px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    scrollbar-width: thin;
    scrollbar-color: rgba(56, 189, 248, 0.38) rgba(15, 23, 42, 0.5);
}

.zm-dash-scroll-viewport::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}

.zm-dash-scroll-viewport::-webkit-scrollbar-track {
    background: rgba(15, 23, 42, 0.5);
    border-radius: 999px;
}

.zm-dash-scroll-viewport::-webkit-scrollbar-thumb {
    background: rgba(56, 189, 248, 0.38);
    border-radius: 999px;
}

.zm-dash-scroll-viewport::-webkit-scrollbar-thumb:hover {
    background: rgba(56, 189, 248, 0.62);
}

/* Coin Profitability Card */
.zm-profit-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 12px;
    background: rgba(15, 23, 42, 0.58);
    border: 1px solid rgba(148, 163, 184, 0.14);
    transition: background 0.15s ease, border-color 0.15s ease;
    text-decoration: none;
    min-height: 74px;
}

.zm-profit-card:hover {
    background: rgba(30, 58, 95, 0.55);
    border-color: rgba(56, 189, 248, 0.38);
}

.zm-profit-card.is-unbenchmarked {
    opacity: 0.78;
    background: rgba(15, 23, 42, 0.36);
    border-style: dashed;
}

.zm-profit-card-left {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    flex: 1;
}

.zm-profit-rank {
    font-size: 11px;
    font-weight: 850;
    color: #64748b;
    width: 22px;
    text-align: center;
    flex-shrink: 0;
}

.zm-coin-logo {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    object-fit: contain;
    background: linear-gradient(145deg, #ffffff 0%, #e2e8f0 100%);
    border: 1.5px solid rgba(125, 211, 252, 0.45);
    box-shadow: 0 2px 6px rgba(3, 12, 26, 0.28), inset 0 1px 0 #ffffff;
    padding: 4px;
    flex-shrink: 0;
}

.zm-coin-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 11px;
    color: #0284c7;
    background: linear-gradient(145deg, #ffffff 0%, #e2e8f0 100%);
}

.zm-profit-coin-info {
    min-width: 0;
    flex: 1;
}

.zm-profit-coin-head {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 3px;
}

.zm-profit-coin-name {
    font-size: 13.5px;
    font-weight: 850;
    color: #ffffff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-profit-coin-sym {
    font-size: 11px;
    font-weight: 800;
    color: #94a3b8;
}

.zm-profit-algo-badge {
    font-size: 10px;
    font-weight: 800;
    padding: 1.5px 7px;
    border-radius: 6px;
    background: rgba(56, 189, 248, 0.12);
    color: #7dd3fc;
    border: 1px solid rgba(56, 189, 248, 0.24);
    white-space: nowrap;
}

.zm-profit-aux-badge {
    font-size: 9.5px;
    font-weight: 800;
    padding: 1.5px 6px;
    border-radius: 6px;
    background: rgba(245, 158, 11, 0.14);
    color: #fbbf24;
    border: 1px solid rgba(245, 158, 11, 0.28);
    white-space: nowrap;
}

.zm-profit-hw-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
    font-size: 11px;
    color: #94a3b8;
    line-height: 1.3;
}

.zm-profit-hw-model {
    color: #cbd5e1;
    font-weight: 700;
}

.zm-profit-sep {
    color: #475569;
}

.zm-profit-spec {
    color: #94a3b8;
    font-weight: 600;
}

.zm-profit-spec.is-unavail {
    color: #94a3b8;
    font-style: italic;
}

.zm-profit-card-right {
    text-align: right;
    flex-shrink: 0;
}

.zm-profit-net {
    font-size: 14px;
    font-weight: 900;
    line-height: 1.25;
    white-space: nowrap;
}

.zm-profit-breakdown {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    margin-top: 3px;
    font-size: 10.5px;
    color: #94a3b8;
    white-space: nowrap;
}

.zm-profit-rev {
    color: #cbd5e1;
    font-weight: 600;
}

.zm-profit-elec {
    color: #94a3b8;
}

.zm-profit-unavail-note {
    font-size: 10px;
    color: #64748b;
}

.profit-pos { color: #34d399; }
.profit-neg { color: #f87171; }
.profit-zero { color: #94a3b8; }
.profit-unavailable {
    display: inline-block;
    font-size: 11px;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 6px;
    background: rgba(148, 163, 184, 0.12);
    color: #94a3b8;
    border: 1px solid rgba(148, 163, 184, 0.22);
}

/* Dashboard Footer & Subtle Scroll Hint */
.zm-dash-footer {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(148, 163, 184, 0.16);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.zm-dash-scroll-hint {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 5px 10px;
    border-radius: 8px;
    background: rgba(3, 10, 22, 0.55);
    border: 1px solid rgba(56, 189, 248, 0.16);
    font-size: 11px;
    font-weight: 700;
    color: #7dd3fc;
    transition: opacity 0.2s ease;
}

.zm-dash-footer-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-size: 11.5px;
    color: #94a3b8;
}

.zm-dash-calc-link {
    color: #38bdf8;
    font-weight: 800;
    text-decoration: none;
}

.zm-dash-calc-link:hover {
    color: #7dd3fc;
    text-decoration: underline;
}

/* Sections & Cards */
.zm-section {
    padding: 72px 0;
}

.zm-section-alt {
    background: #ffffff;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}

.zm-section-dark {
    background: linear-gradient(135deg, #041225 0%, #082347 100%);
    color: #ffffff;
}

.zm-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 32px;
    flex-wrap: wrap;
}

.zm-kicker {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--blue);
    margin-bottom: 8px;
}

.zm-section-dark .zm-kicker {
    color: var(--cyan);
}

.zm-section-head h2 {
    font-size: clamp(26px, 3vw, 36px);
    line-height: 1.15;
    letter-spacing: -0.025em;
    margin: 0 0 8px;
    font-weight: 900;
}

.zm-section-head p {
    margin: 0;
    font-size: 15.5px;
    color: var(--muted);
    max-width: 680px;
    line-height: 1.6;
}

.zm-section-dark .zm-section-head p {
    color: #94a3b8;
}

/* Homepage Quick Calculator Card (Section 2) */
.zm-quick-calc-section {
    padding: 58px 0 64px;
    background: linear-gradient(180deg, #f4f8fd 0%, #eaf1fa 100%);
    border-bottom: 1px solid #dbe5f1;
}

.zm-quick-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 22px;
    flex-wrap: wrap;
}

.zm-quick-section-title-group h2 {
    font-size: clamp(24px, 2.7vw, 33px);
    line-height: 1.15;
    letter-spacing: -0.025em;
    margin: 0 0 6px;
    font-weight: 900;
    color: #061831;
}

.zm-quick-section-title-group p {
    margin: 0;
    font-size: 14.5px;
    color: #475569;
    max-width: 720px;
    line-height: 1.55;
}

.zm-quick-head-meta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-quick-head-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 750;
    color: #e0f2fe;
    background: rgba(14, 42, 80, 0.72);
    border: 1px solid rgba(56, 189, 248, 0.32);
    white-space: nowrap;
}

.zm-quick-head-pill-muted {
    color: #fde68a;
    background: rgba(245, 158, 11, 0.14);
    border-color: rgba(251, 191, 36, 0.36);
}

.zm-quick-head-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #34d399;
    box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.22);
}

.zm-quick-calc-card {
    background: #ffffff;
    border: 1.5px solid #cbd5e1;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(4, 18, 37, 0.09);
}

.zm-quick-calc-top {
    background: linear-gradient(135deg, #061830 0%, #0b2952 100%);
    color: #ffffff;
    padding: 18px 24px 16px;
    border-bottom: 2px solid rgba(56, 189, 248, 0.38);
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.zm-quick-header-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.zm-quick-calc-top-copy {
    max-width: 610px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-quick-calc-top-copy h2,
.zm-quick-calc-top-copy h3 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.015em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-quick-calc-top-copy p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-quick-header-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding-top: 12px;
    border-top: 1px solid rgba(56, 189, 248, 0.2);
}

/* Segmented GPU / ASIC / CPU Tab Group — Cohesive Navy-Blue Surface */
.zm-quick-cat-switcher {
    display: inline-grid;
    grid-template-columns: repeat(3, minmax(136px, 1fr));
    gap: 6px;
    background: linear-gradient(180deg, #0e2a50 0%, #091e3a 100%);
    padding: 5px;
    border-radius: 12px;
    border: 1px solid rgba(125, 211, 252, 0.28);
    box-shadow: inset 0 1px 2px rgba(3, 10, 22, 0.4), 0 4px 12px rgba(4, 15, 32, 0.22);
}

.zm-quick-cat-btn {
    appearance: none;
    box-sizing: border-box;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 0 15px;
    border-radius: 8px;
    border: 1px solid rgba(148, 163, 184, 0.26);
    background: linear-gradient(180deg, rgba(24, 55, 100, 0.78) 0%, rgba(16, 40, 76, 0.85) 100%);
    color: #dbeafe;
    font: inherit;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: 0.01em;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.16s ease, border-color 0.16s ease, color 0.16s ease, box-shadow 0.16s ease;
}

.zm-quick-cat-btn:hover {
    background: linear-gradient(180deg, rgba(32, 70, 124, 0.92) 0%, rgba(22, 52, 96, 0.95) 100%);
    border-color: rgba(56, 189, 248, 0.55);
    color: #ffffff;
}

.zm-quick-cat-btn:focus-visible {
    outline: 2px solid #38bdf8;
    outline-offset: 2px;
}

.zm-quick-cat-btn.active,
.zm-quick-cat-btn.is-active {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border-color: #7dd3fc;
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(14, 165, 233, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.zm-quick-cat-icon {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(148, 163, 184, 0.65);
    flex-shrink: 0;
    transition: background 0.16s ease, box-shadow 0.16s ease;
}

.zm-quick-cat-btn.active .zm-quick-cat-icon,
.zm-quick-cat-btn.is-active .zm-quick-cat-icon {
    background: #ffffff;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.26);
}

.zm-quick-calc-body {
    padding: 22px 24px;
    display: grid;
    grid-template-columns: 1.05fr 0.95fr;
    gap: 22px;
    align-items: stretch;
}

/* Left Column: Redesigned Hardware Selection Panel */
.zm-quick-controls-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 16px;
    background: linear-gradient(180deg, #f8fafd 0%, #f1f5fb 100%);
    border: 1.5px solid #d5e0ee;
    border-radius: 16px;
    padding: 18px 20px;
    box-shadow: inset 0 1px 0 #ffffff;
}

.zm-quick-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    padding-bottom: 12px;
    border-bottom: 1px solid #dde6f2;
}

.zm-quick-panel-title-wrap {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.zm-quick-panel-title {
    font-size: 14px;
    font-weight: 850;
    color: #0b2545;
    letter-spacing: -0.01em;
}

.zm-quick-panel-subtitle {
    font-size: 11.5px;
    font-weight: 600;
    color: #64748b;
}

.zm-quick-panel-meta {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.zm-quick-meta-pill {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    color: #334155;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    white-space: nowrap;
}

.zm-quick-meta-pill-accent {
    color: #0369a1;
    background: #f0f9ff;
    border-color: #bae6fd;
}

/* Strict 2x2 Input Grid — Identical Field Heights & Zero Label Wrapping */
.zm-quick-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 16px;
    row-gap: 14px;
    align-items: start;
}

.zm-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.zm-field-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 20px;
    min-height: 20px;
    font-size: 11.5px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.035em;
    color: #0f2544;
    margin: 0 0 6px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-field-step {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 5px;
    background: #0b2545;
    color: #38bdf8;
    font-size: 10.5px;
    font-weight: 900;
    flex-shrink: 0;
}

.zm-field select,
.zm-field input {
    box-sizing: border-box;
    width: 100%;
    height: 44px;
    min-height: 44px;
    padding: 0 13px;
    border-radius: 10px;
    border: 1.5px solid #c5d3e6;
    background-color: #ffffff;
    font: inherit;
    font-size: 13.5px;
    font-weight: 750;
    color: #0f172a;
    outline: none;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.03);
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}

.zm-field select {
    appearance: none;
    padding-right: 34px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230b2545' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    background-size: 13px 13px;
    text-overflow: ellipsis;
}

.zm-field select:hover,
.zm-field input:hover {
    border-color: #8da4c4;
}

.zm-field select:focus,
.zm-field input:focus {
    border-color: #0284c7;
    box-shadow: 0 0 0 3px rgba(2, 132, 199, 0.15);
    background-color: #ffffff;
}

.zm-field-submeta {
    display: block;
    min-height: 16px;
    line-height: 16px;
    margin-top: 5px;
    font-size: 11px;
    font-weight: 650;
    color: #64748b;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-field-submeta.is-warn {
    color: #dc2626;
    font-weight: 800;
}

/* Integrated 2-Column Preset Bar */
.zm-quick-preset-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding-top: 14px;
    border-top: 1px solid #dde6f2;
}

.zm-quick-preset-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.zm-quick-preset-label {
    font-size: 10.5px;
    font-weight: 800;
    color: #475569;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.zm-quick-preset-chips {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(44px, 1fr));
    gap: 6px;
}

.zm-quick-chip {
    appearance: none;
    box-sizing: border-box;
    height: 32px;
    padding: 0 8px;
    border-radius: 8px;
    border: 1.5px solid #cbd5e1;
    background: #ffffff;
    color: #334155;
    font: inherit;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background 0.14s ease, border-color 0.14s ease, color 0.14s ease, box-shadow 0.14s ease;
}

.zm-quick-chip:hover {
    border-color: #0284c7;
    color: #0284c7;
    background: #f0f9ff;
}

.zm-quick-chip:focus-visible {
    outline: 2px solid #0284c7;
    outline-offset: 1px;
}

.zm-quick-chip.active,
.zm-quick-chip.is-active {
    background: linear-gradient(135deg, #0b2545 0%, #123766 100%);
    border-color: #0284c7;
    color: #38bdf8;
    box-shadow: 0 2px 6px rgba(11, 37, 69, 0.18);
}

/* Right Column: Cohesive Layered Navy-Blue Profitability Result Panel */
.zm-quick-result-box {
    background: linear-gradient(155deg, #081e3a 0%, #0d2c54 100%);
    color: #ffffff;
    border-radius: 16px;
    padding: 18px 20px;
    border: 1.5px solid rgba(56, 189, 248, 0.34);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
    box-shadow: 0 12px 28px rgba(4, 16, 34, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    transition: border-color 0.15s ease;
}

.zm-quick-result-box.is-recalculating {
    border-color: rgba(56, 189, 248, 0.62);
}

.zm-quick-result-status-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.2);
}

.zm-quick-result-kicker-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-quick-kicker-badge {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 900;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    background: rgba(16, 185, 129, 0.18);
    color: #34d399;
    border: 1px solid rgba(52, 211, 153, 0.4);
}

.zm-quick-kicker-badge.is-profitable {
    background: rgba(16, 185, 129, 0.18);
    color: #34d399;
    border-color: rgba(52, 211, 153, 0.4);
}

.zm-quick-kicker-badge.is-unprofitable {
    background: rgba(245, 158, 11, 0.18);
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.42);
}

.zm-quick-kicker-badge.is-unavailable {
    background: rgba(148, 163, 184, 0.18);
    color: #e2e8f0;
    border-color: rgba(148, 163, 184, 0.38);
}

.zm-quick-loading-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 11px;
    font-weight: 800;
    color: #7dd3fc;
    background: rgba(14, 165, 233, 0.18);
    border: 1px solid rgba(56, 189, 248, 0.38);
    padding: 3px 9px;
    border-radius: 999px;
}

.zm-quick-loading-spinner {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1.5px solid #38bdf8;
    border-top-color: transparent;
    animation: zmQuickSpin 0.65s linear infinite;
}

@keyframes zmQuickSpin {
    to { transform: rotate(360deg); }
}

.zm-quick-result-freshness-wrap {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-quick-freshness-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 3px 9px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 800;
    background: rgba(16, 185, 129, 0.16);
    color: #6ee7b7;
    border: 1px solid rgba(16, 185, 129, 0.35);
}

.zm-quick-freshness-pill.is-delayed {
    background: rgba(245, 158, 11, 0.18);
    color: #fde68a;
    border-color: rgba(245, 158, 11, 0.4);
}

.zm-quick-freshness-pill.is-unavailable {
    background: rgba(148, 163, 184, 0.18);
    color: #e2e8f0;
    border-color: rgba(148, 163, 184, 0.35);
}

.zm-quick-freshness-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
}

.zm-quick-updated-stamp {
    font-size: 11px;
    font-weight: 700;
    color: #cbd5e1;
}

/* Elevated Coin Header Card & High-Contrast Logo Container */
.zm-quick-coin-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    background: linear-gradient(135deg, rgba(20, 52, 96, 0.78) 0%, rgba(14, 38, 72, 0.82) 100%);
    border: 1px solid rgba(125, 211, 252, 0.22);
    border-radius: 12px;
    padding: 12px 14px;
}

.zm-quick-coin-identity {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.zm-quick-coin-logo-wrap {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(145deg, #ffffff 0%, #e2e8f0 100%);
    border: 1.5px solid rgba(125, 211, 252, 0.65);
    box-shadow: 0 3px 10px rgba(3, 12, 26, 0.32), inset 0 1px 0 #ffffff;
    padding: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    box-sizing: border-box;
}

.zm-quick-coin-logo-wrap[data-coin-symbol="ETHW"] {
    background: linear-gradient(145deg, #1b3b66 0%, #102646 100%);
}

.zm-quick-coin-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.zm-quick-coin-fallback {
    font-size: 12px;
    font-weight: 900;
    color: #0b2545;
    align-items: center;
    justify-content: center;
}

.zm-quick-coin-titles {
    min-width: 0;
}

.zm-quick-coin-name-row {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-quick-coin-name-row strong {
    font-size: 19px;
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -0.015em;
    line-height: 1.15;
}

.zm-quick-coin-sym {
    font-size: 11px;
    font-weight: 850;
    color: #7dd3fc;
    background: rgba(14, 165, 233, 0.22);
    border: 1px solid rgba(125, 211, 252, 0.38);
    padding: 2px 7px;
    border-radius: 6px;
}

.zm-quick-hw-line {
    font-size: 12px;
    font-weight: 700;
    color: #cbd5e1;
    margin-top: 3px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-quick-algo-wrap {
    text-align: right;
    flex-shrink: 0;
}

.zm-quick-algo-label {
    display: block;
    font-size: 9.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: #bae6fd;
    margin-bottom: 4px;
}

.zm-quick-algo-badge {
    display: inline-flex;
    padding: 4px 10px;
    border-radius: 8px;
    font-size: 11.5px;
    font-weight: 850;
    color: #f0f9ff;
    background: rgba(14, 165, 233, 0.24);
    border: 1px solid rgba(125, 211, 252, 0.42);
}

/* Hashrate & Power Telemetry Section — Layered Navy Surface */
.zm-quick-telemetry-strip {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.zm-quick-telemetry-item {
    background: rgba(16, 43, 82, 0.78);
    border: 1px solid rgba(125, 211, 252, 0.22);
    border-radius: 11px;
    padding: 10px 13px;
}

.zm-quick-telemetry-item small {
    display: block;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #bae6fd;
}

.zm-quick-telemetry-item strong {
    display: block;
    font-size: 13.5px;
    font-weight: 850;
    color: #ffffff;
    margin-top: 3px;
    font-variant-numeric: tabular-nums;
}

.zm-quick-unavailable-box {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(245, 158, 11, 0.14);
    border: 1px solid rgba(251, 191, 36, 0.38);
    color: #fde68a;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.45;
}

/* 24h Revenue, Electricity Cost & Net Profit Cards */
.zm-quick-result-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin: 0;
}

.zm-quick-stat {
    background: rgba(18, 47, 88, 0.76);
    border: 1px solid rgba(148, 163, 184, 0.24);
    border-radius: 12px;
    padding: 11px 12px;
}

.zm-quick-stat-net.is-pos {
    background: linear-gradient(145deg, rgba(16, 185, 129, 0.16) 0%, rgba(15, 44, 82, 0.82) 100%);
    border-color: rgba(52, 211, 153, 0.48);
}

.zm-quick-stat-net.is-neg {
    background: linear-gradient(145deg, rgba(239, 68, 68, 0.16) 0%, rgba(15, 44, 82, 0.82) 100%);
    border-color: rgba(248, 113, 113, 0.48);
}

.zm-quick-stat small {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #cbd5e1;
    font-weight: 800;
}

.zm-quick-stat strong {
    display: block;
    font-size: 16.5px;
    font-weight: 900;
    margin-top: 4px;
    font-variant-numeric: tabular-nums;
}

.profit-neutral {
    color: #e2e8f0;
}

.zm-quick-result-footer {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding-top: 4px;
}

.zm-quick-specs-note {
    font-size: 11.5px;
    color: #cbd5e1;
    font-weight: 600;
    line-height: 1.4;
}

.zm-quick-cta-btn {
    width: 100%;
    justify-content: center;
    padding: 12px 16px;
    font-size: 13.5px;
    font-weight: 850;
    border-radius: 11px;
    background: var(--zm-grad-cyan-blue);
    border: 1px solid #38bdf8;
    box-shadow: 0 8px 22px rgba(2, 132, 199, 0.35), var(--zm-gloss-top);
}

.zm-quick-cta-btn:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 12px 26px rgba(0, 212, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

/* Section 3 — Unified Dark Navy Header & 4 Animated Mining Category Cards */
.zm-cat-unified-header-panel {
    background: linear-gradient(135deg, #061830 0%, #0b2952 100%);
    color: #ffffff;
    border: 1.5px solid rgba(56, 189, 248, 0.34);
    border-bottom: 2px solid rgba(251, 191, 36, 0.42);
    border-radius: 18px;
    padding: 18px 24px;
    margin-bottom: 22px;
    box-shadow: 0 16px 38px rgba(4, 18, 37, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.zm-cat-header-intro {
    max-width: 660px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-cat-header-intro h2 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.015em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-cat-header-intro p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-cat-header-badges {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-cat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

.zm-cat-card {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
    border: 1.5px solid #c3d9f2;
    border-top: 3.5px solid #00d4ff;
    border-radius: 16px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
    box-shadow: 0 10px 24px -10px rgba(6, 22, 45, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.96);
}

.zm-cat-card.is-asic-cat { border-top-color: #fbbf24; }
.zm-cat-card.is-cpu-cat  { border-top-color: #0c6fe8; }
.zm-cat-card.is-coins-cat { border-top-color: #f59e0b; }

.zm-cat-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 16px 32px -10px rgba(12, 111, 232, 0.18), inset 0 1px 0 #ffffff;
    border-color: #38bdf8;
}

.zm-cat-card-top {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.zm-cat-anim-stage {
    position: relative;
    height: 108px;
    border-radius: 12px;
    background: linear-gradient(135deg, #051326 0%, #0a2244 60%, #0e2d58 100%);
    border: 1px solid rgba(56, 189, 248, 0.32);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08), 0 6px 14px -6px rgba(3, 12, 26, 0.28);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px 20px;
    box-sizing: border-box;
    overflow: hidden;
}

.zm-cat-card.is-asic-cat .zm-cat-anim-stage,
.zm-cat-card.is-coins-cat .zm-cat-anim-stage {
    border-color: rgba(251, 191, 36, 0.35);
}

.zm-cat-stage-tag {
    position: absolute;
    bottom: 5px;
    right: 7px;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #bae6fd;
    background: rgba(6, 20, 42, 0.78);
    border: 1px solid rgba(56, 189, 248, 0.32);
    padding: 1.5px 6px;
    border-radius: 999px;
    line-height: 1.2;
}

.zm-cat-stage-tag.is-gold {
    color: #fde68a;
    border-color: rgba(251, 191, 36, 0.42);
}

.zm-cat-gpu-svg {
    width: 158px;
    height: 69px;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.5));
}

.zm-cat-asic-svg {
    width: 92px;
    height: 73px;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.5));
}

.zm-cat-cpu-svg {
    width: 84px;
    height: 71px;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.5));
}

.zm-cat-coins-svg {
    width: 146px;
    height: 74px;
    display: block;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.5));
}

@keyframes zmCoinBob {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-2.5px);
    }
}

.zm-coin-float {
    transform-box: fill-box;
    transform-origin: center;
    animation: zmCoinBob 2.8s ease-in-out infinite;
}

.zm-coin-float-top {
    animation-delay: -0.6s;
}

.zm-coin-float-bot {
    animation-delay: -1.4s;
}

.is-offscreen .zm-coin-float {
    animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
    .zm-coin-float {
        animation: none !important;
    }
}

.zm-cat-copy h3 {
    margin: 0 0 6px;
    font-size: 17.5px;
    font-weight: 850;
    color: #06162d;
    letter-spacing: -0.01em;
    line-height: 1.25;
}

.zm-cat-copy p {
    margin: 0;
    font-size: 12.8px;
    line-height: 1.52;
    color: #475569;
}

.zm-cat-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding-top: 12px;
    border-top: 1px solid #e2ecf7;
    flex-wrap: wrap;
}

.zm-cat-count-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 9px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    color: #0369a1;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    white-space: nowrap;
}

.zm-cat-count-pill.is-gold {
    color: #92400e;
    background: #fef3c7;
    border-color: #fde68a;
}

.zm-cat-action-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    padding: 7px 12px;
    border-radius: 9px;
    font-size: 11.8px;
    font-weight: 850;
    color: #ffffff;
    background: var(--zm-grad-cyan-blue);
    border: 1px solid #38bdf8;
    box-shadow: 0 4px 11px rgba(12, 111, 232, 0.24), var(--zm-gloss-top);
    white-space: nowrap;
    transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease;
}

.zm-cat-card:hover .zm-cat-action-btn {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 6px 14px rgba(0, 212, 255, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.55);
}

.zm-cat-action-btn.is-gold {
    color: #031022;
    background: var(--zm-grad-gold-amber);
    border-color: #d97706;
    box-shadow: 0 4px 11px rgba(217, 119, 6, 0.22), var(--zm-gloss-gold);
}

.zm-cat-card:hover .zm-cat-action-btn.is-gold {
    background: var(--zm-grad-gold-amber-hover);
    color: #020914;
    border-color: #b45309;
    box-shadow: 0 6px 14px rgba(245, 158, 11, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

/* Section 4 — Most Profitable Coins Unified Dark Navy Header, Segmented Filter Bar & Table */
.zm-coins-unified-header-panel {
    background: linear-gradient(135deg, #061830 0%, #0b2952 100%);
    color: #ffffff;
    border: 1.5px solid rgba(56, 189, 248, 0.34);
    border-bottom: 2px solid rgba(251, 191, 36, 0.42);
    border-radius: 18px;
    padding: 18px 24px;
    margin-bottom: 18px;
    box-shadow: 0 16px 38px rgba(4, 18, 37, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.zm-coins-section-intro {
    max-width: 630px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-coins-section-intro h2 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.015em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-coins-section-intro p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-filter-tabs {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 5px;
    background: linear-gradient(180deg, #0e2a50 0%, #091e3a 100%);
    border: 1px solid rgba(125, 211, 252, 0.28);
    border-radius: 12px;
    box-shadow: inset 0 1px 2px rgba(3, 10, 22, 0.4), 0 4px 12px rgba(4, 15, 32, 0.22);
    flex-shrink: 0;
}

.zm-filter-btn {
    appearance: none;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    padding: 0 14px;
    border-radius: 8px;
    border: 1px solid rgba(148, 163, 184, 0.26);
    background: linear-gradient(180deg, rgba(24, 55, 100, 0.78) 0%, rgba(16, 40, 76, 0.85) 100%);
    color: #dbeafe;
    font: inherit;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.zm-filter-btn:hover {
    background: linear-gradient(180deg, rgba(32, 70, 124, 0.92) 0%, rgba(22, 52, 96, 0.95) 100%);
    border-color: rgba(56, 189, 248, 0.55);
    color: #ffffff;
}

.zm-filter-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

.zm-filter-btn.active {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border-color: rgba(251, 191, 36, 0.72);
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(14, 165, 233, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.zm-table-wrap {
    background: #ffffff;
    border: 1px solid #c7daf2;
    border-radius: 16px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    box-shadow: 0 12px 30px -12px rgba(6, 22, 45, 0.09);
    scrollbar-width: thin;
    scrollbar-color: #0284c7 #07172d;
}

.zm-table-wrap::-webkit-scrollbar,
.zm-home-profit-table-wrap::-webkit-scrollbar,
.zm-coins-table-scroll::-webkit-scrollbar,
.zm-cmd-table-viewport::-webkit-scrollbar,
.zm-table-responsive::-webkit-scrollbar {
    width: 7px;
    height: 7px;
}

.zm-table-wrap::-webkit-scrollbar-track,
.zm-home-profit-table-wrap::-webkit-scrollbar-track,
.zm-coins-table-scroll::-webkit-scrollbar-track,
.zm-cmd-table-viewport::-webkit-scrollbar-track,
.zm-table-responsive::-webkit-scrollbar-track {
    background: #07172d;
    border-radius: 999px;
}

.zm-table-wrap::-webkit-scrollbar-thumb,
.zm-home-profit-table-wrap::-webkit-scrollbar-thumb,
.zm-coins-table-scroll::-webkit-scrollbar-thumb,
.zm-cmd-table-viewport::-webkit-scrollbar-thumb,
.zm-table-responsive::-webkit-scrollbar-thumb {
    background: linear-gradient(90deg, #0284c7 0%, #00d4ff 72%, #fbbf24 100%);
    border-radius: 999px;
    border: 1px solid rgba(7, 23, 45, 0.75);
}

.zm-table-wrap::-webkit-scrollbar-thumb:hover,
.zm-home-profit-table-wrap::-webkit-scrollbar-thumb:hover,
.zm-coins-table-scroll::-webkit-scrollbar-thumb:hover,
.zm-cmd-table-viewport::-webkit-scrollbar-thumb:hover,
.zm-table-responsive::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(90deg, #0ea5e9 0%, #38bdf8 68%, #fcd34d 100%);
}

.zm-table {
    width: 100%;
    border-collapse: collapse;
    min-width: 880px;
}

.zm-table th {
    background: linear-gradient(180deg, #06162d 0%, #041022 100%);
    color: #cbd5e1;
    font-size: 10.5px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    padding: 11px 8px;
    text-align: left;
    border-bottom: 2px solid #f59e0b;
    white-space: nowrap;
}

.zm-table td {
    padding: 9px 8px;
    border-bottom: 1px solid #e5eef9;
    font-size: 12.5px;
    vertical-align: middle;
}

.zm-table tbody tr {
    background: #ffffff;
    transition: background-color 0.14s ease;
}

.zm-table tbody tr:nth-child(even) {
    background: #f8fbff;
}

.zm-table tbody tr:hover {
    background: #edf5ff;
}

.zm-table tbody tr:last-child td {
    border-bottom: none;
}

/* Homepage Profitability Rankings Table — Slim Custom Horizontal Scrollbar */
.zm-home-profit-table-wrap {
    overflow-x: auto;
    width: 100%;
    scrollbar-width: thin;
    scrollbar-color: #0284c7 #07172d;
}

.zm-home-profit-table {
    width: 100%;
    min-width: 0 !important;
    max-width: 100%;
    table-layout: fixed;
}

.zm-home-profit-table th,
.zm-home-profit-table td {
    padding: 9px 7px;
    box-sizing: border-box;
}

.zm-home-profit-table th.is-num,
.zm-home-profit-table td.is-num {
    text-align: right;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* Exact 10-Column Width Distribution (Sums to 100.0%) */
.zm-home-profit-table th.col-rank,
.zm-home-profit-table td.col-rank {
    width: 4.6%;
    padding-left: 12px;
    white-space: nowrap;
}

.zm-home-profit-table th.col-coin,
.zm-home-profit-table td.col-coin {
    width: 16.4%;
}

.zm-home-profit-table th.col-algo,
.zm-home-profit-table td.col-algo {
    width: 10.4%;
    white-space: nowrap;
}

.zm-home-profit-table th.col-hw,
.zm-home-profit-table td.col-hw {
    width: 16.6%;
}

.zm-home-profit-table th.col-price,
.zm-home-profit-table td.col-price {
    width: 8.2%;
}

.zm-home-profit-table th.col-nethash,
.zm-home-profit-table td.col-nethash {
    width: 10.6%;
}

.zm-home-profit-table th.col-rev,
.zm-home-profit-table td.col-rev {
    width: 7.4%;
}

.zm-home-profit-table th.col-elec,
.zm-home-profit-table td.col-elec {
    width: 8.0%;
}

.zm-home-profit-table th.col-profit,
.zm-home-profit-table td.col-profit {
    width: 9.8%;
}

.zm-home-profit-table th.col-action,
.zm-home-profit-table td.col-action {
    width: 8.0%;
    padding-right: 12px;
    text-align: right;
    white-space: nowrap;
    vertical-align: middle;
}

.zm-home-rank-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    height: 23px;
    padding: 0 6px;
    border-radius: 6px;
    background: linear-gradient(135deg, #0b1f3b 0%, #102a4c 100%);
    color: #ffffff;
    border: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: 0 1px 3px rgba(9, 25, 47, 0.14);
    font-size: 11px;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.zm-home-rank-badge.is-top {
    background: linear-gradient(135deg, #06162d 0%, #0f2c52 100%);
    color: #ffd452;
    border-color: rgba(251, 191, 36, 0.55);
    box-shadow: 0 0 0 1px rgba(251, 191, 36, 0.2), 0 2px 5px rgba(6, 22, 45, 0.18);
}

.zm-home-coin-identity {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zm-home-coin-logo {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    object-fit: contain;
    background: radial-gradient(circle at 30% 30%, #ffffff 0%, #f1f5f9 100%);
    border: 1px solid #bfd5f0;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
    padding: 2px;
    flex-shrink: 0;
}

.zm-home-coin-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 9px;
    font-weight: 900;
    color: #06162d;
}

.zm-home-coin-meta {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
    flex: 1;
}

.zm-home-coin-title {
    display: block;
    font-size: 12.4px;
    font-weight: 850;
    color: #0f172a;
    line-height: 1.22;
    white-space: normal;
    overflow-wrap: break-word;
}

.zm-home-coin-sym {
    font-size: 11px;
    font-weight: 800;
    color: #0369a1;
    white-space: nowrap;
}

.zm-home-hw-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}

/* Hardware Column — Natural 2-Line Model Wrap + Hashrate/Power Underneath */
.zm-home-hw-bench {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.zm-home-hw-model {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    white-space: normal;
    font-size: 11.8px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.24;
    overflow-wrap: break-word;
}

.zm-home-hw-model.is-muted {
    color: #64748b;
}

.zm-home-hw-specs {
    display: block;
    font-size: 10.8px;
    font-weight: 600;
    color: #64748b;
    line-height: 1.22;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-variant-numeric: tabular-nums;
}

.zm-home-hw-specs.is-muted {
    color: #94a3b8;
}

.zm-home-num-val {
    font-size: 12.2px;
    font-weight: 800;
    color: #0f172a;
    font-variant-numeric: tabular-nums;
}

.zm-home-nethash-val {
    font-size: 11.8px;
    font-weight: 700;
    color: #334155;
    font-variant-numeric: tabular-nums;
}

.zm-home-elec-val {
    font-size: 12px;
    font-weight: 800;
    color: #d97706;
    font-variant-numeric: tabular-nums;
}

.zm-home-na-val {
    font-size: 11.5px;
    font-weight: 700;
    color: #94a3b8;
}

.zm-home-profit-pill {
    display: inline-flex;
    align-items: baseline;
    justify-content: flex-end;
    gap: 1.5px;
    padding: 3px 7px;
    border-radius: 6px;
    font-size: 12.2px;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    border: 1px solid transparent;
}

.zm-home-profit-pill small {
    font-size: 10px;
    font-weight: 700;
    opacity: 0.88;
}

.zm-home-profit-pill.is-pos {
    background: #ecfdf5;
    color: #047857;
    border-color: #a7f3d0;
}

.zm-home-profit-pill.is-neg {
    background: #fef2f2;
    color: #dc2626;
    border-color: #fecaca;
}

.zm-home-na-pill {
    display: inline-flex;
    align-items: center;
    padding: 2.5px 6px;
    border-radius: 5px;
    background: #f1f5f9;
    color: #64748b;
    border: 1px solid #cbd5e1;
    font-size: 10.5px;
    font-weight: 700;
    white-space: nowrap;
}

/* Compact Premium ZU Mining Table Action Button ("Calculate") */
.zm-table-calc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 29px;
    padding: 0 10px;
    border-radius: 7px;
    background: linear-gradient(135deg, #061830 0%, #0b2d56 48%, #0284c7 100%);
    color: #ffffff !important;
    border: 1px solid rgba(251, 191, 36, 0.55);
    box-shadow: 0 2px 5px rgba(6, 22, 45, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.25);
    font-size: 11.5px;
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    box-sizing: border-box;
    cursor: pointer;
    user-select: none;
    transition: transform 0.14s ease, box-shadow 0.14s ease, background 0.14s ease, border-color 0.14s ease;
}

.zm-table-calc-btn:hover {
    background: linear-gradient(135deg, #092446 0%, #0c6fe8 52%, #00b4d8 100%);
    color: #ffffff !important;
    border-color: #ffd452;
    box-shadow: 0 4px 10px rgba(12, 111, 232, 0.22), inset 0 1px 0 rgba(255, 255, 255, 0.38);
    transform: translateY(-1px);
}

.zm-table-calc-btn:active {
    background: linear-gradient(135deg, #041224 0%, #082242 50%, #0369a1 100%);
    border-color: #f59e0b;
    box-shadow: inset 0 2px 4px rgba(3, 12, 26, 0.35);
    transform: translateY(0);
}

.zm-table-calc-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

.zm-algo-pill {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 800;
    background: #f0f6fe;
    color: #0f2540;
    border: 1px solid #c7daf2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-hw-badge {
    display: inline-flex;
    align-items: center;
    padding: 1.5px 6px;
    border-radius: 4px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.02em;
    text-transform: uppercase;
    background: #f1f5f9;
    color: #334155;
    border: 1px solid #cbd5e1;
}

.zm-hw-badge.is-gpu {
    background: #e0f2fe;
    color: #0369a1;
    border-color: #bae6fd;
}

.zm-hw-badge.is-asic {
    background: #fef3c7;
    color: #b45309;
    border-color: #fde68a;
}

.zm-hw-badge.is-cpu {
    background: #f3e8ff;
    color: #6b21a8;
    border-color: #e9d5ff;
}

/* Tablet Layout (769px – 1080px): Keep zero horizontal scroll by prioritizing core columns */
@media (max-width: 1080px) and (min-width: 769px) {
    .zm-home-profit-table .col-nethash,
    .zm-home-profit-table .col-rev,
    .zm-home-profit-table .col-elec {
        display: none;
    }
    .zm-home-profit-table th.col-rank,
    .zm-home-profit-table td.col-rank { width: 7%; }
    .zm-home-profit-table th.col-coin,
    .zm-home-profit-table td.col-coin { width: 23%; }
    .zm-home-profit-table th.col-algo,
    .zm-home-profit-table td.col-algo { width: 13%; }
    .zm-home-profit-table th.col-hw,
    .zm-home-profit-table td.col-hw { width: 22%; }
    .zm-home-profit-table th.col-price,
    .zm-home-profit-table td.col-price { width: 11%; }
    .zm-home-profit-table th.col-profit,
    .zm-home-profit-table td.col-profit { width: 13%; }
    .zm-home-profit-table th.col-action,
    .zm-home-profit-table td.col-action { width: 11%; }
}

/* Mobile & Narrow Tablet Layout (<= 768px): Compact Card Layout with Zero Horizontal Scroll */
@media (max-width: 768px) {
    .zm-home-profit-table-wrap {
        background: transparent;
        border: none;
        box-shadow: none;
        overflow: visible;
    }
    .zm-home-profit-table,
    .zm-home-profit-table tbody {
        display: block;
        width: 100%;
    }
    .zm-home-profit-table thead {
        display: none;
    }
    .zm-home-profit-table tbody tr.home-coin-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px 12px;
        padding: 14px;
        margin-bottom: 12px;
        background: #ffffff;
        border: 1px solid #c7daf2;
        border-radius: 14px;
        box-shadow: 0 6px 16px -8px rgba(6, 22, 45, 0.08);
    }
    .zm-home-profit-table tbody tr.home-coin-row td {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;
        width: 100% !important;
        padding: 0 !important;
        border: none;
        text-align: left !important;
        white-space: normal !important;
    }
    .zm-home-profit-table tbody tr.home-coin-row td::before {
        content: attr(data-label);
        font-size: 9.5px;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.04em;
        color: #64748b;
        margin-bottom: 2px;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-rank::before,
    .zm-home-profit-table tbody tr.home-coin-row td.col-coin::before,
    .zm-home-profit-table tbody tr.home-coin-row td.col-action::before {
        display: none;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-coin {
        grid-column: 1 / 2;
        grid-row: 1;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-rank {
        grid-column: 2 / 3;
        grid-row: 1;
        align-items: flex-end;
        justify-content: flex-start;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-hw {
        grid-column: 1 / -1;
        padding-top: 6px !important;
        border-top: 1px solid #edf2f7;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-nethash,
    .zm-home-profit-table tbody tr.home-coin-row td.col-rev,
    .zm-home-profit-table tbody tr.home-coin-row td.col-elec {
        display: none;
    }
    .zm-home-profit-table tbody tr.home-coin-row td.col-action {
        grid-column: 2 / 3;
        align-items: flex-end;
        justify-content: flex-end;
    }
    .zm-table-calc-btn {
        width: 92px;
        height: 32px;
    }
    .zm-coins-unified-header-panel {
        padding: 16px;
        gap: 14px;
    }
    .zm-filter-tabs {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-filter-btn {
        width: 100%;
        padding: 0 8px;
        font-size: 12px;
    }
}

.zm-home-profit-table-foot {
    margin-top: 16px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.zm-home-profit-table-note {
    color: #64748b;
    font-size: 12.2px;
    line-height: 1.4;
}

.zm-home-profit-viewall-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 40px;
    padding: 9px 18px;
    border-radius: 10px;
    background: linear-gradient(135deg, #061830 0%, #0b2d56 48%, #0284c7 100%);
    color: #ffffff !important;
    border: 1.5px solid rgba(251, 191, 36, 0.65);
    box-shadow: 0 6px 16px rgba(6, 22, 45, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.25);
    font-weight: 850;
    font-size: 13px;
    line-height: 1.2;
    letter-spacing: 0.01em;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, filter 0.16s ease;
}

.zm-home-profit-viewall-link:hover {
    color: #ffffff !important;
    border-color: #fbbf24;
    transform: translateY(-1px);
    filter: brightness(1.06);
    box-shadow: 0 10px 22px rgba(2, 132, 199, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.35);
}

.zm-home-profit-viewall-link:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* Section 5, 6, 7 — Hardware, Pools, Software Cards */
.zm-card-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.zm-card-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.zm-item-card {
    background: #ffffff;
    border: 1.5px solid var(--line);
    border-radius: 18px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.zm-item-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--shadow);
    border-color: #93c5fd;
}

.zm-item-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.zm-item-specs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 11px;
    padding: 10px 12px;
}

.zm-item-specs small {
    display: block;
    font-size: 10px;
    text-transform: uppercase;
    color: #64748b;
    font-weight: 700;
}

.zm-item-specs strong {
    font-size: 13px;
    color: #0f172a;
    font-weight: 850;
}

/* Footer — Premium ZU Mining Design */
.footer,
.footer.zm-premium-footer {
    position: relative;
    background:
        radial-gradient(ellipse 75% 130px at 50% 0%, rgba(14, 165, 233, 0.14) 0%, rgba(14, 165, 233, 0) 100%),
        linear-gradient(180deg, #05142b 0%, #030d1e 55%, #020813 100%);
    color: #94a3b8;
    padding: 54px 0 26px;
    border-top: 2px solid rgba(56, 189, 248, 0.45);
    box-shadow: inset 0 1px 0 rgba(125, 211, 252, 0.25);
}

.footer-grid {
    display: grid;
    grid-template-columns: 1.75fr 1fr 1fr 1fr;
    gap: 0;
    align-items: stretch;
}

.footer-col {
    padding: 0 28px;
    border-right: 1px solid rgba(56, 189, 248, 0.14);
    min-width: 0;
}

.footer-col:first-child {
    padding-left: 0;
}

.footer-col:last-child {
    padding-right: 0;
    border-right: none;
}

.footer-brand-logo-link {
    display: inline-block;
    text-decoration: none;
}

.footer-brand img {
    width: 220px;
    height: auto;
    margin-bottom: 14px;
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.35));
}

.footer-brand p {
    font-size: 13.4px;
    line-height: 1.68;
    color: #cbd5e1;
    margin: 0;
    max-width: 390px;
}

.footer-social {
    display: flex;
    gap: 10px;
    margin-top: 18px;
    flex-wrap: wrap;
}

.footer-social-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin: 0 !important;
    background: rgba(14, 165, 233, 0.1);
    border: 1px solid rgba(56, 189, 248, 0.32);
    border-radius: 9px;
    color: #7dd3fc !important;
    transition: all 0.18s ease;
}

.footer-social-btn:hover {
    background: rgba(56, 189, 248, 0.22);
    border-color: #38bdf8;
    color: #ffffff !important;
    transform: translateY(-2px);
}

.footer h4 {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    margin: 0 0 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.2);
}

.footer h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 38px;
    height: 2px;
    border-radius: 999px;
    background: linear-gradient(90deg, #38bdf8 0%, #fbbf24 100%);
}

.footer-heading-icon {
    width: 15px;
    height: 15px;
    flex-shrink: 0;
    color: #38bdf8;
    filter: drop-shadow(0 0 5px rgba(56, 189, 248, 0.4));
}

.footer-col a:not(.footer-brand-logo-link):not(.footer-social-btn) {
    position: relative;
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 13px;
    font-weight: 600;
    color: #cbd5e1;
    margin: 9.5px 0;
    text-decoration: none;
    transition: color 0.16s ease, transform 0.16s ease;
}

.footer-col a:not(.footer-brand-logo-link):not(.footer-social-btn)::before {
    content: "›";
    font-size: 14px;
    font-weight: 800;
    line-height: 1;
    color: #38bdf8;
    opacity: 0.72;
    transition: transform 0.16s ease, opacity 0.16s ease, color 0.16s ease;
}

.footer-col a:not(.footer-brand-logo-link):not(.footer-social-btn):hover {
    color: #7dd3fc;
    transform: translateX(3px);
}

.footer-col a:not(.footer-brand-logo-link):not(.footer-social-btn):hover::before {
    color: #fbbf24;
    opacity: 1;
}

.footer-bottom {
    border-top: 1px solid rgba(56, 189, 248, 0.26);
    box-shadow: inset 0 1px 0 rgba(125, 211, 252, 0.08);
    margin-top: 38px;
    padding-top: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    font-size: 12.2px;
    font-weight: 600;
    color: #94a3b8;
}

.footer-copy-left {
    color: #cbd5e1;
}

.footer-tagline-right {
    color: #7dd3fc;
    font-weight: 700;
}

/* Ad slots & utilities */
.header-ad {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    max-height: 76px;
    overflow: hidden;
    padding: 0 16px;
}
.header-ad:empty, .header-ad .ad-slot:empty, .tool-top-ad:empty, .home-ad-wrapper:empty {
    display: none;
}
.home-ad-wrapper {
    padding: 24px 0 4px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.home-ad-wrapper:not(:empty) ~ .zm-quick-calc-section {
    padding-top: 26px;
}
.ad-render {
    margin: 20px auto;
    text-align: center;
    width: 100%;
}
.home-ad-wrapper .ad-render {
    margin: 0 auto;
}
.banner-rotator {
    min-height: 90px;
    border-radius: 14px;
    overflow: hidden;
    background: #f6f9fc;
    display: grid;
    place-items: center;
}
.banner-rotator img {
    display: block;
    width: 100%;
    max-height: 180px;
    object-fit: contain;
}
.banner-rotator.is-billboard-970x250 {
    width: 100%;
    max-width: 970px;
    min-height: 250px;
    margin: 0 auto;
    background: linear-gradient(135deg, #041226 0%, #082042 50%, #05152d 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.45);
    border-radius: 16px;
    box-shadow: 0 14px 34px -10px rgba(4, 15, 32, 0.22);
}
.banner-rotator.is-billboard-970x250 img {
    max-height: 250px;
    width: 100%;
    height: auto;
    object-fit: contain;
}

/* Responsive 970x250 Billboard Ad Shell & Demo Ad Placeholder (Admin Managed) */
.zm-ad-billboard-shell {
    width: 100%;
    max-width: 970px;
    min-height: 250px;
    height: 250px;
    margin: 0 auto;
    box-sizing: border-box;
    border-radius: 16px;
    background:
        radial-gradient(circle at 14% 50%, rgba(14, 165, 233, 0.22) 0%, transparent 52%),
        radial-gradient(circle at 88% 50%, rgba(251, 191, 36, 0.14) 0%, transparent 48%),
        linear-gradient(135deg, #041226 0%, #082144 50%, #05142b 100%);
    border: 1.5px dashed rgba(56, 189, 248, 0.58);
    box-shadow:
        0 16px 36px -12px rgba(4, 18, 38, 0.24),
        inset 0 1px 0 rgba(186, 230, 253, 0.18);
    padding: 20px 26px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: left;
    position: relative;
    overflow: hidden;
}

.zm-ad-billboard-shell.is-adsense {
    border-style: solid;
    border-color: rgba(56, 189, 248, 0.36);
    height: auto;
    min-height: 250px;
    padding: 12px 16px;
    justify-content: center;
    align-items: center;
}

.zm-ad-demo-banner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    width: 100%;
    gap: 14px;
}

.zm-ad-demo-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.2);
}

.zm-ad-demo-specs {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-ad-demo-pill {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 11px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    white-space: nowrap;
}

.zm-ad-demo-pill.is-ad-label {
    background: rgba(14, 165, 233, 0.2);
    border: 1px solid rgba(56, 189, 248, 0.52);
    color: #bae6fd;
}

.zm-ad-demo-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #fbbf24;
    box-shadow: 0 0 8px #fbbf24;
    flex-shrink: 0;
}

.zm-ad-demo-pill.is-size-badge {
    background: rgba(251, 191, 36, 0.16);
    border: 1px solid rgba(251, 191, 36, 0.48);
    color: #fde047;
}

.zm-ad-demo-pill.is-slot-badge {
    background: rgba(15, 23, 42, 0.82);
    border: 1px solid rgba(148, 163, 184, 0.35);
    color: #cbd5e1;
}

.zm-ad-demo-main-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex: 1 1 auto;
}

.zm-ad-demo-icon-box {
    width: 68px;
    height: 68px;
    border-radius: 14px;
    background: radial-gradient(circle at 50% 35%, rgba(14, 165, 233, 0.28) 0%, rgba(4, 13, 29, 0.95) 100%);
    border: 1px solid rgba(56, 189, 248, 0.52);
    box-shadow: 0 0 16px rgba(14, 165, 233, 0.24);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.zm-ad-demo-copy {
    display: flex;
    flex-direction: column;
    gap: 5px;
    flex: 1 1 auto;
    min-width: 0;
}

.zm-ad-demo-kicker {
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #38bdf8;
}

.zm-ad-demo-heading {
    margin: 0;
    font-size: clamp(18px, 2vw, 23px);
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -0.015em;
    line-height: 1.22;
}

.zm-ad-demo-subtext {
    margin: 0;
    font-size: 13px;
    line-height: 1.5;
    color: #cbd5e1;
    max-width: 620px;
}

.zm-ad-demo-subtext strong {
    color: #7dd3fc;
    font-weight: 800;
}

.zm-ad-demo-cta-col {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    gap: 7px;
    flex-shrink: 0;
}

.zm-ad-demo-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 20px;
    border-radius: 11px;
    background: var(--zm-grad-cyan-gold);
    border: 1px solid rgba(253, 224, 71, 0.6);
    color: #031022 !important;
    font-size: 13.5px;
    font-weight: 900;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(0, 212, 255, 0.25);
    transition: transform 0.16s ease, filter 0.16s ease, box-shadow 0.16s ease;
}

.zm-ad-demo-cta-btn:hover {
    transform: translateY(-1.5px);
    filter: brightness(1.06);
    box-shadow: 0 10px 24px rgba(0, 212, 255, 0.36);
}

.zm-ad-demo-cta-note {
    font-size: 10.5px;
    font-weight: 700;
    color: #94a3b8;
    white-space: nowrap;
}

@media (max-width: 991px) {
    .zm-ad-billboard-shell,
    .banner-rotator.is-billboard-970x250 {
        height: auto;
        min-height: 0;
        padding: 18px 18px;
    }
    .zm-ad-demo-main-row {
        flex-wrap: wrap;
        gap: 14px;
    }
    .zm-ad-demo-cta-col {
        width: 100%;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        padding-top: 10px;
        border-top: 1px solid rgba(56, 189, 248, 0.16);
    }
}

@media (max-width: 640px) {
    .home-ad-wrapper {
        padding: 16px 0 2px;
    }
    .zm-ad-billboard-shell {
        padding: 14px 14px;
        border-radius: 14px;
    }
    .zm-ad-demo-icon-box {
        display: none;
    }
    .zm-ad-demo-heading {
        font-size: 16.5px;
    }
    .zm-ad-demo-subtext {
        font-size: 12px;
    }
    .zm-ad-demo-cta-col {
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
    }
    .zm-ad-demo-cta-btn {
        width: 100%;
    }
    .zm-ad-demo-cta-note {
        text-align: center;
    }
}

/* Share Component */
.share-comp { position: relative; display: inline-block; }
.share-btn { display: inline-flex; align-items: center; gap: 8px; background: linear-gradient(135deg, #ffb732, #ff9214); border: none; padding: 10px 16px; border-radius: 10px; font-weight: 800; font-size: 13px; color: #041a35; cursor: pointer; transition: all 0.2s; box-shadow: 0 4px 10px rgba(255, 146, 20, 0.25); margin-top: 10px; }
.share-btn:hover { transform: translateY(-2px); box-shadow: 0 6px 16px rgba(255, 146, 20, 0.35); color: #041a35; }
.share-overlay { display: none; position: fixed; inset: 0; z-index: 99; }
.share-comp.open .share-overlay { display: block; }
.share-menu { display: none; position: absolute; right: 0; top: calc(100% + 8px); width: 300px; background: #fff; border-radius: 16px; box-shadow: 0 10px 40px rgba(11,43,85,0.15); border: 1px solid #e1e8f0; z-index: 100; }
.share-comp.open .share-menu { display: block; }
.share-header { display: flex; justify-content: space-between; align-items: center; padding: 16px; border-bottom: 1px solid #f1f5f9; }
.share-header strong { font-size: 13px; color: #1e293b; }
.share-close { background: transparent; border: 0; font-size: 20px; color: #94a3b8; cursor: pointer; }
.share-grid { padding: 8px; display: grid; grid-template-columns: 1fr 1fr; gap: 4px; }
.share-item { display: flex; align-items: center; gap: 10px; padding: 10px; border-radius: 10px; font-size: 12px; font-weight: 700; color: #475569; border: 0; background: transparent; cursor: pointer; width: 100%; }
.share-item:hover { background: #f8fafc; color: var(--blue); }

/* Back to Top */
.back-to-top {
    position: fixed;
    bottom: 28px;
    right: 28px;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, #061831, #0c6fe8);
    color: #fff;
    border: none;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 90;
    opacity: 0;
    visibility: hidden;
    transform: translateY(15px);
    transition: all 0.25s ease;
    box-shadow: 0 6px 18px rgba(6, 24, 49, 0.25);
}
.back-to-top.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
.back-to-top:hover {
    background: linear-gradient(135deg, #f59e0b, #d97706);
    transform: translateY(-3px);
}

/* FAQ & Content Styling */
.faq-item { border: 1px solid #e1e8f0; border-radius: 12px; margin-bottom: 12px; background: #fff; overflow: hidden; }
.faq-item summary { padding: 16px; font-weight: 750; cursor: pointer; list-style: none; color: #0f172a; font-size: 14px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item .faq-ans { padding: 0 16px 16px; color: #475569; font-size: 13.5px; line-height: 1.65; }
.tool-content { border: 1px solid #e1e8f0; border-radius: 19px; padding: 24px; margin-top: 20px; background: #fff; }
.tool-content h2, .tool-content h3 { color: #0f172a; margin-top: 24px; margin-bottom: 12px; }
.tool-content p, .tool-content li { font-size: 13.5px; color: #475569; line-height: 1.7; }
.tool-content a { color: var(--blue); text-decoration: underline; }
.tool-content .table-wrapper { width: 100%; overflow-x: auto; margin: 16px 0; border: 1px solid #e1e8f0; border-radius: 12px; }
.tool-content table { width: 100%; border-collapse: collapse; font-size: 13px; }
.tool-content th, .tool-content td { padding: 10px 14px; border-bottom: 1px solid #e1e8f0; text-align: left; }
.tool-content th { background: #f8fafc; font-weight: 700; }

/* Responsive Breakpoints */
@media (max-width: 1040px) {
    .zm-hero-grid,
    .zm-quick-calc-body {
        grid-template-columns: 1fr;
    }
    .zm-cat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-card-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-card-grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .zm-hero {
        padding: 40px 0 46px;
    }
    .zm-hero-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-profit-dashboard {
        padding: 14px 12px 12px;
        border-radius: 16px;
    }
    .zm-dash-title-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .zm-dash-status-group {
        justify-content: flex-start;
    }
    .zm-dash-tabs {
        grid-template-columns: 1fr;
    }
    .zm-dash-col-legend {
        display: none;
    }
    .zm-dash-scroll-viewport {
        max-height: 390px;
    }
    .zm-profit-card {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 10px 11px;
    }
    .zm-profit-card-right {
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding-top: 7px;
        border-top: 1px solid rgba(148, 163, 184, 0.12);
        text-align: left;
    }
    .zm-profit-breakdown {
        margin-top: 0;
    }
    .zm-dash-footer-meta {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }
    .zm-quick-controls,
    .zm-quick-preset-row,
    .zm-quick-result-grid,
    .zm-quick-telemetry-strip,
    .zm-cat-grid,
    .zm-card-grid-3,
    .zm-card-grid-4,
    .footer-grid {
        grid-template-columns: 1fr;
    }
    .zm-quick-panel-head {
        flex-direction: column;
        align-items: flex-start;
    }
    .zm-quick-cat-switcher {
        width: 100%;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .zm-quick-cat-btn {
        padding: 0 6px;
        font-size: 11px;
    }
    .zm-quick-coin-header {
        flex-direction: column;
        align-items: flex-start;
    }
    .zm-quick-algo-wrap {
        text-align: left;
    }
    .zm-section {
        padding: 52px 0;
    }
    .zm-quick-calc-body,
    .zm-quick-calc-top {
        padding: 16px;
    }
}

/* ==========================================================================
   SECTION 5 — PREMIUM MINING HARDWARE & SMART RIG BUILDER CARDS
   ========================================================================== */

.zm-hw-preview-section {
    background: linear-gradient(180deg, #f1f6fd 0%, #eaf2fc 100%);
    border-top: 1px solid #dbe7f6;
    border-bottom: 1px solid #dbe7f6;
}

/* Cohesive Dark Navy Header Panel (Matching Quick Estimator Header) */
.zm-hw-unified-header-panel {
    background: linear-gradient(135deg, #061830 0%, #0b2952 100%);
    color: #ffffff;
    border: 1.5px solid rgba(56, 189, 248, 0.34);
    border-bottom: 2px solid rgba(56, 189, 248, 0.42);
    border-radius: 18px;
    padding: 18px 24px 16px;
    margin-bottom: 24px;
    box-shadow: 0 16px 38px rgba(4, 18, 37, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.zm-hw-header-top-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.zm-hw-section-intro {
    max-width: 600px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-hw-header-kicker {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: 6px;
    padding: 3px 10px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 850;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #fcd34d;
    background: rgba(251, 191, 36, 0.14);
    border: 1px solid rgba(251, 191, 36, 0.38);
}

.zm-hw-section-intro h2 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.015em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-hw-section-intro p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-hw-header-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    padding-top: 12px;
    border-top: 1px solid rgba(56, 189, 248, 0.2);
}

/* Segmented Hardware Category Filter Tabs (Matching Quick Estimator Switcher) */
.zm-hw-tabs-bar {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
    padding: 5px;
    background: linear-gradient(180deg, #0e2a50 0%, #091e3a 100%);
    border: 1px solid rgba(125, 211, 252, 0.28);
    border-radius: 12px;
    box-shadow: inset 0 1px 2px rgba(3, 10, 22, 0.4), 0 4px 12px rgba(4, 15, 32, 0.22);
}

.zm-hw-tab-btn {
    appearance: none;
    box-sizing: border-box;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: 38px;
    padding: 0 15px;
    border-radius: 8px;
    border: 1px solid rgba(148, 163, 184, 0.26);
    background: linear-gradient(180deg, rgba(24, 55, 100, 0.78) 0%, rgba(16, 40, 76, 0.85) 100%);
    color: #dbeafe;
    font: inherit;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
}

.zm-hw-tab-btn:hover {
    background: linear-gradient(180deg, rgba(32, 70, 124, 0.92) 0%, rgba(22, 52, 96, 0.95) 100%);
    border-color: rgba(56, 189, 248, 0.55);
    color: #ffffff;
}

.zm-hw-tab-btn:focus-visible {
    outline: 2px solid #38bdf8;
    outline-offset: 2px;
}

.zm-hw-tab-btn.active {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border-color: #7dd3fc;
    color: #ffffff;
    box-shadow: 0 3px 12px rgba(14, 165, 233, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.24);
}

.zm-hw-tab-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(148, 163, 184, 0.65);
    flex-shrink: 0;
    transition: background 0.16s ease, box-shadow 0.16s ease;
}

.zm-hw-tab-btn.active .zm-hw-tab-dot {
    background: #fde047;
    box-shadow: 0 0 0 3px rgba(253, 224, 71, 0.25);
}

.zm-hw-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 20px;
    padding: 0 7px;
    border-radius: 999px;
    background: rgba(6, 20, 42, 0.55);
    border: 1px solid rgba(148, 163, 184, 0.28);
    color: #93c5fd;
    font-size: 11px;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    transition: background 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.zm-hw-tab-btn.active .zm-hw-tab-count {
    background: rgba(4, 18, 38, 0.42);
    color: #fde68a;
    border-color: rgba(253, 224, 71, 0.52);
}

.zm-hw-header-meta-pills {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.zm-hw-header-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    border-radius: 999px;
    font-size: 11.5px;
    font-weight: 750;
    color: #e0f2fe;
    background: rgba(14, 42, 80, 0.72);
    border: 1px solid rgba(56, 189, 248, 0.3);
    white-space: nowrap;
}

.zm-hw-header-pill-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #34d399;
    box-shadow: 0 0 0 3px rgba(52, 211, 153, 0.22);
}

/* 3-Column Equal-Height Hardware Card Grid */
.zm-hw-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
    align-items: stretch;
}

/* Individual Hardware Marketplace Card */
.zm-hw-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 14px;
    height: 100%;
    padding: 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f1f7fe 100%);
    border: 1px solid #bcd4f0;
    border-top: 3px solid #0284c7;
    border-radius: 16px;
    box-shadow: 0 10px 26px -10px rgba(6, 22, 45, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.98);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.zm-hw-card:hover {
    transform: translateY(-3px);
    background: linear-gradient(180deg, #ffffff 0%, #eaf3ff 100%);
    border-color: #38bdf8;
    border-top-color: #00d4ff;
    box-shadow: 0 16px 32px -10px rgba(12, 111, 232, 0.2), inset 0 1px 0 #ffffff;
}

/* Zone 1: Card Top (Meta Row + Fixed-Height Title Zone) */
.zm-hw-card-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.zm-hw-meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 28px;
}

.zm-hw-meta-left {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-hw-rank-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 24px;
    padding: 0 8px;
    border-radius: 6px;
    background: linear-gradient(135deg, #06162d 0%, #0d284d 100%);
    border: 1px solid rgba(251, 191, 36, 0.42);
    color: #ffd452;
    box-shadow: 0 2px 6px rgba(6, 22, 45, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.02em;
    font-variant-numeric: tabular-nums;
    flex-shrink: 0;
}

.zm-hw-cat-badge {
    display: inline-flex;
    align-items: center;
    height: 24px;
    padding: 0 9px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    border: 1px solid transparent;
}

.zm-hw-cat-badge.is-gpu {
    background: #e0f2fe;
    color: #0369a1;
    border-color: #bae6fd;
}

.zm-hw-cat-badge.is-asic {
    background: #fef3c7;
    color: #b45309;
    border-color: #fde68a;
}

.zm-hw-cat-badge.is-cpu {
    background: #e0e7ff;
    color: #3730a3;
    border-color: #c7d2fe;
}

.zm-hw-cat-badge.is-accessories {
    background: #dcfce7;
    color: #166534;
    border-color: #bbf7d0;
}

/* Daily Net Profit / Loss / Reference Price Pill */
.zm-hw-profit-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 26px;
    padding: 0 10px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    flex-shrink: 0;
    border: 1px solid transparent;
}

.zm-hw-profit-pill.is-pos {
    background: #ecfdf5;
    color: #047857;
    border-color: #a7f3d0;
}

.zm-hw-profit-pill.is-neg {
    background: #fef2f2;
    color: #dc2626;
    border-color: #fecaca;
}

.zm-hw-profit-pill.is-neutral {
    background: #f1f5f9;
    color: #475569;
    border-color: #cbd5e1;
}

.zm-hw-profit-pill.is-unavailable {
    background: #f8fafc;
    color: #64748b;
    border-color: #cbd5e1;
}

.zm-hw-profit-pill.is-price {
    background: #eff6ff;
    color: #1d4ed8;
    border-color: #bfdbfe;
}

/* Consistent Reserved Height Zone for Hardware Title & Subline */
.zm-hw-title-zone {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 4px;
    min-height: 68px;
    min-width: 0;
}

.zm-hw-title {
    margin: 0;
    font-size: 16.5px;
    font-weight: 850;
    line-height: 1.28;
    color: #0f172a;
    min-height: 42px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.zm-hw-subline {
    margin: 0;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.35;
    color: #475569;
    min-height: 17px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Zone 2: Aligned Top Coin & Hashrate / Power Telemetry Panel */
.zm-hw-telemetry-panel {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(0, 0.88fr);
    gap: 12px;
    align-items: start;
    padding: 12px 13px;
    background: linear-gradient(180deg, #e9f2fc 0%, #e1edfa 100%);
    border: 1px solid #bfd5f0;
    border-radius: 12px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.75);
}

.zm-hw-telemetry-col {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.zm-hw-telemetry-col-right {
    padding-left: 12px;
    border-left: 1px solid rgba(148, 163, 184, 0.35);
}

.zm-hw-telemetry-label {
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
    line-height: 1.2;
}

.zm-hw-coin-row {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 24px;
    min-width: 0;
}

.zm-hw-mini-logo-wrap {
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #bfd5f0;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2px;
    flex-shrink: 0;
    overflow: hidden;
}

.zm-hw-mini-logo-wrap[data-coin-symbol="ETC"],
.zm-hw-mini-logo-wrap[data-coin-symbol="XMR"],
.zm-hw-mini-logo-wrap[data-coin-symbol="RVN"],
.zm-hw-mini-logo-wrap[data-coin-symbol="KAS"],
.zm-hw-mini-logo-wrap[data-coin-symbol="FLUX"],
.zm-hw-mini-logo-wrap[data-coin-symbol="ERG"],
.zm-hw-mini-logo-wrap[data-coin-symbol="ZEC"],
.zm-hw-mini-logo-wrap[data-coin-symbol="DASH"] {
    background: radial-gradient(circle at 30% 30%, #ffffff 0%, #f1f5f9 100%);
    border-color: #93c5fd;
}

.zm-hw-mini-logo {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.zm-hw-mini-logo-fallback {
    font-size: 8.5px;
    font-weight: 900;
    color: #0f2540;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.zm-hw-coin-title,
.zm-hw-hash-value {
    font-size: 13.5px;
    font-weight: 850;
    color: #0f172a;
    line-height: 1.3;
    min-height: 24px;
    display: flex;
    align-items: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-hw-coin-title.is-muted,
.zm-hw-hash-value.is-muted {
    color: #64748b;
    font-weight: 700;
}

.zm-hw-subtag-row {
    display: flex;
    align-items: center;
    min-height: 21px;
}

.zm-hw-algo-tag,
.zm-hw-power-tag {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.35;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-hw-algo-tag {
    background: rgba(12, 111, 232, 0.11);
    color: #0369a1;
    border: 1px solid rgba(12, 111, 232, 0.22);
}

.zm-hw-algo-tag.is-muted {
    background: rgba(100, 116, 139, 0.12);
    color: #64748b;
    border-color: rgba(100, 116, 139, 0.22);
}

.zm-hw-power-tag {
    background: rgba(15, 23, 42, 0.07);
    color: #1e293b;
    border: 1px solid rgba(15, 23, 42, 0.14);
    font-variant-numeric: tabular-nums;
}

/* Zone 3: Aligned Bottom Action Buttons */
.zm-hw-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    align-items: stretch;
    margin-top: auto;
    padding-top: 2px;
}

.zm-hw-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: 40px;
    padding: 8px 11px;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-hw-btn svg {
    flex-shrink: 0;
}

.zm-hw-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* Primary Action Button: Calculate Profit (Electric Cyan / Blue Brand Gradient) */
.zm-hw-btn-calc {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 5px 14px rgba(12, 111, 232, 0.28), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
}

.zm-hw-btn-calc:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 8px 18px rgba(0, 212, 255, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

/* Secondary Marketplace Button: Verified Sellers (Metallic Gold & Amber Brand Gradient) */
.zm-hw-btn-seller {
    background: var(--zm-grad-gold-amber);
    color: #031022 !important;
    border: 1px solid #d97706;
    box-shadow: 0 5px 14px rgba(217, 119, 6, 0.24), var(--zm-gloss-gold);
}

.zm-hw-btn-seller:hover {
    background: var(--zm-grad-gold-amber-hover);
    color: #020914 !important;
    border-color: #b45309;
    box-shadow: 0 8px 18px rgba(245, 158, 11, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transform: translateY(-1px);
}

.zm-hw-btn-disabled {
    background: #e2e8f0;
    color: #64748b !important;
    border: 1px solid #cbd5e1;
    cursor: not-allowed;
}

.zm-hw-section-footer {
    margin-top: 28px;
    text-align: center;
}

@media (max-width: 1040px) {
    .zm-hw-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-hw-section-head {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 640px) {
    .zm-hw-card-grid {
        grid-template-columns: 1fr;
    }
    .zm-hw-tabs-bar {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-hw-tab-btn {
        width: 100%;
        padding: 8px 10px;
        font-size: 12px;
    }
    .zm-hw-telemetry-panel {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .zm-hw-telemetry-col-right {
        padding-left: 0;
        padding-top: 9px;
        border-left: none;
        border-top: 1px solid rgba(148, 163, 184, 0.3);
    }
    .zm-hw-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* ==========================================================================
   SECTION 6 & FULL DIRECTORY — PREMIUM VERIFIED CRYPTOCURRENCY MINING POOLS
   ========================================================================== */

/* Centered Container for the Full Mining Pools Directory Page (Requirement 1) */
.zm-pools-container {
    width: min(1320px, calc(100% - 40px));
    margin: 0 auto;
}

.zm-pools-page {
    background: #f4f8fe;
}

/* Redesigned Full Directory Page Header (Requirement 6) */
.zm-pools-hero {
    background: var(--zm-grad-navy-header);
    color: #f8fafc;
    padding: 30px 0 34px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: 0 12px 28px rgba(3, 12, 26, 0.35);
}

.zm-pools-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 14px;
}

.zm-pools-breadcrumb a {
    color: #7dd3fc;
    text-decoration: none;
    transition: color 0.15s ease;
}

.zm-pools-breadcrumb a:hover {
    color: #ffffff;
}

.zm-pools-hero-grid {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}

.zm-pools-hero-copy {
    max-width: 780px;
}

.zm-pools-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 11px;
    border-radius: 999px;
    background: rgba(0, 212, 255, 0.12);
    border: 1px solid rgba(56, 189, 248, 0.3);
    color: #7dd3fc;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.zm-pools-hero-title {
    margin: 0 0 8px;
    font-size: clamp(24px, 2.6vw, 32px);
    font-weight: 900;
    line-height: 1.2;
    color: #ffffff;
    letter-spacing: -0.02em;
}

.zm-pools-hero-subtitle {
    margin: 0 0 14px;
    font-size: 14.5px;
    font-weight: 500;
    line-height: 1.55;
    color: #cbd5e1;
}

.zm-pools-hero-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zm-pools-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 8px;
    background: rgba(15, 34, 62, 0.85);
    border: 1px solid rgba(148, 163, 184, 0.22);
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 600;
}

.zm-pools-stat-pill strong {
    color: #38bdf8;
    font-weight: 800;
}

.zm-pools-hero-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.zm-pools-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 16px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-pools-hero-btn.is-primary {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 6px 18px rgba(12, 111, 232, 0.34), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
}

.zm-pools-hero-btn.is-primary:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 10px 22px rgba(0, 212, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

.zm-pools-hero-btn.is-secondary {
    background: linear-gradient(135deg, rgba(10, 34, 68, 0.94) 0%, rgba(6, 22, 45, 0.98) 100%);
    color: #f8fafc !important;
    border: 1px solid rgba(251, 191, 36, 0.45);
    box-shadow: 0 6px 16px rgba(3, 12, 26, 0.4), var(--zm-gloss-navy);
}

.zm-pools-hero-btn.is-secondary:hover {
    background: linear-gradient(135deg, rgba(16, 48, 92, 0.98) 0%, rgba(10, 32, 64, 1) 100%);
    border-color: #ffd452;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(245, 158, 11, 0.22), inset 0 1px 0 rgba(255, 212, 82, 0.32);
    transform: translateY(-1px);
}

/* Directory Filter Panel (Requirement 7) */
.zm-pools-filter-panel {
    margin-bottom: 22px;
    padding: 15px 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fe 100%);
    border: 1px solid #c7daf2;
    border-radius: 14px;
    box-shadow: 0 6px 18px -8px rgba(15, 23, 42, 0.07);
}

.zm-pools-filter-controls {
    display: grid;
    grid-template-columns: minmax(210px, 1.3fr) minmax(170px, 0.95fr) minmax(160px, 0.85fr) auto;
    gap: 12px;
    align-items: end;
}

.zm-pools-filter-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.zm-pools-filter-label {
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #334155;
    line-height: 1.2;
}

.zm-pools-search-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.zm-pools-search-wrap svg {
    position: absolute;
    left: 11px;
    color: #64748b;
    pointer-events: none;
}

.zm-pools-input,
.zm-pools-select {
    width: 100%;
    height: 38px;
    padding: 0 11px;
    border-radius: 9px;
    border: 1px solid #bfd5f0;
    background: #ffffff;
    color: #0f172a;
    font-size: 13px;
    font-weight: 600;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.zm-pools-input {
    padding-left: 33px;
}

.zm-pools-input:focus,
.zm-pools-select:focus {
    outline: none;
    border-color: #0c6fe8;
    box-shadow: 0 0 0 3px rgba(12, 111, 232, 0.14);
}

.zm-pools-hw-tabs {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3px;
    height: 38px;
    background: #e6f0fc;
    border: 1px solid #c3d8f2;
    border-radius: 9px;
}

.zm-pools-hw-btn {
    height: 30px;
    padding: 0 11px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: #1e3a5f;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.zm-pools-hw-btn:hover {
    background: rgba(255, 255, 255, 0.75);
    color: #0c6fe8;
}

.zm-pools-hw-btn.active {
    background: #0f2540;
    color: #ffffff;
    border-color: #0284c7;
}

.zm-pools-filter-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 11px;
    padding-top: 10px;
    border-top: 1px solid #e2ecf8;
    font-size: 12.5px;
    color: #475569;
}

.zm-pools-count-status strong {
    color: #0f172a;
    font-weight: 800;
}

.zm-pools-reset-btn {
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid #93c5fd;
    background: #eff6ff;
    color: #0c6fe8;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.zm-pools-reset-btn:hover {
    background: #dbeafe;
}

.zm-pools-empty-state {
    margin-top: 20px;
    padding: 36px 24px;
    text-align: center;
    background: #ffffff;
    border: 1px dashed #93c5fd;
    border-radius: 14px;
}

.zm-pools-empty-state h3 {
    margin: 0 0 6px;
    font-size: 18px;
    font-weight: 850;
    color: #0f172a;
}

.zm-pools-empty-state p {
    margin: 0 0 16px;
    font-size: 13.5px;
    color: #64748b;
}

.zm-pools-preview-section {
    background: linear-gradient(180deg, #f8fbff 0%, #f1f6fd 100%);
    border-bottom: 1px solid #dbe7f6;
}

.zm-pools-directory-section {
    padding: 28px 0 64px;
    background: linear-gradient(180deg, #f4f8fe 0%, #edf4fc 100%);
}

/* Unified Dark Navy Header Panel for Mining Pools & Mining Guides (Matching Hardware & Categories) */
.zm-pools-unified-header-panel,
.zm-guides-unified-header-panel {
    background: linear-gradient(135deg, #061830 0%, #0b2952 100%);
    color: #ffffff;
    border: 1.5px solid rgba(56, 189, 248, 0.34);
    border-bottom: 2px solid rgba(251, 191, 36, 0.42);
    border-radius: 18px;
    padding: 18px 24px;
    margin-bottom: 22px;
    box-shadow: 0 16px 38px rgba(4, 18, 37, 0.14), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
}

.zm-pools-section-head {
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 26px;
}

.zm-pools-section-intro,
.zm-guides-section-intro {
    max-width: 660px;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-pools-unified-header-panel .zm-pools-section-intro h2,
.zm-guides-unified-header-panel .zm-guides-section-intro h2 {
    margin: 0;
    font-size: 22px;
    font-weight: 900;
    letter-spacing: -0.015em;
    color: #f8fafc;
    line-height: 1.2;
}

.zm-pools-unified-header-panel .zm-pools-section-intro p,
.zm-guides-unified-header-panel .zm-guides-section-intro p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-pools-header-actions,
.zm-guides-header-actions {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

/* Premium Cyan-to-Blue & Golden Accent Section Header Action Buttons */
.zm-pools-compare-btn,
.zm-guides-browse-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 18px;
    border-radius: 11px;
    background: var(--zm-grad-cyan-blue);
    border: 1.5px solid rgba(251, 191, 36, 0.68);
    color: #ffffff !important;
    font-size: 13px;
    font-weight: 850;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 8px 20px rgba(0, 180, 216, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.38);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.zm-pools-compare-btn svg,
.zm-guides-browse-btn svg {
    color: #fde68a;
    flex-shrink: 0;
}

.zm-pools-compare-arrow,
.zm-guides-browse-arrow {
    color: #fde68a;
    font-weight: 900;
    transition: transform 0.16s ease;
}

.zm-pools-compare-btn:hover,
.zm-guides-browse-btn:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #ffd452;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(0, 212, 255, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

.zm-pools-compare-btn:hover svg,
.zm-pools-compare-btn:hover .zm-pools-compare-arrow,
.zm-guides-browse-btn:hover svg,
.zm-guides-browse-btn:hover .zm-guides-browse-arrow {
    color: #ffffff;
}

.zm-pools-compare-btn:hover .zm-pools-compare-arrow,
.zm-guides-browse-btn:hover .zm-guides-browse-arrow {
    transform: translateX(2px);
}

.zm-pools-compare-btn:focus-visible,
.zm-guides-browse-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* Section 8 — Cryptocurrency Mining Guides & Education Cards */
.zm-guides-preview-section {
    background: linear-gradient(180deg, #f8fbff 0%, #f1f6fd 100%);
}

.zm-guide-card-grid {
    align-items: stretch;
}

.zm-guide-card {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8ff 100%);
    border: 1px solid #bcd4f0;
    border-top: 3px solid #0c6fe8;
    border-radius: 16px;
    padding: 18px 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    text-decoration: none;
    box-shadow: 0 10px 26px -10px rgba(6, 22, 45, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.98);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.zm-guide-card:hover {
    transform: translateY(-3px);
    border-color: #38bdf8;
    border-top-color: #00d4ff;
    box-shadow: 0 16px 32px -10px rgba(12, 111, 232, 0.2), inset 0 1px 0 #ffffff;
}

.zm-guide-card-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.zm-guide-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.zm-guide-cat-badge {
    background: #e0f2fe !important;
    color: #0369a1 !important;
    border-color: #bae6fd !important;
    padding: 3px 9px;
    border-radius: 6px;
    font-size: 10.5px;
    font-weight: 800;
}

.zm-guide-read-pill {
    font-size: 11.5px;
    font-weight: 700;
    color: #64748b;
    background: #f1f5f9;
    border: 1px solid #e2e8f0;
    padding: 2px 8px;
    border-radius: 999px;
}

.zm-guide-card-title {
    margin: 0;
    font-size: 17px;
    font-weight: 850;
    color: #06162d;
    line-height: 1.32;
}

.zm-guide-card-excerpt {
    margin: 0;
    font-size: 13px;
    color: #475569;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.zm-guide-card-foot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 12px;
    border-top: 1px solid #e2ecf7;
    font-size: 12.5px;
}

.zm-guide-read-cta {
    color: #0c6fe8;
    font-weight: 850;
    transition: color 0.15s ease;
}

.zm-guide-card:hover .zm-guide-read-cta {
    color: #0284c7;
}

.zm-guide-verified-tag {
    font-size: 11px;
    font-weight: 750;
    color: #047857;
    background: #ecfdf5;
    border: 1px solid #a7f3d0;
    padding: 2px 8px;
    border-radius: 6px;
}

/* 3-Column Equal-Height Mining Pool Card Grid */
.zm-pool-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    align-items: stretch;
}

/* Individual Mining Pool Card — Sophisticated Deep-Navy Header Accent + Metallic Gold Detailing */
.zm-pool-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 12px;
    height: 100%;
    min-width: 0;
    padding: 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f1f7fe 100%);
    border: 1px solid #bcd4f0;
    border-top: 3px solid #0c6fe8;
    border-radius: 16px;
    box-shadow: 0 10px 26px -10px rgba(6, 22, 45, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.98);
    scroll-margin-top: 96px;
    overflow: hidden;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.zm-pool-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #00d4ff 0%, #0c6fe8 52%, #fbbf24 100%);
    pointer-events: none;
}

.zm-pool-card.is-detailed {
    padding: 15px 16px;
    gap: 11px;
}

.zm-pool-card:hover {
    transform: translateY(-3px);
    background: linear-gradient(180deg, #ffffff 0%, #eaf3ff 100%);
    border-color: #38bdf8;
    box-shadow: 0 16px 32px -10px rgba(12, 111, 232, 0.2), inset 0 1px 0 #ffffff;
}

.zm-pool-card.is-highlighted,
.zm-pool-card:target {
    border-color: #0c6fe8;
    background: linear-gradient(180deg, #ffffff 0%, #e6f1fe 100%);
    box-shadow: 0 0 0 3px rgba(12, 111, 232, 0.18), 0 14px 30px -10px rgba(12, 111, 232, 0.22);
}

/* Zone 1: Top Verification + Fee Meta Bar & Consistent Title/Description Area */
.zm-pool-card-top {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-width: 0;
}

.zm-pool-meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-height: 34px;
    padding: 5px 10px;
    border-radius: 10px;
    background: linear-gradient(135deg, #051328 0%, #0b2345 100%);
    border: 1px solid rgba(56, 189, 248, 0.28);
    border-bottom: 1px solid rgba(251, 191, 36, 0.35);
    box-shadow: 0 4px 10px rgba(3, 12, 26, 0.12), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Verification Badge */
.zm-pool-verify-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    height: 23px;
    padding: 0 9px;
    border-radius: 999px;
    font-size: 10.8px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1;
    white-space: nowrap;
    flex-shrink: 0;
}

.zm-pool-verify-badge svg {
    flex-shrink: 0;
}

.zm-pool-verify-badge.is-verified {
    background: rgba(0, 212, 255, 0.16);
    color: #7dd3fc;
    border: 1px solid rgba(56, 189, 248, 0.42);
}

.zm-pool-verify-badge.is-verified svg {
    color: #ffd452;
}

.zm-pool-verify-badge.is-neutral {
    background: rgba(148, 163, 184, 0.16);
    color: #cbd5e1;
    border: 1px solid rgba(148, 163, 184, 0.32);
}

/* Compact Mining Pool Fee Badge */
.zm-pool-fee-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 23px;
    max-width: 65%;
    padding: 2px 9px;
    border-radius: 6px;
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.2) 0%, rgba(217, 119, 6, 0.24) 100%);
    color: #fde68a;
    border: 1px solid rgba(251, 191, 36, 0.45);
    font-size: 10.8px;
    font-weight: 800;
    line-height: 1.25;
    text-align: right;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
}

/* Consistent Reserved Area for Pool Title, Infrastructure Line & Description */
.zm-pool-title-zone {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 5px;
    min-height: 86px;
    min-width: 0;
}

.zm-pool-card.is-detailed .zm-pool-title-zone {
    min-height: 72px;
}

.zm-pool-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    min-width: 0;
}

.zm-pool-brand-identity {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-pool-logo-badge {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: linear-gradient(135deg, #06162d 0%, #0d284d 100%);
    border: 1px solid rgba(251, 191, 36, 0.5);
    box-shadow: 0 3px 8px rgba(6, 22, 45, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.16);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.zm-pool-logo-img {
    width: 22px;
    height: 22px;
    object-fit: contain;
    display: block;
}

.zm-pool-logo-monogram {
    font-size: 11.5px;
    font-weight: 900;
    letter-spacing: 0.03em;
    background: linear-gradient(135deg, #7dd3fc 0%, #ffd452 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: #7dd3fc;
    -webkit-text-fill-color: transparent;
    line-height: 1;
}

.zm-pool-title {
    margin: 0;
    font-size: 17.5px;
    font-weight: 900;
    line-height: 1.24;
    color: #06162d;
    min-height: 22px;
    overflow-wrap: break-word;
    min-width: 0;
}

.zm-pool-hw-pills {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
}

.zm-pool-hw-pill {
    display: inline-flex;
    align-items: center;
    height: 19px;
    padding: 0 6px;
    border-radius: 5px;
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    border: 1px solid transparent;
}

.zm-pool-hw-pill.is-asic {
    background: #fef3c7;
    color: #b45309;
    border-color: #fde68a;
}

.zm-pool-hw-pill.is-gpu {
    background: #e0f2fe;
    color: #0369a1;
    border-color: #bae6fd;
}

.zm-pool-hw-pill.is-cpu {
    background: #f3e8ff;
    color: #6b21a8;
    border-color: #e9d5ff;
}

.zm-pool-infra-line {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 11.5px;
    font-weight: 700;
    color: #0c6fe8;
    line-height: 1.35;
    min-height: 17px;
    min-width: 0;
}

.zm-pool-infra-line svg {
    flex-shrink: 0;
    color: #0284c7;
}

.zm-pool-infra-line span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-pool-desc {
    margin: 0;
    font-size: 12.5px;
    font-weight: 500;
    line-height: 1.48;
    color: #475569;
    min-height: 38px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.zm-pool-card.is-detailed .zm-pool-desc {
    min-height: 38px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Zone 2: Aligned Reward Method, Supported Coins & Compact Details Panel */
.zm-pool-telemetry-panel {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 12px;
    background: linear-gradient(180deg, #e9f2fc 0%, #e1edfa 100%);
    border: 1px solid #bfd5f0;
    border-radius: 11px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78);
}

.zm-pool-telemetry-grid {
    display: grid;
    grid-template-columns: minmax(0, 0.94fr) minmax(0, 1.06fr);
    gap: 11px;
    align-items: start;
}

.zm-pool-telemetry-col {
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
}

.zm-pool-telemetry-col-right {
    padding-left: 11px;
    border-left: 1px solid rgba(148, 163, 184, 0.35);
}

.zm-pool-telemetry-label {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
    line-height: 1.2;
}

.zm-pool-coin-total {
    color: #0369a1;
    font-weight: 800;
}

/* Reward Method Pills */
.zm-pool-methods-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    min-height: 24px;
}

.zm-pool-method-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2.5px 7px;
    border-radius: 5px;
    background: #0f2540;
    color: #e0f2fe;
    border: 1px solid rgba(56, 189, 248, 0.3);
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.02em;
}

.zm-pool-submeta-row {
    display: flex;
    align-items: center;
    min-height: 19px;
}

.zm-pool-subtag {
    display: inline-flex;
    align-items: center;
    max-width: 100%;
    padding: 2px 6px;
    border-radius: 5px;
    background: rgba(15, 23, 42, 0.06);
    color: #334155;
    border: 1px solid rgba(15, 23, 42, 0.12);
    font-size: 10px;
    font-weight: 700;
    line-height: 1.25;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-pool-subtag.is-merged {
    background: rgba(12, 111, 232, 0.11);
    color: #0369a1;
    border-color: rgba(12, 111, 232, 0.24);
}

/* Supported Coins Pills */
.zm-pool-coins-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    min-height: 46px;
    align-content: flex-start;
}

.zm-pool-coin-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 21px;
    padding: 0 6.5px;
    border-radius: 5px;
    background: #ffffff;
    color: #0f172a;
    border: 1px solid #b8d0ee;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1;
    text-decoration: none;
    transition: border-color 0.14s ease, color 0.14s ease, background-color 0.14s ease;
}

.zm-pool-coin-tag.is-link:hover {
    background: #0c6fe8;
    color: #ffffff;
    border-color: #0369a1;
}

.zm-pool-coin-tag.is-muted {
    background: rgba(255, 255, 255, 0.65);
    color: #64748b;
}

.zm-pool-coin-more {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 21px;
    padding: 0 6.5px;
    border-radius: 5px;
    background: rgba(12, 111, 232, 0.12);
    color: #0369a1;
    border: 1px solid rgba(12, 111, 232, 0.25);
    font-size: 10px;
    font-weight: 800;
    line-height: 1;
    cursor: help;
}

.zm-pool-coin-more.is-interactive {
    cursor: pointer;
    font-family: inherit;
    transition: background-color 0.14s ease, color 0.14s ease;
}

.zm-pool-coin-more.is-interactive:hover {
    background: #0c6fe8;
    color: #ffffff;
    border-color: #0369a1;
}

/* Compact Integrated Details Rows on /mining-pools Directory Cards (Requirement 4) */
.zm-pool-details-rows {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 8px;
    border-top: 1px solid rgba(148, 163, 184, 0.32);
}

.zm-pool-detail-row {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    font-size: 11.3px;
    line-height: 1.3;
    min-width: 0;
}

.zm-pool-detail-label {
    color: #475569;
    font-weight: 700;
    flex-shrink: 0;
}

.zm-pool-detail-val {
    color: #0f172a;
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
}

/* Zone 3: Aligned Bottom Action Buttons */
.zm-pool-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    margin-top: auto;
    padding-top: 2px;
}

.zm-pool-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5.5px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 38px;
    padding: 7px 10px;
    border-radius: 9px;
    font-size: 12px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    box-sizing: border-box;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-pool-btn span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zm-pool-btn svg {
    flex-shrink: 0;
}

.zm-pool-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* Primary Pool Button: Pool Details & Fees / Calculate Pool Profit (Electric Cyan / Blue Brand Gradient) */
.zm-pool-btn-details {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 5px 14px rgba(12, 111, 232, 0.28), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
}

.zm-pool-btn-details:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 8px 18px rgba(0, 212, 255, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

/* Secondary Pool Button: Official Site (Metallic Gold & Amber Brand Gradient) */
.zm-pool-btn-official {
    background: var(--zm-grad-gold-amber);
    color: #031022 !important;
    border: 1px solid #d97706;
    box-shadow: 0 5px 14px rgba(217, 119, 6, 0.24), var(--zm-gloss-gold);
}

.zm-pool-btn-official:hover {
    background: var(--zm-grad-gold-amber-hover);
    color: #020914 !important;
    border-color: #b45309;
    box-shadow: 0 8px 18px rgba(245, 158, 11, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transform: translateY(-1px);
}

.zm-pool-btn-disabled {
    background: #e2e8f0;
    color: #64748b !important;
    border: 1px solid #cbd5e1;
    cursor: not-allowed;
}

@media (max-width: 1080px) {
    .zm-pool-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-pools-section-head {
        flex-direction: column;
        align-items: flex-start;
    }
    .zm-pools-filter-controls {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .zm-pools-container {
        width: calc(100% - 28px);
    }
    .zm-pool-card-grid {
        grid-template-columns: 1fr;
    }
    .zm-pools-filter-controls {
        grid-template-columns: 1fr;
    }
    .zm-pools-hw-tabs {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .zm-pools-hw-btn {
        padding: 0 4px;
        font-size: 11px;
    }
    .zm-pools-hero-actions,
    .zm-pools-header-actions,
    .zm-guides-header-actions {
        width: 100%;
    }
    .zm-pools-unified-header-panel,
    .zm-guides-unified-header-panel {
        padding: 16px;
        gap: 14px;
    }
    .zm-pools-hero-btn {
        flex: 1 1 auto;
    }
    .zm-pools-compare-btn,
    .zm-guides-browse-btn {
        width: 100%;
    }
    .zm-pool-meta-row {
        flex-wrap: wrap;
    }
    .zm-pool-fee-badge {
        max-width: 100%;
    }
    .zm-pool-telemetry-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .zm-pool-telemetry-col-right {
        padding-left: 0;
        padding-top: 9px;
        border-left: none;
        border-top: 1px solid rgba(148, 163, 184, 0.3);
    }
    .zm-pool-coins-wrap {
        min-height: 0;
    }
    .zm-pool-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 380px) {
    .zm-pool-actions {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   SECTION 7 — PREMIUM COMPATIBLE MINING SOFTWARE & FIRMWARE CARDS (DARK NAVY)
   ========================================================================== */

.zm-sw-preview-section,
.zm-sw-directory-section {
    background: linear-gradient(180deg, #060f1e 0%, #09172c 52%, #071224 100%);
    border-top: 1px solid rgba(56, 189, 248, 0.16);
    border-bottom: 1px solid rgba(56, 189, 248, 0.16);
}

.zm-sw-section-head {
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 28px;
}

.zm-sw-section-intro {
    max-width: 680px;
}

/* Secondary Cyan-Outlined Button: View All 13 Mining Software */
.zm-sw-viewall-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 42px;
    padding: 9px 18px;
    border-radius: 11px;
    background: linear-gradient(135deg, rgba(10, 34, 68, 0.94) 0%, rgba(6, 22, 45, 0.98) 100%);
    border: 1px solid rgba(251, 191, 36, 0.5);
    color: #f8fafc !important;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: 0 6px 18px rgba(2, 6, 23, 0.48), var(--zm-gloss-navy);
    transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, background 0.16s ease;
}

.zm-sw-viewall-btn svg {
    color: #ffd452;
    flex-shrink: 0;
}

.zm-sw-viewall-arrow {
    color: #38bdf8;
    font-weight: 900;
    transition: transform 0.16s ease;
}

.zm-sw-viewall-btn:hover {
    background: var(--zm-grad-cyan-blue);
    border-color: #7dd3fc;
    color: #ffffff !important;
    box-shadow: 0 10px 24px rgba(12, 111, 232, 0.38), var(--zm-gloss-top);
    transform: translateY(-1px);
}

.zm-sw-viewall-btn:hover svg,
.zm-sw-viewall-btn:hover .zm-sw-viewall-arrow {
    color: #ffffff;
}

.zm-sw-viewall-btn:hover .zm-sw-viewall-arrow {
    transform: translateX(2px);
}

.zm-sw-viewall-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* ==========================================================================
   MINING SOFTWARE & ASIC FIRMWARE DIRECTORY (/mining-software) & HOMEPAGE CARDS
   ========================================================================== */

.zm-sw-container {
    width: min(1380px, calc(100% - 40px));
    margin: 0 auto;
}

.zm-sw-page {
    background: linear-gradient(180deg, #050d1a 0%, #081529 50%, #061020 100%);
    min-height: 75vh;
}

.zm-sw-hero {
    background: linear-gradient(135deg, #040d1d 0%, #0a1f3d 55%, #07162c 100%);
    color: #f8fafc;
    padding: 26px 0 28px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.24);
    box-shadow: 0 10px 26px rgba(2, 6, 23, 0.45);
}

.zm-sw-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 12px;
}

.zm-sw-breadcrumb a {
    color: #7dd3fc;
    text-decoration: none;
    transition: color 0.15s ease;
}

.zm-sw-breadcrumb a:hover {
    color: #ffffff;
}

.zm-sw-hero-grid {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    flex-wrap: wrap;
}

.zm-sw-hero-copy {
    max-width: 780px;
    flex: 1 1 520px;
}

.zm-sw-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 11px;
    border-radius: 999px;
    background: rgba(0, 212, 255, 0.12);
    border: 1px solid rgba(56, 189, 248, 0.32);
    color: #7dd3fc;
    font-size: 10.8px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.zm-sw-hero-title {
    margin: 0 0 8px;
    font-size: clamp(24px, 3vw, 33px);
    font-weight: 900;
    letter-spacing: -0.02em;
    line-height: 1.16;
    color: #ffffff;
}

.zm-sw-hero-subtitle {
    margin: 0 0 14px;
    font-size: 14px;
    line-height: 1.52;
    color: #cbd5e1;
}

.zm-sw-hero-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zm-sw-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 11px;
    border-radius: 8px;
    background: rgba(15, 34, 64, 0.82);
    border: 1px solid rgba(56, 189, 248, 0.25);
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 600;
}

.zm-sw-stat-pill strong {
    color: #ffd452;
    font-weight: 850;
}

.zm-sw-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
}

.zm-sw-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 8px 16px;
    border-radius: 10px;
    font-size: 12.8px;
    font-weight: 800;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
}

.zm-sw-hero-btn.is-primary {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 6px 16px rgba(12, 111, 232, 0.34), var(--zm-gloss-top);
}

.zm-sw-hero-btn.is-primary:hover {
    background: var(--zm-grad-cyan-blue-hover);
    transform: translateY(-1px);
}

.zm-sw-hero-btn.is-secondary {
    background: rgba(15, 34, 64, 0.85);
    color: #e2e8f0 !important;
    border: 1px solid rgba(251, 191, 36, 0.45);
}

.zm-sw-hero-btn.is-secondary:hover {
    border-color: #ffd452;
    color: #ffffff !important;
    transform: translateY(-1px);
}

.zm-sw-directory-section {
    padding: 24px 0 44px;
}

/* Directory Filter Panel */
.zm-sw-filter-panel {
    background: linear-gradient(180deg, rgba(12, 29, 56, 0.96) 0%, rgba(7, 19, 38, 0.98) 100%);
    border: 1px solid rgba(56, 189, 248, 0.28);
    border-top: 2px solid rgba(0, 212, 255, 0.6);
    border-radius: 14px;
    padding: 14px 16px;
    margin-bottom: 20px;
    box-shadow: 0 12px 28px -12px rgba(2, 6, 23, 0.72);
}

.zm-sw-cat-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding-bottom: 12px;
    margin-bottom: 12px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.16);
}

.zm-sw-cat-tab {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    height: 36px;
    padding: 0 13px;
    border-radius: 9px;
    background: rgba(15, 35, 66, 0.85);
    border: 1px solid rgba(100, 148, 204, 0.32);
    color: #dbeafe;
    font-size: 12.4px;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.15s ease;
}

.zm-sw-cat-tab:hover {
    background: rgba(22, 50, 92, 0.95);
    border-color: #38bdf8;
    color: #ffffff;
}

.zm-sw-cat-tab.active {
    background: var(--zm-grad-cyan-blue);
    border-color: #7dd3fc;
    color: #ffffff;
    box-shadow: 0 5px 14px rgba(12, 111, 232, 0.35), var(--zm-gloss-top);
}

.zm-sw-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 19px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(3, 12, 26, 0.45);
    color: #ffd452;
    font-size: 11px;
    font-weight: 850;
}

.zm-sw-cat-tab.active .zm-sw-tab-count {
    background: rgba(3, 12, 26, 0.38);
    color: #fde68a;
}

.zm-sw-filter-controls {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
    align-items: end;
}

.zm-sw-filter-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.zm-sw-filter-label {
    font-size: 10.8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #7dd3fc;
}

.zm-sw-search-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.zm-sw-search-wrap svg {
    position: absolute;
    left: 11px;
    color: #7dd3fc;
    pointer-events: none;
}

.zm-sw-input,
.zm-sw-select {
    width: 100%;
    height: 38px;
    border-radius: 9px;
    background: rgba(6, 17, 34, 0.9);
    border: 1px solid rgba(56, 189, 248, 0.32);
    color: #f8fafc;
    font-size: 12.8px;
    font-weight: 600;
    padding: 0 11px;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.zm-sw-input {
    padding-left: 33px;
}

.zm-sw-input::placeholder {
    color: #94a3b8;
}

.zm-sw-input:focus,
.zm-sw-select:focus {
    outline: none;
    border-color: #38bdf8;
    box-shadow: 0 0 0 2px rgba(56, 189, 248, 0.22);
}

.zm-sw-select option {
    background: #071529;
    color: #f8fafc;
}

.zm-sw-filter-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    margin-top: 10px;
    padding-top: 9px;
    border-top: 1px solid rgba(148, 163, 184, 0.14);
    font-size: 12px;
    color: #cbd5e1;
}

.zm-sw-count-status strong {
    color: #38bdf8;
    font-weight: 850;
}

.zm-sw-reset-btn {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 11px;
    border-radius: 7px;
    background: rgba(245, 158, 11, 0.16);
    border: 1px solid rgba(251, 191, 36, 0.45);
    color: #fde68a;
    font-size: 11.5px;
    font-weight: 800;
    cursor: pointer;
}

.zm-sw-reset-btn:hover {
    background: rgba(245, 158, 11, 0.28);
    color: #ffffff;
}

/* 4-Column Equal-Height Grid on Homepage; 3-Column Grid on Directory Page */
.zm-sw-card-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

.zm-sw-directory-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

/* Individual Software Card (Compact, Premium Dark Navy Theme) */
.zm-sw-card {
    position: relative;
    display: grid;
    grid-template-rows: auto 1fr auto;
    gap: 9px;
    height: 100%;
    min-width: 0;
    padding: 13px 14px;
    background: linear-gradient(180deg, rgba(14, 34, 64, 0.96) 0%, rgba(7, 18, 36, 0.99) 100%);
    border: 1px solid rgba(56, 189, 248, 0.28);
    border-top: 2px solid rgba(0, 212, 255, 0.65);
    border-radius: 14px;
    color: #f8fafc;
    box-shadow: 0 10px 24px -10px rgba(2, 6, 23, 0.72), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    scroll-margin-top: 96px;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
}

.zm-sw-card:hover {
    transform: translateY(-2px);
    background: linear-gradient(180deg, rgba(20, 44, 80, 0.98) 0%, rgba(10, 24, 48, 1) 100%);
    border-color: rgba(56, 189, 248, 0.62);
    border-top-color: #ffd452;
    box-shadow: 0 16px 30px -10px rgba(2, 132, 199, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.zm-sw-card.is-highlighted,
.zm-sw-card:target {
    border-color: #38bdf8;
    border-top-color: #ffd452;
    background: linear-gradient(180deg, rgba(22, 45, 80, 0.98) 0%, rgba(13, 29, 54, 1) 100%);
    box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.28), 0 16px 34px -10px rgba(14, 165, 233, 0.35);
}

/* Zone 1: Top Category & Type Meta Row + Compact Title & Description */
.zm-sw-card-top {
    display: flex;
    flex-direction: column;
    gap: 9px;
    min-width: 0;
}

.zm-sw-meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    flex-wrap: wrap;
}

.zm-sw-meta-left {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

/* GPU, ASIC, CPU, OS, and Multi-Platform Badges */
.zm-sw-cat-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 5px;
    font-size: 10.5px;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1;
    white-space: nowrap;
    flex-shrink: 0;
    border: 1px solid transparent;
}

.zm-sw-cat-badge.is-gpu {
    background: rgba(14, 165, 233, 0.18);
    color: #7dd3fc;
    border-color: rgba(56, 189, 248, 0.42);
}

.zm-sw-cat-badge.is-asic {
    background: rgba(245, 158, 11, 0.18);
    color: #fcd34d;
    border-color: rgba(251, 191, 36, 0.42);
}

.zm-sw-cat-badge.is-cpu {
    background: rgba(168, 85, 247, 0.2);
    color: #d8b4fe;
    border-color: rgba(192, 132, 252, 0.42);
}

.zm-sw-cat-badge.is-multi {
    background: rgba(59, 130, 246, 0.2);
    color: #93c5fd;
    border-color: rgba(96, 165, 250, 0.42);
}

.zm-sw-cat-badge.is-os {
    background: rgba(16, 185, 129, 0.18);
    color: #6ee7b7;
    border-color: rgba(52, 211, 153, 0.42);
}

.zm-sw-type-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: rgba(148, 163, 184, 0.12);
    color: #cbd5e1;
    border: 1px solid rgba(148, 163, 184, 0.24);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    flex-shrink: 0;
}

.zm-sw-type-pill.is-verified {
    background: rgba(16, 185, 129, 0.14);
    color: #6ee7b7;
    border-color: rgba(52, 211, 153, 0.32);
}

.zm-sw-fee-pill {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 6px;
    background: rgba(251, 191, 36, 0.14);
    border: 1px solid rgba(251, 191, 36, 0.35);
    color: #fde68a;
    font-size: 10.5px;
    font-weight: 800;
    white-space: nowrap;
}

/* Title & Description Zone (Compact without excessive vertical whitespace) */
.zm-sw-title-zone {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-width: 0;
}

.zm-sw-identity-row {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    min-width: 0;
}

/* Prominent Software Icon / Logo Emblem (42px x 42px) */
.zm-sw-icon-wrap {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: linear-gradient(135deg, #091933 0%, #102a52 100%);
    border: 1px solid rgba(56, 189, 248, 0.36);
    box-shadow: 0 4px 10px rgba(2, 6, 23, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.12);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    flex-shrink: 0;
    overflow: hidden;
    box-sizing: border-box;
    cursor: pointer;
}

.zm-sw-icon-wrap.is-asic {
    border-color: rgba(251, 191, 36, 0.45);
}

.zm-sw-icon-wrap.is-cpu {
    border-color: rgba(192, 132, 252, 0.45);
}

.zm-sw-icon-wrap.is-os {
    border-color: rgba(52, 211, 153, 0.45);
}

.zm-sw-icon-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    border-radius: 4px;
}

.zm-sw-custom-emblem {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 1px;
    line-height: 1;
}

.zm-sw-emblem-code {
    font-size: 8.5px;
    font-weight: 900;
    letter-spacing: 0.04em;
    color: #f8fafc;
}

.zm-sw-icon-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #38bdf8;
}

.zm-sw-title-col {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-sw-title {
    margin: 0;
    font-size: 15.2px;
    font-weight: 850;
    line-height: 1.24;
    color: #ffffff;
    overflow-wrap: break-word;
    min-width: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.zm-sw-title-trigger {
    background: none;
    border: none;
    padding: 0;
    margin: 0;
    font: inherit;
    color: inherit;
    text-align: left;
    cursor: pointer;
    transition: color 0.14s ease;
}

.zm-sw-title-trigger:hover {
    color: #38bdf8;
}

.zm-sw-desc {
    margin: 0;
    font-size: 12.4px;
    font-weight: 500;
    line-height: 1.42;
    color: #cbd5e1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Zone 2: Compact Structured Software Specifications Panel */
.zm-sw-specs-panel {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 9px 11px;
    background: linear-gradient(180deg, rgba(20, 40, 72, 0.78) 0%, rgba(12, 26, 49, 0.88) 100%);
    border: 1px solid rgba(56, 189, 248, 0.2);
    border-radius: 10px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.zm-sw-spec-row-2col {
    display: grid;
    grid-template-columns: minmax(0, 0.92fr) minmax(0, 1.08fr);
    gap: 9px;
    padding-bottom: 5px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.13);
}

.zm-sw-spec-row-2col .zm-sw-spec-item {
    padding-bottom: 0;
    border-bottom: none;
}

.zm-sw-spec-row-2col .zm-sw-spec-item:last-child {
    padding-left: 8px;
    border-left: 1px solid rgba(148, 163, 184, 0.14);
}

.zm-sw-spec-item {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding-bottom: 5px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.13);
    min-width: 0;
}

.zm-sw-spec-item:last-child {
    padding-bottom: 0;
    border-bottom: none;
}

.zm-sw-card.is-directory-card .zm-sw-specs-panel > .zm-sw-spec-item:first-child .zm-sw-spec-value {
    -webkit-line-clamp: 1;
}

.zm-sw-spec-head-inline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}

.zm-sw-coins-count-tag {
    font-size: 10px;
    font-weight: 800;
    color: #fcd34d;
    background: rgba(251, 191, 36, 0.12);
    border: 1px solid rgba(251, 191, 36, 0.28);
    padding: 1px 6px;
    border-radius: 999px;
}

.zm-sw-spec-label {
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #7dd3fc;
    line-height: 1.2;
}

.zm-sw-spec-value {
    font-size: 12px;
    font-weight: 700;
    line-height: 1.34;
    color: #f1f5f9;
    overflow-wrap: break-word;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.zm-sw-spec-value.is-fee {
    color: #6ee7b7;
    font-weight: 800;
}

.zm-sw-algo-pills {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px;
    margin-top: 3px;
}

.zm-sw-algo-pill {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    background: rgba(14, 165, 233, 0.15);
    color: #bae6fd;
    border: 1px solid rgba(56, 189, 248, 0.3);
    font-size: 10.5px;
    font-weight: 700;
    line-height: 1.25;
}

.zm-sw-algo-more-btn {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    background: rgba(251, 191, 36, 0.16);
    color: #fde68a;
    border: 1px solid rgba(251, 191, 36, 0.38);
    font-size: 10.5px;
    font-weight: 800;
    line-height: 1.25;
    cursor: pointer;
    transition: background 0.14s ease, color 0.14s ease;
}

.zm-sw-algo-more-btn:hover {
    background: #f59e0b;
    color: #031022;
}

/* Zone 3: Aligned Bottom Action Buttons */
.zm-sw-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    align-items: stretch;
    width: 100%;
    min-width: 0;
    margin-top: auto;
    padding-top: 2px;
}

.zm-sw-actions.is-directory-actions.has-three-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.zm-sw-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 4.5px;
    width: 100%;
    min-width: 0;
    max-width: 100%;
    min-height: 36px;
    padding: 6px 7px;
    border-radius: 8px;
    font-size: 11.4px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.01em;
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    box-sizing: border-box;
    cursor: pointer;
    font-family: inherit;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-sw-btn span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zm-sw-btn svg {
    width: 12px;
    height: 12px;
    flex-shrink: 0;
}

.zm-sw-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

/* View Details Button (Cyan / Blue) */
.zm-sw-btn-specs {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 4px 12px rgba(12, 111, 232, 0.3), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.28);
}

.zm-sw-btn-specs:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 7px 16px rgba(0, 212, 255, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

/* Official Download / Official Release Button (Metallic Gold & Amber) */
.zm-sw-btn-release {
    background: var(--zm-grad-gold-amber);
    color: #031022 !important;
    border: 1px solid #d97706;
    box-shadow: 0 4px 12px rgba(217, 119, 6, 0.26), var(--zm-gloss-gold);
}

.zm-sw-btn-release:hover {
    background: var(--zm-grad-gold-amber-hover);
    color: #020914 !important;
    border-color: #fbbf24;
    box-shadow: 0 7px 16px rgba(245, 158, 11, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transform: translateY(-1px);
}

/* Calculate Profit Button on Directory Cards (Deep Navy / Cyan Outline) */
.zm-sw-btn-calc {
    background: linear-gradient(135deg, rgba(16, 44, 84, 0.95) 0%, rgba(9, 26, 52, 0.98) 100%);
    color: #7dd3fc !important;
    border: 1px solid rgba(56, 189, 248, 0.48);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
}

.zm-sw-btn-calc:hover {
    background: rgba(14, 165, 233, 0.24);
    border-color: #7dd3fc;
    color: #ffffff !important;
    transform: translateY(-1px);
}

.zm-sw-btn-secondary-link {
    background: rgba(15, 34, 64, 0.9);
    color: #e2e8f0 !important;
    border: 1px solid rgba(56, 189, 248, 0.35);
    width: auto;
    padding: 8px 14px;
}

.zm-sw-btn-secondary-link:hover {
    border-color: #7dd3fc;
    color: #ffffff !important;
}

.zm-sw-btn-disabled {
    background: rgba(51, 65, 85, 0.6);
    color: #94a3b8 !important;
    border: 1px solid rgba(100, 116, 139, 0.35);
    cursor: not-allowed;
}

/* Empty State */
.zm-sw-empty-state {
    text-align: center;
    padding: 38px 20px;
    background: rgba(12, 28, 54, 0.85);
    border: 1px dashed rgba(56, 189, 248, 0.35);
    border-radius: 14px;
    color: #e2e8f0;
}

.zm-sw-empty-state h3 {
    margin: 0 0 8px;
    font-size: 18px;
    color: #ffffff;
}

.zm-sw-empty-state p {
    margin: 0 0 16px;
    font-size: 13.5px;
    color: #94a3b8;
}

/* Software Details Modal */
.zm-sw-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 9999;
    background: rgba(2, 8, 20, 0.82);
    backdrop-filter: blur(5px);
    display: none;
    align-items: center;
    justify-content: center;
    padding: 18px;
    box-sizing: border-box;
}

.zm-sw-modal-backdrop.is-open {
    display: flex;
}

.zm-sw-modal-dialog {
    width: min(820px, 100%);
    max-height: calc(100vh - 36px);
    display: flex;
    flex-direction: column;
    background: linear-gradient(180deg, #0b1e3b 0%, #061226 100%);
    border: 1px solid rgba(56, 189, 248, 0.45);
    border-top: 3px solid #00d4ff;
    border-radius: 16px;
    color: #f8fafc;
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.75);
    overflow: hidden;
}

.zm-sw-modal-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 20px;
    background: rgba(4, 12, 26, 0.65);
    border-bottom: 1px solid rgba(56, 189, 248, 0.2);
}

.zm-sw-modal-identity {
    display: flex;
    align-items: center;
    gap: 14px;
    min-width: 0;
}

.zm-sw-modal-icon {
    width: 48px;
    height: 48px;
    border-radius: 11px;
    background: linear-gradient(135deg, #091933 0%, #12315e 100%);
    border: 1px solid rgba(56, 189, 248, 0.42);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px;
    flex-shrink: 0;
    box-sizing: border-box;
}

.zm-sw-modal-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zm-sw-modal-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 5px;
}

.zm-sw-modal-title {
    margin: 0;
    font-size: 19px;
    font-weight: 900;
    color: #ffffff;
    line-height: 1.25;
}

.zm-sw-modal-close {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    background: rgba(30, 58, 95, 0.6);
    border: 1px solid rgba(148, 163, 184, 0.3);
    color: #e2e8f0;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    flex-shrink: 0;
}

.zm-sw-modal-close:hover {
    background: rgba(239, 68, 68, 0.25);
    border-color: #f87171;
    color: #ffffff;
}

.zm-sw-modal-body {
    padding: 18px 20px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.zm-sw-modal-summary {
    background: rgba(15, 34, 64, 0.65);
    border: 1px solid rgba(56, 189, 248, 0.2);
    border-radius: 11px;
    padding: 12px 14px;
}

.zm-sw-modal-lead {
    margin: 0;
    font-size: 13.5px;
    font-weight: 600;
    line-height: 1.5;
    color: #f1f5f9;
}

.zm-sw-modal-tech {
    margin: 8px 0 0;
    padding-top: 8px;
    border-top: 1px solid rgba(148, 163, 184, 0.16);
    font-size: 12.5px;
    line-height: 1.5;
    color: #cbd5e1;
}

.zm-sw-modal-specs-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.zm-sw-modal-spec-card {
    background: rgba(12, 27, 52, 0.85);
    border: 1px solid rgba(56, 189, 248, 0.2);
    border-radius: 10px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.zm-sw-modal-spec-card strong {
    font-size: 12.5px;
    color: #f8fafc;
    line-height: 1.38;
}

.zm-sw-modal-spec-card strong.is-fee {
    color: #6ee7b7;
}

.zm-sw-modal-section h4 {
    margin: 0 0 8px;
    font-size: 12px;
    font-weight: 850;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #7dd3fc;
}

.zm-sw-modal-coins-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
    gap: 8px;
}

.zm-sw-modal-coin-chip {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 7px 10px;
    border-radius: 8px;
    background: rgba(15, 34, 64, 0.85);
    border: 1px solid rgba(56, 189, 248, 0.26);
    color: #f8fafc;
    text-decoration: none;
    font-size: 12px;
    transition: border-color 0.14s ease, background 0.14s ease;
}

.zm-sw-modal-coin-chip:hover {
    background: rgba(14, 165, 233, 0.2);
    border-color: #38bdf8;
}

.zm-sw-modal-coin-chip span {
    color: #cbd5e1;
    font-size: 11.2px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-sw-modal-coin-chip small {
    margin-left: auto;
    color: #7dd3fc;
    font-size: 10px;
    font-weight: 700;
}

.zm-sw-modal-hw-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 8px;
}

.zm-sw-modal-hw-chip {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 8px;
    background: rgba(12, 27, 52, 0.85);
    border: 1px solid rgba(148, 163, 184, 0.24);
    color: #f1f5f9;
    text-decoration: none;
    font-size: 11.8px;
}

.zm-sw-modal-hw-chip:hover {
    border-color: #38bdf8;
    color: #ffffff;
}

.zm-sw-modal-hw-cat {
    padding: 2px 6px;
    border-radius: 4px;
    background: rgba(56, 189, 248, 0.16);
    color: #7dd3fc;
    font-size: 9.8px;
    font-weight: 800;
}

.zm-sw-modal-foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    padding: 13px 20px;
    background: rgba(4, 12, 26, 0.8);
    border-top: 1px solid rgba(56, 189, 248, 0.2);
}

.zm-sw-modal-foot .zm-sw-btn {
    width: auto;
    padding: 8px 14px;
}

@media (max-width: 1180px) {
    .zm-sw-card-grid,
    .zm-sw-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-sw-section-head {
        flex-direction: column;
        align-items: flex-start;
    }
    .zm-sw-filter-controls {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-sw-filter-field.is-search {
        grid-column: 1 / -1;
    }
    .zm-sw-actions.is-directory-actions.has-three-actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-sw-actions.is-directory-actions.has-three-actions .zm-sw-btn-calc {
        grid-column: 1 / -1;
    }
}

@media (max-width: 680px) {
    .zm-sw-container {
        width: calc(100% - 28px);
    }
    .zm-sw-card-grid,
    .zm-sw-directory-grid {
        grid-template-columns: 1fr;
    }
    .zm-sw-filter-controls {
        grid-template-columns: 1fr;
    }
    .zm-sw-viewall-btn {
        width: 100%;
    }
    .zm-sw-hero-actions {
        width: 100%;
    }
    .zm-sw-hero-btn {
        flex: 1 1 auto;
    }
    .zm-sw-modal-specs-grid {
        grid-template-columns: 1fr;
    }
    .zm-sw-modal-foot {
        justify-content: stretch;
    }
    .zm-sw-modal-foot .zm-sw-btn {
        flex: 1 1 calc(50% - 8px);
    }
}

@media (max-width: 400px) {
    .zm-sw-actions,
    .zm-sw-actions.is-directory-actions.has-three-actions {
        grid-template-columns: 1fr;
    }
    .zm-sw-spec-row-2col {
        grid-template-columns: 1fr;
    }
    .zm-sw-spec-row-2col .zm-sw-spec-item:last-child {
        padding-left: 0;
        border-left: none;
        padding-top: 6px;
        border-top: 1px solid rgba(148, 163, 184, 0.13);
    }
}

/* ==========================================================================
   MINEABLE CRYPTOCURRENCIES & LIVE PROFITABILITY RANKINGS PAGE (/mineable-coins)
   ========================================================================== */

.zm-coins-container {
    width: min(1380px, calc(100% - 40px));
    margin: 0 auto;
}

.zm-coins-page {
    background: linear-gradient(180deg, #f3f8fe 0%, #ebf2fc 100%);
    min-height: 75vh;
}

/* Redesigned Page Header & Live Data Transparency Banner (Requirements 12 & 13) */
.zm-coins-hero {
    background: var(--zm-grad-navy-header);
    color: #f8fafc;
    padding: 30px 0 34px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: 0 12px 28px rgba(3, 12, 26, 0.35);
}

.zm-coins-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 14px;
}

.zm-coins-breadcrumb a {
    color: #7dd3fc;
    text-decoration: none;
    transition: color 0.15s ease;
}

.zm-coins-breadcrumb a:hover {
    color: #ffffff;
}

.zm-coins-hero-grid {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}

.zm-coins-hero-copy {
    max-width: 750px;
    flex: 1 1 540px;
}

.zm-coins-eyebrow-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    margin-bottom: 10px;
}

.zm-coins-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 11px;
    border-radius: 999px;
    background: rgba(0, 212, 255, 0.12);
    border: 1px solid rgba(56, 189, 248, 0.3);
    color: #7dd3fc;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.zm-coins-freshness-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 800;
    line-height: 1;
}

.zm-coins-freshness-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    flex-shrink: 0;
}

.zm-coins-freshness-badge.is-live {
    background: rgba(16, 185, 129, 0.16);
    color: #6ee7b7;
    border: 1px solid rgba(52, 211, 153, 0.35);
}

.zm-coins-freshness-badge.is-live .zm-coins-freshness-dot {
    background: #10b981;
    box-shadow: 0 0 8px rgba(16, 185, 129, 0.8);
}

.zm-coins-freshness-badge.is-updating {
    background: rgba(56, 189, 248, 0.16);
    color: #7dd3fc;
    border: 1px solid rgba(56, 189, 248, 0.35);
}

.zm-coins-freshness-badge.is-updating .zm-coins-freshness-dot {
    background: #38bdf8;
}

.zm-coins-freshness-badge.is-delayed {
    background: rgba(245, 158, 11, 0.16);
    color: #fcd34d;
    border: 1px solid rgba(251, 191, 36, 0.35);
}

.zm-coins-freshness-badge.is-delayed .zm-coins-freshness-dot {
    background: #f59e0b;
}

.zm-coins-freshness-badge.is-unavailable {
    background: rgba(148, 163, 184, 0.16);
    color: #cbd5e1;
    border: 1px solid rgba(148, 163, 184, 0.35);
}

.zm-coins-freshness-badge.is-unavailable .zm-coins-freshness-dot {
    background: #94a3b8;
}

.zm-coins-hero-title {
    margin: 0 0 8px;
    font-size: clamp(24px, 2.5vw, 32px);
    font-weight: 900;
    line-height: 1.2;
    color: #ffffff;
    letter-spacing: -0.02em;
}

.zm-coins-hero-subtitle {
    margin: 0 0 14px;
    font-size: 14.5px;
    font-weight: 500;
    line-height: 1.55;
    color: #cbd5e1;
}

.zm-coins-telemetry-bar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zm-coins-telemetry-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 8px;
    background: rgba(15, 34, 62, 0.85);
    border: 1px solid rgba(148, 163, 184, 0.22);
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 600;
}

.zm-coins-telemetry-pill strong {
    color: #38bdf8;
    font-weight: 800;
}

.zm-coins-hero-right {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-shrink: 0;
    margin-top: -18px;
}

.zm-coins-hero-visuals {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    padding: 0 2px;
    transform: translate(-14px, -6px);
    user-select: none;
    pointer-events: none;
}

.zm-coins-hw-illust {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    filter: drop-shadow(0 8px 18px rgba(2, 8, 20, 0.58));
}

.zm-coins-gpu-svg {
    width: 222px;
    height: 97px;
    display: block;
}

.zm-coins-asic-svg {
    width: 136px;
    height: 108px;
    display: block;
}

@keyframes zmCoinsFanSpin {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.zm-coins-fan-rotor,
.zm-hw-fan-rotor {
    transform-origin: center;
    transform-box: fill-box;
    animation: zmCoinsFanSpin 1.85s linear infinite;
    will-change: transform;
}

.zm-coins-fan-rotor.is-mid,
.zm-hw-fan-rotor.is-mid {
    animation-duration: 1.75s;
}

.zm-coins-fan-rotor.is-asic-fan,
.zm-hw-fan-rotor.is-asic-fan {
    animation-duration: 1.45s;
}

.zm-hw-fan-rotor.is-cpu-fan {
    animation-duration: 1.6s;
}

.zm-hw-anim-stage-observe.is-offscreen .zm-coins-fan-rotor,
.zm-hw-anim-stage-observe.is-offscreen .zm-hw-fan-rotor,
.zm-hw-anim-stage-observe.is-offscreen .zm-hw-dataflow-pulse {
    animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
    .zm-coins-fan-rotor,
    .zm-hw-fan-rotor,
    .zm-hw-dataflow-pulse {
        animation: none !important;
    }
}

.zm-coins-hero-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.zm-coins-hero-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 16px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-coins-hero-btn.is-primary {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 6px 18px rgba(12, 111, 232, 0.34), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
}

.zm-coins-hero-btn.is-primary:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 10px 22px rgba(0, 212, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

.zm-coins-hero-btn.is-secondary {
    background: linear-gradient(135deg, rgba(10, 34, 68, 0.94) 0%, rgba(6, 22, 45, 0.98) 100%);
    color: #f8fafc !important;
    border: 1px solid rgba(251, 191, 36, 0.45);
    box-shadow: 0 6px 16px rgba(3, 12, 26, 0.4), var(--zm-gloss-navy);
}

.zm-coins-hero-btn.is-secondary:hover {
    background: linear-gradient(135deg, rgba(16, 48, 92, 0.98) 0%, rgba(10, 32, 64, 1) 100%);
    border-color: #ffd452;
    color: #ffffff !important;
    box-shadow: 0 10px 22px rgba(245, 158, 11, 0.22), inset 0 1px 0 rgba(255, 212, 82, 0.32);
    transform: translateY(-1px);
}

/* Main Section & Segmented Filter / Search / Sort Toolbar (Requirements 5 & 6) */
.zm-coins-main-section {
    padding: 26px 0 64px;
}

.zm-coins-toolbar {
    margin-bottom: 18px;
    padding: 15px 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f4f8fe 100%);
    border: 1px solid #c7daf2;
    border-radius: 14px;
    box-shadow: 0 6px 18px -8px rgba(15, 23, 42, 0.07);
}

.zm-coins-toolbar-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.zm-coins-seg-bar {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
    padding: 4px;
    background: #e4eefb;
    border: 1px solid #c3d8f2;
    border-radius: 11px;
}

.zm-coins-seg-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    height: 36px;
    padding: 0 13px;
    border-radius: 8px;
    border: 1px solid transparent;
    background: rgba(255, 255, 255, 0.55);
    color: #1e3a5f;
    font-size: 12.5px;
    font-weight: 800;
    line-height: 1;
    cursor: pointer;
    white-space: nowrap;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.zm-coins-seg-btn:hover {
    background: #ffffff;
    border-color: #93c5fd;
    color: #0c6fe8;
}

.zm-coins-seg-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
}

.zm-coins-seg-btn.active {
    background: linear-gradient(135deg, #0b192c 0%, #102a49 100%);
    border-color: #0284c7;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(11, 25, 44, 0.18);
}

.zm-coins-seg-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 19px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(12, 111, 232, 0.12);
    color: #0c6fe8;
    font-size: 11px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.zm-coins-seg-btn.active .zm-coins-seg-count {
    background: rgba(0, 212, 255, 0.22);
    color: #7dd3fc;
    border: 1px solid rgba(56, 189, 248, 0.35);
}

.zm-coins-controls-right {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 1 1 460px;
    justify-content: flex-end;
    flex-wrap: wrap;
}

.zm-coins-search-box {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1 1 250px;
    max-width: 340px;
}

.zm-coins-search-box svg {
    position: absolute;
    left: 11px;
    color: #64748b;
    pointer-events: none;
}

.zm-coins-search-input {
    width: 100%;
    height: 38px;
    padding: 0 12px 0 34px;
    border-radius: 9px;
    border: 1px solid #bfd5f0;
    background: #ffffff;
    color: #0f172a;
    font-size: 13px;
    font-weight: 600;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.zm-coins-search-input::placeholder {
    color: #64748b;
    font-weight: 500;
}

.zm-coins-search-input:focus,
.zm-coins-sort-select:focus {
    outline: none;
    border-color: #0c6fe8;
    box-shadow: 0 0 0 3px rgba(12, 111, 232, 0.14);
}

.zm-coins-sort-box {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.zm-coins-sort-label {
    font-size: 12px;
    font-weight: 800;
    color: #334155;
    white-space: nowrap;
}

.zm-coins-sort-select {
    height: 38px;
    padding: 0 11px;
    border-radius: 9px;
    border: 1px solid #bfd5f0;
    background: #ffffff;
    color: #0f172a;
    font-size: 12.8px;
    font-weight: 700;
    cursor: pointer;
}

.zm-coins-toolbar-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 12px;
    padding-top: 11px;
    border-top: 1px solid #e2ecf8;
}

.zm-coins-methodology-note {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    color: #475569;
    line-height: 1.4;
}

.zm-coins-methodology-note svg {
    color: #0c6fe8;
    flex-shrink: 0;
}

.zm-coins-methodology-note strong {
    color: #0f172a;
    font-weight: 800;
}

.zm-coins-status-right {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;
}

.zm-coins-visible-status {
    font-size: 12.5px;
    color: #475569;
    white-space: nowrap;
}

.zm-coins-visible-status strong {
    color: #0f172a;
    font-weight: 800;
}

.zm-coins-reset-btn {
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid #93c5fd;
    background: #eff6ff;
    color: #0c6fe8;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.zm-coins-reset-btn:hover {
    background: #dbeafe;
}

/* Redesigned Compact 9-Column Profitability Ranking Table Card (Phase 1 & Phase 2) */
.zm-coins-table-card {
    background: #ffffff;
    border: 1px solid #c7daf2;
    border-radius: 16px;
    box-shadow: 0 12px 30px -12px rgba(15, 23, 42, 0.09);
    overflow: hidden;
}

.zm-coins-table-scroll {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: #0284c7 #07172d;
}

.zm-coins-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: auto;
}

.zm-coins-table thead th {
    background: linear-gradient(180deg, #09192f 0%, #071426 100%);
    color: #cbd5e1;
    font-size: 10.8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 12px 10px;
    text-align: left;
    border-bottom: 1px solid #1e3a5f;
    white-space: nowrap;
}

.zm-coins-table thead th.is-num,
.zm-coins-table tbody td.is-num {
    text-align: right;
}

.zm-coins-table thead th.col-action,
.zm-coins-table tbody td.col-action {
    text-align: right;
    padding-right: 14px;
    width: 142px;
    white-space: nowrap;
}

.zm-coins-table thead th.col-rank,
.zm-coins-table tbody td.col-rank {
    padding-left: 14px;
    width: 54px;
}

.zm-coins-table tbody tr {
    background: #ffffff;
    border-bottom: 1px solid #e5eef9;
    transition: background-color 0.14s ease;
}

.zm-coins-table tbody tr:nth-child(even) {
    background: #f8fbff;
}

.zm-coins-table tbody tr:hover {
    background: #edf5ff;
}

.zm-coins-table tbody tr:last-child {
    border-bottom: none;
}

.zm-coins-table tbody td {
    padding: 11px 10px;
    vertical-align: middle;
    color: #0f172a;
    font-size: 12.8px;
}

/* 1. Standardized Navy-Blue Rank Badge for ALL Coins (Phase 2) */
.zm-coins-rank-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 26px;
    padding: 0 8px;
    border-radius: 7px;
    background: linear-gradient(135deg, #0b1f3b 0%, #102a4c 100%);
    color: #ffffff;
    border: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: 0 2px 5px rgba(9, 25, 47, 0.16);
    font-size: 12px;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    line-height: 1;
}

.zm-coins-rank-badge.is-top {
    background: linear-gradient(135deg, #06162d 0%, #0f2c52 100%);
    color: #ffd452;
    border-color: rgba(251, 191, 36, 0.55);
    box-shadow: 0 0 0 1px rgba(251, 191, 36, 0.24), 0 3px 8px rgba(6, 22, 45, 0.24);
}

.zm-coins-rank-badge.is-unranked {
    background: linear-gradient(135deg, #0b1f3b 0%, #102a4c 100%);
    color: #ffffff;
    border-color: rgba(148, 163, 184, 0.35);
}

/* 2. Coin Identity (Logo, Name, Symbol) */
.zm-coins-identity {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 155px;
}

.zm-coins-logo-wrap {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #ffffff 0%, #f1f5f9 100%);
    border: 1px solid #bfd5f0;
    box-shadow: 0 2px 5px rgba(15, 23, 42, 0.08);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px;
    flex-shrink: 0;
    overflow: hidden;
}

.zm-coins-logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
    border-radius: 50%;
}

.zm-coins-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    font-weight: 900;
    color: #0f2540;
    letter-spacing: 0.02em;
    line-height: 1;
}

.zm-coins-name-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    min-width: 0;
}

.zm-coins-name {
    font-size: 13.8px;
    font-weight: 850;
    color: #0f172a;
    line-height: 1.22;
    white-space: nowrap;
}

.zm-coins-sym-pill {
    display: inline-flex;
    align-items: center;
    padding: 1px 6px;
    border-radius: 4px;
    background: #e0f2fe;
    color: #0369a1;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.03em;
    line-height: 1.25;
}

.zm-coins-status-chip {
    display: inline-flex;
    align-items: center;
    padding: 1px 6px;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.02em;
    line-height: 1.3;
    white-space: nowrap;
}

.zm-coins-status-chip.is-active_mineable {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid #a7f3d0;
}

.zm-coins-status-chip.is-active_limited_data {
    background: #fffbeb;
    color: #b45309;
    border: 1px solid #fde68a;
}

/* 3. Algorithm Badge */
.zm-coins-algo-pill {
    display: inline-flex;
    align-items: center;
    padding: 4px 9px;
    border-radius: 6px;
    background: #f0f6fe;
    color: #0f2540;
    border: 1px solid #c7daf2;
    font-size: 11.8px;
    font-weight: 800;
    white-space: nowrap;
}

/* 4. Hardware Type Badges */
.zm-coins-hw-badges {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 4px;
}

.zm-coins-hw-badge {
    display: inline-flex;
    align-items: center;
    height: 22px;
    padding: 0 8px;
    border-radius: 5px;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    border: 1px solid transparent;
    white-space: nowrap;
}

.zm-coins-hw-badge.is-asic {
    background: #fef3c7;
    color: #b45309;
    border-color: #fde68a;
}

.zm-coins-hw-badge.is-gpu {
    background: #e0f2fe;
    color: #0369a1;
    border-color: #bae6fd;
}

.zm-coins-hw-badge.is-cpu {
    background: #f3e8ff;
    color: #6b21a8;
    border-color: #e9d5ff;
}

.zm-coins-hw-badge.is-other {
    background: #f1f5f9;
    color: #334155;
    border-color: #cbd5e1;
}

/* 5. Reference Hardware Column (Requirement 10) */
.zm-coins-ref-hw {
    display: flex;
    flex-direction: column;
    gap: 4px;
    max-width: 225px;
}

.zm-coins-ref-model {
    font-size: 12.5px;
    font-weight: 800;
    color: #0f172a;
    line-height: 1.28;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-coins-ref-specs {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}

.zm-coins-ref-chip {
    display: inline-flex;
    align-items: center;
    padding: 1.5px 6.5px;
    border-radius: 5px;
    font-size: 10.8px;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.zm-coins-ref-chip.is-hash {
    background: #eff6ff;
    color: #0369a1;
    border: 1px solid #bfdbfe;
}

.zm-coins-ref-chip.is-watts {
    background: #f1f5f9;
    color: #334155;
    border: 1px solid #cbd5e1;
}

/* 6, 7, 8, 9. Numerical Columns (Price, 24h Change, Block Reward, Network Difficulty) */
.zm-coins-price-val {
    font-size: 13.2px;
    font-weight: 800;
    color: #0f172a;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.zm-coins-change-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 3px 7px;
    border-radius: 6px;
    font-size: 11.5px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.zm-coins-change-pill.is-pos {
    background: #ecfdf5;
    color: #047857;
    border: 1px solid #a7f3d0;
}

.zm-coins-change-pill.is-neg {
    background: #fef2f2;
    color: #dc2626;
    border: 1px solid #fecaca;
}

.zm-coins-change-pill.is-neutral {
    background: #f1f5f9;
    color: #475569;
    border: 1px solid #cbd5e1;
}

.zm-coins-reward-val {
    font-size: 12.5px;
    font-weight: 800;
    color: #1e293b;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.zm-coins-reward-sym {
    color: #475569;
    font-size: 11px;
    font-weight: 700;
}

.zm-coins-diff-val {
    display: block;
    font-size: 12.5px;
    font-weight: 800;
    color: #1e293b;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.zm-coins-nethash-sub {
    display: block;
    font-size: 10.8px;
    font-weight: 600;
    color: #475569;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    margin-top: 2px;
}

.zm-coins-muted-val {
    font-size: 11.8px;
    font-weight: 700;
    color: #64748b;
    white-space: nowrap;
}

.zm-coins-unavail-pill {
    display: inline-flex;
    align-items: center;
    padding: 3px 8px;
    border-radius: 6px;
    background: #f1f5f9;
    color: #64748b;
    border: 1px solid #cbd5e1;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

/* 10. Est. 24h Net Profit Column (Requirement 8) */
.zm-coins-profit-cell {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
}

.zm-coins-profit-badge {
    display: inline-flex;
    align-items: baseline;
    justify-content: center;
    gap: 2px;
    padding: 4px 10px;
    border-radius: 7px;
    font-size: 13px;
    font-weight: 850;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
    border: 1px solid transparent;
}

.zm-coins-profit-badge small {
    font-size: 10.5px;
    font-weight: 700;
    opacity: 0.88;
}

.zm-coins-profit-badge.is-pos {
    background: #ecfdf5;
    color: #047857;
    border-color: #a7f3d0;
}

.zm-coins-profit-badge.is-neg {
    background: #fef2f2;
    color: #dc2626;
    border-color: #fecaca;
}

.zm-coins-profit-badge.is-neutral {
    background: #f1f5f9;
    color: #475569;
    border-color: #cbd5e1;
}

.zm-coins-profit-sub {
    font-size: 10.5px;
    font-weight: 600;
    color: #475569;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

/* 11. Action Column: Calculate Profit Button (Requirement 9) */
.zm-coins-calc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 6px;
    min-width: 136px;
    height: 35px;
    padding: 0 13px;
    border-radius: 9px;
    background: linear-gradient(135deg, #062142 0%, #0284c7 34%, #00b4d8 68%, #f59e0b 100%);
    color: #ffffff !important;
    border: 1px solid rgba(251, 191, 36, 0.62);
    box-shadow: 0 4px 12px rgba(6, 22, 45, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.42), inset 0 -1px 0 rgba(3, 12, 26, 0.25);
    text-shadow: 0 1px 2px rgba(3, 12, 26, 0.55);
    font-size: 11.8px;
    font-weight: 800;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
    box-sizing: border-box;
    cursor: pointer;
    user-select: none;
    transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, border-color 0.16s ease;
}

.zm-coins-calc-btn svg {
    flex-shrink: 0;
    color: #fffbeb;
    filter: drop-shadow(0 1px 1px rgba(3, 12, 26, 0.45));
    transition: transform 0.16s ease;
}

.zm-coins-calc-btn:hover {
    background: linear-gradient(135deg, #0a2e5c 0%, #0c6fe8 30%, #00d4ff 66%, #fbbf24 100%);
    color: #ffffff !important;
    border-color: #ffd452;
    box-shadow: 0 7px 16px rgba(12, 111, 232, 0.28), 0 2px 6px rgba(245, 158, 11, 0.24), inset 0 1px 0 rgba(255, 255, 255, 0.58);
    transform: translateY(-1px);
}

.zm-coins-calc-btn:active {
    background: linear-gradient(135deg, #041830 0%, #0369a1 38%, #0284c7 72%, #d97706 100%);
    border-color: #f59e0b;
    box-shadow: 0 2px 6px rgba(6, 22, 45, 0.24), inset 0 2px 4px rgba(3, 12, 26, 0.35);
    transform: translateY(0) scale(0.985);
}

.zm-coins-calc-btn:focus-visible {
    outline: 2px solid #00d4ff;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px rgba(0, 212, 255, 0.25), 0 4px 12px rgba(6, 22, 45, 0.2);
}

.zm-coins-empty-state {
    padding: 36px 24px;
    text-align: center;
    border-top: 1px solid #e5eef9;
}

.zm-coins-empty-state h3 {
    margin: 0 0 6px;
    font-size: 17px;
    font-weight: 850;
    color: #0f172a;
}

.zm-coins-empty-state p {
    margin: 0 0 14px;
    font-size: 13px;
    color: #64748b;
}

@media (max-width: 1180px) {
    .zm-coins-table .col-change {
        display: none;
    }
}

@media (max-width: 1080px) {
    .zm-coins-hero-right {
        margin-top: 0;
    }
    .zm-coins-hero-visuals {
        transform: translate(0, 0);
    }
    .zm-coins-gpu-svg {
        width: 196px;
        height: 86px;
    }
    .zm-coins-asic-svg {
        width: 120px;
        height: 95px;
    }
    .zm-coins-toolbar-top {
        flex-direction: column;
        align-items: stretch;
    }
    .zm-coins-controls-right {
        flex: 1 1 auto;
        justify-content: space-between;
    }
    .zm-coins-search-box {
        max-width: none;
    }
}

@media (max-width: 860px) {
    .zm-coins-table .col-hw-type,
    .zm-coins-table .col-price {
        display: none;
    }
}

@media (max-width: 640px) {
    .zm-coins-container {
        width: calc(100% - 24px);
    }
    .zm-coins-hero-right {
        width: 100%;
        align-items: center;
        margin-top: 0;
    }
    .zm-coins-hero-visuals {
        transform: translate(0, 0);
    }
    .zm-coins-gpu-svg {
        width: 174px;
        height: 76px;
    }
    .zm-coins-asic-svg {
        width: 106px;
        height: 84px;
    }
    .zm-coins-hero-actions {
        width: 100%;
    }
    .zm-coins-hero-btn {
        flex: 1 1 auto;
    }
    .zm-coins-seg-bar {
        width: 100%;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-coins-seg-btn {
        width: 100%;
        padding: 0 8px;
        font-size: 12px;
    }
    .zm-coins-controls-right {
        flex-direction: column;
        align-items: stretch;
    }
    .zm-coins-sort-box {
        width: 100%;
        justify-content: space-between;
    }
    .zm-coins-sort-select {
        flex: 1;
    }
    .zm-coins-table .col-algo,
    .zm-coins-table .col-ref-hw {
        display: none;
    }
    .zm-coins-table thead th,
    .zm-coins-table tbody td {
        padding: 10px 7px;
    }
    .zm-coins-calc-btn {
        height: 32px;
        padding: 0 9px;
        font-size: 11px;
    }
}

@media (max-width: 340px) {
    .zm-coins-hero-visuals {
        display: none;
    }
}

/* ==========================================================================
   SHARED INTERNAL DIRECTORY HEROES, CARDS, TABLES & BRAND BUTTONS
   (/mining-software, /crypto-exchanges, & shared subpages)
   ========================================================================== */

.zm-page-wrap {
    background: linear-gradient(180deg, #f3f8fe 0%, #eaf2fc 100%);
    min-height: 75vh;
}

.zm-subhero {
    background: var(--zm-grad-navy-header);
    color: #f8fafc;
    padding: 32px 0 36px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: 0 12px 28px rgba(3, 12, 26, 0.35);
}

.zm-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12.5px;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 14px;
}

.zm-breadcrumb a {
    color: #7dd3fc;
    text-decoration: none;
    transition: color 0.15s ease;
}

.zm-breadcrumb a:hover {
    color: #ffffff;
}

.zm-subhero-grid {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 24px;
    flex-wrap: wrap;
}

.zm-subhero-title {
    margin: 6px 0 10px;
    font-size: clamp(24px, 2.6vw, 34px);
    font-weight: 900;
    line-height: 1.2;
    color: #ffffff;
    letter-spacing: -0.02em;
}

.zm-subhero-lead {
    margin: 0;
    max-width: 780px;
    font-size: 14.5px;
    font-weight: 500;
    line-height: 1.58;
    color: #cbd5e1;
}

.zm-subhero-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}

.zm-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 17px;
    border-radius: 10px;
    font-size: 13px;
    font-weight: 800;
    line-height: 1.15;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

.zm-btn-sm {
    min-height: 34px;
    padding: 6px 13px;
    font-size: 12px;
    border-radius: 8px;
}

.zm-btn-primary {
    background: var(--zm-grad-cyan-blue);
    color: #ffffff !important;
    border: 1px solid #38bdf8;
    box-shadow: 0 6px 18px rgba(12, 111, 232, 0.32), var(--zm-gloss-top);
    text-shadow: 0 1px 1px rgba(3, 12, 26, 0.25);
}

.zm-btn-primary:hover {
    background: var(--zm-grad-cyan-blue-hover);
    border-color: #7dd3fc;
    box-shadow: 0 10px 22px rgba(0, 212, 255, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.55);
    transform: translateY(-1px);
}

.zm-btn-secondary {
    background: linear-gradient(135deg, rgba(10, 34, 68, 0.94) 0%, rgba(6, 22, 45, 0.98) 100%);
    color: #f8fafc !important;
    border: 1px solid rgba(251, 191, 36, 0.45);
    box-shadow: 0 6px 16px rgba(3, 12, 26, 0.38), var(--zm-gloss-navy);
}

.zm-btn-secondary:hover {
    background: linear-gradient(135deg, rgba(16, 48, 92, 0.98) 0%, rgba(10, 32, 64, 1) 100%);
    border-color: #ffd452;
    color: #ffffff !important;
    transform: translateY(-1px);
}

.zm-btn-outline {
    background: var(--zm-grad-gold-amber);
    color: #031022 !important;
    border: 1px solid #d97706;
    box-shadow: 0 4px 12px rgba(217, 119, 6, 0.24), var(--zm-gloss-gold);
}

.zm-btn-outline:hover {
    background: var(--zm-grad-gold-amber-hover);
    color: #020914 !important;
    border-color: #b45309;
    box-shadow: 0 7px 16px rgba(245, 158, 11, 0.36), inset 0 1px 0 rgba(255, 255, 255, 0.72);
    transform: translateY(-1px);
}

.zm-cards-grid {
    display: grid;
    gap: 20px;
    align-items: stretch;
}

.zm-cards-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.zm-feature-card {
    background: linear-gradient(180deg, #ffffff 0%, #f1f7fe 100%);
    border: 1px solid #bcd4f0;
    border-top: 3px solid #0c6fe8;
    border-radius: 16px;
    padding: 20px;
    box-shadow: 0 10px 26px -10px rgba(6, 22, 45, 0.1), inset 0 1px 0 rgba(255, 255, 255, 0.98);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 14px;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.zm-feature-card:hover {
    transform: translateY(-3px);
    border-color: #38bdf8;
    border-top-color: #ffd452;
    box-shadow: 0 16px 32px -10px rgba(12, 111, 232, 0.2), inset 0 1px 0 #ffffff;
}

.zm-feature-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.zm-feature-icon {
    width: 44px;
    height: 44px;
    border-radius: 11px;
    background: linear-gradient(135deg, #06162d 0%, #0d284d 100%);
    border: 1px solid rgba(251, 191, 36, 0.45);
    color: #ffd452;
    font-size: 16px;
    font-weight: 900;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 10px rgba(6, 22, 45, 0.18), inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.zm-feature-title {
    margin: 0;
    font-size: 18px;
    font-weight: 850;
    color: #06162d;
}

.zm-feature-desc {
    margin: 0;
    font-size: 13px;
    line-height: 1.55;
    color: #475569;
}

.zm-feature-meta-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 11px 12px;
    background: linear-gradient(180deg, #e9f2fc 0%, #e1edfa 100%);
    border: 1px solid #bfd5f0;
    border-radius: 11px;
}

.zm-meta-label {
    display: block;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #475569;
}

.zm-meta-val {
    display: block;
    font-size: 12.5px;
    font-weight: 800;
    color: #0f172a;
    margin-top: 2px;
}

.zm-coin-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

.zm-coin-pill {
    display: inline-flex;
    align-items: center;
    padding: 2.5px 7px;
    border-radius: 5px;
    background: #ffffff;
    border: 1px solid #b8d0ee;
    color: #0f172a;
    font-size: 10.5px;
    font-weight: 800;
}

.zm-coin-pill-muted {
    background: rgba(12, 111, 232, 0.1);
    color: #0369a1;
}

.zm-feature-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: auto;
}

.zm-table-card {
    background: #ffffff;
    border: 1px solid #c7daf2;
    border-radius: 16px;
    box-shadow: 0 12px 30px -12px rgba(15, 23, 42, 0.09);
    overflow: hidden;
}

.zm-table-responsive {
    width: 100%;
    overflow-x: auto;
}

.zm-data-table {
    width: 100%;
    border-collapse: collapse;
}

.zm-data-table thead th {
    background: linear-gradient(180deg, #06162d 0%, #041022 100%);
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 13px 14px;
    text-align: left;
    border-bottom: 2px solid #f59e0b;
}

.zm-data-table tbody td {
    padding: 13px 14px;
    border-bottom: 1px solid #e5eef9;
    font-size: 13px;
    color: #0f172a;
    vertical-align: middle;
}

.zm-data-table tbody tr:hover {
    background: #edf5ff;
}

.zm-algo-badge {
    display: inline-flex;
    align-items: center;
    padding: 3px 9px;
    border-radius: 999px;
    background: #e0f2fe;
    color: #0369a1;
    border: 1px solid #bae6fd;
    font-size: 11px;
    font-weight: 800;
}

@media (max-width: 1040px) {
    .zm-cards-grid-3 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .zm-cards-grid-3 {
        grid-template-columns: 1fr;
    }
}

/* ==========================================================================
   HOMEPAGE REUSABLE MINING HARDWARE ANIMATIONS (CALCULATOR, CATEGORIES & HARDWARE)
   ========================================================================== */

@keyframes zmHwDataPulse {
    0%, 100% {
        transform: scale(0.92);
        opacity: 0.72;
    }
    50% {
        transform: scale(1.18);
        opacity: 1;
    }
}

.zm-hw-dataflow-pulse {
    transform-origin: center;
    transform-box: fill-box;
    animation: zmHwDataPulse 1.8s ease-in-out infinite;
}

.zm-hw-dataflow-pulse.is-delayed {
    animation-delay: 0.9s;
}

/* B. Homepage Quick Profitability Calculator 3-Hardware Pod & Subtle RGB Fan Lighting */
@keyframes zmHwRgbSpin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.zm-hw-rgb-ring {
    transform-origin: center;
    transform-box: fill-box;
    animation: zmHwRgbSpin 6.5s linear infinite;
}

.zm-hw-rgb-ring.is-mid {
    animation-duration: 7.5s;
    animation-delay: -1.8s;
}

.zm-hw-rgb-ring.is-right {
    animation-duration: 6.8s;
    animation-delay: -3.4s;
}

.zm-hw-rgb-ring.is-reverse {
    animation-direction: reverse;
    animation-duration: 9s;
}

.zm-hw-rgb-ring.is-cpu-rgb {
    animation-duration: 6s;
}

.is-offscreen .zm-hw-rgb-ring {
    animation-play-state: paused !important;
}

@media (prefers-reduced-motion: reduce) {
    .zm-hw-rgb-ring {
        animation: none !important;
    }
}

.zm-quick-hw-anim-pod {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(4, 15, 32, 0.58) 0%, rgba(8, 26, 52, 0.65) 100%);
    border: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    flex-shrink: 0;
}

.zm-quick-hw-anim-item {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    padding: 4px 8px;
    border-radius: 9px;
    border: 1px solid transparent;
    opacity: 0.78;
    transition: opacity 0.2s ease, transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.48));
}

.zm-quick-hw-anim-pod[data-active-mode="GPU"] .zm-quick-hw-anim-item[data-calc-hw-visual="GPU"],
.zm-quick-hw-anim-pod[data-active-mode="ASIC"] .zm-quick-hw-anim-item[data-calc-hw-visual="ASIC"],
.zm-quick-hw-anim-pod[data-active-mode="CPU"] .zm-quick-hw-anim-item[data-calc-hw-visual="CPU"] {
    opacity: 1;
    background: rgba(14, 165, 233, 0.18);
    border-color: rgba(56, 189, 248, 0.45);
    transform: translateY(-1px);
}

.zm-calc-gpu-svg {
    width: 134px;
    height: 58px;
    display: block;
}

.zm-calc-asic-svg {
    width: 80px;
    height: 63px;
    display: block;
}

.zm-calc-cpu-svg {
    width: 68px;
    height: 58px;
    display: block;
}

/* C. Homepage Section 5: Integrated GPU, ASIC & CPU Hardware Animations Inside Header Panel */
.zm-hw-anim-showcase {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(4, 15, 32, 0.58) 0%, rgba(8, 26, 52, 0.65) 100%);
    border: 1px solid rgba(56, 189, 248, 0.28);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    flex-shrink: 0;
}

.zm-hw-anim-unit {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    padding: 4px 8px;
    border-radius: 9px;
    border: 1px solid transparent;
    opacity: 0.78;
    transition: opacity 0.2s ease, transform 0.2s ease, background 0.2s ease, border-color 0.2s ease;
    filter: drop-shadow(0 4px 10px rgba(2, 8, 20, 0.45));
}

.zm-hw-anim-showcase[data-active-hw-tab="GPU"] .zm-hw-anim-unit[data-hw-anim-unit="GPU"],
.zm-hw-anim-showcase[data-active-hw-tab="ASIC"] .zm-hw-anim-unit[data-hw-anim-unit="ASIC"],
.zm-hw-anim-showcase[data-active-hw-tab="CPU"] .zm-hw-anim-unit[data-hw-anim-unit="CPU"],
.zm-hw-anim-showcase[data-active-hw-tab="ACCESSORIES"] .zm-hw-anim-unit {
    opacity: 1;
    background: rgba(14, 165, 233, 0.18);
    border-color: rgba(56, 189, 248, 0.45);
    transform: translateY(-1px);
}

.zm-hw-sec-gpu-svg {
    width: 134px;
    height: 58px;
    display: block;
}

.zm-hw-sec-asic-svg {
    width: 80px;
    height: 63px;
    display: block;
}

.zm-hw-sec-cpu-svg {
    width: 68px;
    height: 58px;
    display: block;
}

.zm-hw-anim-unit-caption {
    font-size: 9.5px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #bae6fd;
    white-space: nowrap;
}

.zm-hw-anim-unit[data-hw-anim-unit="ASIC"] .zm-hw-anim-unit-caption {
    color: #fde68a;
}

@media (max-width: 980px) {
    .zm-hw-header-top-row,
    .zm-quick-header-top-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }
    .zm-quick-calc-top-right {
        justify-content: flex-start;
    }
}

@media (max-width: 640px) {
    .zm-hw-unified-header-panel {
        padding: 16px;
        border-radius: 16px;
    }
    .zm-hw-section-intro h2,
    .zm-quick-calc-top-copy h2 {
        font-size: 19px;
    }
    .zm-hw-header-meta-pills {
        display: none;
    }
    .zm-hw-anim-showcase,
    .zm-quick-hw-anim-pod {
        width: 100%;
        justify-content: space-around;
        padding: 6px 8px;
        gap: 6px;
        box-sizing: border-box;
    }
    .zm-hw-sec-gpu-svg,
    .zm-calc-gpu-svg {
        width: 112px;
        height: 49px;
    }
    .zm-hw-sec-asic-svg,
    .zm-calc-asic-svg {
        width: 68px;
        height: 54px;
    }
    .zm-hw-sec-cpu-svg,
    .zm-calc-cpu-svg {
        width: 58px;
        height: 50px;
    }
}

/* ==================== UNIFIED OFFICIAL MANUFACTURER LOGO BADGES ==================== */
.mfg-logo-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border-radius: 7px;
    overflow: hidden;
    vertical-align: middle;
    line-height: 1;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.16), inset 0 1px 0 rgba(255, 255, 255, 0.18);
    border: 1px solid rgba(255, 255, 255, 0.14);
    box-sizing: border-box;
    user-select: none;
}

.mfg-logo-badge svg {
    width: 100%;
    height: 100%;
    display: block;
}

.mfg-logo-badge.is-size-xs {
    width: 18px;
    height: 18px;
    border-radius: 5px;
}

.mfg-logo-badge.is-size-sm {
    width: 24px;
    height: 24px;
    border-radius: 6px;
}

.mfg-logo-badge.is-size-md {
    width: 28px;
    height: 28px;
    border-radius: 7px;
}

.mfg-logo-badge.is-fallback {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    color: #f8fafc;
    border-color: rgba(148, 163, 184, 0.35);
}

.mfg-logo-monogram {
    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: 0.03em;
    color: #f8fafc;
    line-height: 1;
}

.mfg-logo-badge.is-size-xs .mfg-logo-monogram {
    font-size: 8px;
}

.zm-hw-title-row,
.zm-home-hw-model-row,
.zm-coins-ref-model-row,
.hw-spec-model-row,
.rig-part-title-row,
.hw-cat-title-row {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.zm-hw-title-row h3 {
    margin: 0;
    min-width: 0;
    line-height: 1.25;
}

.zm-profit-hw-line .mfg-logo-badge {
    margin-right: 2px;
}

/* ==========================================================================
   CRYPTO EXCHANGES DIRECTORY & DETAIL PAGES (.zm-ex-*)
   ========================================================================== */

.zm-ex-page {
    background: #eef4fb;
    min-height: 75vh;
    padding-bottom: 52px;
}

.zm-ex-container {
    width: 100%;
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 22px;
    box-sizing: border-box;
}

.zm-ex-hero {
    background: radial-gradient(circle at 82% 18%, rgba(14, 165, 233, 0.20) 0%, rgba(15, 23, 42, 0) 48%),
                linear-gradient(135deg, #061427 0%, #0b2241 58%, #0e2c52 100%);
    border-bottom: 1px solid rgba(56, 189, 248, 0.22);
    padding: 26px 0 28px;
    color: #f8fafc;
}

.zm-ex-breadcrumb {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 12px;
    font-weight: 700;
    color: #94a3b8;
    margin-bottom: 12px;
}

.zm-ex-breadcrumb a {
    color: #38bdf8;
    text-decoration: none;
}

.zm-ex-breadcrumb a:hover {
    text-decoration: underline;
}

.zm-ex-hero-grid {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 22px;
    flex-wrap: wrap;
}

.zm-ex-hero-copy {
    flex: 1 1 620px;
    min-width: 0;
}

.zm-ex-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(56, 189, 248, 0.14);
    border: 1px solid rgba(56, 189, 248, 0.34);
    color: #7dd3fc;
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.zm-ex-hero-title {
    margin: 0 0 8px;
    font-size: clamp(1.55rem, 2.5vw, 2.15rem);
    font-weight: 900;
    color: #ffffff;
    line-height: 1.18;
    letter-spacing: -0.02em;
}

.zm-ex-hero-subtitle {
    margin: 0 0 14px;
    font-size: 14px;
    line-height: 1.5;
    color: #cbd5e1;
    max-width: 780px;
}

.zm-ex-hero-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zm-ex-stat-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 5px 11px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.65);
    border: 1px solid rgba(148, 163, 184, 0.24);
    color: #e2e8f0;
    font-size: 12px;
    font-weight: 600;
}

.zm-ex-stat-pill strong {
    color: #38bdf8;
    font-weight: 800;
}

.zm-ex-hero-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.zm-ex-hero-btn {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 16px;
    border-radius: 10px;
    font-size: 12.5px;
    font-weight: 800;
    text-decoration: none;
    transition: all 0.16s ease;
    white-space: nowrap;
}

.zm-ex-hero-btn.is-primary {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: #ffffff;
    box-shadow: 0 6px 16px rgba(2, 132, 199, 0.32);
}

.zm-ex-hero-btn.is-primary:hover {
    background: linear-gradient(135deg, #38bdf8 0%, #0369a1 100%);
    transform: translateY(-1px);
}

.zm-ex-hero-btn.is-secondary {
    background: rgba(30, 41, 59, 0.78);
    border: 1px solid rgba(148, 163, 184, 0.35);
    color: #f1f5f9;
}

.zm-ex-hero-btn.is-secondary:hover {
    border-color: #38bdf8;
    color: #ffffff;
}

.zm-ex-directory-section {
    padding-top: 24px;
}

/* Filter Toolbar */
.zm-ex-filter-panel {
    margin-bottom: 20px;
    padding: 15px 18px;
    background: linear-gradient(180deg, #ffffff 0%, #f4f9ff 100%);
    border: 1px solid #c5daf3;
    border-radius: 14px;
    box-shadow: 0 6px 18px -8px rgba(15, 23, 42, 0.08);
}

.zm-ex-type-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 13px;
    padding-bottom: 12px;
    border-bottom: 1px solid #dde8f6;
}

.zm-ex-type-tab {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 13px;
    border-radius: 9px;
    border: 1px solid #c5daf2;
    background: #eef5fc;
    color: #1e3a5f;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.15s ease;
}

.zm-ex-type-tab:hover {
    background: #e0eefc;
    border-color: #7cb4f0;
    color: #0b2241;
}

.zm-ex-type-tab.active {
    background: linear-gradient(135deg, #0b2547 0%, #0c6fe8 100%);
    border-color: #0c6fe8;
    color: #ffffff;
    box-shadow: 0 4px 12px rgba(12, 111, 232, 0.22);
}

.zm-ex-tab-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1px 7px;
    border-radius: 999px;
    font-size: 10.5px;
    font-weight: 800;
    background: rgba(15, 23, 42, 0.09);
    color: inherit;
}

.zm-ex-type-tab.active .zm-ex-tab-count {
    background: rgba(255, 255, 255, 0.22);
    color: #ffffff;
}

.zm-ex-filter-controls {
    display: grid;
    grid-template-columns: minmax(210px, 1.35fr) repeat(4, minmax(145px, 1fr));
    gap: 11px;
    align-items: end;
}

.zm-ex-filter-field {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.zm-ex-filter-label {
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #334155;
}

.zm-ex-search-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.zm-ex-search-wrap svg {
    position: absolute;
    left: 11px;
    color: #64748b;
    pointer-events: none;
}

.zm-ex-input,
.zm-ex-select {
    width: 100%;
    height: 37px;
    padding: 0 10px;
    border-radius: 9px;
    border: 1px solid #bfd5f0;
    background: #ffffff;
    color: #0f172a;
    font-size: 12.5px;
    font-weight: 650;
    box-sizing: border-box;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.zm-ex-input {
    padding-left: 33px;
}

.zm-ex-input:focus,
.zm-ex-select:focus {
    outline: none;
    border-color: #0c6fe8;
    box-shadow: 0 0 0 3px rgba(12, 111, 232, 0.14);
}

.zm-ex-filter-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 11px;
    padding-top: 10px;
    border-top: 1px dashed #d5e4f5;
    font-size: 12px;
    color: #475569;
}

.zm-ex-meta-left {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.zm-ex-count-status strong {
    color: #0b2241;
    font-weight: 800;
}

.zm-ex-transparency-inline {
    font-size: 11.5px;
    color: #64748b;
}

.zm-ex-transparency-inline a {
    color: #0c6fe8;
    font-weight: 700;
    text-decoration: none;
}

.zm-ex-transparency-inline a:hover {
    text-decoration: underline;
}

.zm-ex-reset-btn {
    padding: 5px 11px;
    border-radius: 7px;
    border: 1px solid #fca5a5;
    background: #fef2f2;
    color: #b91c1c;
    font-size: 11.5px;
    font-weight: 800;
    cursor: pointer;
}

.zm-ex-reset-btn:hover {
    background: #fee2e2;
}

/* 3-Column Exchange Cards Grid */
.zm-ex-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

/* Compact Exchange Card */
.zm-ex-card {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: linear-gradient(180deg, #0b1d36 0%, #081629 100%);
    border: 1px solid rgba(56, 189, 248, 0.20);
    border-radius: 14px;
    padding: 15px 16px;
    color: #f8fafc;
    box-shadow: 0 8px 22px -10px rgba(7, 20, 38, 0.45);
    transition: transform 0.16s ease, border-color 0.16s ease, box-shadow 0.16s ease;
    box-sizing: border-box;
    min-width: 0;
}

.zm-ex-card:hover {
    transform: translateY(-2px);
    border-color: rgba(56, 189, 248, 0.48);
    box-shadow: 0 12px 26px -10px rgba(2, 132, 199, 0.32);
}

.zm-ex-card.is-featured {
    border-color: rgba(245, 158, 11, 0.36);
    background: radial-gradient(circle at 95% 5%, rgba(245, 158, 11, 0.10) 0%, transparent 45%),
                linear-gradient(180deg, #0b1e38 0%, #081629 100%);
}

.zm-ex-card-top {
    margin-bottom: 10px;
}

.zm-ex-identity {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    margin-bottom: 8px;
}

.zm-ex-logo-box {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.35);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    padding: 5px;
    box-sizing: border-box;
    text-decoration: none;
}

.zm-ex-logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}

.zm-ex-logo-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    font-size: 12px;
    font-weight: 900;
    color: #0b2241;
    letter-spacing: 0.03em;
}

.zm-ex-logo-fallback.is-lg {
    font-size: 16px;
}

.zm-ex-title-wrap {
    flex: 1;
    min-width: 0;
}

.zm-ex-title-line {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.zm-ex-title {
    margin: 0;
    font-size: 15.5px;
    font-weight: 850;
    color: #ffffff;
    line-height: 1.25;
}

.zm-ex-title a {
    color: inherit;
    text-decoration: none;
}

.zm-ex-title a:hover {
    color: #38bdf8;
}

.zm-ex-type-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.zm-ex-type-badge.is-cex {
    background: rgba(56, 189, 248, 0.16);
    border: 1px solid rgba(56, 189, 248, 0.38);
    color: #7dd3fc;
}

.zm-ex-type-badge.is-dex {
    background: rgba(168, 85, 247, 0.18);
    border: 1px solid rgba(192, 132, 252, 0.42);
    color: #d8b4fe;
}

.zm-ex-featured-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
    background: rgba(245, 158, 11, 0.18);
    border: 1px solid rgba(251, 191, 36, 0.42);
    color: #fcd34d;
}

.zm-ex-meta-line {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    margin-top: 3px;
    font-size: 11px;
    color: #94a3b8;
}

.zm-ex-host-tag {
    color: #cbd5e1;
    font-weight: 600;
}

.zm-ex-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 10.5px;
    font-weight: 700;
    color: #4ade80;
}

.zm-ex-status-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #22c55e;
}

.zm-ex-status-pill.is-maintenance {
    color: #fbbf24;
}

.zm-ex-status-pill.is-maintenance .zm-ex-status-dot {
    background: #f59e0b;
}

.zm-ex-desc {
    margin: 0;
    font-size: 12.2px;
    line-height: 1.44;
    color: #cbd5e1;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Specs Panel inside Card */
.zm-ex-specs-panel {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px 11px;
    background: rgba(15, 23, 42, 0.62);
    border: 1px solid rgba(148, 163, 184, 0.16);
    border-radius: 10px;
    margin-bottom: 11px;
}

.zm-ex-spec-grid-2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    padding-bottom: 7px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.14);
}

.zm-ex-spec-cell {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.zm-ex-spec-label {
    font-size: 9.8px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #94a3b8;
}

.zm-ex-spec-val {
    font-size: 11.5px;
    font-weight: 750;
    color: #f1f5f9;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-ex-spec-val.is-yes {
    color: #38bdf8;
}

.zm-ex-coins-block {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.zm-ex-coins-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.zm-ex-coins-count-badge {
    font-size: 10px;
    font-weight: 800;
    color: #7dd3fc;
    background: rgba(14, 165, 233, 0.14);
    border: 1px solid rgba(56, 189, 248, 0.28);
    padding: 1px 6px;
    border-radius: 999px;
}

.zm-ex-coin-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}

.zm-ex-coin-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(30, 41, 59, 0.9);
    border: 1px solid rgba(148, 163, 184, 0.25);
    color: #e2e8f0;
    font-size: 10.5px;
    font-weight: 800;
}

.zm-ex-coin-pill.is-highlighted {
    background: rgba(14, 165, 233, 0.25);
    border-color: #38bdf8;
    color: #ffffff;
}

.zm-ex-coin-pill-icon {
    width: 13px;
    height: 13px;
    border-radius: 50%;
    object-fit: contain;
}

.zm-ex-coin-more {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 6px;
    background: rgba(56, 189, 248, 0.12);
    border: 1px solid rgba(56, 189, 248, 0.30);
    color: #38bdf8;
    font-size: 10px;
    font-weight: 800;
    text-decoration: none;
}

.zm-ex-coin-more:hover {
    background: rgba(56, 189, 248, 0.24);
    color: #ffffff;
}

.zm-ex-features-row {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding-top: 4px;
}

.zm-ex-feature-tag {
    display: inline-flex;
    align-items: center;
    padding: 2px 7px;
    border-radius: 5px;
    background: rgba(15, 23, 42, 0.85);
    border: 1px solid rgba(148, 163, 184, 0.18);
    color: #cbd5e1;
    font-size: 10px;
    font-weight: 650;
}

.zm-ex-feature-tag.is-lg {
    padding: 5px 10px;
    font-size: 11.5px;
    border-color: rgba(56, 189, 248, 0.30);
    color: #e2e8f0;
}

/* Card Footer & Referral Disclosure */
.zm-ex-card-footer {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.zm-ex-referral-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
    padding: 4px 8px;
    border-radius: 7px;
    background: rgba(245, 158, 11, 0.12);
    border: 1px solid rgba(251, 191, 36, 0.30);
    font-size: 10.2px;
    color: #fde68a;
}

.zm-ex-referral-tag {
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.zm-ex-disclosure-link {
    color: #fbbf24;
    font-weight: 800;
    text-decoration: underline;
    flex-shrink: 0;
}

.zm-ex-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}

.zm-ex-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 34px;
    padding: 0 11px;
    border-radius: 8px;
    font-size: 11.8px;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
    box-sizing: border-box;
}

.zm-ex-btn-details {
    background: rgba(30, 41, 59, 0.9);
    border: 1px solid rgba(148, 163, 184, 0.34);
    color: #e2e8f0;
}

.zm-ex-btn-details:hover {
    border-color: #38bdf8;
    color: #ffffff;
    background: rgba(51, 65, 85, 0.95);
}

.zm-ex-btn-visit {
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border: 1px solid rgba(56, 189, 248, 0.45);
    color: #ffffff;
}

.zm-ex-btn-visit:hover {
    background: linear-gradient(135deg, #38bdf8 0%, #0369a1 100%);
    color: #ffffff;
}

.zm-ex-btn-visit.is-referral-btn {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-color: rgba(52, 211, 153, 0.48);
}

.zm-ex-btn-visit.is-referral-btn:hover {
    background: linear-gradient(135deg, #34d399 0%, #047857 100%);
}

/* Empty State */
.zm-ex-empty-state {
    padding: 36px 24px;
    text-align: center;
    background: #ffffff;
    border: 1px solid #cbd5e1;
    border-radius: 14px;
    margin-bottom: 24px;
}

.zm-ex-empty-state h3 {
    margin: 0 0 6px;
    font-size: 17px;
    color: #0f172a;
}

.zm-ex-empty-state p {
    margin: 0 0 14px;
    font-size: 13px;
    color: #64748b;
}

/* Bottom Expandable Educational Accordion */
.zm-ex-edu-accordion {
    margin-top: 26px;
    background: #0b1d36;
    border: 1px solid rgba(56, 189, 248, 0.24);
    border-radius: 14px;
    overflow: hidden;
    color: #f8fafc;
}

.zm-ex-edu-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 18px;
    cursor: pointer;
    list-style: none;
    user-select: none;
}

.zm-ex-edu-summary::-webkit-details-marker {
    display: none;
}

.zm-ex-edu-summary-left {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.zm-ex-edu-badge {
    padding: 3px 8px;
    border-radius: 6px;
    background: rgba(56, 189, 248, 0.16);
    border: 1px solid rgba(56, 189, 248, 0.35);
    color: #7dd3fc;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.05em;
}

.zm-ex-edu-title {
    font-size: 13.5px;
    font-weight: 800;
    color: #f8fafc;
}

.zm-ex-edu-toggle {
    font-size: 11.5px;
    font-weight: 800;
    color: #38bdf8;
    white-space: nowrap;
}

.zm-ex-edu-body {
    padding: 16px 18px 20px;
    border-top: 1px solid rgba(148, 163, 184, 0.16);
}

.zm-ex-edu-cards-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.zm-ex-edu-mini-card {
    padding: 13px 14px;
    border-radius: 10px;
    background: rgba(15, 23, 42, 0.65);
    border: 1px solid rgba(148, 163, 184, 0.18);
}

.zm-ex-edu-mini-card h4 {
    margin: 0 0 5px;
    font-size: 13px;
    color: #38bdf8;
}

.zm-ex-edu-mini-card p {
    margin: 0;
    font-size: 12px;
    line-height: 1.48;
    color: #cbd5e1;
}

.zm-ex-disclaimer-box {
    margin-top: 14px;
    padding: 11px 14px;
    border-radius: 9px;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(245, 158, 11, 0.28);
    font-size: 11.5px;
    line-height: 1.48;
    color: #cbd5e1;
}

.zm-ex-disclaimer-box strong {
    color: #fbbf24;
}

/* Exchange Detail Page (.zm-ex-detail-*) */
.zm-ex-detail-header-card {
    display: grid;
    grid-template-columns: 1fr 330px;
    gap: 24px;
    align-items: start;
    padding: 20px 22px;
    background: rgba(15, 23, 42, 0.65);
    border: 1px solid rgba(56, 189, 248, 0.28);
    border-radius: 16px;
}

.zm-ex-detail-identity {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    min-width: 0;
}

.zm-ex-detail-logo-box {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    background: #ffffff;
    border: 1px solid rgba(148, 163, 184, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px;
    flex-shrink: 0;
    box-sizing: border-box;
}

.zm-ex-detail-logo-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zm-ex-detail-copy {
    flex: 1;
    min-width: 0;
}

.zm-ex-detail-badges {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}

.zm-ex-verified-tag {
    font-size: 11px;
    font-weight: 700;
    color: #94a3b8;
}

.zm-ex-detail-title {
    margin: 0 0 6px;
    font-size: clamp(1.45rem, 2.2vw, 1.95rem);
    font-weight: 900;
    color: #ffffff;
}

.zm-ex-detail-lead {
    margin: 0 0 12px;
    font-size: 13.5px;
    line-height: 1.5;
    color: #cbd5e1;
}

.zm-ex-detail-quick-facts {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.zm-ex-fact-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 10px;
    border-radius: 7px;
    background: rgba(15, 23, 42, 0.8);
    border: 1px solid rgba(148, 163, 184, 0.22);
    font-size: 11.5px;
    color: #94a3b8;
}

.zm-ex-fact-chip strong {
    color: #f8fafc;
}

.zm-ex-detail-cta-panel {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
    border-radius: 12px;
    background: rgba(8, 22, 41, 0.88);
    border: 1px solid rgba(56, 189, 248, 0.24);
    box-shadow: 0 10px 26px rgba(2, 8, 20, 0.35);
    min-width: 0;
}

.zm-ex-primary-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 18px;
    border-radius: 10px;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: #ffffff;
    font-size: 14px;
    font-weight: 850;
    text-decoration: none;
    text-align: center;
    box-shadow: 0 6px 18px rgba(2, 132, 199, 0.35);
    transition: transform 0.15s ease, box-shadow 0.15s ease, filter 0.15s ease;
}

.zm-ex-primary-cta.is-referral {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    box-shadow: 0 6px 18px rgba(5, 150, 105, 0.34);
}

.zm-ex-primary-cta:hover {
    transform: translateY(-1px);
    filter: brightness(1.05);
    color: #ffffff;
}

.zm-ex-affiliate-disclosure {
    margin: 0;
    padding: 8px 10px;
    border-radius: 8px;
    background: rgba(15, 23, 42, 0.65);
    border: 1px solid rgba(148, 163, 184, 0.18);
    font-size: 11px;
    line-height: 1.45;
    color: #94a3b8;
    text-align: center;
}

.zm-ex-affiliate-disclosure a {
    color: #38bdf8;
    font-weight: 700;
    text-decoration: none;
    margin-left: 3px;
}

.zm-ex-affiliate-disclosure a:hover {
    text-decoration: underline;
}

.zm-ex-back-link {
    font-size: 12px;
    font-weight: 800;
    color: #38bdf8;
    text-decoration: none;
    text-align: center;
}

.zm-ex-back-link:hover {
    text-decoration: underline;
}

.zm-ex-detail-body-section {
    padding-top: 24px;
}

.zm-ex-detail-grid-2 {
    display: grid;
    grid-template-columns: 1.15fr 0.85fr;
    gap: 18px;
    margin-bottom: 20px;
}

.zm-ex-detail-panel {
    padding: 20px 22px;
    border-radius: 14px;
    background: #0b1d36;
    border: 1px solid rgba(56, 189, 248, 0.22);
    color: #f8fafc;
}

.zm-ex-detail-panel.is-full {
    margin-bottom: 20px;
}

.zm-ex-panel-eyebrow {
    display: block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #38bdf8;
    margin-bottom: 4px;
}

.zm-ex-panel-title {
    margin: 0 0 10px;
    font-size: 18px;
    font-weight: 850;
    color: #ffffff;
}

.zm-ex-panel-sub {
    margin: 0;
    font-size: 12.5px;
    color: #94a3b8;
}

.zm-ex-panel-text {
    margin: 0 0 14px;
    font-size: 13.5px;
    line-height: 1.6;
    color: #cbd5e1;
}

.zm-ex-miner-alert {
    padding: 13px 15px;
    border-radius: 10px;
    background: rgba(245, 158, 11, 0.11);
    border: 1px solid rgba(251, 191, 36, 0.34);
    margin-bottom: 14px;
}

.zm-ex-miner-alert-title {
    display: flex;
    align-items: center;
    gap: 7px;
    color: #fbbf24;
    font-size: 12.5px;
    margin-bottom: 5px;
}

.zm-ex-miner-alert p {
    margin: 0;
    font-size: 12.5px;
    line-height: 1.52;
    color: #e2e8f0;
}

.zm-ex-subtitle {
    margin: 0 0 8px;
    font-size: 13px;
    font-weight: 800;
    color: #e2e8f0;
}

.zm-ex-info-kv-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.zm-ex-info-kv {
    padding: 10px 12px;
    border-radius: 9px;
    background: rgba(15, 23, 42, 0.65);
    border: 1px solid rgba(148, 163, 184, 0.18);
}

.zm-ex-info-kv span {
    display: block;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    color: #94a3b8;
    margin-bottom: 3px;
}

.zm-ex-info-kv strong {
    font-size: 12.5px;
    color: #f8fafc;
}

.zm-ex-info-kv p {
    margin: 0;
    font-size: 12px;
    line-height: 1.45;
    color: #cbd5e1;
}

.zm-ex-network-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: 1fr;
    gap: 6px;
}

.zm-ex-network-list li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 7px;
    background: rgba(15, 23, 42, 0.68);
    border: 1px solid rgba(56, 189, 248, 0.18);
    font-size: 12px;
    font-weight: 650;
    color: #e2e8f0;
}

.zm-ex-net-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #38bdf8;
    flex-shrink: 0;
}

.zm-ex-coins-section-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

/* Mineable Coins Page Exchange Availability Chips */
.zm-coins-sym-ex-row {
    display: flex;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    margin-top: 2px;
}

.zm-coins-ex-links {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    flex-wrap: wrap;
}

.zm-coins-ex-chip {
    display: inline-flex;
    align-items: center;
    padding: 1px 6px;
    border-radius: 4px;
    background: #e0f2fe;
    border: 1px solid #bae6fd;
    color: #0369a1;
    font-size: 9.8px;
    font-weight: 800;
    text-decoration: none;
    line-height: 1.3;
    transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease;
}

.zm-coins-ex-chip:hover {
    background: #0284c7;
    border-color: #0284c7;
    color: #ffffff;
}

.zm-coins-ex-chip.is-ref {
    background: #ecfdf5;
    border-color: #a7f3d0;
    color: #047857;
}

.zm-coins-ex-chip.is-ref:hover {
    background: #059669;
    border-color: #059669;
    color: #ffffff;
}

.zm-coins-ex-more {
    font-size: 10px;
    font-weight: 700;
    color: #475569;
    text-decoration: none;
}

.zm-coins-ex-more:hover {
    color: #0284c7;
    text-decoration: underline;
}

/* Mineable Coins -> Verified Exchange Liquidity Showcase (Light Surface Contrast) */
.zm-coins-exchanges-showcase {
    margin-top: 28px;
}

.zm-coins-exchanges-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 16px;
}

.zm-coins-exchanges-intro {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
    max-width: 780px;
}

.zm-coins-eyebrow.is-on-light {
    margin-bottom: 0;
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.16) 0%, rgba(12, 111, 232, 0.14) 100%);
    border: 1px solid rgba(2, 132, 199, 0.36);
    color: #0369a1;
}

.zm-coins-exchanges-title {
    margin: 2px 0 0;
    font-size: clamp(20px, 2vw, 24px);
    font-weight: 850;
    color: #07162c;
    letter-spacing: -0.02em;
    line-height: 1.22;
}

.zm-coins-exchanges-desc {
    margin: 0;
    font-size: 13.8px;
    font-weight: 500;
    color: #334155;
    line-height: 1.55;
}

.zm-coins-exchanges-desc a {
    color: #0284c7;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.zm-coins-exchanges-desc a:hover {
    color: #0369a1;
}

.zm-coins-exchanges-cta {
    height: 38px;
    padding: 0 16px;
    font-size: 13px;
    flex-shrink: 0;
}

/* Responsive Breakpoints */
@media (max-width: 1120px) {
    .zm-ex-filter-controls {
        grid-template-columns: repeat(2, 1fr);
    }
    .zm-ex-filter-field.is-search {
        grid-column: 1 / -1;
    }
    .zm-ex-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-ex-detail-header-card,
    .zm-ex-detail-grid-2,
    .zm-ex-edu-cards-3 {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 680px) {
    .zm-ex-container {
        padding: 0 14px;
    }
    .zm-ex-filter-controls,
    .zm-ex-grid {
        grid-template-columns: 1fr;
    }
    .zm-ex-detail-identity {
        flex-direction: column;
    }
    .zm-ex-actions {
        grid-template-columns: 1fr;
    }
    .zm-coins-exchanges-head {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
    .zm-coins-exchanges-cta {
        width: 100%;
        justify-content: center;
    }
}

/* ==================== EXPLORE ZU MINING PLATFORM — PREMIUM NAVIGATION PANEL ==================== */

.zm-explore-platform-panel {
    margin-top: 48px;
    margin-bottom: 24px;
    border-radius: 20px;
    border: 1px solid rgba(56, 189, 248, 0.28);
    background: linear-gradient(145deg, #030d1d 0%, #061933 55%, #0a254c 100%);
    box-shadow: 0 16px 40px -12px rgba(2, 6, 23, 0.65), 0 0 0 1px rgba(56, 189, 248, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.08);
    overflow: hidden;
}

.zm-explore-platform-header {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 28px;
    background:
        radial-gradient(circle at 92% 50%, rgba(56, 189, 248, 0.16) 0%, rgba(56, 189, 248, 0) 60%),
        linear-gradient(135deg, #041022 0%, #071f3f 50%, #0a2c58 100%);
    border-bottom: 1px solid rgba(56, 189, 248, 0.22);
    box-shadow: 0 4px 16px rgba(2, 6, 23, 0.25);
}

.zm-explore-header-left {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.zm-explore-header-icon {
    width: 46px;
    height: 46px;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.2) 0%, rgba(6, 25, 51, 0.9) 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.6);
    box-shadow: 0 0 18px rgba(56, 189, 248, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.2);
    color: #38bdf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.zm-explore-header-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.zm-explore-header-text h2 {
    margin: 0;
    font-size: 20px;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: -0.015em;
    line-height: 1.22;
}

.zm-explore-header-text p {
    margin: 0;
    font-size: 13.5px;
    font-weight: 500;
    color: #bae6fd;
    line-height: 1.4;
}

.zm-explore-header-decor {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
}

.zm-explore-decor-Node {
    width: 9px;
    height: 9px;
    border-radius: 3px;
    transform: rotate(45deg);
    background: rgba(56, 189, 248, 0.35);
    border: 1px solid #38bdf8;
    box-shadow: 0 0 8px rgba(56, 189, 248, 0.45);
}

.zm-explore-decor-Node.is-gold {
    width: 11px;
    height: 11px;
    background: rgba(251, 191, 36, 0.35);
    border-color: #fbbf24;
    box-shadow: 0 0 10px rgba(251, 191, 36, 0.5);
}

.zm-explore-platform-body {
    padding: 22px 24px;
}

.zm-explore-cards-grid {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 14px;
    align-items: stretch;
}

.zm-explore-cards-grid .zm-col-3 {
    grid-column: span 3;
}

.zm-explore-cards-grid .zm-col-4 {
    grid-column: span 4;
}

.zm-explore-cards-grid .zm-col-6 {
    grid-column: span 6;
}

.zm-explore-cards-grid > a:not([class*="zm-col-"]) {
    grid-column: span 4;
}

.zm-explore-nav-card,
a.zm-explore-nav-card.related-calc-link {
    position: relative;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between;
    min-height: 140px;
    height: 100%;
    padding: 18px 20px !important;
    margin: 0 !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, #061933 0%, #0a254c 100%) !important;
    border: 1px solid rgba(56, 189, 248, 0.18) !important;
    box-shadow: 0 4px 14px rgba(2, 6, 23, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.05);
    text-decoration: none !important;
    color: #ffffff !important;
    box-sizing: border-box;
    transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.zm-explore-nav-card:hover,
a.zm-explore-nav-card.related-calc-link:hover {
    transform: translateY(-3px);
    border-color: rgba(56, 189, 248, 0.65) !important;
    background: linear-gradient(145deg, #082142 0%, #0e356b 100%) !important;
    box-shadow: 0 12px 28px -6px rgba(2, 132, 199, 0.3), 0 0 0 1px rgba(56, 189, 248, 0.35);
    color: #ffffff !important;
}

.zm-explore-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.zm-explore-card-icon {
    width: 40px;
    height: 40px;
    border-radius: 11px;
    background: linear-gradient(135deg, #041022 0%, #082348 100%);
    border: 1px solid rgba(56, 189, 248, 0.35);
    box-shadow: 0 2px 8px rgba(2, 6, 23, 0.35), inset 0 1px 0 rgba(125, 211, 252, 0.2);
    color: #38bdf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s ease, border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.zm-explore-nav-card:hover .zm-explore-card-icon {
    border-color: #38bdf8;
    color: #7dd3fc;
    box-shadow: 0 0 14px rgba(56, 189, 248, 0.4);
    transform: scale(1.06);
}

.zm-explore-card-arrow {
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: rgba(56, 189, 248, 0.08);
    border: 1px solid rgba(56, 189, 248, 0.24);
    color: #38bdf8;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

.zm-explore-nav-card:hover .zm-explore-card-arrow {
    background: #0284c7;
    border-color: #38bdf8;
    color: #ffffff;
    box-shadow: 0 0 12px rgba(2, 132, 199, 0.5);
    transform: translateX(3px);
}

.zm-explore-card-content {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-explore-card-title {
    margin: 0;
    font-size: 15px;
    font-weight: 750;
    color: #ffffff;
    line-height: 1.35;
    letter-spacing: -0.01em;
    transition: color 0.18s ease;
}

.zm-explore-nav-card:hover .zm-explore-card-title {
    color: #e0f2fe;
}

.zm-explore-card-desc {
    margin: 0;
    font-size: 12px;
    font-weight: 450;
    color: #94a3b8;
    line-height: 1.45;
    letter-spacing: -0.005em;
    transition: color 0.18s ease;
}

.zm-explore-nav-card:hover .zm-explore-card-desc {
    color: #cbd5e1;
}

/* Responsive Breakpoints for Explore ZU Mining Platform & Premium Footer */
@media (max-width: 1040px) {
    .zm-explore-cards-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
    }
    .zm-explore-cards-grid .zm-col-3,
    .zm-explore-cards-grid .zm-col-4,
    .zm-explore-cards-grid .zm-col-6,
    .zm-explore-cards-grid > a:not([class*="zm-col-"]) {
        grid-column: span 1;
    }
    .zm-explore-cards-grid > a:last-child:nth-child(odd) {
        grid-column: span 2;
    }
    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 32px;
    }
    .footer-col {
        padding: 0 20px;
    }
    .footer-col:nth-child(2n) {
        border-right: none;
        padding-right: 0;
    }
    .footer-col:nth-child(2n+1) {
        padding-left: 0;
    }
}

@media (max-width: 820px) {
    .zm-explore-header-decor {
        display: none;
    }
}

@media (max-width: 640px) {
    .zm-explore-platform-header {
        padding: 16px 18px;
    }
    .zm-explore-header-left {
        gap: 12px;
    }
    .zm-explore-header-icon {
        width: 40px;
        height: 40px;
    }
    .zm-explore-header-text h2 {
        font-size: 17.5px;
    }
    .zm-explore-header-text p {
        font-size: 12px;
    }
    .zm-explore-platform-body {
        padding: 14px;
    }
    .zm-explore-cards-grid {
        grid-template-columns: 1fr;
        gap: 10px;
    }
    .zm-explore-cards-grid .zm-col-3,
    .zm-explore-cards-grid .zm-col-4,
    .zm-explore-cards-grid .zm-col-6,
    .zm-explore-cards-grid > a:not([class*="zm-col-"]),
    .zm-explore-cards-grid > a:last-child:nth-child(odd) {
        grid-column: span 1;
    }
    .zm-explore-nav-card,
    a.zm-explore-nav-card.related-calc-link {
        min-height: auto;
        padding: 14px 16px !important;
    }
    .footer-grid {
        grid-template-columns: 1fr;
        row-gap: 26px;
    }
    .footer-col {
        padding: 0 0 20px 0 !important;
        border-right: none !important;
        border-bottom: 1px solid rgba(56, 189, 248, 0.14);
    }
    .footer-col:last-child {
        padding-bottom: 0 !important;
        border-bottom: none;
    }
    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
}

/* ==========================================================================
   FULL-WIDTH LIVE MINING COMMAND CENTER & BOTTOM STATISTICS CARDS
   ========================================================================== */

.sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.zm-hero-preview-banner {
    background: linear-gradient(90deg, #78350f 0%, #92400e 50%, #78350f 100%);
    border: 1px solid #fbbf24;
    border-radius: 12px;
    padding: 10px 16px;
    color: #fef3c7;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    font-size: 13px;
}

.zm-preview-btn {
    display: inline-flex;
    align-items: center;
    padding: 6px 13px;
    border-radius: 8px;
    background: #fbbf24;
    color: #0f172a;
    font-size: 12px;
    font-weight: 800;
    text-decoration: none;
}

.zm-preview-btn-outline {
    background: rgba(15, 23, 42, 0.55);
    color: #fde68a;
    border: 1px solid rgba(251, 191, 36, 0.5);
}

.zm-hero.zm-hero-premium.zm-hero-fullwidth {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 20% 18%, rgba(14, 165, 233, 0.22) 0%, transparent 48%),
        radial-gradient(circle at 80% 22%, rgba(245, 158, 11, 0.14) 0%, transparent 44%),
        radial-gradient(circle at 50% 80%, rgba(0, 212, 255, 0.14) 0%, transparent 55%),
        linear-gradient(180deg, #030916 0%, #07162e 54%, #030813 100%);
    border-bottom: 1px solid rgba(56, 189, 248, 0.35);
    padding: 12px 0 16px;
    color: #f8fafc;
}

.zm-hero.zm-hero-premium.zm-hero-fullwidth::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(56, 189, 248, 0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(56, 189, 248, 0.04) 1px, transparent 1px);
    background-size: 44px 44px;
    mask-image: radial-gradient(ellipse at 50% 45%, rgba(0, 0, 0, 0.85) 20%, transparent 82%);
    -webkit-mask-image: radial-gradient(ellipse at 50% 45%, rgba(0, 0, 0, 0.85) 20%, transparent 82%);
    pointer-events: none;
    z-index: 0;
}

.zm-hero-fullwidth-shell,
.zm-hero-bottom-stats-wrap {
    position: relative;
    z-index: 2;
    width: calc(100% - 80px);
    max-width: 1340px;
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
}

/* Main Full-Width Command Center Container (Compact Analytics Terminal) */
.zm-profit-dashboard.zm-cmd-center.zm-cmd-fullwidth {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    overflow: hidden;
    background: linear-gradient(180deg, rgba(6, 20, 43, 0.96) 0%, rgba(4, 11, 25, 0.98) 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.58);
    border-radius: 16px;
    padding: 12px 16px 10px;
    box-shadow:
        0 0 32px rgba(14, 165, 233, 0.2),
        0 18px 42px -12px rgba(2, 6, 18, 0.85),
        inset 0 1px 0 rgba(186, 230, 253, 0.26);
    color: #f8fafc;
    position: relative;
    z-index: 3;
}

/* 1. Top Header Bar (Compact) */
.zm-cmd-top-header {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
    flex-wrap: wrap;
    padding-bottom: 9px;
    margin-bottom: 9px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.22);
}

.zm-cmd-brand-title {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.zm-cmd-pulse-icon {
    width: 34px;
    height: 34px;
    border-radius: 9px;
    background: linear-gradient(135deg, rgba(0, 212, 255, 0.2) 0%, rgba(14, 165, 233, 0.08) 100%);
    border: 1px solid rgba(56, 189, 248, 0.48);
    box-shadow: 0 0 12px rgba(0, 212, 255, 0.2);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.zm-cmd-main-title {
    margin: 0 !important;
    font-size: clamp(1.08rem, 1.55vw, 1.28rem) !important;
    font-weight: 900 !important;
    color: #ffffff !important;
    letter-spacing: -0.02em !important;
    line-height: 1.15 !important;
}

.zm-cmd-subtitle {
    margin: 1px 0 0;
    font-size: 11.5px;
    color: #94a3b8;
    line-height: 1.25;
}

.zm-cmd-subtitle strong {
    color: #7dd3fc;
    font-weight: 800;
}

.zm-cmd-status-bar {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.zm-cmd-updated-pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 3.5px 10px;
    border-radius: 999px;
    background: rgba(15, 23, 42, 0.78);
    border: 1px solid rgba(148, 163, 184, 0.25);
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}

.zm-cmd-refresh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    height: 27px;
    padding: 0 10px;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.22) 0%, rgba(2, 132, 199, 0.32) 100%);
    border: 1px solid rgba(56, 189, 248, 0.5);
    color: #e0f2fe;
    font-size: 11px;
    font-weight: 800;
    cursor: pointer;
    transition: all 0.16s ease;
}

.zm-cmd-refresh-btn:hover {
    background: linear-gradient(135deg, rgba(56, 189, 248, 0.35) 0%, rgba(14, 165, 233, 0.48) 100%);
    border-color: #7dd3fc;
    color: #ffffff;
    box-shadow: 0 0 12px rgba(56, 189, 248, 0.35);
}

@keyframes zmSpinOnce {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.zm-cmd-refresh-btn.is-spinning svg {
    animation: zmSpinOnce 0.6s ease-in-out;
}

/* 2. Compact 3-Column Horizontal Hardware Selection & Dynamic Animation Bar */
.zm-cmd-hardware-control-bar {
    display: grid;
    grid-template-columns: minmax(225px, 0.25fr) minmax(320px, 0.40fr) minmax(290px, 0.35fr);
    gap: 12px;
    align-items: stretch;
    padding: 8px 12px;
    border-radius: 12px;
    background: linear-gradient(90deg, rgba(7, 23, 50, 0.95) 0%, rgba(10, 30, 62, 0.92) 50%, rgba(7, 23, 50, 0.95) 100%);
    border: 1px solid rgba(56, 189, 248, 0.38);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.08);
    margin-bottom: 10px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    position: relative;
    z-index: 25;
    overflow: visible;
}

/* 2A. LEFT (~25%): GPU / ASIC Mode Tabs (Centered Single-Line Labels) */
.zm-cmd-mode-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 0 !important;
    padding: 5px !important;
    background: rgba(3, 10, 22, 0.85) !important;
    border: 1px solid rgba(56, 189, 248, 0.24) !important;
    border-radius: 10px !important;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

.zm-cmd-mode-tab {
    min-height: 46px !important;
    height: 100%;
    padding: 6px 12px !important;
    border-radius: 8px !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

.zm-cmd-mode-tab .zm-dash-tab-title {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    gap: 6px !important;
    line-height: 1.2 !important;
    white-space: nowrap;
}

/* 2B. CENTER (~40%): Manufacturer / Hardware Type Badge & Full-Width Model Dropdown Box */
.zm-cmd-hw-selector-box {
    display: flex;
    align-items: center;
    padding: 5px 12px;
    border-radius: 10px;
    background: rgba(4, 13, 29, 0.78);
    border: 1px solid rgba(56, 189, 248, 0.32);
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    position: relative;
    z-index: 30;
    overflow: visible;
}

.zm-cmd-hw-picker-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    width: 100%;
    min-width: 0;
    flex: 1 1 100%;
}

.zm-cmd-hw-picker-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.zm-cmd-hw-brand {
    font-size: 10.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: #94a3b8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-cmd-vram-pill {
    display: inline-flex;
    align-items: center;
    padding: 1.5px 8px;
    border-radius: 5px;
    background: rgba(14, 165, 233, 0.22);
    border: 1px solid rgba(56, 189, 248, 0.5);
    color: #7dd3fc;
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
    flex-shrink: 0;
}

.zm-cmd-hw-select-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    position: relative;
}

.zm-sr-only-select {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.zm-cmd-custom-select-btn {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    height: 32px;
    padding: 2px 10px;
    border-radius: 7px;
    background: linear-gradient(180deg, rgba(13, 35, 68, 0.96) 0%, rgba(8, 22, 46, 0.98) 100%);
    border: 1px solid rgba(56, 189, 248, 0.48);
    color: #ffffff;
    font-size: 12.8px;
    font-weight: 850;
    cursor: pointer;
    outline: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    text-align: left;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, background 0.15s ease;
}

.zm-cmd-custom-select-btn:hover,
.zm-cmd-custom-select-btn:focus-visible,
.zm-cmd-hw-select-wrap.is-open .zm-cmd-custom-select-btn {
    border-color: #38bdf8;
    box-shadow: 0 0 12px rgba(56, 189, 248, 0.35);
}

.zm-cmd-custom-select-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
}

.zm-cmd-custom-select-chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #38bdf8;
    flex-shrink: 0;
    transition: transform 0.18s ease;
}

.zm-cmd-hw-select-wrap.is-open .zm-cmd-custom-select-chevron {
    transform: rotate(180deg);
    color: #fde047;
}

.zm-cmd-custom-select-menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 80;
    background: linear-gradient(180deg, rgba(6, 19, 41, 0.99) 0%, rgba(3, 11, 26, 0.99) 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.62);
    border-radius: 10px;
    box-shadow:
        0 18px 36px -8px rgba(2, 6, 18, 0.92),
        0 0 20px rgba(14, 165, 233, 0.28),
        inset 0 1px 0 rgba(186, 230, 253, 0.22);
    padding: 5px;
    overflow: hidden;
}

.zm-cmd-custom-select-menu[hidden] {
    display: none !important;
}

/* Custom Dark Navy + Cyan Scrollbar Matching Leaderboard Scrollbar */
.zm-cmd-custom-select-listbox {
    list-style: none;
    margin: 0;
    padding: 0 4px 0 0;
    max-height: 256px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scroll-behavior: smooth;
    scrollbar-width: thin;
    scrollbar-color: rgba(56, 189, 248, 0.52) rgba(8, 20, 42, 0.88);
}

.zm-cmd-custom-select-listbox::-webkit-scrollbar {
    width: 6px;
}

.zm-cmd-custom-select-listbox::-webkit-scrollbar-track {
    background: rgba(8, 20, 42, 0.88);
    border-radius: 999px;
}

.zm-cmd-custom-select-listbox::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, rgba(56, 189, 248, 0.65) 0%, rgba(14, 165, 233, 0.5) 100%);
    border-radius: 999px;
}

.zm-cmd-custom-select-listbox::-webkit-scrollbar-thumb:hover {
    background: linear-gradient(180deg, #7dd3fc 0%, #38bdf8 100%);
}

.zm-cmd-custom-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 10px;
    border-radius: 7px;
    cursor: pointer;
    color: #e2e8f0;
    font-size: 12.2px;
    font-weight: 750;
    transition: background 0.12s ease, color 0.12s ease;
    user-select: none;
}

.zm-cmd-custom-option:hover,
.zm-cmd-custom-option.is-focused {
    background: rgba(14, 165, 233, 0.22);
    color: #ffffff;
}

.zm-cmd-custom-option.is-selected {
    background: linear-gradient(90deg, rgba(14, 165, 233, 0.34) 0%, rgba(12, 111, 232, 0.2) 100%);
    border: 1px solid rgba(56, 189, 248, 0.52);
    color: #ffffff;
    font-weight: 850;
}

.zm-cmd-custom-opt-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
}

.zm-cmd-custom-opt-badge {
    font-size: 10px;
    font-weight: 800;
    padding: 1.5px 6px;
    border-radius: 4px;
    background: rgba(15, 23, 42, 0.85);
    border: 1px solid rgba(56, 189, 248, 0.32);
    color: #7dd3fc;
    white-space: nowrap;
    flex-shrink: 0;
}

.zm-cmd-custom-option.is-selected .zm-cmd-custom-opt-badge {
    background: rgba(251, 191, 36, 0.18);
    border-color: rgba(251, 191, 36, 0.55);
    color: #fde047;
}

/* 2C. RIGHT (~35%): Dynamic GPU / ASIC Rotating-Fan Animation Showcase */
.zm-cmd-hw-anim-showcase {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 5px 12px;
    border-radius: 10px;
    background:
        radial-gradient(circle at 20% 50%, rgba(14, 165, 233, 0.22) 0%, transparent 62%),
        linear-gradient(135deg, rgba(4, 14, 32, 0.92) 0%, rgba(7, 22, 48, 0.95) 100%);
    border: 1px solid rgba(56, 189, 248, 0.42);
    box-shadow:
        inset 0 1px 0 rgba(186, 230, 253, 0.14),
        0 0 16px rgba(14, 165, 233, 0.14);
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.zm-cmd-hw-anim-showcase[data-active-anim-mode="asic"] {
    background:
        radial-gradient(circle at 20% 50%, rgba(251, 191, 36, 0.18) 0%, rgba(14, 165, 233, 0.16) 45%, transparent 68%),
        linear-gradient(135deg, rgba(5, 16, 36, 0.94) 0%, rgba(9, 25, 52, 0.96) 100%);
    border-color: rgba(251, 191, 36, 0.48);
}

.zm-cmd-anim-stage {
    width: 114px;
    height: 48px;
    border-radius: 8px;
    background: radial-gradient(circle at 50% 50%, rgba(14, 165, 233, 0.24) 0%, rgba(3, 10, 24, 0.95) 100%);
    border: 1px solid rgba(56, 189, 248, 0.44);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
    box-shadow: 0 0 12px rgba(14, 165, 233, 0.2);
}

.zm-cmd-hw-anim-showcase[data-active-anim-mode="asic"] .zm-cmd-anim-stage {
    border-color: rgba(251, 191, 36, 0.52);
    background: radial-gradient(circle at 50% 50%, rgba(251, 191, 36, 0.2) 0%, rgba(14, 165, 233, 0.18) 45%, rgba(3, 10, 24, 0.95) 100%);
}

.zm-cmd-anim-visual {
    display: none;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.zm-cmd-hw-anim-showcase[data-active-anim-mode="gpu"] .zm-cmd-anim-visual.is-gpu,
.zm-cmd-hw-anim-showcase[data-active-anim-mode="asic"] .zm-cmd-anim-visual.is-asic {
    display: flex;
}

.zm-cmd-anim-gpu-svg {
    width: 106px;
    height: 44px;
    display: block;
    filter: drop-shadow(0 2px 6px rgba(0, 212, 255, 0.35));
}

.zm-cmd-anim-asic-svg {
    width: 62px;
    height: 44px;
    display: block;
    filter: drop-shadow(0 2px 6px rgba(251, 191, 36, 0.35));
}

.zm-cmd-anim-meta {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 2px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-cmd-anim-kicker-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}

.zm-cmd-anim-kicker {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 9.5px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #38bdf8;
    white-space: nowrap;
}

.zm-cmd-hw-anim-showcase[data-active-anim-mode="asic"] .zm-cmd-anim-kicker {
    color: #fde047;
}

.zm-cmd-anim-live-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #38bdf8;
    box-shadow: 0 0 8px #38bdf8;
    animation: zmHwDataPulse 1.8s ease-in-out infinite;
    flex-shrink: 0;
}

.zm-cmd-hw-anim-showcase[data-active-anim-mode="asic"] .zm-cmd-anim-live-dot {
    background: #fbbf24;
    box-shadow: 0 0 8px #fbbf24;
}

.zm-cmd-anim-model {
    font-size: 12.5px;
    font-weight: 900;
    color: #ffffff;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-cmd-anim-spec {
    font-size: 10.5px;
    font-weight: 700;
    color: #94a3b8;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

@media (prefers-reduced-motion: reduce) {
    .zm-cmd-anim-live-dot {
        animation: none !important;
    }
}

/* Legacy Telemetry Fallback */
.zm-cmd-hw-telemetry-boxes {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}

.zm-cmd-telemetry-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1px;
    padding: 5px 10px;
    border-radius: 10px;
    background: rgba(4, 13, 29, 0.72);
    border: 1px solid rgba(56, 189, 248, 0.25);
    min-width: 0;
}

.zm-cmd-telemetry-label {
    font-size: 9.5px;
    font-weight: 750;
    color: #94a3b8;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.zm-cmd-telemetry-val {
    font-size: 13.5px;
    font-weight: 900;
    color: #ffffff;
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-cmd-telemetry-sub {
    font-size: 9.5px;
    font-weight: 750;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-cmd-telemetry-sub.is-cyan {
    color: #38bdf8;
}

.zm-cmd-telemetry-sub.is-gold {
    color: #fbbf24;
}

.zm-cmd-telemetry-sub.is-muted {
    color: #94a3b8;
}

/* 3. Four Live Profitability Summary Cards (Compact Desktop Row) */
.zm-cmd-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 10px;
}

.zm-cmd-metric-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    border-radius: 11px;
    background: linear-gradient(180deg, rgba(8, 25, 52, 0.94) 0%, rgba(5, 15, 34, 0.98) 100%);
    border: 1px solid rgba(56, 189, 248, 0.35);
    box-shadow: 0 6px 16px -6px rgba(2, 6, 18, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.07);
    min-width: 0;
}

.zm-cmd-metric-card.is-revenue {
    border-color: rgba(52, 211, 153, 0.45);
}

.zm-cmd-metric-card.is-power {
    border-color: rgba(167, 139, 250, 0.45);
}

.zm-cmd-metric-card.is-profit {
    border-color: rgba(251, 191, 36, 0.55);
}

.zm-cmd-metric-card.is-roi {
    border-color: rgba(56, 189, 248, 0.52);
}

.zm-cmd-metric-icon {
    width: 34px;
    height: 34px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.zm-cmd-metric-icon svg {
    width: 17px;
    height: 17px;
}

.zm-cmd-metric-card.is-revenue .zm-cmd-metric-icon {
    background: rgba(16, 185, 129, 0.16);
    border: 1px solid rgba(52, 211, 153, 0.38);
}

.zm-cmd-metric-card.is-power .zm-cmd-metric-icon {
    background: rgba(139, 92, 246, 0.16);
    border: 1px solid rgba(167, 139, 250, 0.38);
}

.zm-cmd-metric-card.is-profit .zm-cmd-metric-icon {
    background: rgba(245, 158, 11, 0.16);
    border: 1px solid rgba(251, 191, 36, 0.42);
}

.zm-cmd-metric-card.is-roi .zm-cmd-metric-icon {
    background: rgba(14, 165, 233, 0.16);
    border: 1px solid rgba(56, 189, 248, 0.42);
}

.zm-cmd-metric-body {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-cmd-metric-label {
    font-size: 10.5px;
    font-weight: 800;
    color: #cbd5e1;
    letter-spacing: 0.01em;
}

.zm-cmd-metric-val {
    font-size: 17px;
    font-weight: 900;
    color: #ffffff;
    letter-spacing: -0.02em;
    line-height: 1.12;
}

.zm-cmd-metric-val.is-pos-val {
    color: #34d399;
}

.zm-cmd-metric-val.is-neg-val {
    color: #f87171;
}

.zm-cmd-metric-val.is-na-val {
    font-size: 13.5px;
    color: #94a3b8;
}

.zm-cmd-metric-sub {
    font-size: 10px;
    font-weight: 750;
}

.zm-cmd-metric-sub.is-pos {
    color: #34d399;
}

.zm-cmd-metric-sub.is-neg {
    color: #f87171;
}

.zm-cmd-metric-sub.is-muted {
    color: #94a3b8;
}

/* 4. Full-Width Top Coins by Profitability Leaderboard Table (Compact) */
.zm-cmd-leaderboard-section {
    background: rgba(3, 10, 23, 0.76);
    border: 1px solid rgba(56, 189, 248, 0.3);
    border-radius: 12px;
    overflow: hidden;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.zm-cmd-leaderboard-section .zm-dash-panel {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.zm-cmd-leaderboard-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    padding: 8px 14px;
    background: linear-gradient(90deg, rgba(8, 26, 54, 0.95) 0%, rgba(5, 16, 36, 0.95) 100%);
    border-bottom: 1px solid rgba(56, 189, 248, 0.24);
}

.zm-cmd-lb-title {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    font-weight: 900;
    color: #ffffff;
}

.zm-cmd-lb-trophy {
    font-size: 14px;
    filter: drop-shadow(0 0 6px rgba(251, 191, 36, 0.5));
}

.zm-cmd-lb-count-badge {
    display: inline-flex;
    align-items: center;
    padding: 1.5px 8px;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.2);
    border: 1px solid rgba(56, 189, 248, 0.45);
    color: #7dd3fc;
    font-size: 10.5px;
    font-weight: 800;
}

.zm-cmd-lb-actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.zm-cmd-view-all {
    font-size: 11.5px;
    font-weight: 800;
    color: #7dd3fc;
    text-decoration: none;
    transition: color 0.15s ease;
}

.zm-cmd-view-all:hover {
    color: #ffffff;
    text-decoration: underline;
}

.zm-cmd-calc-pill-btn {
    display: inline-flex;
    align-items: center;
    padding: 4px 11px;
    border-radius: 999px;
    background: linear-gradient(180deg, #fde047 0%, #f59e0b 100%);
    color: #061326 !important;
    font-size: 11px;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 0 12px rgba(245, 158, 11, 0.32);
    transition: transform 0.15s ease, filter 0.15s ease;
}

.zm-cmd-calc-pill-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}

.zm-cmd-table-viewport {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    max-height: 318px;
    overflow-y: auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-right: 0 !important;
    display: block !important;
}

.zm-cmd-leaderboard-table {
    width: 100%;
    min-width: 920px;
    border-collapse: collapse;
    text-align: left;
}

.zm-cmd-leaderboard-table thead th {
    position: sticky;
    top: 0;
    z-index: 4;
    background: #051226;
    color: #94a3b8;
    font-size: 10px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 8px 12px;
    border-bottom: 1px solid rgba(56, 189, 248, 0.25);
    white-space: nowrap;
}

.zm-cmd-leaderboard-table tbody tr.zm-cmd-lb-row {
    border-bottom: 1px solid rgba(56, 189, 248, 0.11);
    cursor: pointer;
    transition: background 0.15s ease;
}

.zm-cmd-leaderboard-table tbody tr.zm-cmd-lb-row:last-child {
    border-bottom: none;
}

.zm-cmd-leaderboard-table tbody tr.zm-cmd-lb-row:hover {
    background: rgba(14, 165, 233, 0.15);
}

.zm-cmd-leaderboard-table tbody tr.zm-cmd-lb-row.is-unbenchmarked {
    opacity: 0.76;
    background: rgba(15, 23, 42, 0.35);
}

.zm-cmd-leaderboard-table tbody td {
    padding: 8px 12px;
    vertical-align: middle;
    color: #f8fafc;
    font-size: 12px;
}

.zm-cmd-leaderboard-table .col-rank {
    width: 48px;
    text-align: center;
}

.zm-cmd-leaderboard-table .col-coin {
    width: 23%;
}

.zm-cmd-leaderboard-table .col-algo {
    width: 11%;
}

.zm-cmd-leaderboard-table .col-hash {
    width: 10%;
}

.zm-cmd-leaderboard-table .col-power {
    width: 8%;
}

.zm-cmd-leaderboard-table .col-rev {
    width: 9.5%;
}

.zm-cmd-leaderboard-table .col-elec {
    width: 10%;
}

.zm-cmd-leaderboard-table .col-profit {
    width: 11.5%;
}

.zm-cmd-leaderboard-table .col-status {
    width: 17%;
}

.zm-cmd-rank-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 26px;
    height: 22px;
    padding: 0 5px;
    border-radius: 5px;
    background: rgba(15, 23, 42, 0.85);
    border: 1px solid rgba(148, 163, 184, 0.24);
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 800;
}

.zm-cmd-coin-cell-link {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    text-decoration: none;
    color: inherit;
}

.zm-cmd-coin-cell-link .zm-coin-logo {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    min-height: 38px !important;
    border-radius: 50% !important;
    object-fit: contain !important;
    padding: 3px !important;
    font-size: 11px !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
}

.zm-cmd-coin-cell-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.zm-cmd-coin-cell-text .zm-profit-coin-name {
    font-size: 13px;
    font-weight: 850;
    color: #ffffff;
    line-height: 1.18;
    white-space: nowrap;
}

.zm-cmd-coin-cell-text .zm-profit-hw-model {
    font-size: 10.5px;
    font-weight: 600;
    color: #94a3b8;
    line-height: 1.15;
    white-space: nowrap;
}

.zm-cmd-cell-mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
    font-size: 11.5px;
    font-weight: 750;
    color: #e2e8f0;
    white-space: nowrap;
}

.zm-cmd-cell-rev {
    font-size: 12px;
    font-weight: 750;
    color: #cbd5e1;
    white-space: nowrap;
}

.zm-cmd-cell-elec {
    font-size: 12px;
    font-weight: 750;
    color: #fca5a5;
    white-space: nowrap;
}

.zm-cmd-leaderboard-table .col-rev,
.zm-cmd-leaderboard-table .col-elec,
.zm-cmd-leaderboard-table .col-profit {
    text-align: right;
    white-space: nowrap;
}

.zm-cmd-leaderboard-table .col-status {
    text-align: right;
    white-space: nowrap;
}

.zm-cmd-status-cell {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
}

.zm-cmd-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 2.5px 8px;
    border-radius: 6px;
    font-size: 10.5px;
    font-weight: 800;
    white-space: nowrap;
}

.zm-cmd-status-pill.is-pos {
    background: rgba(16, 185, 129, 0.18);
    border: 1px solid rgba(52, 211, 153, 0.45);
    color: #34d399;
}

.zm-cmd-status-pill.is-neg {
    background: rgba(239, 68, 68, 0.16);
    border: 1px solid rgba(248, 113, 113, 0.4);
    color: #f87171;
}

.zm-cmd-status-pill.is-unavail,
.zm-cmd-status-pill.is-zero {
    background: rgba(148, 163, 184, 0.14);
    border: 1px solid rgba(148, 163, 184, 0.3);
    color: #94a3b8;
}

.zm-cmd-sparkline {
    width: 56px;
    height: 18px;
    display: block;
    flex-shrink: 0;
}

.zm-cmd-trend-badge {
    font-size: 10px;
    font-weight: 750;
    color: #94a3b8;
    white-space: nowrap;
}

.zm-cmd-trend-badge.is-pos {
    color: #34d399;
}

/* 5. Command Center Footer (Single Compact Row) */
.zm-cmd-bottom-bar {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px !important;
    padding-top: 7px !important;
    border-top: 1px solid rgba(56, 189, 248, 0.18);
}

.zm-cmd-bottom-bar .zm-dash-scroll-hint {
    font-size: 11px !important;
    padding: 3px 10px !important;
}

.zm-cmd-bottom-bar .zm-dash-footer-meta {
    display: flex;
    align-items: center;
    gap: 14px;
}

.zm-cmd-secondary-footer-link {
    font-size: 11.5px;
    font-weight: 800;
    color: #94a3b8;
    text-decoration: none;
    margin-right: 0;
    transition: color 0.15s ease;
}

.zm-cmd-secondary-footer-link:hover {
    color: #ffffff;
}

.zm-cmd-bottom-bar .zm-dash-calc-link {
    font-size: 11.5px !important;
}

/* Bottom Section: Glowing Horizon Line + 4 Premium Statistics Cards (Compact) */
.zm-hero-bottom-stats-wrap {
    margin-top: 12px;
    position: relative;
    z-index: 3;
}

.zm-hero-horizon-divider {
    height: 1.5px;
    width: 100%;
    margin-bottom: 11px;
    background: linear-gradient(
        90deg,
        rgba(56, 189, 248, 0.05) 0%,
        rgba(56, 189, 248, 0.65) 24%,
        rgba(251, 191, 36, 0.92) 50%,
        rgba(56, 189, 248, 0.65) 76%,
        rgba(56, 189, 248, 0.05) 100%
    );
    box-shadow: 0 0 14px rgba(251, 191, 36, 0.4), 0 0 22px rgba(14, 165, 233, 0.3);
}

.zm-hero-bottom-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.zm-hero-stat-card {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 13px;
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(6, 20, 44, 0.92) 0%, rgba(4, 13, 30, 0.96) 100%);
    border: 1.5px solid rgba(56, 189, 248, 0.48);
    box-shadow:
        0 0 18px rgba(14, 165, 233, 0.16),
        0 8px 20px -8px rgba(2, 6, 18, 0.8),
        inset 0 1px 0 rgba(186, 230, 253, 0.2);
    text-decoration: none;
    color: #f8fafc;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    position: relative;
    overflow: hidden;
}

.zm-hero-stat-card:hover {
    transform: translateY(-2px);
    border-color: #7dd3fc;
    box-shadow:
        0 0 24px rgba(56, 189, 248, 0.36),
        0 12px 24px -8px rgba(2, 6, 18, 0.9),
        inset 0 1px 0 rgba(224, 242, 254, 0.4);
}

.zm-hero-stat-icon-box {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: radial-gradient(circle at 50% 35%, rgba(14, 165, 233, 0.28) 0%, rgba(5, 15, 34, 0.95) 100%);
    border: 1px solid rgba(56, 189, 248, 0.52);
    box-shadow: 0 0 12px rgba(14, 165, 233, 0.22);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
}

.zm-hero-stat-icon-box svg {
    width: 28px;
    height: 28px;
}

.zm-hero-stat-custom-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
    display: block;
}

.zm-hero-stat-content {
    display: flex;
    flex-direction: column;
    gap: 1px;
    min-width: 0;
    flex: 1 1 auto;
}

.zm-hero-stat-title {
    font-size: 12.5px;
    font-weight: 900;
    color: #ffffff;
    letter-spacing: 0.01em;
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-hero-stat-desc {
    font-size: 11px;
    font-weight: 600;
    color: #cbd5e1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-hero-stat-arrow {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.2);
    border: 1px solid rgba(56, 189, 248, 0.55);
    color: #7dd3fc;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.16s ease;
}

.zm-hero-stat-card:hover .zm-hero-stat-arrow {
    background: #0ea5e9;
    border-color: #bae6fd;
    color: #ffffff;
    transform: translateX(2px);
}

/* Responsive Breakpoints for Centered Command Center */
@media (max-width: 1440px) {
    .zm-hero-fullwidth-shell,
    .zm-hero-bottom-stats-wrap {
        width: calc(100% - 64px);
        max-width: 1320px;
    }
}

@media (max-width: 1180px) {
    .zm-hero-fullwidth-shell,
    .zm-hero-bottom-stats-wrap {
        width: calc(100% - 40px);
    }
    .zm-cmd-hardware-control-bar {
        grid-template-columns: minmax(220px, 0.42fr) minmax(280px, 0.58fr);
    }
    .zm-cmd-hw-anim-showcase {
        grid-column: 1 / -1;
    }
    .zm-cmd-hw-telemetry-boxes {
        grid-column: 1 / -1;
    }
    .zm-cmd-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .zm-hero-bottom-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .zm-hero-fullwidth-shell,
    .zm-hero-bottom-stats-wrap {
        width: calc(100% - 32px);
    }
    .zm-profit-dashboard.zm-cmd-center.zm-cmd-fullwidth {
        padding: 14px 12px;
        border-radius: 14px;
    }
    .zm-cmd-hardware-control-bar {
        grid-template-columns: 1fr;
        padding: 10px;
    }
    .zm-cmd-hw-anim-showcase {
        grid-column: 1 / -1;
    }
    .zm-cmd-hw-telemetry-boxes {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
    .zm-cmd-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 8px;
    }
}

@media (max-width: 560px) {
    .zm-hero-fullwidth-shell,
    .zm-hero-bottom-stats-wrap {
        width: calc(100% - 24px);
    }
    .zm-cmd-coin-cell-link .zm-coin-logo {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
    }
    .zm-hero-bottom-stats-grid {
        grid-template-columns: 1fr;
    }
}








/* ==========================================================================
   ZU Mining Pagination System (Global & Public)
   ========================================================================== */
.zm-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
}
.zm-pagination-list {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
    flex-wrap: wrap;
    justify-content: center;
}
.zm-pagination-item {
    display: inline-flex;
    margin: 0;
    padding: 0;
}
.zm-pagination-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 38px;
    min-width: 38px;
    padding: 0 13px;
    font-size: 13.5px;
    font-weight: 500;
    color: #334155;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    text-decoration: none;
    line-height: 1;
    transition: all 0.15s ease-in-out;
    user-select: none;
    box-sizing: border-box;
    cursor: pointer;
}
.zm-pagination-num {
    padding: 0 10px;
    min-width: 38px;
    font-variant-numeric: tabular-nums;
}
a.zm-pagination-btn:hover {
    color: #0b6fe8;
    background: #f8fafc;
    border-color: #cbd5e1;
    text-decoration: none;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.05);
}
.zm-pagination-btn.is-active {
    background: #0b6fe8;
    border-color: #0b6fe8;
    color: #ffffff;
    font-weight: 600;
    cursor: default;
    box-shadow: 0 2px 4px rgba(11, 111, 232, 0.25);
}
.zm-pagination-btn.is-disabled {
    color: #94a3b8;
    background: #f8fafc;
    border-color: #e2e8f0;
    cursor: not-allowed;
    opacity: 0.55;
    pointer-events: none;
}
.zm-pagination-dots {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 38px;
    min-width: 24px;
    color: #94a3b8;
    font-size: 14px;
    font-weight: 600;
    user-select: none;
}
.zm-pagination-icon {
    width: 15px;
    height: 15px;
    max-width: 15px;
    max-height: 15px;
    flex-shrink: 0;
    display: inline-block;
    vertical-align: middle;
}
.zm-pagination-label {
    display: inline-block;
    line-height: 1;
}

/* Safety overrides for Laravel Tailwind pagination & raw SVGs */
.w-5 { width: 1.25rem !important; }
.h-5 { height: 1.25rem !important; }
nav[role="navigation"] svg { max-width: 16px; max-height: 16px; vertical-align: middle; }

@media (max-width: 640px) {
    .zm-pagination-list {
        gap: 4px;
    }
    .zm-pagination-btn {
        height: 34px;
        min-width: 34px;
        padding: 0 8px;
        font-size: 13px;
    }
    .zm-pagination-num {
        min-width: 34px;
        padding: 0 6px;
    }
    .zm-pagination-label {
        display: none;
    }
    .zm-pagination-prev,
    .zm-pagination-next {
        padding: 0 9px;
    }
}


/* ==========================================================================
   ZU Mining Related Mining Guides Carousel
   ========================================================================== */
.zm-related-section {
    margin-top: 60px;
    border-top: 2px solid #f1f5f9;
    padding-top: 42px;
    position: relative;
}
.zm-related-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-bottom: 24px;
    gap: 16px;
}
.zm-related-badge {
    display: inline-block;
    font-size: 11px;
    font-weight: 750;
    color: #0b6fe8;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 6px;
}
.zm-related-title {
    font-size: 24px;
    font-weight: 800;
    color: #071a33;
    margin: 0;
    line-height: 1.25;
}
.zm-related-nav-controls {
    display: flex;
    align-items: center;
    gap: 8px;
}
.zm-related-nav-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    color: #0f172a;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 1px 3px rgba(11, 24, 44, 0.06);
}
.zm-related-nav-btn:hover:not(:disabled) {
    background: #0b6fe8;
    color: #ffffff;
    border-color: #0b6fe8;
    transform: scale(1.05);
    box-shadow: 0 4px 12px rgba(11, 111, 232, 0.3);
}
.zm-related-nav-btn:disabled {
    opacity: 0.35;
    cursor: not-allowed;
    background: #f8fafc;
    color: #94a3b8;
    border-color: #e2e8f0;
    box-shadow: none;
}

.zm-related-carousel-wrapper {
    position: relative;
    width: 100%;
}

.zm-related-side-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    color: #0f172a;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(11, 24, 44, 0.12);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.zm-related-side-prev {
    left: -20px;
}
.zm-related-side-next {
    right: -20px;
}
.zm-related-side-btn:hover:not(:disabled) {
    background: #0b6fe8;
    color: #ffffff;
    border-color: #0b6fe8;
    transform: translateY(-50%) scale(1.08);
    box-shadow: 0 6px 20px rgba(11, 111, 232, 0.38);
}
.zm-related-side-btn:disabled {
    opacity: 0.25;
    cursor: not-allowed;
    background: #f8fafc;
    color: #94a3b8;
    box-shadow: none;
}

.zm-nav-icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    flex-shrink: 0;
    display: block;
}

.zm-related-track {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    ms-overflow-style: none;
    padding: 8px 2px 16px 2px;
    margin: -8px -2px -16px -2px;
}
.zm-related-track::-webkit-scrollbar {
    display: none;
}

.zm-related-slide {
    flex: 0 0 calc((100% - 60px) / 4);
    max-width: calc((100% - 60px) / 4);
    scroll-snap-align: start;
    display: flex;
    box-sizing: border-box;
}
.zm-related-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    overflow: hidden;
    text-decoration: none !important;
    color: inherit;
    box-shadow: 0 2px 5px rgba(11, 24, 44, 0.04);
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.25s ease;
}
.zm-related-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px -4px rgba(11, 24, 44, 0.12);
    border-color: #93c5fd;
    color: inherit;
}

.zm-related-thumb-wrapper {
    position: relative;
    width: 100%;
    height: 142px;
    background: #071a33;
    overflow: hidden;
}
.zm-related-thumb-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.35s ease;
}
.zm-related-card:hover .zm-related-thumb-img {
    transform: scale(1.05);
}
.zm-related-thumb-placeholder {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f1f5f9;
}

.zm-related-tag {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    background: rgba(7, 26, 51, 0.88);
    backdrop-filter: blur(4px);
    color: #38bdf8;
    font-size: 10px;
    font-weight: 750;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding: 3px 8px;
    border-radius: 6px;
    max-width: calc(100% - 20px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.zm-related-card-content {
    padding: 14px 15px 15px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    background: #ffffff;
}
.zm-related-card-title {
    font-size: 14.5px;
    font-weight: 700;
    color: #071a33;
    line-height: 1.4;
    margin: 0 0 12px 0;
    min-height: 40px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color 0.2s ease;
}
.zm-related-card:hover .zm-related-card-title {
    color: #0b6fe8;
}

.zm-related-card-meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 10px;
    border-top: 1px solid #f1f5f9;
    font-size: 12px;
}
.zm-related-reading-time {
    color: #64748b;
    font-weight: 500;
}
.zm-related-read-link {
    color: #0b6fe8;
    font-weight: 650;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    transition: gap 0.2s ease;
}
.zm-related-card:hover .zm-related-read-link {
    gap: 7px;
}

@media (max-width: 1200px) {
    .zm-related-side-prev {
        left: -12px;
    }
    .zm-related-side-next {
        right: -12px;
    }
}
@media (max-width: 1024px) {
    .zm-related-slide {
        flex: 0 0 calc((100% - 32px) / 3);
        max-width: calc((100% - 32px) / 3);
    }
    .zm-related-track {
        gap: 16px;
    }
}
@media (max-width: 768px) {
    .zm-related-slide {
        flex: 0 0 calc((100% - 16px) / 2);
        max-width: calc((100% - 16px) / 2);
    }
    .zm-related-side-btn {
        display: none;
    }
}
@media (max-width: 640px) {
    .zm-related-slide {
        flex: 0 0 82%;
        max-width: 82%;
    }
    .zm-related-track {
        gap: 12px;
    }
    .zm-related-title {
        font-size: 20px;
    }
    .zm-related-thumb-wrapper {
        height: 135px;
    }
}
