{"id":8911,"date":"2026-04-28T12:39:03","date_gmt":"2026-04-28T12:39:03","guid":{"rendered":"https:\/\/guardarian.com\/blog\/?p=8911"},"modified":"2026-04-28T12:39:05","modified_gmt":"2026-04-28T12:39:05","slug":"btc-price-calculator","status":"publish","type":"post","link":"https:\/\/guardarian.com\/blog\/btc-price-calculator","title":{"rendered":"Bitcoin (BTC) Live Price &amp; Calculator"},"content":{"rendered":"\n\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;500;600;700;800&#038;family=Roboto:wght@400;500;700;800;900&#038;display=swap\" rel=\"stylesheet\">\n<script src=\"https:\/\/unpkg.com\/lightweight-charts@4.1.1\/dist\/lightweight-charts.standalone.production.js\"><\/script>\n\n<div id=\"crypto-page-config\" data-symbol=\"BTC\"><\/div>\n<div class=\"crypto-page-meta\" data-coin=\"BTC\" data-coin-name=\"Bitcoin\" data-coingecko-id=\"bitcoin\" data-coinpaprika-id=\"btc-bitcoin\"><\/div>\n\n<div class=\"btc-price-page-merged\">\n  <style>\n    .btc-price-page-merged,\n    .btc-price-page-merged * {\n      box-sizing: border-box;\n    }\n\n    .btc-price-page-merged {\n      --brand-blue: #4C9DE8;\n      --brand-blue-dark: #3a8cd9;\n      --brand-bg-light: #E3F2FF;\n      --brand-white: #FFFFFF;\n      --brand-gray-inner: #F8F8F8;\n      --brand-dark: #1B2125;\n      --brand-label: #ADB5BD;\n      --brand-soft: #667391;\n      color: var(--brand-dark);\n      font-family: 'Roboto', sans-serif;\n    }\n\n    .btc-price-page-merged h1,\n    .btc-price-page-merged h2,\n    .btc-price-page-merged h3,\n    .btc-price-page-merged h4,\n    .btc-price-page-merged h5,\n    .btc-price-page-merged h6 {\n      font-family: 'Poppins', sans-serif;\n    }\n\n    .btc-price-page-merged a {\n      color: var(--brand-blue);\n    }\n\n    .btc-page-shell {\n      width: min(1280px, calc(100% - 24px));\n      margin: 0 auto;\n    }\n\n    .price-chart-root {\n      width: 100%;\n      margin: 0 auto 28px;\n    }\n\n    .crypto-ultimate-chart-card {\n      width: 100%;\n      background: #fff;\n      border: 1px solid #E3F2FF;\n      border-radius: 32px;\n      padding: 30px 30px 34px;\n      box-shadow: 0 10px 40px rgba(27, 33, 37, 0.06);\n      position: relative;\n    }\n\n    .chart-header-main {\n      display: flex;\n      justify-content: space-between;\n      align-items: center;\n      gap: 20px;\n      margin-bottom: 25px;\n    }\n\n    .coin-meta {\n      display: flex;\n      align-items: center;\n      gap: 15px;\n      min-width: 0;\n    }\n\n    .coin-logo {\n      width: 50px;\n      height: 50px;\n      background: #f8fbff;\n      border-radius: 50%;\n      padding: 8px;\n      object-fit: contain;\n      display: none;\n    }\n\n    .coin-logo.is-visible {\n      display: block;\n    }\n\n    .coin-logo-fallback {\n      width: 50px;\n      height: 50px;\n      border-radius: 50%;\n      background: #f8fbff;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      color: var(--brand-blue);\n      font-size: 16px;\n      font-weight: 800;\n      text-transform: uppercase;\n      border: 1px solid #E3F2FF;\n      flex: 0 0 50px;\n    }\n\n    .coin-text-wrapper {\n      min-width: 0;\n    }\n\n    .top-meta-row {\n      display: flex;\n      align-items: center;\n      gap: 10px;\n      margin-bottom: 4px;\n      flex-wrap: wrap;\n    }\n\n    .coin-pair {\n      font-weight: 700;\n      font-size: 13px;\n      color: var(--brand-label);\n      text-transform: uppercase;\n    }\n\n    .live-status-pill {\n      display: flex;\n      align-items: center;\n      gap: 8px;\n      background: rgba(76, 157, 232, 0.06);\n      border: 1.2px solid #E3F2FF;\n      padding: 4px 12px;\n      border-radius: 10px;\n    }\n\n    .pulse-dot {\n      width: 8px;\n      height: 8px;\n      background-color: var(--brand-blue);\n      border-radius: 50%;\n      position: relative;\n      display: inline-block;\n    }\n\n    .pulse-dot::after {\n      content: \"\";\n      position: absolute;\n      inset: 0;\n      background-color: inherit;\n      border-radius: 50%;\n      animation: live-pulse-ring 2s infinite ease-out;\n    }\n\n    @keyframes live-pulse-ring {\n      0% {\n        transform: scale(1);\n        opacity: 1;\n      }\n\n      100% {\n        transform: scale(3.5);\n        opacity: 0;\n      }\n    }\n\n    .live-text {\n      font-size: 10px;\n      font-weight: 800;\n      text-transform: uppercase;\n      color: var(--brand-blue);\n      letter-spacing: 0.5px;\n    }\n\n    .price-row {\n      display: flex;\n      align-items: center;\n      gap: 8px;\n      flex-wrap: wrap;\n    }\n\n    .coin-value {\n      font-size: 34px;\n      font-weight: 800;\n      color: var(--brand-dark);\n      letter-spacing: -1px;\n      line-height: 1.1;\n    }\n\n    .price-change {\n      font-size: 14px;\n      font-weight: 700;\n      padding: 4px 10px;\n      border-radius: 8px;\n      white-space: nowrap;\n    }\n\n    .price-change.up {\n      color: #02c076;\n      background: rgba(2, 192, 118, 0.08);\n    }\n\n    .price-change.down {\n      color: #f84960;\n      background: rgba(248, 73, 96, 0.08);\n    }\n\n    .buy-crypto-btn {\n      text-decoration: none;\n      background: var(--brand-blue);\n      color: #fff !important;\n      font-size: 14px;\n      font-weight: 700;\n      padding: 10px 14px 10px 18px;\n      border-radius: 12px;\n      margin-left: 6px;\n      transition: all 0.3s ease;\n      text-transform: uppercase;\n      display: inline-flex;\n      align-items: center;\n      gap: 10px;\n      white-space: nowrap;\n      box-shadow: 0 4px 15px rgba(76, 157, 232, 0.25);\n    }\n\n    .buy-crypto-btn:hover {\n      background: var(--brand-blue-dark);\n      transform: translateY(-2px);\n      box-shadow: 0 8px 20px rgba(76, 157, 232, 0.35);\n      color: #fff !important;\n    }\n\n    .buy-crypto-btn__label {\n      display: inline-flex;\n      align-items: center;\n    }\n\n    .buy-crypto-btn__badge {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 20px;\n      padding: 4px 8px;\n      border-radius: 999px;\n      background: rgba(255, 255, 255, 0.2);\n      border: 1px solid rgba(255, 255, 255, 0.24);\n      font-size: 10px;\n      font-weight: 700;\n      letter-spacing: 0.02em;\n      text-transform: uppercase;\n      line-height: 1;\n    }\n\n    .timeframe-selector {\n      background: #f4f9ff;\n      padding: 4px;\n      border-radius: 14px;\n      display: flex;\n      gap: 4px;\n      flex-wrap: wrap;\n      justify-content: flex-end;\n    }\n\n    .tf-btn {\n      border: none;\n      background: transparent;\n      padding: 6px 14px;\n      border-radius: 10px;\n      font-family: 'Roboto', sans-serif;\n      font-size: 12px;\n      font-weight: 700;\n      color: #7d8ea3;\n      cursor: pointer;\n      transition: 0.3s;\n    }\n\n    .tf-btn.active {\n      background: #fff;\n      color: var(--brand-blue);\n      box-shadow: 0 4px 12px rgba(76, 157, 232, 0.15);\n    }\n\n    .chart-internal-frame {\n      background: #fcfdfe;\n      border: 1.5px solid #eef6ff;\n      border-radius: 24px;\n      padding: 12px;\n      position: relative;\n      box-shadow: inset 0 12px 24px rgba(0, 50, 100, 0.05);\n      overflow: visible;\n    }\n\n    .chart-canvas-container {\n      width: 100%;\n      height: 420px;\n      position: relative;\n      transition: transform 0.45s ease, opacity 0.35s ease, filter 0.35s ease;\n    }\n\n    .chart-canvas-container.is-loading {\n      transform: scale(0.985);\n      opacity: 0.4;\n      filter: blur(4px);\n    }\n\n    .loader-style {\n      position: absolute;\n      top: 50%;\n      left: 50%;\n      transform: translate(-50%, -50%);\n      color: var(--brand-blue);\n      font-weight: 600;\n      z-index: 2;\n    }\n\n    .history-expander-zone {\n      width: 100%;\n      padding: 22px 10px 0;\n      display: none;\n    }\n\n    .history-expander-zone.is-visible {\n      display: block;\n    }\n\n    .history-slider {\n      -webkit-appearance: none;\n      appearance: none;\n      width: 100%;\n      height: 6px;\n      background: #f0f3fa;\n      border-radius: 10px;\n      outline: none;\n      cursor: pointer;\n    }\n\n    .history-slider::-webkit-slider-thumb {\n      -webkit-appearance: none;\n      appearance: none;\n      width: 22px;\n      height: 22px;\n      background: var(--brand-blue);\n      border-radius: 50%;\n      border: 3px solid #fff;\n      box-shadow: 0 2px 8px rgba(76, 157, 232, 0.3);\n    }\n\n    .scroll-labels {\n      display: flex;\n      justify-content: space-between;\n      margin-top: 15px;\n    }\n\n    .scroll-labels span {\n      font-size: 11px;\n      color: var(--brand-label);\n      font-weight: 700;\n      text-transform: uppercase;\n    }\n\n    .custom-tooltip-box {\n      position: absolute;\n      display: none;\n      padding: 15px;\n      background: rgba(27, 33, 37, 0.95);\n      color: #fff;\n      border-radius: 15px;\n      z-index: 20;\n      backdrop-filter: blur(5px);\n      pointer-events: none;\n    }\n\n    .price-content-grid {\n      display: grid;\n      grid-template-columns: minmax(0, 1.9fr) minmax(300px, 0.95fr);\n      gap: 26px;\n      align-items: start;\n    }\n\n    .content-column {\n      min-width: 0;\n    }\n\n    .sidebar-column {\n      min-width: 0;\n      position: sticky;\n      top: 16px;\n    }\n\n    .price-card {\n      background: #fff;\n      border-radius: 30px;\n      padding: 34px;\n      margin-bottom: 24px;\n      box-shadow: 0 10px 40px rgba(27, 33, 37, 0.05);\n      border: 1px solid #eef6ff;\n    }\n\n    .price-card h2 {\n      margin: 0 0 18px;\n      font-size: 32px;\n      line-height: 1.12;\n      letter-spacing: -0.03em;\n      color: var(--brand-dark);\n    }\n\n    .price-card p,\n    .price-card li,\n    .price-card blockquote {\n      font-family: 'Roboto', sans-serif;\n      font-size: 18px;\n      line-height: 1.8;\n      color: #4e5f79;\n      margin: 0;\n    }\n\n    .price-card p + p,\n    .price-card ul,\n    .price-card ol,\n    .price-card blockquote {\n      margin-top: 18px;\n    }\n\n    .price-card ul,\n    .price-card ol {\n      padding-left: 24px;\n    }\n\n    .price-card li + li {\n      margin-top: 10px;\n    }\n\n    .price-card blockquote {\n      background: #f8fbff;\n      border: 1px solid #e3f2ff;\n      border-radius: 22px;\n      padding: 22px 24px;\n    }\n\n    .price-card strong {\n      color: var(--brand-dark);\n    }\n\n    .price-card .single-main-cta {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 52px;\n      padding: 14px 22px;\n      background: var(--brand-blue);\n      color: #fff !important;\n      text-decoration: none;\n      font-weight: 700;\n      border-radius: 16px;\n      box-shadow: 0 8px 20px rgba(76, 157, 232, 0.25);\n      margin-bottom: 20px;\n    }\n\n    .price-card .single-main-cta:hover {\n      background: var(--brand-blue-dark);\n      color: #fff !important;\n    }\n\n    .stats-card-3d-custom {\n      width: 100%;\n      background: var(--brand-white);\n      border: 1px solid var(--brand-bg-light);\n      border-radius: 32px;\n      padding: 20px;\n      box-shadow: 0 15px 45px rgba(76, 157, 232, 0.08);\n      overflow: visible;\n      margin-bottom: 24px;\n    }\n\n    .stats-internal-frame-custom {\n      background: var(--brand-gray-inner);\n      border: 1.5px solid #eef6ff;\n      border-radius: 24px;\n      padding: 30px 25px;\n      position: relative;\n      box-shadow: inset 0 10px 20px rgba(0, 50, 100, 0.04);\n      overflow: visible;\n    }\n\n    .stats-grid-custom {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 35px 20px;\n    }\n\n    .span-2 {\n      grid-column: span 2;\n    }\n\n    .stat-item {\n      display: flex;\n      flex-direction: column;\n      gap: 8px;\n      position: relative;\n    }\n\n    .align-bottom {\n      justify-content: flex-end;\n    }\n\n    .stat-label-row {\n      display: flex;\n      align-items: flex-start;\n      gap: 6px;\n    }\n\n    .min-h-label {\n      min-height: 32px;\n    }\n\n    .stat-label {\n      font-size: 11px;\n      color: var(--brand-label);\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.5px;\n      white-space: normal;\n      line-height: 1.3;\n    }\n\n    .stat-value {\n      font-size: 19px;\n      color: var(--brand-dark);\n      font-weight: 800;\n      letter-spacing: -0.4px;\n      white-space: nowrap;\n      word-break: normal;\n    }\n\n    .is-skeleton {\n      position: relative;\n      overflow: hidden;\n      color: transparent !important;\n      background: #eaf1fb;\n      border-radius: 12px;\n      user-select: none;\n    }\n\n    .is-skeleton::after {\n      content: '';\n      position: absolute;\n      inset: 0;\n      transform: translateX(-100%);\n      background: linear-gradient(\n        90deg,\n        rgba(255, 255, 255, 0) 0%,\n        rgba(255, 255, 255, 0.85) 50%,\n        rgba(255, 255, 255, 0) 100%\n      );\n      animation: stats-skeleton-shimmer 1.5s infinite;\n    }\n\n    @keyframes stats-skeleton-shimmer {\n      100% {\n        transform: translateX(100%);\n      }\n    }\n\n    .stat-value.is-skeleton {\n      display: block;\n      min-height: 1.2em;\n    }\n\n    [data-stat=\"mcap\"].is-skeleton,\n    [data-stat=\"supply\"].is-skeleton {\n      width: 68%;\n    }\n\n    [data-stat=\"volume\"].is-skeleton,\n    [data-stat=\"atl\"].is-skeleton,\n    [data-stat=\"ath\"].is-skeleton {\n      width: 58%;\n    }\n\n    [data-stat=\"ratio\"].is-skeleton {\n      width: 88%;\n    }\n\n    .info-trigger {\n      position: relative;\n      cursor: help;\n      display: flex;\n      align-items: center;\n      flex-shrink: 0;\n    }\n\n    .info-icon {\n      width: 16px;\n      height: 16px;\n      background: #e9eff5;\n      color: var(--brand-label);\n      font-size: 11px;\n      font-weight: 800;\n      border-radius: 50%;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      transition: 0.3s;\n    }\n\n    .info-trigger:hover .info-icon {\n      background: var(--brand-blue);\n      color: #fff;\n    }\n\n    .tooltip {\n      position: absolute;\n      bottom: 150%;\n      left: 50%;\n      transform: translateX(-50%);\n      width: 220px;\n      max-width: 80vw;\n      background: var(--brand-dark);\n      color: #fff;\n      font-family: 'Roboto', sans-serif;\n      font-size: 12px;\n      font-weight: 400;\n      line-height: 1.6;\n      padding: 12px 16px;\n      border-radius: 12px;\n      box-shadow: 0 12px 30px rgba(0, 0, 0, 0.3);\n      opacity: 0;\n      pointer-events: none;\n      transition: 0.3s;\n      z-index: 50;\n      white-space: normal;\n      word-wrap: break-word;\n    }\n\n    .tooltip::after {\n      content: '';\n      position: absolute;\n      top: 100%;\n      left: 50%;\n      transform: translateX(-50%);\n      border-width: 6px;\n      border-style: solid;\n      border-color: var(--brand-dark) transparent transparent transparent;\n    }\n\n    .info-trigger:hover .tooltip {\n      opacity: 1;\n      bottom: 170%;\n    }\n\n    .range-bar-container {\n      width: 100%;\n      margin-top: 4px;\n    }\n\n    .range-track {\n      height: 6px;\n      background: #e9eff5;\n      border-radius: 10px;\n      position: relative;\n      overflow: hidden;\n    }\n\n    .range-track.is-skeleton {\n      height: 10px;\n      background: #eaf1fb;\n    }\n\n    .range-fill {\n      position: absolute;\n      height: 100%;\n      background: var(--brand-blue);\n      border-radius: 10px;\n      width: 0;\n      transition: 1.2s ease;\n    }\n\n    .range-labels {\n      display: flex;\n      justify-content: space-between;\n      margin-top: 8px;\n      font-size: 12px;\n      font-weight: 800;\n      color: var(--brand-dark);\n    }\n\n    .range-labels span.is-skeleton {\n      display: block;\n      width: 78px;\n      min-height: 1em;\n      border-radius: 999px;\n    }\n\n    .widget-card {\n      background: #fff;\n      border-radius: 30px;\n      padding: 24px;\n      box-shadow: 0 10px 40px rgba(27, 33, 37, 0.05);\n      border: 1px solid #eef6ff;\n      margin-bottom: 24px;\n    }\n\n    .widget-card h3 {\n      margin: 0 0 16px;\n      font-size: 20px;\n      color: var(--brand-dark);\n    }\n\n    .widget-card iframe {\n      width: 100%;\n      max-width: 100%;\n      border: none;\n      display: block;\n      margin: 0 auto;\n      background: transparent;\n    }\n\n    .dominance-widget-card {\n      display: flex;\n      flex-direction: column;\n      gap: 14px;\n    }\n\n    .dominance-widget-copy {\n      margin: -4px 0 0;\n      font-size: 14px;\n      line-height: 1.6;\n      color: var(--brand-soft);\n    }\n\n    .dominance-hero {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 12px;\n    }\n\n    .dominance-value {\n      font-size: 38px;\n      line-height: 1;\n      font-weight: 800;\n      color: var(--brand-dark);\n    }\n\n    .dominance-value.is-skeleton {\n      display: block;\n      width: 56%;\n      min-height: 1.1em;\n    }\n\n    .dominance-live-badge {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 34px;\n      padding: 8px 12px;\n      border-radius: 999px;\n      background: rgba(76, 157, 232, 0.1);\n      color: var(--brand-blue);\n      font-size: 12px;\n      font-weight: 700;\n      white-space: nowrap;\n    }\n\n    .dominance-track {\n      position: relative;\n      height: 10px;\n      border-radius: 999px;\n      background: #eef4fb;\n      overflow: hidden;\n    }\n\n    .dominance-track.is-skeleton {\n      background: #eaf1fb;\n    }\n\n    .dominance-fill {\n      height: 100%;\n      width: 0;\n      background: linear-gradient(90deg, #4C9DE8 0%, #7bbcf8 100%);\n      border-radius: inherit;\n      transition: width 0.6s ease;\n    }\n\n    .dominance-legend {\n      display: flex;\n      justify-content: space-between;\n      gap: 12px;\n      margin-top: -4px;\n      font-size: 12px;\n      color: var(--brand-label);\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n    }\n\n    .dominance-grid {\n      display: grid;\n      grid-template-columns: 1fr 1fr;\n      gap: 12px;\n    }\n\n    .dominance-item {\n      background: #f8fbff;\n      border: 1px solid #e8f1fb;\n      border-radius: 18px;\n      padding: 14px;\n      display: flex;\n      flex-direction: column;\n      gap: 6px;\n    }\n\n    .dominance-item.wide {\n      grid-column: span 2;\n    }\n\n    .dominance-item-label {\n      font-size: 12px;\n      line-height: 1.4;\n      color: var(--brand-label);\n      font-weight: 700;\n      text-transform: uppercase;\n      letter-spacing: 0.04em;\n    }\n\n    .dominance-item-value {\n      font-size: 22px;\n      line-height: 1.15;\n      font-weight: 800;\n      color: var(--brand-dark);\n      word-break: break-word;\n    }\n\n    .dominance-item-value.is-skeleton {\n      display: block;\n      min-height: 1.15em;\n    }\n\n    [data-dominance=\"btc-share\"].is-skeleton,\n    [data-dominance=\"alt-share\"].is-skeleton {\n      width: 72%;\n    }\n\n    [data-dominance=\"total-market-cap\"].is-skeleton {\n      width: 52%;\n    }\n\n    .guardarian-coin-page {\n      --gcp-bg: #f8f8f8;\n      --gcp-card: rgba(255, 255, 255, 0.94);\n      --gcp-card-solid: #ffffff;\n      --gcp-text: #0a1033;\n      --gcp-text-soft: #667391;\n      --gcp-text-muted: #8b96ab;\n      --gcp-border: #e6edf8;\n      --gcp-accent: #78b8f5;\n      --gcp-accent-2: #2f80ed;\n      --gcp-shadow: 0 20px 60px rgba(16, 24, 40, 0.07);\n      --gcp-shadow-soft: 0 10px 30px rgba(16, 24, 40, 0.05);\n      position: relative;\n      overflow: visible;\n      background: #f8f8f8;\n      color: var(--gcp-text);\n      font-family: 'Roboto', sans-serif;\n      padding: 26px 0 24px;\n      border-radius: 32px;\n      margin-top: 8px;\n    }\n\n    .guardarian-coin-page,\n    .guardarian-coin-page * {\n      box-sizing: border-box;\n    }\n\n    .gcp-top-actions {\n      display: none;\n    }\n\n    .gcp-container {\n      width: min(1240px, calc(100% - 32px));\n      margin: 0 auto;\n      position: relative;\n      z-index: 1;\n    }\n\n    .gcp-container--narrow {\n      width: min(920px, calc(100% - 32px));\n    }\n\n    .gcp-section {\n      padding: 54px 0;\n    }\n\n    .guardarian-coin-page .gcp-section:last-of-type {\n      padding-bottom: 0;\n    }\n\n    .gcp-section--tight {\n      padding: 38px 0 28px;\n    }\n\n    .gcp-eyebrow {\n      display: inline-flex;\n      align-items: center;\n      gap: 8px;\n      min-height: 34px;\n      padding: 8px 12px;\n      border: 1px solid rgba(120, 184, 245, 0.22);\n      border-radius: 999px;\n      background: rgba(255, 255, 255, 0.72);\n      backdrop-filter: blur(10px);\n      font-size: 12px;\n      line-height: 1;\n      letter-spacing: 0.05em;\n      text-transform: uppercase;\n      font-weight: 800;\n      color: var(--gcp-accent-2);\n      margin-bottom: 16px;\n      white-space: nowrap;\n    }\n\n    .gcp-grid-hero {\n      display: grid;\n      grid-template-columns: minmax(0, 1.02fr) minmax(420px, 0.98fr);\n      align-items: start;\n      gap: 40px;\n    }\n\n    .gcp-hero-copy,\n    .gcp-widget-column {\n      min-width: 0;\n    }\n\n    .gcp-hero-heading {\n      display: flex;\n      align-items: center;\n      gap: 22px;\n      margin-bottom: 18px;\n    }\n\n    .gcp-hero-logo-box {\n      width: 128px;\n      height: 128px;\n      border-radius: 24px;\n      background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(255, 255, 255, 0.68));\n      border: 1px solid rgba(120, 184, 245, 0.14);\n      box-shadow: var(--gcp-shadow-soft);\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      flex: 0 0 128px;\n    }\n\n    .gcp-hero-logo-box img {\n      width: 86px;\n      height: 86px;\n      object-fit: contain;\n      display: none;\n    }\n\n    .gcp-hero-logo-fallback {\n      width: 86px;\n      height: 86px;\n      border-radius: 999px;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      background: linear-gradient(180deg, #eef6ff 0%, #e3f0ff 100%);\n      color: var(--gcp-accent-2);\n      font-size: 30px;\n      font-weight: 800;\n      border: 1px solid #dbeafe;\n      text-transform: uppercase;\n    }\n\n    .gcp-title {\n      margin: 0;\n      font-size: clamp(42px, 6vw, 68px);\n      line-height: 0.98;\n      letter-spacing: -0.045em;\n      font-weight: 800;\n      color: var(--gcp-text);\n      max-width: 760px;\n    }\n\n    .gcp-title__accent {\n      color: var(--gcp-accent);\n    }\n\n    .gcp-subtitle {\n      margin: 0;\n      max-width: 700px;\n      font-size: 18px;\n      line-height: 1.75;\n      color: var(--gcp-text-soft);\n    }\n\n    .gcp-meta-row,\n    .gcp-link-pills,\n    .gcp-seo-links {\n      display: flex;\n      flex-wrap: wrap;\n      gap: 12px;\n      margin-top: 22px;\n    }\n\n    .gcp-chip,\n    .gcp-link-pill,\n    .gcp-seo-links a {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 46px;\n      padding: 12px 16px;\n      border-radius: 999px;\n      text-decoration: none;\n      font-size: 14px;\n      font-weight: 700;\n      text-align: center;\n    }\n\n    .gcp-chip {\n      border: 1px solid var(--gcp-border);\n      background: rgba(255, 255, 255, 0.86);\n      box-shadow: var(--gcp-shadow-soft);\n      color: var(--gcp-text);\n    }\n\n    .gcp-link-pill,\n    .gcp-seo-links a,\n    .gcp-widget-cta {\n      background: linear-gradient(180deg, #7bbcf8 0%, #5ba7f2 100%);\n      color: #fff !important;\n      border: 1px solid transparent;\n      box-shadow: 0 14px 30px rgba(91, 167, 242, 0.24);\n    }\n\n    .gcp-card-shell {\n      position: relative;\n      padding: 14px;\n      border-radius: 36px;\n      background: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(255, 255, 255, 0.7));\n      border: 1px solid rgba(255, 255, 255, 0.7);\n      box-shadow: var(--gcp-shadow);\n      backdrop-filter: blur(10px);\n      overflow: visible;\n    }\n\n    .gcp-widget-cta-wrap {\n      display: flex;\n      justify-content: center;\n      position: relative;\n      z-index: 1;\n    }\n\n    .gcp-widget-cta {\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      min-height: 60px;\n      width: 100%;\n      padding: 16px 22px;\n      margin-top: 12px;\n      border-radius: 18px;\n      text-decoration: none;\n      font-size: 18px;\n      line-height: 1.2;\n      font-weight: 800;\n      letter-spacing: -0.01em;\n      text-align: center;\n      cursor: pointer;\n      animation: gcpCtaNudge 8s ease-in-out infinite;\n      transform-origin: center;\n    }\n\n    .gcp-widget-cta:hover {\n      transform: translateY(-1px);\n      box-shadow: 0 22px 38px rgba(91, 167, 242, 0.36);\n      animation-play-state: paused;\n    }\n\n    @keyframes gcpCtaNudge {\n      0%, 86%, 100% {\n        transform: translate3d(0, 0, 0);\n      }\n      88% {\n        transform: translate3d(-1px, 0, 0) rotate(-1deg);\n      }\n      90% {\n        transform: translate3d(2px, 0, 0) rotate(1deg);\n      }\n      92% {\n        transform: translate3d(-3px, 0, 0) rotate(-1.2deg);\n      }\n      94% {\n        transform: translate3d(3px, 0, 0) rotate(1.2deg);\n      }\n      96% {\n        transform: translate3d(-1px, 0, 0) rotate(-0.6deg);\n      }\n      98% {\n        transform: translate3d(1px, 0, 0) rotate(0.6deg);\n      }\n    }\n\n    .gcp-section-head {\n      max-width: 780px;\n      margin-bottom: 28px;\n    }\n\n    .gcp-section-head h2 {\n      margin: 0 0 14px;\n      font-size: clamp(30px, 4vw, 44px);\n      line-height: 1.06;\n      letter-spacing: -0.035em;\n      color: var(--gcp-text);\n    }\n\n    .gcp-section-head p,\n    .gcp-feature-card p,\n    .gcp-step-card p,\n    .gcp-copy-card p,\n    .gcp-note-card p {\n      margin: 0;\n      font-size: 15px;\n      line-height: 1.75;\n      color: var(--gcp-text-soft);\n    }\n\n    .gcp-feature-grid {\n      display: grid;\n      grid-template-columns: repeat(4, minmax(0, 1fr));\n      gap: 18px;\n    }\n\n    .gcp-feature-card,\n    .gcp-step-card,\n    .gcp-note-card,\n    .gcp-copy-card,\n    .gcp-rates-card,\n    .gcp-calc-card {\n      background: rgba(255, 255, 255, 0.88);\n      border: 1px solid var(--gcp-border);\n      box-shadow: var(--gcp-shadow-soft);\n      backdrop-filter: blur(8px);\n      border-radius: 24px;\n      padding: 24px;\n    }\n\n    .gcp-feature-card__icon,\n    .gcp-step-num {\n      width: 46px;\n      height: 46px;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      border-radius: 999px;\n      margin-bottom: 18px;\n      background: linear-gradient(180deg, #eef6ff 0%, #e4f0ff 100%);\n      color: var(--gcp-accent-2);\n      font-size: 16px;\n      font-weight: 800;\n      box-shadow: inset 0 0 0 1px #d7e8fb;\n    }\n\n    .gcp-feature-card h3,\n    .gcp-step-card h3,\n    .gcp-copy-card h3,\n    .gcp-rates-card h3,\n    .gcp-calc-card h3 {\n      margin: 0 0 12px;\n      font-size: 22px;\n      line-height: 1.18;\n      color: var(--gcp-text);\n      letter-spacing: -0.02em;\n    }\n\n    .gcp-steps-grid,\n    .gcp-copy-grid {\n      display: grid;\n      gap: 18px;\n    }\n\n    .gcp-steps-grid {\n      grid-template-columns: repeat(3, minmax(0, 1fr));\n    }\n\n    .gcp-copy-grid {\n      grid-template-columns: 1fr 1fr;\n    }\n\n    .gcp-calc-rates-grid {\n      display: grid;\n      grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);\n      gap: 18px;\n    }\n\n    .gcp-widget-topbar {\n      display: flex;\n      align-items: center;\n      justify-content: space-between;\n      gap: 12px;\n      margin-bottom: 12px;\n    }\n\n    .gcp-widget-eyebrow {\n      font-size: 12px;\n      line-height: 1.4;\n      color: var(--gcp-text-muted);\n      margin: 0;\n      font-weight: 800;\n      text-transform: uppercase;\n      letter-spacing: 0.05em;\n    }\n\n    .gcp-hint {\n      position: relative;\n      flex: 0 0 auto;\n    }\n\n    .gcp-hint-btn {\n      width: 26px;\n      height: 26px;\n      border: 1px solid #d9e7f6;\n      border-radius: 999px;\n      background: #f8fbff;\n      color: var(--gcp-accent);\n      font-family: inherit;\n      font-size: 14px;\n      font-weight: 800;\n      line-height: 1;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      padding: 0;\n    }\n\n    .gcp-hint-popover {\n      position: absolute;\n      top: calc(100% + 10px);\n      right: 0;\n      width: 260px;\n      padding: 12px 14px;\n      border: 1px solid #dde8f5;\n      border-radius: 14px;\n      background: #ffffff;\n      box-shadow: 0 18px 38px rgba(16, 24, 40, 0.09);\n      color: var(--gcp-text-soft);\n      font-size: 13px;\n      line-height: 1.45;\n      z-index: 30;\n      opacity: 0;\n      visibility: hidden;\n      transform: translateY(4px);\n      transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;\n    }\n\n    .gcp-hint.is-open .gcp-hint-popover {\n      opacity: 1;\n      visibility: visible;\n      transform: translateY(0);\n    }\n\n    .gcp-fields {\n      display: flex;\n      flex-direction: column;\n      gap: 12px;\n    }\n\n    .gcp-field {\n      display: grid;\n      grid-template-columns: 1fr 156px;\n      min-height: 74px;\n      border: 1px solid #dfe8f4;\n      border-radius: 22px;\n      background: #fff;\n      position: relative;\n      overflow: visible;\n      box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);\n    }\n\n    .gcp-field-input {\n      width: 100%;\n      border: 0;\n      outline: none;\n      background: transparent;\n      padding: 0 20px;\n      font-family: inherit;\n      font-size: 28px;\n      font-weight: 600;\n      color: var(--gcp-text);\n      border-radius: 22px 0 0 22px;\n    }\n\n    .gcp-field-side {\n      border-left: 1px solid #dfe8f4;\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      background: #fcfdff;\n      font-size: 20px;\n      font-weight: 700;\n      color: var(--gcp-text);\n      padding: 0 14px;\n      border-radius: 0 22px 22px 0;\n      position: relative;\n      z-index: 2;\n    }\n\n    .gcp-asset-side {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      gap: 10px;\n      width: 100%;\n      min-width: 0;\n    }\n\n    .gcp-asset-logo {\n      width: 24px;\n      height: 24px;\n      border-radius: 999px;\n      object-fit: cover;\n      flex: 0 0 24px;\n      background: #eef4fb;\n      border: 1px solid #e1ebf7;\n      display: none;\n    }\n\n    .gcp-asset-logo.is-visible {\n      display: block;\n    }\n\n    .gcp-asset-logo-placeholder {\n      width: 24px;\n      height: 24px;\n      border-radius: 999px;\n      flex: 0 0 24px;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      background: #eef6ff;\n      border: 1px solid #dbeafe;\n      color: var(--gcp-accent);\n      font-size: 11px;\n      font-weight: 800;\n      letter-spacing: -0.02em;\n    }\n\n    .gcp-dropdown {\n      position: relative;\n      width: 100%;\n      height: 100%;\n    }\n\n    .gcp-dropdown-trigger {\n      width: 100%;\n      height: 100%;\n      border: 0;\n      background: transparent;\n      padding: 0;\n      display: grid;\n      grid-template-columns: 1fr 44px;\n      align-items: stretch;\n      cursor: pointer;\n      font-family: inherit;\n    }\n\n    .gcp-dropdown-main {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n      padding: 0 14px 0 16px;\n      font-size: 19px;\n      font-weight: 700;\n      color: var(--gcp-text);\n      text-align: center;\n      min-width: 0;\n      overflow: hidden;\n      white-space: nowrap;\n      text-overflow: ellipsis;\n    }\n\n    .gcp-dropdown-arrow-wrap {\n      display: flex;\n      align-items: center;\n      justify-content: center;\n    }\n\n    .gcp-dropdown-arrow {\n      width: 11px;\n      height: 11px;\n      border-right: 2px solid var(--gcp-accent);\n      border-bottom: 2px solid var(--gcp-accent);\n      transform: rotate(45deg);\n      margin-top: -3px;\n      transition: transform 0.2s ease;\n    }\n\n    .gcp-dropdown-trigger.is-open .gcp-dropdown-arrow {\n      transform: rotate(225deg);\n      margin-top: 3px;\n    }\n\n    .gcp-dropdown-menu {\n      position: absolute;\n      top: calc(100% + 8px);\n      left: 0;\n      right: 0;\n      background: #ffffff;\n      border: 1px solid #dde8f5;\n      border-radius: 18px;\n      box-shadow: 0 18px 38px rgba(16, 24, 40, 0.09);\n      padding: 8px;\n      max-height: 280px;\n      overflow-y: auto;\n      z-index: 40;\n      display: none;\n    }\n\n    .gcp-dropdown-menu.is-open {\n      display: block;\n    }\n\n    .gcp-dropdown-option {\n      width: 100%;\n      border: 0;\n      background: transparent;\n      text-align: center;\n      border-radius: 14px;\n      padding: 11px 13px;\n      cursor: pointer;\n      font-family: inherit;\n      transition: background 0.18s ease;\n      display: flex;\n      flex-direction: column;\n      gap: 2px;\n      align-items: center;\n    }\n\n    .gcp-dropdown-option:hover {\n      background: #f5faff;\n    }\n\n    .gcp-dropdown-option.is-selected {\n      background: #edf6ff;\n    }\n\n    .gcp-dropdown-option-code {\n      font-size: 15px;\n      font-weight: 700;\n      color: var(--gcp-text);\n    }\n\n    .gcp-dropdown-option-name {\n      font-size: 13px;\n      color: var(--gcp-text-soft);\n      font-weight: 500;\n    }\n\n    .gcp-switch-wrap {\n      display: flex;\n      justify-content: center;\n      margin: -2px 0 0;\n    }\n\n    .gcp-switch-btn {\n      width: 44px;\n      height: 44px;\n      border: 1px solid #dfe8f4;\n      border-radius: 999px;\n      background: #ffffff;\n      cursor: pointer;\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      box-shadow: 0 10px 22px rgba(16, 24, 40, 0.06);\n    }\n\n    .gcp-switch-icon {\n      position: relative;\n      width: 18px;\n      height: 18px;\n    }\n\n    .gcp-switch-icon::before,\n    .gcp-switch-icon::after {\n      content: \"\";\n      position: absolute;\n      width: 8px;\n      height: 8px;\n      border-right: 2px solid var(--gcp-accent);\n      border-bottom: 2px solid var(--gcp-accent);\n      left: 50%;\n      transform-origin: center;\n      margin-left: -4px;\n    }\n\n    .gcp-switch-icon::before {\n      top: 1px;\n      transform: rotate(-135deg);\n    }\n\n    .gcp-switch-icon::after {\n      bottom: 1px;\n      transform: rotate(45deg);\n    }\n\n    .gcp-error {\n      border-radius: 16px;\n      padding: 12px 14px;\n      background: #fff4f2;\n      color: #b42318;\n      font-size: 14px;\n      margin-top: 12px;\n    }\n\n    .gcp-rates-tabs {\n      display: inline-flex;\n      gap: 8px;\n      padding: 6px;\n      border: 1px solid #e4edf8;\n      border-radius: 18px;\n      background: #f8fbff;\n      margin-bottom: 20px;\n    }\n\n    .gcp-rates-tab {\n      border: 0;\n      background: transparent;\n      color: var(--gcp-text-soft);\n      font-family: inherit;\n      font-size: 15px;\n      font-weight: 700;\n      padding: 11px 16px;\n      border-radius: 12px;\n      cursor: pointer;\n    }\n\n    .gcp-rates-tab.is-active {\n      background: #ffffff;\n      color: var(--gcp-text);\n      box-shadow: 0 4px 14px rgba(16, 24, 40, 0.06);\n    }\n\n    .gcp-rates-table-wrap {\n      border: 1px solid #e5edf8;\n      border-radius: 22px;\n      overflow: hidden;\n      background: #ffffff;\n    }\n\n    .gcp-rates-table {\n      width: 100%;\n      border-collapse: collapse;\n    }\n\n    .gcp-rates-table thead th {\n      text-align: left;\n      font-size: 13px;\n      font-weight: 800;\n      letter-spacing: 0.02em;\n      color: var(--gcp-text-muted);\n      background: #f8fbff;\n      padding: 16px 18px;\n      border-bottom: 1px solid #e5edf8;\n      text-transform: uppercase;\n    }\n\n    .gcp-rates-table thead th:last-child,\n    .gcp-rates-table tbody td:last-child {\n      text-align: right;\n    }\n\n    .gcp-rates-table tbody td {\n      padding: 18px;\n      border-bottom: 1px solid #eef3f9;\n      vertical-align: middle;\n    }\n\n    .gcp-rates-table tbody tr:last-child td {\n      border-bottom: 0;\n    }\n\n    .gcp-rates-table tbody tr:hover {\n      background: #fbfdff;\n    }\n\n    .gcp-currency-code {\n      font-size: 18px;\n      font-weight: 800;\n      color: var(--gcp-text);\n      line-height: 1.1;\n    }\n\n    .gcp-currency-name {\n      font-size: 14px;\n      color: var(--gcp-text-soft);\n      line-height: 1.35;\n      margin-top: 2px;\n    }\n\n    .gcp-rate-main {\n      font-size: 18px;\n      font-weight: 800;\n      color: var(--gcp-text);\n      line-height: 1.2;\n    }\n\n    .gcp-toc-desktop {\n      position: fixed;\n      top: 88px;\n      right: 16px;\n      width: 220px;\n      z-index: 30;\n      display: block;\n      opacity: 0;\n      visibility: hidden;\n      pointer-events: none;\n      --gcp-toc-shift-x: 0px;\n      --gcp-toc-shift-y: 8px;\n      transform: translate3d(var(--gcp-toc-shift-x), var(--gcp-toc-shift-y), 0);\n      transition: opacity 0.2s ease, transform 0.25s ease, visibility 0.2s ease;\n      overflow: visible;\n    }\n\n    .gcp-toc-desktop.is-visible {\n      opacity: 1;\n      visibility: visible;\n      pointer-events: auto;\n      --gcp-toc-shift-y: 0px;\n    }\n\n    .gcp-toc-desktop.is-collapsed {\n      --gcp-toc-shift-x: calc(100% - 28px);\n    }\n\n    .gcp-toc-desktop-toggle {\n      position: absolute;\n      top: 16px;\n      left: -18px;\n      width: 36px;\n      height: 36px;\n      border: 1px solid var(--gcp-border);\n      border-radius: 999px;\n      background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);\n      color: var(--gcp-accent-2);\n      box-shadow: 0 10px 24px rgba(16, 24, 40, 0.08);\n      display: inline-flex;\n      align-items: center;\n      justify-content: center;\n      cursor: pointer;\n      padding: 0;\n      z-index: 2;\n      font-size: 18px;\n      font-weight: 700;\n      line-height: 1;\n    }\n\n    .gcp-toc-desktop-toggle:hover {\n      background: #eef6ff;\n    }\n\n    .gcp-toc-card {\n      background: rgba(255, 255, 255, 0.9);\n      border: 1px solid var(--gcp-border);\n      box-shadow: var(--gcp-shadow-soft);\n      border-radius: 20px;\n      padding: 14px;\n      backdrop-filter: blur(10px);\n      max-height: calc(100vh - 160px);\n      overflow-y: auto;\n    }\n\n    .gcp-toc-title {\n      margin: 0 0 10px;\n      font-size: 12px;\n      line-height: 1.2;\n      letter-spacing: 0.05em;\n      text-transform: uppercase;\n      font-weight: 800;\n      color: var(--gcp-accent-2);\n    }\n\n    .gcp-toc-list {\n      display: grid;\n      gap: 8px;\n    }\n\n    .gcp-toc-link {\n      display: block;\n      text-decoration: none;\n      padding: 10px 12px;\n      border-radius: 12px;\n      color: var(--gcp-text-soft) !important;\n      font-size: 14px;\n      font-weight: 700;\n      line-height: 1.35;\n      transition: background 0.2s ease, color 0.2s ease;\n    }\n\n    .gcp-toc-link:hover {\n      background: #f4f9ff;\n      color: var(--gcp-text) !important;\n    }\n\n    .gcp-toc-link.is-active {\n      background: #eef6ff;\n      color: var(--gcp-accent-2) !important;\n    }\n\n    .gcp-toc-mobile-toggle {\n      position: fixed;\n      right: 16px;\n      bottom: 16px;\n      z-index: 40;\n      width: 56px;\n      height: 56px;\n      border: 0;\n      border-radius: 999px;\n      background: linear-gradient(180deg, #7bbcf8 0%, #5ba7f2 100%);\n      color: #ffffff;\n      box-shadow: 0 16px 34px rgba(91, 167, 242, 0.34);\n      display: none;\n      cursor: pointer;\n      padding: 0;\n    }\n\n    .gcp-toc-mobile-toggle svg {\n      width: 22px;\n      height: 22px;\n      display: block;\n    }\n\n    .gcp-toc-mobile-panel {\n      position: fixed;\n      right: 16px;\n      bottom: 84px;\n      width: min(280px, calc(100vw - 32px));\n      z-index: 40;\n      background: rgba(255, 255, 255, 0.96);\n      border: 1px solid var(--gcp-border);\n      border-radius: 20px;\n      box-shadow: var(--gcp-shadow);\n      backdrop-filter: blur(12px);\n      padding: 14px;\n      display: none;\n      max-height: min(70vh, 520px);\n      overflow-y: auto;\n    }\n\n    .gcp-toc-mobile-panel.is-open {\n      display: block;\n    }\n\n    .gcp-empty {\n      padding: 26px 20px;\n      text-align: center;\n      color: var(--gcp-text-soft);\n      font-size: 15px;\n    }\n\n    .merged-faq-card {\n      background: #fff;\n      border-radius: 30px;\n      padding: 34px;\n      box-shadow: 0 10px 40px rgba(27, 33, 37, 0.05);\n      border: 1px solid #eef6ff;\n      margin-top: 24px;\n    }\n\n    .merged-faq-card h2 {\n      margin: 0 0 10px;\n      font-size: 32px;\n      line-height: 1.1;\n      letter-spacing: -0.03em;\n      color: var(--brand-dark);\n    }\n\n    .merged-faq-card > p {\n      margin: 0 0 20px;\n      font-family: 'Roboto', sans-serif;\n      font-size: 18px;\n      line-height: 1.8;\n      color: #4e5f79;\n    }\n\n    .gcp-faq-list {\n      display: grid;\n      gap: 14px;\n    }\n\n    .gcp-faq-item {\n      background: rgba(255, 255, 255, 0.88);\n      border: 1px solid var(--gcp-border);\n      box-shadow: var(--gcp-shadow-soft);\n      border-radius: 20px;\n      padding: 0 22px;\n      overflow: hidden;\n    }\n\n    .gcp-faq-item summary {\n      list-style: none;\n      cursor: pointer;\n      padding: 22px 0;\n      font-size: 18px;\n      line-height: 1.45;\n      font-weight: 700;\n      color: var(--gcp-text);\n      position: relative;\n      padding-right: 28px;\n    }\n\n    .gcp-faq-item summary::-webkit-details-marker {\n      display: none;\n    }\n\n    .gcp-faq-item summary::after {\n      content: \"+\";\n      position: absolute;\n      top: 50%;\n      right: 0;\n      transform: translateY(-50%);\n      color: var(--gcp-accent-2);\n      font-size: 22px;\n      font-weight: 700;\n    }\n\n    .gcp-faq-item[open] summary::after {\n      content: \"\u2013\";\n    }\n\n    .gcp-faq-item p {\n      margin: 0 0 22px;\n      color: var(--gcp-text-soft);\n      line-height: 1.75;\n      font-size: 15px;\n      font-family: 'Roboto', sans-serif;\n    }\n\n    @media (max-width: 1100px) {\n      .price-content-grid,\n      .gcp-grid-hero,\n      .gcp-feature-grid,\n      .gcp-copy-grid,\n      .gcp-steps-grid,\n      .gcp-calc-rates-grid {\n        grid-template-columns: 1fr;\n      }\n\n      .sidebar-column {\n        position: static;\n      }\n    }\n\n    @media (max-width: 1400px) {\n      .gcp-toc-desktop {\n        right: 8px;\n        width: 200px;\n      }\n    }\n\n    @media (max-width: 1280px) {\n      .gcp-toc-desktop {\n        display: none;\n      }\n\n      .gcp-toc-mobile-toggle {\n        display: inline-flex;\n        align-items: center;\n        justify-content: center;\n      }\n    }\n\n    @media (max-width: 767px) {\n      .btc-page-shell {\n        width: calc(100% - 16px);\n      }\n\n      .crypto-ultimate-chart-card,\n      .price-card,\n      .widget-card,\n      .merged-faq-card {\n        padding: 20px;\n        border-radius: 24px;\n      }\n\n      .chart-header-main,\n      .gcp-hero-heading {\n        flex-direction: column;\n        align-items: flex-start;\n      }\n\n      .timeframe-selector {\n        justify-content: flex-start;\n      }\n\n      .buy-crypto-btn {\n        width: 100%;\n        justify-content: center;\n        margin-left: 0;\n        margin-top: 6px;\n      }\n\n      .chart-canvas-container {\n        height: 300px;\n      }\n\n      .stats-grid-custom {\n        grid-template-columns: 1fr;\n      }\n\n      .span-2 {\n        grid-column: span 1;\n      }\n\n      .price-card h2,\n      .merged-faq-card h2 {\n        font-size: 28px;\n      }\n\n      .price-card p,\n      .price-card li,\n      .merged-faq-card > p {\n        font-size: 17px;\n      }\n\n      .gcp-hero-logo-box {\n        width: 96px;\n        height: 96px;\n        flex-basis: 96px;\n      }\n\n      .gcp-hero-logo-box img,\n      .gcp-hero-logo-fallback {\n        width: 62px;\n        height: 62px;\n      }\n\n      .gcp-hero-logo-fallback {\n        font-size: 22px;\n      }\n\n      .gcp-title {\n        font-size: 40px;\n      }\n\n      .gcp-subtitle,\n      .gcp-section-head p {\n        font-size: 16px;\n      }\n\n      .gcp-feature-card,\n      .gcp-step-card,\n      .gcp-copy-card,\n      .gcp-note-card,\n      .gcp-rates-card,\n      .gcp-calc-card {\n        padding: 20px;\n      }\n\n      .gcp-field {\n        min-height: 64px;\n        border-radius: 16px;\n        grid-template-columns: 1fr 118px;\n      }\n\n      .guardarian-buy-widget-card {\n        display: none;\n      }\n\n      .gcp-field-input {\n        padding: 0 16px;\n        font-size: 22px;\n        border-radius: 16px 0 0 16px;\n      }\n\n      .gcp-field-side {\n        padding: 0 10px;\n        font-size: 17px;\n        gap: 8px;\n        border-radius: 0 16px 16px 0;\n      }\n\n      .gcp-rates-tabs {\n        width: 100%;\n        display: grid;\n        grid-template-columns: 1fr 1fr;\n      }\n    }\n  <\/style>\n\n  <div class=\"btc-page-shell\">\n    <div class=\"price-chart-root\" data-chart-root>\n      <div class=\"crypto-ultimate-chart-card\">\n        <div class=\"chart-header-main\">\n          <div class=\"coin-meta\">\n            <img decoding=\"async\" src=\"\" alt=\"Logo\" class=\"coin-logo\" data-chart-logo>\n            <span class=\"coin-logo-fallback\" data-chart-logo-fallback>BT<\/span>\n\n            <div class=\"coin-text-wrapper\">\n              <div class=\"top-meta-row\">\n                <span class=\"coin-pair\" data-chart-pair>BTC \/ USDT<\/span>\n                <div class=\"live-status-pill\">\n                  <span class=\"pulse-dot\"><\/span>\n                  <span class=\"live-text\">Live<\/span>\n                <\/div>\n              <\/div>\n\n              <div class=\"price-row\">\n                <span class=\"coin-value\" data-chart-price>$0.00<\/span>\n                <span class=\"price-change\" data-chart-change>0.00%<\/span>\n                <a href=\"https:\/\/guardarian.com\/calculator\/v1?partner_api_token=GRNCC&amp;full_page=true&amp;type=narrow&amp;theme=orange&amp;default_crypto_currency=BTC\" class=\"buy-crypto-btn\" data-chart-buy target=\"_blank\" rel=\"noreferrer noopener\">\n                  <span class=\"buy-crypto-btn__label\">Buy BTC<\/span>\n                  <span class=\"buy-crypto-btn__badge\">-7% off fees<\/span>\n                <\/a>\n              <\/div>\n            <\/div>\n          <\/div>\n\n          <div class=\"timeframe-selector\">\n            <button class=\"tf-btn\" data-range=\"1h\" type=\"button\">1H<\/button>\n            <button class=\"tf-btn\" data-range=\"4h\" type=\"button\">4H<\/button>\n            <button class=\"tf-btn active\" data-range=\"1d\" type=\"button\">1D<\/button>\n            <button class=\"tf-btn\" data-range=\"1w\" type=\"button\">1W<\/button>\n            <button class=\"tf-btn\" data-range=\"all\" type=\"button\">All<\/button>\n          <\/div>\n        <\/div>\n\n        <div class=\"chart-internal-frame\">\n          <div class=\"chart-canvas-container\" data-chart-canvas>\n            <div class=\"loader-style\" data-chart-loader>Syncing live BTC market feed&#8230;<\/div>\n          <\/div>\n          <div class=\"custom-tooltip-box\" data-chart-tooltip><\/div>\n        <\/div>\n\n        <div class=\"history-expander-zone\" data-chart-slider-wrap>\n          <input type=\"range\" class=\"history-slider\" data-chart-slider min=\"0\" max=\"100\" value=\"100\">\n          <div class=\"scroll-labels\">\n            <span>Full BTC history<\/span>\n            <span>Last Year<\/span>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"price-content-grid\">\n      <div class=\"content-column\">\n        <div class=\"price-card\" id=\"section-overview\" data-section-observe=\"\">\n          <a class=\"single-main-cta\" href=\"https:\/\/guardarian.com\/blog\/btc-price-prediction\" target=\"_blank\" rel=\"noreferrer noopener\">Read BTC price prediction<\/a>\n          <h2>Bitcoin price overview<\/h2>\n          <p>\n            The BTC price today gives you a quick read on where Bitcoin is trading right now. If you came here for Bitcoin price today, start with the live number above, then check the chart and market stats before acting on it. The feed pulls together spot demand, BTC\/USDT liquidity, BTC price USD routes, exchange depth, and the market&#8217;s appetite for risk. Use it as a first check before you size a purchase, run a conversion, or review a portfolio balance.\n          <\/p>\n          <p>\n            Read the Bitcoin price with the BTC price chart, market cap, 24-hour volume, circulating supply, day range, and ATH\/ATL fields. The price shows the latest market level. Volume hints at how active the move is. Bitcoin market cap gives scale, and the day range shows how far the current BTC price has travelled in the last 24 hours. For more context, see Guardarian\u2019s <a href=\"https:\/\/guardarian.com\/blog\/up-or-down-has-bitcoin-reached-its-bottom-is-it-time-to-buy\/\" target=\"_blank\" rel=\"noreferrer noopener\">guide to Bitcoin market cycles<\/a>.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-what-is-btc\" data-section-observe=\"\">\n          <h2>What Bitcoin is when you check the BTC price<\/h2>\n          <p>\n            <strong>Bitcoin (BTC)<\/strong> is the native coin of the Bitcoin network. It is not a company share, and it is not a token issued on another chain. That is worth spelling out, because searches like BTC stock price, BTC coin price, and Bitcoin value often mix different ideas. The market is pricing a decentralized settlement network with fixed issuance, not equity in a business.\n          <\/p>\n          <p>\n            BTC trades around the clock and is usually quoted through BTC\/USD, BTC\/USDT, and other major pairs. It is divisible into small units, so a Bitcoin calculator can work with 1 BTC, 0.01 BTC, or much smaller amounts. The 21 million coin limit is part of the supply story, but liquidity, custody, network fees, and volatility still matter. You can explore the technical origins of the project in our <a href=\"https:\/\/guardarian.com\/blog\/what-is-bitcoin\/\" target=\"_blank\" rel=\"noreferrer noopener\">guide to what Bitcoin is<\/a>.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-how-btc-works\" data-section-observe=\"\">\n          <h2>What sits behind the BTC live price<\/h2>\n          <p>\n            Every BTC transaction settles on a public blockchain secured by Proof of Work. Miners add blocks, nodes check the rules, and new coin issuance follows a programmed schedule. That network layer is separate from the BTC live price, but it is the reason the asset being priced exists in the first place.\n          <\/p>\n          <blockquote>\n            <ul>\n              <li><strong>Mining and settlement:<\/strong> Miners provide hash power, confirm transactions, and receive block rewards plus fees. Exchange prices move on demand and supply, but miners help keep the settlement layer running.<\/li>\n              <li><strong>Halvings and supply:<\/strong> Bitcoin issuance decreases on a programmed schedule. That alone does not set the BTC price, but it is one reason people watch supply so closely.<\/li>\n              <li><strong>Nodes and verification:<\/strong> Independent nodes enforce the rules, making BTC portable and verifiable across wallets, exchanges, and borders.<\/li>\n            <\/ul>\n          <\/blockquote>\n          <p>\n            For a price page, the takeaway is simple: BTC USD price is only the market layer. Under it sits a settlement network, a fixed-supply design, and global trading infrastructure that does not close on weekends.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-price-change\" data-section-observe=\"\">\n          <h2>Why the BTC price moves during the day<\/h2>\n          <p>\n            The BTC price now can move while you are still comparing amounts. Bitcoin trades 24\/7 across spot exchanges, derivatives venues, stablecoin pairs, and fiat gateways. A BTC to USD rate can sit a little apart from a BTC\/USDT quote because each pair has its own spread, liquidity, and order-book depth.\n          <\/p>\n          <ol>\n            <li><strong>Liquidity and spread:<\/strong> Tight BTC\/USD and BTC\/USDT books usually make estimates steadier. Thinner routes can widen the gap between an indicative rate and a checkout quote.<\/li>\n            <li><strong>Macro and risk appetite:<\/strong> Rates, inflation data, ETF flows, and broader market stress can change how quickly money moves into or out of Bitcoin.<\/li>\n            <li><strong>Exchange routing:<\/strong> A calculator may use a direct fiat pair or a route through USDT. That can create small differences between the displayed BTC price USD and the final conversion value.<\/li>\n            <li><strong>Supply behavior:<\/strong> Long-term holder movement, miner selling, and exchange balances can affect available supply, especially when volume is high.<\/li>\n          <\/ol>\n          <p>\n            That is why a Bitcoin chart works best with volume, market cap, and the 24-hour range beside it. The line alone does not tell the whole story.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-btc-use-cases\" data-section-observe=\"\">\n          <h2>Practical ways to use BTC price and conversion data<\/h2>\n          <p>\n            Most people are not checking the BTC price right now just out of curiosity. Usually there is a decision behind it: a purchase size, a transfer, a conversion, or a quick portfolio check.\n          <\/p>\n          <ul>\n            <li><strong>Budgeting a purchase:<\/strong> Use the BTC calculator to see roughly how much Bitcoin a \u20ac250, $500, or other fiat budget may represent before opening the buy flow.<\/li>\n            <li><strong>Checking holdings:<\/strong> Convert 0.01 BTC, 0.05 BTC, or any custom amount into USD, EUR, and other supported currencies.<\/li>\n            <li><strong>Comparing fiat routes:<\/strong> Review BTC to USD, BTC to EUR, and other supported pairs before choosing which currency to use.<\/li>\n            <li><strong>Planning a transfer or payment:<\/strong> Use the live BTC price and calculator estimate to check the fiat value, then factor in network fees, timing, and wallet security. You can <a href=\"https:\/\/guardarian.com\/buy-btc\" target=\"_blank\" rel=\"noreferrer noopener\">buy BTC here<\/a> or read Guardarian\u2019s <a href=\"https:\/\/guardarian.com\/blog\/creating-your-ideal-crypto-portfolio-a-beginners-guide\/\" target=\"_blank\" rel=\"noreferrer noopener\">crypto portfolio guide<\/a> for allocation context.<\/li>\n          <\/ul>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-market-dominance\" data-section-observe=\"\">\n          <h2>BTC market dominance: Bitcoin\u2019s share of crypto value<\/h2>\n          <p>\n            BTC market dominance shows how much of total cryptocurrency market cap belongs to Bitcoin. Put simply, it is Bitcoin\u2019s market share versus altcoins. People check BTC dominance, Bitcoin market dominance, and a BTC dominance chart when the BTC price alone does not show where capital is sitting.\n          <\/p>\n          <p>\n            Dominance helps separate a Bitcoin-led move from a broader crypto move. If the live price rises while dominance falls, altcoins may be rising faster. If BTC price and dominance rise together, capital may be concentrating in Bitcoin\u2019s deeper liquidity.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-dominance-calculation\" data-section-observe=\"\">\n          <h2>How BTC dominance is calculated<\/h2>\n          <p>\n            BTC dominance is calculated by dividing Bitcoin market cap by total crypto market cap, then multiplying by 100. Both numbers move, so dominance can change even when the BTC price looks fairly quiet.\n          <\/p>\n          <blockquote>\n            <ul>\n              <li><strong>Bitcoin market cap:<\/strong> live Bitcoin price multiplied by circulating BTC supply.<\/li>\n              <li><strong>Total crypto market cap:<\/strong> the combined market value of tracked crypto assets.<\/li>\n              <li><strong>Dominance percentage:<\/strong> Bitcoin\u2019s share of that combined value, shown as a percentage.<\/li>\n            <\/ul>\n          <\/blockquote>\n          <p>\n            Dominance is a relative market metric. It does not tell you whether to buy or sell. It shows how Bitcoin compares with the rest of the market at that moment.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-dominance-change\" data-section-observe=\"\">\n          <h2>Why BTC market dominance moves<\/h2>\n          <p>\n            BTC market dominance changes when money rotates between Bitcoin and altcoins. It can rise when traders prefer Bitcoin\u2019s depth and liquidity. It can fall when risk appetite spreads into smaller assets.\n          <\/p>\n          <ol>\n            <li><strong>Flight to liquidity:<\/strong> traders may concentrate in BTC when market conditions become uncertain.<\/li>\n            <li><strong>Altcoin rotation:<\/strong> dominance can decline when smaller assets outperform Bitcoin in percentage terms.<\/li>\n            <li><strong>Relative moves:<\/strong> BTC can increase in USD terms and still lose dominance if the rest of the market grows faster.<\/li>\n            <li><strong>Stablecoin and fiat flows:<\/strong> new inflows may enter through BTC first or bypass it depending on exchange routes and market sentiment.<\/li>\n          <\/ol>\n          <p>\n            Use the BTC dominance chart with BTC price, market cap, and trading volume. A single dominance reading, without price context, can be easy to misread.\n          <\/p>\n        <\/div>\n\n        <div class=\"price-card\" id=\"section-dominance-analysis\" data-section-observe=\"\">\n          <h2>How to use BTC dominance with price analysis<\/h2>\n          <p>\n            BTC dominance adds context to the live Bitcoin price. It shows whether Bitcoin is gaining share against the rest of crypto or simply moving with it. This is useful when BTC\/USD is moving but altcoin performance is uneven.\n          <\/p>\n          <p>\n            A rising BTC price with rising dominance can point to capital concentrating in Bitcoin. A rising BTC price with falling dominance can suggest broader risk-taking across crypto. Check 24-hour volume, the day range, and the BTC chart before reading too much into one metric.\n          <\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"sidebar-column\">\n        <div class=\"stats-card-3d-custom\" data-stats-root>\n          <div class=\"stats-internal-frame-custom\">\n            <div class=\"stats-grid-custom\">\n              <div class=\"stat-item span-2\">\n                <div class=\"stat-label-row\">\n                  <span class=\"stat-label\"><span data-bind-inline=\"coin\">BTC<\/span> Market cap<\/span>\n                  <div class=\"info-trigger\">\n                    <span class=\"info-icon\">?<\/span>\n                    <div class=\"tooltip\">Bitcoin market cap equals the live BTC price multiplied by circulating supply. Use it to compare Bitcoin\u2019s scale with other crypto assets, not as a buy signal.<\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"mcap\"><\/div>\n              <\/div>\n\n              <div class=\"stat-item\">\n                <div class=\"stat-label-row\">\n                  <span class=\"stat-label\">Total volume<\/span>\n                  <div class=\"info-trigger\">\n                    <span class=\"info-icon\">?<\/span>\n                    <div class=\"tooltip\">Estimated 24-hour BTC trading value across tracked markets. Higher volume can make the live price more reliable, but it can also appear during volatile moves.<\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"volume\"><\/div>\n              <\/div>\n\n              <div class=\"stat-item\">\n                <div class=\"stat-label-row\">\n                  <span class=\"stat-label\">Vol \/ Market cap<\/span>\n                  <div class=\"info-trigger\">\n                    <span class=\"info-icon\">?<\/span>\n                    <div class=\"tooltip\">A quick liquidity context metric: 24-hour volume divided by market cap. Use it to judge how active BTC trading is relative to Bitcoin\u2019s size.<\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"ratio\"><\/div>\n              <\/div>\n\n              <div class=\"stat-item span-2\">\n                <div class=\"stat-label-row\">\n                  <span class=\"stat-label\">Circulating supply<\/span>\n                  <div class=\"info-trigger\">\n                    <span class=\"info-icon\">?<\/span>\n                    <div class=\"tooltip\">The BTC supply currently counted as circulating. Read it with market cap and Bitcoin\u2019s fixed issuance design.<\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"supply\"><\/div>\n              <\/div>\n\n              <div class=\"stat-item span-2\">\n                <div class=\"stat-label-row\">\n                  <span class=\"stat-label\">Day range (24h)<\/span>\n                  <div class=\"info-trigger\">\n                    <span class=\"info-icon\">?<\/span>\n                    <div class=\"tooltip\">The 24-hour BTC low and high. This shows intraday movement and helps explain why calculator estimates can change quickly.<\/div>\n                  <\/div>\n                <\/div>\n                <div class=\"range-bar-container\">\n                  <div class=\"range-track is-skeleton\" data-stat=\"range-track\">\n                    <div class=\"range-fill\" data-stat=\"range-fill\"><\/div>\n                  <\/div>\n                  <div class=\"range-labels\">\n                    <span class=\"is-skeleton\" data-stat=\"day-low\"><\/span>\n                    <span class=\"is-skeleton\" data-stat=\"day-high\"><\/span>\n                  <\/div>\n                <\/div>\n              <\/div>\n\n              <div class=\"stat-item align-bottom\">\n                <div class=\"stat-label-row min-h-label\">\n                  <span class=\"stat-label\">All-time low<\/span>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"atl\"><\/div>\n              <\/div>\n\n              <div class=\"stat-item align-bottom\">\n                <div class=\"stat-label-row min-h-label\">\n                  <span class=\"stat-label\">All-time high<\/span>\n                <\/div>\n                <div class=\"stat-value is-skeleton\" data-stat=\"ath\"><\/div>\n              <\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"widget-card dominance-widget-card\" data-dominance-root>\n          <h3>BTC dominance: live market share<\/h3>\n          <p class=\"dominance-widget-copy\">Bitcoin\u2019s current share of total crypto market cap. Use it to compare BTC strength with altcoins.<\/p>\n          <div class=\"dominance-hero\">\n            <div class=\"dominance-value is-skeleton\" data-dominance=\"btc\"><\/div>\n            <div class=\"dominance-live-badge\">Live<\/div>\n          <\/div>\n          <div class=\"dominance-track is-skeleton\" data-dominance=\"track\">\n            <div class=\"dominance-fill\" data-dominance=\"fill\"><\/div>\n          <\/div>\n          <div class=\"dominance-legend\">\n            <span>BTC<\/span>\n            <span>Altcoins<\/span>\n          <\/div>\n          <div class=\"dominance-grid\">\n            <div class=\"dominance-item\">\n              <span class=\"dominance-item-label\">Bitcoin<\/span>\n              <span class=\"dominance-item-value is-skeleton\" data-dominance=\"btc-share\"><\/span>\n            <\/div>\n            <div class=\"dominance-item\">\n              <span class=\"dominance-item-label\">Altcoins<\/span>\n              <span class=\"dominance-item-value is-skeleton\" data-dominance=\"alt-share\"><\/span>\n            <\/div>\n            <div class=\"dominance-item wide\">\n              <span class=\"dominance-item-label\">Total Crypto Market Cap<\/span>\n              <span class=\"dominance-item-value is-skeleton\" data-dominance=\"total-market-cap\"><\/span>\n            <\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"widget-card guardarian-buy-widget-card\">\n          <h3>Buy BTC with Guardarian<\/h3>\n          <iframe\n            src=\"https:\/\/guardarian.com\/calculator\/v1?partner_api_token=5d39f458-3cde-4891-b0b0-267d00f88da8&#038;theme=blue&#038;type=narrow&#038;swap_enabled=true&#038;body_background=transparent&#038;default_fiat_currency=EUR&#038;default_crypto_currency=BTC&#038;default_crypto_network=BTC\"\n            width=\"300\"\n            height=\"570\"\n            title=\"Guardarian BTC Calculator\"\n            loading=\"lazy\"\n          ><\/iframe>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <div class=\"guardarian-coin-page\" id=\"guardarian-coin-page\" data-show-hub=\"false\">\n    <div class=\"gcp-top-actions\"><\/div>\n\n    <nav class=\"gcp-toc-desktop\" id=\"gcp-toc-desktop\" aria-label=\"Table of contents\">\n      <button class=\"gcp-toc-desktop-toggle\" id=\"gcp-toc-desktop-toggle\" type=\"button\" aria-expanded=\"true\" aria-label=\"Collapse table of contents\">\n        <span aria-hidden=\"true\">\u203a<\/span>\n      <\/button>\n      <div class=\"gcp-toc-card\">\n        <div class=\"gcp-toc-title\">Table of contents<\/div>\n        <div class=\"gcp-toc-list\">\n          <a class=\"gcp-toc-link\" href=\"#section-overview\" data-toc-link=\"section-overview\">Bitcoin price overview<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-what-is-btc\" data-toc-link=\"section-what-is-btc\">What BTC represents<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-how-btc-works\" data-toc-link=\"section-how-btc-works\">Network context<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-price-change\" data-toc-link=\"section-price-change\">Why price moves<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-btc-use-cases\" data-toc-link=\"section-btc-use-cases\">Practical use cases<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-market-dominance\" data-toc-link=\"section-market-dominance\">BTC dominance<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-dominance-calculation\" data-toc-link=\"section-dominance-calculation\">Dominance formula<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-dominance-change\" data-toc-link=\"section-dominance-change\">Dominance drivers<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-dominance-analysis\" data-toc-link=\"section-dominance-analysis\">Dominance analysis<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-calculator\" data-toc-link=\"section-calculator\"><span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-why-use-it\" data-toc-link=\"section-why-use-it\">Calculator use cases<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-exchange-rates\" data-toc-link=\"section-exchange-rates\">BTC exchange rates<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-how-to-use\" data-toc-link=\"section-how-to-use\">How to calculate<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-helpful-information\" data-toc-link=\"section-helpful-information\">Estimate vs quote<\/a>\n          <a class=\"gcp-toc-link\" href=\"#section-faq\" data-toc-link=\"section-faq\">FAQ<\/a>\n        <\/div>\n      <\/div>\n    <\/nav>\n\n    <button class=\"gcp-toc-mobile-toggle\" id=\"gcp-toc-mobile-toggle\" type=\"button\" aria-expanded=\"false\" aria-controls=\"gcp-toc-mobile-panel\">\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" aria-hidden=\"true\">\n        <path d=\"M4 7H20\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\"><\/path>\n        <path d=\"M4 12H20\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\"><\/path>\n        <path d=\"M4 17H20\" stroke=\"currentColor\" stroke-width=\"2.2\" stroke-linecap=\"round\"><\/path>\n      <\/svg>\n    <\/button>\n\n    <div class=\"gcp-toc-mobile-panel\" id=\"gcp-toc-mobile-panel\" aria-label=\"Table of contents\">\n      <div class=\"gcp-toc-title\">Table of contents<\/div>\n      <div class=\"gcp-toc-list\">\n        <a class=\"gcp-toc-link\" href=\"#section-overview\" data-toc-link=\"section-overview\">Bitcoin price overview<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-what-is-btc\" data-toc-link=\"section-what-is-btc\">What BTC represents<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-how-btc-works\" data-toc-link=\"section-how-btc-works\">Network context<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-price-change\" data-toc-link=\"section-price-change\">Why price moves<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-btc-use-cases\" data-toc-link=\"section-btc-use-cases\">Practical use cases<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-market-dominance\" data-toc-link=\"section-market-dominance\">BTC dominance<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-dominance-calculation\" data-toc-link=\"section-dominance-calculation\">Dominance formula<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-dominance-change\" data-toc-link=\"section-dominance-change\">Dominance drivers<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-dominance-analysis\" data-toc-link=\"section-dominance-analysis\">Dominance analysis<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-calculator\" data-toc-link=\"section-calculator\"><span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-why-use-it\" data-toc-link=\"section-why-use-it\">Calculator use cases<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-exchange-rates\" data-toc-link=\"section-exchange-rates\">BTC exchange rates<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-how-to-use\" data-toc-link=\"section-how-to-use\">How to calculate<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-helpful-information\" data-toc-link=\"section-helpful-information\">Estimate vs quote<\/a>\n        <a class=\"gcp-toc-link\" href=\"#section-faq\" data-toc-link=\"section-faq\">FAQ<\/a>\n      <\/div>\n    <\/div>\n\n    <section class=\"gcp-section gcp-section--tight\" id=\"section-calculator\" data-section-observe=\"\">\n      <div class=\"gcp-container\">\n        <div class=\"gcp-grid-hero\">\n          <div class=\"gcp-hero-copy\">\n            <div class=\"gcp-eyebrow\"><span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator<\/div>\n\n            <div class=\"gcp-hero-heading\">\n              <div class=\"gcp-hero-logo-box\">\n                <span class=\"gcp-hero-logo-fallback\" data-gcp-logo-fallback>BT<\/span>\n                <img decoding=\"async\" src=\"\" alt=\"Bitcoin logo\" data-gcp-logo>\n              <\/div>\n\n              <div class=\"gcp-hero-title-wrap\">\n                <h2 class=\"gcp-title\">\n                  <span data-gcp-bind=\"coin-name\">Bitcoin<\/span>\n                  <span class=\"gcp-title__accent\">(<span data-gcp-bind=\"coin\">BTC<\/span>)<\/span>\n                  Calculator\n                <\/h2>\n              <\/div>\n            <\/div>\n\n            <p class=\"gcp-subtitle\">\n              Use this <span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator for real conversion checks: how much <span data-gcp-bind=\"coin\">BTC<\/span> a $500 budget may buy, what 0.01 BTC is worth in USD or EUR, or how the estimate changes when you switch fiat currencies. Treat the result as an estimate, not a locked checkout quote. Route, spread, liquidity, and 24\/7 market movement can still change the final amount.\n            <\/p>\n\n            <div class=\"gcp-meta-row\">\n              <div class=\"gcp-chip\"><span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;to USD, EUR, and fiat<\/div>\n              <div class=\"gcp-chip\">Fiat to&nbsp;<span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;budget checks<\/div>\n              <div class=\"gcp-chip\">Live estimate, not a final quote<\/div>\n            <\/div>\n\n            <div class=\"gcp-link-pills\">\n              <a class=\"gcp-link-pill\" href=\"https:\/\/guardarian.com\/blog\/btc-price-prediction\" target=\"_blank\" rel=\"noreferrer noopener\">Read&nbsp;<span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;price prediction<\/a>\n            <\/div>\n          <\/div>\n\n          <div class=\"gcp-widget-column\">\n            <div class=\"gcp-card-shell\" id=\"gcp-widget-shell\">\n              <div class=\"gcp-calc-card\">\n                <div class=\"gcp-widget-topbar\">\n                  <p class=\"gcp-widget-eyebrow\"><span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator<\/p>\n                  <div class=\"gcp-hint\" data-gcp-calc-hint>\n                    <button class=\"gcp-hint-btn\" type=\"button\" aria-label=\"Rate disclaimer\" aria-expanded=\"false\">?<\/button>\n                    <div class=\"gcp-hint-popover\">Calculator and rates table values are indicative. Final checkout quotes can change because BTC trades 24\/7 and routes, spreads, and liquidity update in real time.<\/div>\n                  <\/div>\n                <\/div>\n\n                <h3><span data-gcp-bind=\"coin\">BTC<\/span> to USD, EUR, and fiat conversion<\/h3>\n                <div class=\"gcp-fields\" data-gcp-calc-widget>\n                  <div class=\"gcp-field\">\n                    <input class=\"gcp-field-input\" data-gcp-top-input type=\"number\" min=\"0\" step=\"any\" value=\"1\">\n                    <div class=\"gcp-field-side\" data-gcp-top-side><\/div>\n                  <\/div>\n\n                  <div class=\"gcp-switch-wrap\">\n                    <button class=\"gcp-switch-btn\" data-gcp-switch-btn type=\"button\" aria-label=\"Switch conversion direction\">\n                      <span class=\"gcp-switch-icon\"><\/span>\n                    <\/button>\n                  <\/div>\n\n                  <div class=\"gcp-field\">\n                    <input class=\"gcp-field-input\" data-gcp-bottom-input type=\"text\" readonly value=\"\">\n                    <div class=\"gcp-field-side\" data-gcp-bottom-side><\/div>\n                  <\/div>\n                <\/div>\n\n                <div class=\"gcp-error\" data-gcp-calc-error hidden><\/div>\n              <\/div>\n            <\/div>\n\n            <div class=\"gcp-widget-cta-wrap\">\n              <a\n                class=\"gcp-widget-cta\"\n                href=\"https:\/\/guardarian.com\/calculator\/v1?partner_api_token=GRNCC&amp;full_page=true&amp;type=narrow&amp;theme=orange&amp;default_crypto_currency=BTC\"\n                target=\"_blank\"\n                rel=\"noopener noreferrer\"\n              >\n                Buy&nbsp;<span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;with 7% off fees\n              <\/a>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"gcp-section\" id=\"section-why-use-it\" data-section-observe=\"\">\n      <div class=\"gcp-container\">\n        <div class=\"gcp-section-head\">\n          <div class=\"gcp-eyebrow\">Calculator use cases<\/div>\n          <h2>Use the <span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator before you buy or convert<\/h2>\n          <p>\n            A practical <span data-gcp-bind=\"coin-name\">Bitcoin<\/span> calculator should save you a few steps. Test a purchase size, value existing holdings, compare USD and EUR routes, and keep in mind that the final BTC conversion may differ from the first estimate.\n          <\/p>\n        <\/div>\n\n        <div class=\"gcp-feature-grid\">\n          <div class=\"gcp-feature-card\">\n            <div class=\"gcp-feature-card__icon\">1<\/div>\n            <h3>Check the fiat value of your <span data-gcp-bind=\"coin\">BTC<\/span><\/h3>\n            <p>\n              Enter 1 BTC, 0.1 BTC, 0.01 BTC, or any custom fraction to estimate the value in USD, EUR, and other supported fiat currencies. Useful when you just need a quick holdings check.\n            <\/p>\n          <\/div>\n\n          <div class=\"gcp-feature-card\">\n            <div class=\"gcp-feature-card__icon\">2<\/div>\n            <h3>Plan from a fiat budget<\/h3>\n            <p>\n              Switch direction and start with your budget. Fiat to <span data-gcp-bind=\"coin\">BTC<\/span> mode estimates roughly how much Bitcoin a purchase amount may represent before checkout.\n            <\/p>\n          <\/div>\n\n          <div class=\"gcp-feature-card\">\n            <div class=\"gcp-feature-card__icon\">3<\/div>\n            <h3>Compare BTC exchange rates<\/h3>\n            <p>\n              Different fiat pairs can use different routes. Use the dropdown and BTC rates table to compare supported currencies without opening several converters.\n            <\/p>\n          <\/div>\n\n          <div class=\"gcp-feature-card\">\n            <div class=\"gcp-feature-card__icon\">4<\/div>\n            <h3>Understand why estimates move<\/h3>\n            <p>\n              The calculator updates from market data, but it is not a locked quote. Spread, liquidity, routing, and BTC price movement can shift the amount you see in the purchase flow.\n            <\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"gcp-section\" id=\"section-exchange-rates\" data-section-observe=\"\">\n      <div class=\"gcp-container\">\n        <div class=\"gcp-section-head\">\n          <div class=\"gcp-eyebrow\">Exchange rates<\/div>\n          <h2><span data-gcp-bind=\"coin\">BTC<\/span> exchange rates across supported fiat currencies<\/h2>\n          <p>\n            The rates table helps compare Bitcoin price USD, Bitcoin to EUR, and other supported fiat routes. The first tab shows what 1 <span data-gcp-bind=\"coin\">BTC<\/span> is worth in each currency. The second tab shows how much BTC one unit of fiat may represent.\n          <\/p>\n        <\/div>\n\n        <div class=\"gcp-rates-card\">\n          <div class=\"gcp-widget-topbar\">\n            <p class=\"gcp-widget-eyebrow\"><span data-gcp-bind=\"coin-name\">Bitcoin<\/span> rates table<\/p>\n            <div class=\"gcp-hint\" data-gcp-rates-hint>\n              <button class=\"gcp-hint-btn\" type=\"button\" aria-label=\"Rate disclaimer\" aria-expanded=\"false\">?<\/button>\n              <div class=\"gcp-hint-popover\">Calculator and rates table values are indicative. Final checkout quotes can change because BTC trades 24\/7 and routes, spreads, and liquidity update in real time.<\/div>\n            <\/div>\n          <\/div>\n\n          <h3><span data-gcp-bind=\"coin\">BTC<\/span> exchange rate table<\/h3>\n\n          <div class=\"gcp-rates-tabs\">\n            <button class=\"gcp-rates-tab is-active\" type=\"button\" data-gcp-rates-tab=\"coin-to-fiat\"><span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;in fiat<\/button>\n            <button class=\"gcp-rates-tab\" type=\"button\" data-gcp-rates-tab=\"fiat-to-coin\">Fiat in&nbsp;<span data-gcp-bind=\"coin\">BTC<\/span><\/button>\n          <\/div>\n\n          <div class=\"gcp-rates-table-wrap\">\n            <div class=\"gcp-empty\" data-gcp-rates-area>Loading BTC exchange rates&#8230;<\/div>\n          <\/div>\n\n          <div class=\"gcp-error\" data-gcp-rates-error hidden><\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"gcp-section\" id=\"section-how-to-use\" data-section-observe=\"\">\n      <div class=\"gcp-container\">\n        <div class=\"gcp-section-head\">\n          <div class=\"gcp-eyebrow\">How to use<\/div>\n          <h2>How to use the <span data-gcp-bind=\"coin-name\">Bitcoin<\/span> to USD calculator<\/h2>\n          <p>\n            Use it for quick planning, not as a final settlement quote. The same flow works for BTC to USD, BTC to EUR, and fiat to BTC conversion checks.\n          <\/p>\n        <\/div>\n\n        <div class=\"gcp-steps-grid\">\n          <div class=\"gcp-step-card\">\n            <div class=\"gcp-step-num\">1<\/div>\n            <h3>Enter a BTC amount or fiat budget<\/h3>\n            <p>\n              Start with the BTC amount you hold, such as 0.01 BTC, or switch direction and enter the fiat amount you plan to spend.\n            <\/p>\n          <\/div>\n\n          <div class=\"gcp-step-card\">\n            <div class=\"gcp-step-num\">2<\/div>\n            <h3>Select the fiat pair<\/h3>\n            <p>\n              Choose USD, EUR, GBP, or another supported currency from the dropdown. The selected currency changes the route used for the indicative conversion.\n            <\/p>\n          <\/div>\n\n          <div class=\"gcp-step-card\">\n            <div class=\"gcp-step-num\">3<\/div>\n            <h3>Use the estimate as a planning number<\/h3>\n            <p>\n              Compare the result with the live BTC chart and rates table. Before checkout, expect the final quote to reflect the current spread, liquidity, and market movement.\n            <\/p>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n\n    <section class=\"gcp-section\" id=\"section-helpful-information\" data-section-observe=\"\">\n      <div class=\"gcp-container\">\n        <div class=\"gcp-section-head\">\n          <div class=\"gcp-eyebrow\">Helpful information<\/div>\n          <h2>What to know before using a <span data-gcp-bind=\"coin\">BTC<\/span> calculator<\/h2>\n          <p>\n            The best use of a Bitcoin calculator is practical. Estimate what your BTC is worth now, plan a fiat-to-BTC purchase, compare exchange rates, and understand why the final quote may move after the first calculation.\n          <\/p>\n        <\/div>\n\n        <div class=\"gcp-copy-grid\">\n          <div class=\"gcp-copy-card\">\n            <h3>Real conversion checks<\/h3>\n            <p>\n              Use this tool when you need a fast answer: the USD value of a BTC balance, how much Bitcoin a EUR budget may buy, whether 0.01 BTC fits your target range, or how a BTC to USD estimate compares with BTC to EUR.\n            <\/p>\n            <ul>\n              <li>Convert <span data-gcp-bind=\"coin\">BTC<\/span> to fiat or fiat to <span data-gcp-bind=\"coin\">BTC<\/span><\/li>\n              <li>Compare BTC exchange rates side by side<\/li>\n              <li>Plan around small fractions as well as larger amounts<\/li>\n            <\/ul>\n          <\/div>\n\n          <div class=\"gcp-copy-card\">\n            <h3>Estimate, route, spread, and final quote<\/h3>\n            <p>\n              The calculator is an indicative conversion tool, not a BTC profit calculator and not a price prediction tool. A checkout quote may differ because the final route may involve USD, EUR, USDT, or another supported pair. Spread and liquidity can also change while BTC trades continuously.\n            <\/p>\n            <ul>\n              <li>Rates can change while you are comparing values<\/li>\n              <li>Different fiat pairs can use different market routes<\/li>\n              <li>The result is best used for planning and estimation<\/li>\n            <\/ul>\n          <\/div>\n        <\/div>\n\n        <div class=\"gcp-note-card\" style=\"margin-top:18px;\">\n          <p>\n            Use the live price, chart, rates table, and calculator together. Price shows the current market level, the chart shows recent movement, and the calculator turns that movement into a practical fiat or BTC amount.\n          <\/p>\n          <div class=\"gcp-seo-links\">\n            <a href=\"https:\/\/guardarian.com\/blog\/btc-price-prediction\" target=\"_blank\" rel=\"noreferrer noopener\">Read&nbsp;<span data-gcp-bind=\"coin\">BTC<\/span>&nbsp;price prediction<\/a>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/section>\n  <\/div>\n\n  <div class=\"btc-page-shell\">\n    <div class=\"merged-faq-card\" id=\"section-faq\" data-section-observe=\"\">\n      <h2>Bitcoin price and BTC calculator FAQ<\/h2>\n      <p>Straight answers about BTC price today, Bitcoin live price, BTC to USD conversion, exchange rates, market cap, dominance, and calculator estimates.<\/p>\n\n      <div class=\"gcp-faq-list\" id=\"merged-faq-list\">\n        <details class=\"gcp-faq-item\" open>\n          <summary>How is the BTC price today calculated on this page?<\/summary>\n          <p>The page combines live BTC\/USDT market data for the chart with reference market data for stats such as market cap, volume, supply, ATH, ATL, and day range. Use the live Bitcoin price as a market check, then confirm the final quote in the purchase widget before transacting.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Why can the Bitcoin price change after I first check it?<\/summary>\n          <p>Bitcoin trades 24\/7, so the BTC price can move while you compare amounts. Liquidity, spread, BTC\/USD and BTC\/USDT order books, macro news, and exchange routing can all affect the rate before checkout.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>What is the difference between BTC price USD and BTC USDT price?<\/summary>\n          <p>BTC\/USD is a fiat dollar pair, while BTC\/USDT uses the USDT stablecoin. The two usually stay close, but each pair has its own liquidity, spread, and order-book depth, so small differences can appear.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Can I use this page as a BTC to USD calculator?<\/summary>\n          <p>Yes. Select USD in the calculator dropdown and enter your BTC amount. You can calculate a full Bitcoin amount, a small fraction such as 0.01 BTC, or switch direction to estimate how much BTC a USD budget may buy.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Can I calculate Bitcoin to EUR and other fiat currencies?<\/summary>\n          <p>Yes. The calculator supports EUR and other available fiat currencies shown in the dropdown and rates table. This helps compare BTC to EUR, BTC to USD, and other supported routes on the same page.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Is the BTC calculator result a guaranteed final quote?<\/summary>\n          <p>No. It is an indicative estimate. The final checkout amount can change because route, spread, available liquidity, network conditions, and market movement update in real time.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Why can the final BTC amount differ from the calculator estimate?<\/summary>\n          <p>The calculator may estimate through one available market route, while checkout uses the current executable quote. If BTC price, liquidity, spread, or the selected fiat route changes, the final amount can differ.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>How should I read the BTC chart with market cap and volume?<\/summary>\n          <p>The chart shows price movement, market cap shows Bitcoin\u2019s scale, and volume shows recent trading activity. A price move with strong volume can mean something different from the same move during thin liquidity.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>What does BTC market cap tell me?<\/summary>\n          <p>BTC market cap is the live Bitcoin price multiplied by circulating supply. It helps compare Bitcoin\u2019s size with other crypto assets, but it works better when read with volume, supply, and liquidity.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>What is BTC market dominance?<\/summary>\n          <p>BTC market dominance is Bitcoin\u2019s share of total cryptocurrency market cap. It helps show whether capital is concentrating in Bitcoin or rotating into altcoins.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>How is BTC dominance calculated?<\/summary>\n          <p>BTC dominance is calculated by dividing Bitcoin market cap by total crypto market cap and multiplying by 100. Because both values move, dominance can change even when BTC price is relatively stable.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>Is Bitcoin a coin or a token?<\/summary>\n          <p>Bitcoin is a coin because it runs on its own native blockchain. Tokens are issued on top of other blockchain networks.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>What is the smallest unit of Bitcoin?<\/summary>\n          <p>The smallest unit is a satoshi. One BTC equals 100 million satoshis, which is why a Bitcoin calculator is useful for small fractions as well as whole coins.<\/p>\n        <\/details>\n\n        <details class=\"gcp-faq-item\">\n          <summary>How should I store BTC after buying it?<\/summary>\n          <p>Many users move larger long-term holdings to a non-custodial wallet, often a hardware wallet. Whatever storage method you use, check addresses carefully and understand who controls the private keys.<\/p>\n        <\/details>\n      <\/div><\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function () {\n      const root = document.querySelector('.btc-price-page-merged');\n      const pageMeta = document.querySelector('.crypto-page-meta');\n      const config = document.getElementById('crypto-page-config');\n      const symbol = (config && config.getAttribute('data-symbol') || 'BTC').toUpperCase();\n      const pair = symbol + 'USDT';\n      const coinName = (pageMeta && pageMeta.getAttribute('data-coin-name') || symbol).trim();\n      const coinPaprikaId = (pageMeta && pageMeta.getAttribute('data-coinpaprika-id')) || (symbol === 'BTC' ? 'btc-bitcoin' : '');\n      const localOffset = new Date().getTimezoneOffset() * 60;\n\n      const RANGE_CONFIG = {\n        '1h': { interval: '1m', limit: 60 },\n        '4h': { interval: '5m', limit: 48 },\n        '1d': { interval: '15m', limit: 96 },\n        '1w': { interval: '1h', limit: 168 },\n        'all': { interval: '1w', limit: 1000 }\n      };\n\n      const FIATS = [\n        { code: 'EUR', name: 'Euro' },\n        { code: 'USD', name: 'United States dollar' },\n        { code: 'GBP', name: 'British Pound Sterling' },\n        { code: 'TRY', name: 'Turkish lira' },\n        { code: 'DKK', name: 'Danish Krone' },\n        { code: 'SEK', name: 'Swedish Krona' },\n        { code: 'ZAR', name: 'South African rand' },\n        { code: 'CHF', name: 'Swiss Franc' },\n        { code: 'AUD', name: 'Australian Dollar' },\n        { code: 'PLN', name: 'Polish Zloty' },\n        { code: 'AED', name: 'United Arab Emirates dirham' },\n        { code: 'KRW', name: 'South Korean won' },\n        { code: 'JPY', name: 'Japanese Yen' },\n        { code: 'CAD', name: 'Canadian Dollar' },\n        { code: 'NZD', name: 'New Zealand Dollar' },\n        { code: 'NGN', name: 'Nigerian Naira' },\n        { code: 'COP', name: 'Colombian Peso' },\n        { code: 'HKD', name: 'Hong Kong Dollar' },\n        { code: 'INR', name: 'Indian Rupee' },\n        { code: 'BHD', name: 'Bahraini Dinar' },\n        { code: 'KES', name: 'Kenyan Shilling' },\n        { code: 'PEN', name: 'Sol' },\n        { code: 'SGD', name: 'Singapore Dollar' },\n        { code: 'UAH', name: 'Ukrainian hryvnia' },\n        { code: 'OMR', name: 'Omani rial' },\n        { code: 'BRL', name: 'Brazilian Real' },\n        { code: 'MYR', name: 'Malaysian Ringgit' },\n        { code: 'PHP', name: 'Philippine peso' },\n        { code: 'THB', name: 'Thai Baht' },\n        { code: 'TWD', name: 'New Taiwan dollar' },\n        { code: 'MXN', name: 'Mexican Peso' },\n        { code: 'CLP', name: 'Chilean Peso' },\n        { code: 'RON', name: 'Romanian Leu' },\n        { code: 'NOK', name: 'Norwegian Krone' },\n        { code: 'DOP', name: 'Dominican Peso' },\n        { code: 'BDT', name: 'Bangladeshi Taka' },\n        { code: 'IDR', name: 'Indonesian Rupiah' },\n        { code: 'GHS', name: 'Ghanaian Cedi' },\n        { code: 'CZK', name: 'Czech Koruna' }\n      ];\n\n      const shared = {\n        chart: { instance: null, series: null, socket: null, activeRange: '1d', isUpdating: false, lastPrice: 0 },\n        priceCache: new Map(),\n        symbolSet: null,\n        availableFiats: [],\n        calculator: { mode: 'crypto-to-fiat', selectedFiat: null, lastOutputNumeric: null },\n        ratesTab: 'coin-to-fiat',\n        ratesRows: { 'coin-to-fiat': [], 'fiat-to-coin': [] },\n        logoUrl: ''\n      };\n\n      function smartFormat(val) {\n        if (!val && val !== 0) return '---';\n        if (val === 0) return '0.00';\n\n        let d = 2;\n        if (val < 0.000001) d = 10;\n        else if (val < 0.0001) d = 8;\n        else if (val < 1) d = 6;\n        else if (val < 20) d = 4;\n\n        return Number(val).toLocaleString('en-US', { minimumFractionDigits: d, maximumFractionDigits: d });\n      }\n\n      function formatValue(val, compact) {\n        if (!val || isNaN(val)) return '---';\n        if (compact) {\n          return new Intl.NumberFormat('en-US', { notation: 'compact', compactDisplay: 'short', maximumFractionDigits: 2 }).format(val);\n        }\n        let d = 2;\n        if (val < 0.000001) d = 12;\n        else if (val < 0.0001) d = 8;\n        else if (val < 1) d = 6;\n        else if (val < 10) d = 4;\n        return new Intl.NumberFormat('en-US', { minimumFractionDigits: d, maximumFractionDigits: d }).format(val);\n      }\n\n      function formatCurrency(value, currency) {\n        const abs = Math.abs(value);\n        let digits = 2;\n        if (abs < 1) digits = 6;\n        if (abs < 0.01) digits = 8;\n        try {\n          return new Intl.NumberFormat(undefined, { style: 'currency', currency: currency, maximumFractionDigits: digits }).format(value);\n        } catch (e) {\n          return value.toFixed(digits) + ' ' + currency;\n        }\n      }\n\n      function formatTinyAsset(value, asset) {\n        const abs = Math.abs(value);\n        if (!Number.isFinite(abs)) return '---';\n        if (abs === 0) return '0 ' + asset;\n\n        let digits;\n        if (abs >= 1) digits = 4;\n        else if (abs >= 0.000001) digits = 6;\n        else {\n          const str = abs.toFixed(20);\n          const fraction = str.split('.')[1] || '';\n          const firstNonZero = fraction.search(\/[1-9]\/);\n          digits = firstNonZero >= 0 ? Math.min(firstNonZero + 1, 20) : 8;\n        }\n\n        return new Intl.NumberFormat(undefined, { minimumFractionDigits: 0, maximumFractionDigits: digits }).format(value) + ' ' + asset;\n      }\n\n      async function fetchJson(url) {\n        const response = await fetch(url);\n        if (!response.ok) throw new Error('HTTP ' + response.status);\n        return response.json();\n      }\n\n      function bindStaticText() {\n        root.querySelectorAll('[data-bind-inline=\"coin\"]').forEach(function (el) {\n          el.textContent = symbol;\n        });\n\n        document.querySelectorAll('[data-gcp-bind=\"coin\"]').forEach(function (el) {\n          el.textContent = symbol;\n        });\n\n        document.querySelectorAll('[data-gcp-bind=\"coin-name\"]').forEach(function (el) {\n          el.textContent = 'Bitcoin';\n        });\n      }\n\n      async function loadLogo() {\n        try {\n          shared.logoUrl = 'https:\/\/assets.coincap.io\/assets\/icons\/' + symbol.toLowerCase() + '@2x.png';\n          if (shared.logoUrl) {\n\n            root.querySelectorAll('[data-chart-logo]').forEach(function (img) {\n              img.src = shared.logoUrl;\n              img.classList.add('is-visible');\n            });\n            root.querySelectorAll('[data-chart-logo-fallback]').forEach(function (el) {\n              el.style.display = 'none';\n            });\n\n            document.querySelectorAll('[data-gcp-logo]').forEach(function (img) {\n              img.src = shared.logoUrl;\n              img.style.display = 'block';\n            });\n            document.querySelectorAll('[data-gcp-logo-fallback]').forEach(function (el) {\n              el.style.display = 'none';\n            });\n          }\n        } catch (e) {}\n      }\n\n      function initChart() {\n        const chartRoot = root.querySelector('[data-chart-root]');\n        if (!chartRoot || !window.LightweightCharts) return;\n\n        const canvas = chartRoot.querySelector('[data-chart-canvas]');\n        const loader = chartRoot.querySelector('[data-chart-loader]');\n        const tooltip = chartRoot.querySelector('[data-chart-tooltip]');\n        const sliderWrap = chartRoot.querySelector('[data-chart-slider-wrap]');\n        const slider = chartRoot.querySelector('[data-chart-slider]');\n        const priceEl = chartRoot.querySelector('[data-chart-price]');\n        const changeEl = chartRoot.querySelector('[data-chart-change]');\n        const pairEl = chartRoot.querySelector('[data-chart-pair]');\n        const buyEl = chartRoot.querySelector('[data-chart-buy]');\n        const buyLabelEl = buyEl ? buyEl.querySelector('.buy-crypto-btn__label') : null;\n        const buttons = Array.from(chartRoot.querySelectorAll('.tf-btn'));\n\n        pairEl.textContent = symbol + ' \/ USDT';\n        if (buyLabelEl) buyLabelEl.textContent = 'Buy ' + symbol;\n        buyEl.href = 'https:\/\/guardarian.com\/calculator\/v1?partner_api_token=GRNCC&full_page=true&type=narrow&theme=orange&default_crypto_currency=' + encodeURIComponent(symbol);\n\n        const chart = LightweightCharts.createChart(canvas, {\n          width: canvas.clientWidth,\n          height: canvas.clientHeight,\n          layout: { textColor: '#999', fontFamily: 'Roboto', background: { color: 'transparent' } },\n          localization: { locale: navigator.language, priceFormatter: function (p) { return '$' + smartFormat(p); } },\n          grid: { vertLines: { visible: false }, horzLines: { color: '#f0f3fa' } },\n          rightPriceScale: { borderVisible: false, autoScale: true },\n          timeScale: { borderVisible: false, timeVisible: true, rightOffset: 2, fixRightEdge: true },\n          handleScroll: false,\n          handleScale: false\n        });\n\n        const series = chart.addAreaSeries({\n          topColor: 'rgba(76, 157, 232, 0.25)',\n          bottomColor: 'rgba(255, 255, 255, 0)',\n          lineColor: '#4C9DE8',\n          lineWidth: 3,\n          priceFormat: { type: 'price', precision: symbol === 'BTC' || symbol === 'ETH' ? 2 : 10, minMove: 0.0000000001 }\n        });\n\n        shared.chart.instance = chart;\n        shared.chart.series = series;\n\n        async function update24hChange() {\n          try {\n            const data = await fetchJson('https:\/\/api.binance.com\/api\/v3\/ticker\/24hr?symbol=' + pair);\n            const change = parseFloat(data.priceChangePercent);\n            changeEl.textContent = (change >= 0 ? '+' : '') + change.toFixed(2) + '%';\n            changeEl.className = 'price-change ' + (change >= 0 ? 'up' : 'down');\n          } catch (e) {}\n        }\n\n        function connectSocket(interval) {\n          if (shared.chart.socket) shared.chart.socket.close();\n          shared.chart.socket = new WebSocket('wss:\/\/stream.binance.com:9443\/ws\/' + pair.toLowerCase() + '@kline_' + interval);\n          shared.chart.socket.onmessage = function (event) {\n            const msg = JSON.parse(event.data);\n            const price = parseFloat(msg.k.c);\n            series.update({ time: (msg.k.t \/ 1000) - localOffset, value: price });\n            if (!chart.__isHovering) {\n              priceEl.textContent = '$' + smartFormat(price);\n              shared.chart.lastPrice = price;\n            }\n          };\n        }\n\n        async function updateData(rangeKey) {\n          if (shared.chart.isUpdating) return;\n          shared.chart.isUpdating = true;\n          shared.chart.activeRange = rangeKey;\n          canvas.classList.add('is-loading');\n          sliderWrap.classList.toggle('is-visible', rangeKey === 'all');\n\n          buttons.forEach(function (btn) {\n            btn.classList.toggle('active', btn.getAttribute('data-range') === rangeKey);\n          });\n\n          try {\n            const config = RANGE_CONFIG[rangeKey];\n            const raw = await fetchJson('https:\/\/api.binance.com\/api\/v3\/klines?symbol=' + pair + '&interval=' + config.interval + '&limit=' + config.limit);\n            const history = raw.map(function (d) {\n              return { time: (d[0] \/ 1000) - localOffset, value: parseFloat(d[4]) };\n            });\n\n            series.setData(history);\n\n            if (rangeKey === 'all') {\n              slider.value = 100;\n              const initialVisible = Math.min(52, history.length);\n              chart.timeScale().setVisibleLogicalRange({ from: history.length - initialVisible, to: history.length });\n            } else {\n              chart.timeScale().fitContent();\n            }\n\n            if (history.length) {\n              shared.chart.lastPrice = history[history.length - 1].value;\n              priceEl.textContent = '$' + smartFormat(shared.chart.lastPrice);\n            }\n\n            loader.style.display = 'none';\n            update24hChange();\n            connectSocket(config.interval);\n          } catch (e) {\n            loader.textContent = 'Unable to load chart';\n          } finally {\n            canvas.classList.remove('is-loading');\n            shared.chart.isUpdating = false;\n          }\n        }\n\n        slider.addEventListener('input', function (event) {\n          if (shared.chart.activeRange !== 'all' || shared.chart.isUpdating) return;\n          const data = series.data();\n          if (!data.length) return;\n          const percent = parseFloat(event.target.value) \/ 100;\n          const minBars = Math.min(52, data.length);\n          const visibleBars = minBars + (data.length - minBars) * (1 - percent);\n          chart.timeScale().setVisibleLogicalRange({ from: data.length - visibleBars, to: data.length });\n        });\n\n        chart.subscribeCrosshairMove(function (param) {\n          if (!param.time || !param.point || param.point.x < 0 || param.point.y < 0) {\n            chart.__isHovering = false;\n            tooltip.style.display = 'none';\n            priceEl.textContent = '$' + smartFormat(shared.chart.lastPrice);\n            return;\n          }\n\n          chart.__isHovering = true;\n          if (!param.seriesPrices || typeof param.seriesPrices.get !== 'function') {\n            tooltip.style.display = 'none';\n            return;\n          }\n\n          const price = param.seriesPrices.get(series);\n          if (price == null) return;\n\n          priceEl.textContent = '$' + smartFormat(price);\n          const dateStr = new Date(param.time * 1000).toLocaleString(navigator.language, {\n            day: 'numeric',\n            month: 'short',\n            year: 'numeric',\n            hour: '2-digit',\n            minute: '2-digit',\n            timeZone: 'UTC'\n          });\n\n          tooltip.innerHTML = '<div style=\"font-weight:700;font-size:18px\">$' + smartFormat(price) + '<\/div><div style=\"font-size:12px;color:#aaa\">' + dateStr + '<\/div>';\n          tooltip.style.display = 'block';\n          let left = param.point.x + 20;\n          if (left + 200 > canvas.clientWidth) left = param.point.x - 220;\n          tooltip.style.left = left + 'px';\n          tooltip.style.top = (param.point.y + 20) + 'px';\n        });\n\n        buttons.forEach(function (btn) {\n          btn.addEventListener('click', function () {\n            const range = btn.getAttribute('data-range');\n            if (range === shared.chart.activeRange || shared.chart.isUpdating) return;\n            updateData(range);\n          });\n        });\n\n        window.addEventListener('resize', function () {\n          chart.applyOptions({ width: canvas.clientWidth, height: canvas.clientHeight });\n        });\n\n        updateData('1d');\n      }\n\n      async function updateStats() {\n        const statsRoot = root.querySelector('[data-stats-root]');\n        const dominanceRoot = root.querySelector('[data-dominance-root]');\n        if (!statsRoot && !dominanceRoot) return;\n\n        function setFieldValue(el, text) {\n          if (!el) return;\n          el.textContent = text;\n          el.classList.remove('is-skeleton');\n        }\n\n        function clearSkeleton(el) {\n          if (!el) return;\n          el.classList.remove('is-skeleton');\n        }\n\n        try {\n          const data = await Promise.allSettled([\n            fetchJson('https:\/\/api.binance.com\/api\/v3\/ticker\/24hr?symbol=' + pair),\n            fetchJson('https:\/\/api.coinpaprika.com\/v1\/tickers\/' + coinPaprikaId + '?quotes=USD'),\n            fetchJson('https:\/\/api.coinpaprika.com\/v1\/global')\n          ]);\n\n          const binance = data[0] && data[0].status === 'fulfilled' ? (data[0].value || {}) : {};\n          const paprikaTicker = data[1] && data[1].status === 'fulfilled' ? (data[1].value || {}) : {};\n          const paprikaUsd = paprikaTicker.quotes && paprikaTicker.quotes.USD ? paprikaTicker.quotes.USD : {};\n          const global = data[2] && data[2].status === 'fulfilled' ? (data[2].value || {}) : {};\n\n          if (statsRoot) {\n            if (paprikaUsd.market_cap) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"mcap\"]'), '$' + formatValue(paprikaUsd.market_cap, true));\n            }\n            if (binance.quoteVolume) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"volume\"]'), '$' + formatValue(binance.quoteVolume, true));\n            }\n\n            const ratio = paprikaUsd.market_cap ? (parseFloat(binance.quoteVolume) \/ paprikaUsd.market_cap) : 0;\n            if (ratio) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"ratio\"]'), ratio.toFixed(4) + ' (' + (ratio * 100).toFixed(2) + '%)');\n            }\n            if (paprikaTicker.circulating_supply || paprikaTicker.total_supply) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"supply\"]'), formatValue(paprikaTicker.circulating_supply || paprikaTicker.total_supply, true));\n            }\n\n            const low = parseFloat(binance.lowPrice);\n            const high = parseFloat(binance.highPrice);\n            const current = parseFloat(binance.lastPrice);\n\n            if (Number.isFinite(low)) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"day-low\"]'), '$' + formatValue(low));\n            }\n            if (Number.isFinite(high)) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"day-high\"]'), '$' + formatValue(high));\n            }\n            if (Number.isFinite(paprikaUsd.ath_price)) {\n              setFieldValue(statsRoot.querySelector('[data-stat=\"ath\"]'), '$' + formatValue(paprikaUsd.ath_price));\n            }\n\n            const fill = high > low ? ((current - low) \/ (high - low)) * 100 : 0;\n            if (Number.isFinite(fill)) {\n              clearSkeleton(statsRoot.querySelector('[data-stat=\"range-track\"]'));\n              statsRoot.querySelector('[data-stat=\"range-fill\"]').style.width = Math.min(100, Math.max(0, fill)) + '%';\n            }\n          }\n\n          if (dominanceRoot) {\n            const btcDom = Number.isFinite(global.bitcoin_dominance_percentage)\n              ? global.bitcoin_dominance_percentage\n              : null;\n            const altDom = btcDom != null ? 100 - btcDom : null;\n            const totalMarketCap = Number.isFinite(global.market_cap_usd)\n              ? global.market_cap_usd\n              : null;\n\n            if (btcDom != null) {\n              setFieldValue(dominanceRoot.querySelector('[data-dominance=\"btc\"]'), btcDom.toFixed(2) + '%');\n              setFieldValue(dominanceRoot.querySelector('[data-dominance=\"btc-share\"]'), btcDom.toFixed(2) + '%');\n              clearSkeleton(dominanceRoot.querySelector('[data-dominance=\"track\"]'));\n              dominanceRoot.querySelector('[data-dominance=\"fill\"]').style.width = Math.min(100, Math.max(0, btcDom)) + '%';\n            }\n            if (altDom != null) {\n              setFieldValue(dominanceRoot.querySelector('[data-dominance=\"alt-share\"]'), altDom.toFixed(2) + '%');\n            }\n            if (totalMarketCap != null) {\n              setFieldValue(dominanceRoot.querySelector('[data-dominance=\"total-market-cap\"]'), '$' + formatValue(totalMarketCap, true));\n            }\n          }\n        } catch (e) {}\n      }\n\n      async function loadSymbols() {\n        if (shared.symbolSet) return shared.symbolSet;\n        const data = await fetchJson('https:\/\/api.binance.com\/api\/v3\/exchangeInfo');\n        const symbols = (data.symbols || []).filter(function (item) { return item.status === 'TRADING'; }).map(function (item) { return item.symbol; });\n        shared.symbolSet = new Set(symbols);\n        return shared.symbolSet;\n      }\n\n      function hasDirectOrInverse(a, b, symbolSet) {\n        return symbolSet.has(a + b) || symbolSet.has(b + a);\n      }\n\n      function isFiatAvailableForCoin(coinCode, fiatCode, symbolSet) {\n        if (hasDirectOrInverse(coinCode, fiatCode, symbolSet)) return true;\n        if (hasDirectOrInverse(coinCode, 'USDT', symbolSet) && hasDirectOrInverse(fiatCode, 'USDT', symbolSet)) return true;\n        return false;\n      }\n\n      async function getPrice(symbolCode) {\n        if (shared.priceCache.has(symbolCode)) return shared.priceCache.get(symbolCode);\n        const data = await fetchJson('https:\/\/api.binance.com\/api\/v3\/ticker\/price?symbol=' + encodeURIComponent(symbolCode));\n        const price = parseFloat(data.price);\n        if (!Number.isFinite(price)) throw new Error('Invalid price');\n        shared.priceCache.set(symbolCode, price);\n        return price;\n      }\n\n      async function directOrInverseRate(base, quote) {\n        const symbols = await loadSymbols();\n        const direct = base + quote;\n        if (symbols.has(direct)) return { rate: await getPrice(direct), route: direct };\n        const inverse = quote + base;\n        if (symbols.has(inverse)) return { rate: 1 \/ await getPrice(inverse), route: inverse + ' inverse' };\n        return null;\n      }\n\n      async function getRate(base, quote) {\n        if (base === quote) return { rate: 1, route: base + ' = ' + quote };\n        const direct = await directOrInverseRate(base, quote);\n        if (direct) return direct;\n        const baseToUsdt = await directOrInverseRate(base, 'USDT');\n        const quoteToUsdt = await directOrInverseRate(quote, 'USDT');\n        if (baseToUsdt && quoteToUsdt) {\n          return { rate: baseToUsdt.rate * (1 \/ quoteToUsdt.rate), route: baseToUsdt.route + ' via USDT' };\n        }\n        throw new Error('No route found');\n      }\n\n      function closeHints() {\n        document.querySelectorAll('.gcp-hint').forEach(function (hint) {\n          hint.classList.remove('is-open');\n          const btn = hint.querySelector('.gcp-hint-btn');\n          if (btn) btn.setAttribute('aria-expanded', 'false');\n        });\n      }\n\n      function setupHint(selector) {\n        const hint = document.querySelector(selector);\n        if (!hint) return;\n        const btn = hint.querySelector('.gcp-hint-btn');\n        if (!btn) return;\n        btn.addEventListener('click', function (event) {\n          event.stopPropagation();\n          const isOpen = hint.classList.toggle('is-open');\n          btn.setAttribute('aria-expanded', isOpen ? 'true' : 'false');\n        });\n      }\n\n      function createAssetSideHtml() {\n        const logo = shared.logoUrl ? '<img decoding=\"async\" class=\"gcp-asset-logo is-visible\" src=\"' + shared.logoUrl + '\" alt=\"' + symbol + ' logo\">' : '';\n        const fallback = shared.logoUrl ? '' : '<span class=\"gcp-asset-logo-placeholder\">' + symbol.slice(0, 2) + '<\/span>';\n        return '<div class=\"gcp-asset-side\">' + logo + fallback + '<span>' + symbol + '<\/span><\/div>';\n      }\n\n      function createDropdownHtml(selectedCode) {\n        return ''\n          + '<div class=\"gcp-dropdown\">'\n          + '<button class=\"gcp-dropdown-trigger\" type=\"button\">'\n          + '<div class=\"gcp-dropdown-main\">' + (selectedCode || '--') + '<\/div>'\n          + '<div class=\"gcp-dropdown-arrow-wrap\"><span class=\"gcp-dropdown-arrow\"><\/span><\/div>'\n          + '<\/button>'\n          + '<div class=\"gcp-dropdown-menu\"><\/div>'\n          + '<\/div>';\n      }\n\n      function closeDropdowns() {\n        document.querySelectorAll('.gcp-dropdown-menu').forEach(function (menu) {\n          menu.classList.remove('is-open');\n        });\n        document.querySelectorAll('.gcp-dropdown-trigger').forEach(function (trigger) {\n          trigger.classList.remove('is-open');\n        });\n      }\n\n      function bindDropdown(sideEl, onSelect) {\n        const trigger = sideEl.querySelector('.gcp-dropdown-trigger');\n        const menu = sideEl.querySelector('.gcp-dropdown-menu');\n        if (!trigger || !menu) return;\n\n        menu.innerHTML = shared.availableFiats.map(function (item) {\n          const selected = shared.calculator.selectedFiat && shared.calculator.selectedFiat.code === item.code;\n          return ''\n            + '<button class=\"gcp-dropdown-option' + (selected ? ' is-selected' : '') + '\" type=\"button\" data-code=\"' + item.code + '\" data-name=\"' + item.name + '\">'\n            + '<span class=\"gcp-dropdown-option-code\">' + item.code + '<\/span>'\n            + '<span class=\"gcp-dropdown-option-name\">' + item.name + '<\/span>'\n            + '<\/button>';\n        }).join('');\n\n        trigger.addEventListener('click', function (event) {\n          event.stopPropagation();\n          const isOpen = menu.classList.contains('is-open');\n          closeDropdowns();\n          if (!isOpen) {\n            menu.classList.add('is-open');\n            trigger.classList.add('is-open');\n          }\n        });\n\n        menu.querySelectorAll('.gcp-dropdown-option').forEach(function (btn) {\n          btn.addEventListener('click', function () {\n            shared.calculator.selectedFiat = { code: btn.getAttribute('data-code'), name: btn.getAttribute('data-name') };\n            onSelect();\n          });\n        });\n      }\n\n      function renderCalculatorSides() {\n        const topSide = document.querySelector('[data-gcp-top-side]');\n        const bottomSide = document.querySelector('[data-gcp-bottom-side]');\n        if (!topSide || !bottomSide) return;\n\n        const fiatCode = shared.calculator.selectedFiat ? shared.calculator.selectedFiat.code : '--';\n        if (shared.calculator.mode === 'crypto-to-fiat') {\n          topSide.innerHTML = createAssetSideHtml();\n          bottomSide.innerHTML = createDropdownHtml(fiatCode);\n          bindDropdown(bottomSide, function () { renderCalculatorSides(); calculateConversion(); });\n        } else {\n          topSide.innerHTML = createDropdownHtml(fiatCode);\n          bottomSide.innerHTML = createAssetSideHtml();\n          bindDropdown(topSide, function () { renderCalculatorSides(); calculateConversion(); });\n        }\n      }\n\n      function showCalcError(text) {\n        const box = document.querySelector('[data-gcp-calc-error]');\n        box.hidden = false;\n        box.textContent = text;\n      }\n\n      function hideCalcError() {\n        const box = document.querySelector('[data-gcp-calc-error]');\n        box.hidden = true;\n        box.textContent = '';\n      }\n\n      async function calculateConversion() {\n        const topInput = document.querySelector('[data-gcp-top-input]');\n        const bottomInput = document.querySelector('[data-gcp-bottom-input]');\n        const amount = parseFloat(topInput.value);\n        const fiat = shared.calculator.selectedFiat && shared.calculator.selectedFiat.code;\n\n        hideCalcError();\n        if (!fiat) {\n          showCalcError('Choose a fiat currency to calculate the BTC conversion.');\n          return;\n        }\n        if (!Number.isFinite(amount) || amount < 0) {\n          showCalcError('Enter a valid BTC or fiat amount.');\n          return;\n        }\n\n        try {\n          let total;\n          if (shared.calculator.mode === 'crypto-to-fiat') total = amount * (await getRate(symbol, fiat)).rate;\n          else total = amount * (await getRate(fiat, symbol)).rate;\n          shared.calculator.lastOutputNumeric = total;\n          bottomInput.value = new Intl.NumberFormat(undefined, { maximumFractionDigits: total >= 100 ? 2 : total >= 1 ? 4 : 6 }).format(total);\n        } catch (e) {\n          bottomInput.value = '';\n          showCalcError('A live BTC route for this selected pair is not available right now.');\n        }\n      }\n\n      function initCalculator() {\n        const topInput = document.querySelector('[data-gcp-top-input]');\n        const switchBtn = document.querySelector('[data-gcp-switch-btn]');\n        if (!topInput || !switchBtn) return;\n\n        renderCalculatorSides();\n\n        topInput.addEventListener('input', function () {\n          clearTimeout(topInput.__timer);\n          topInput.__timer = setTimeout(calculateConversion, 220);\n        });\n\n        switchBtn.addEventListener('click', function () {\n          const nextInput = Number.isFinite(shared.calculator.lastOutputNumeric) ? shared.calculator.lastOutputNumeric : parseFloat(topInput.value);\n          shared.calculator.mode = shared.calculator.mode === 'crypto-to-fiat' ? 'fiat-to-crypto' : 'crypto-to-fiat';\n          closeDropdowns();\n          renderCalculatorSides();\n          topInput.value = Number.isFinite(nextInput) ? String(nextInput) : '1';\n          calculateConversion();\n        });\n\n        calculateConversion();\n      }\n\n      async function buildRatesRows() {\n        const coinToFiat = [];\n        const fiatToCoin = [];\n\n        for (const fiat of shared.availableFiats) {\n          try {\n            const rate1 = await getRate(symbol, fiat.code);\n            coinToFiat.push({ code: fiat.code, name: fiat.name, valueMain: formatCurrency(rate1.rate, fiat.code) });\n\n            const rate2 = await getRate(fiat.code, symbol);\n            fiatToCoin.push({ code: fiat.code, name: fiat.name, valueMain: formatTinyAsset(rate2.rate, symbol) });\n          } catch (e) {}\n        }\n\n        shared.ratesRows['coin-to-fiat'] = coinToFiat;\n        shared.ratesRows['fiat-to-coin'] = fiatToCoin;\n      }\n\n      function renderRatesTable() {\n        const area = document.querySelector('[data-gcp-rates-area]');\n        const rows = shared.ratesRows[shared.ratesTab] || [];\n\n        document.querySelectorAll('[data-gcp-rates-tab]').forEach(function (btn) {\n          btn.classList.toggle('is-active', btn.getAttribute('data-gcp-rates-tab') === shared.ratesTab);\n        });\n\n        if (!rows.length) {\n          area.innerHTML = '<div class=\"gcp-empty\">No supported BTC exchange rates found for this route.<\/div>';\n          return;\n        }\n\n        area.innerHTML = ''\n          + '<table class=\"gcp-rates-table\">'\n          + '<thead><tr><th>Currency<\/th><th>Rate<\/th><\/tr><\/thead>'\n          + '<tbody>'\n          + rows.map(function (row) {\n              return ''\n                + '<tr>'\n                + '<td><div class=\"gcp-currency-code\">' + row.code + '<\/div><div class=\"gcp-currency-name\">' + row.name + '<\/div><\/td>'\n                + '<td><div class=\"gcp-rate-main\">' + row.valueMain + '<\/div><\/td>'\n                + '<\/tr>';\n            }).join('')\n          + '<\/tbody>'\n          + '<\/table>';\n      }\n\n      function showRatesError(text) {\n        const box = document.querySelector('[data-gcp-rates-error]');\n        box.hidden = false;\n        box.textContent = text;\n      }\n\n      async function initRates() {\n        const area = document.querySelector('[data-gcp-rates-area]');\n        if (!area) return;\n\n        try {\n          await buildRatesRows();\n          renderRatesTable();\n        } catch (e) {\n          area.innerHTML = '<div class=\"gcp-empty\">Unable to load BTC exchange rates right now.<\/div>';\n          showRatesError('Failed to load live BTC market data.');\n        }\n\n        document.querySelectorAll('[data-gcp-rates-tab]').forEach(function (btn) {\n          btn.addEventListener('click', function () {\n            shared.ratesTab = btn.getAttribute('data-gcp-rates-tab');\n            renderRatesTable();\n          });\n        });\n      }\n\n      async function initFiats() {\n        const symbols = await loadSymbols();\n        shared.availableFiats = FIATS.filter(function (fiat) {\n          return isFiatAvailableForCoin(symbol, fiat.code, symbols);\n        });\n        if (!shared.availableFiats.length) throw new Error('No fiat pairs');\n        shared.calculator.selectedFiat = shared.availableFiats[0];\n      }\n\n      function buildFaqJsonLd() {\n        const faqContainer = document.getElementById('merged-faq-list');\n        if (!faqContainer) return;\n        const items = [];\n        faqContainer.querySelectorAll('.gcp-faq-item').forEach(function (item) {\n          const q = item.querySelector('summary');\n          const a = item.querySelector('p');\n          if (!q || !a) return;\n          items.push({\n            '@type': 'Question',\n            name: q.textContent.trim(),\n            acceptedAnswer: { '@type': 'Answer', text: a.textContent.trim() }\n          });\n        });\n        if (!items.length) return;\n\n        const old = document.getElementById('merged-faq-jsonld');\n        if (old) old.remove();\n\n        const script = document.createElement('script');\n        script.type = 'application\/ld+json';\n        script.id = 'merged-faq-jsonld';\n        script.textContent = JSON.stringify({ '@context': 'https:\/\/schema.org', '@type': 'FAQPage', mainEntity: items });\n        document.body.appendChild(script);\n      }\n\n      function initToc() {\n        const desktopToc = document.getElementById('gcp-toc-desktop');\n        const desktopToggle = document.getElementById('gcp-toc-desktop-toggle');\n        const widgetShell = document.getElementById('gcp-widget-shell');\n        const mobileToggle = document.getElementById('gcp-toc-mobile-toggle');\n        const mobilePanel = document.getElementById('gcp-toc-mobile-panel');\n        const tocLinks = Array.from(document.querySelectorAll('[data-toc-link]'));\n        const sections = Array.from(document.querySelectorAll('[data-section-observe]'));\n\n        function setActiveToc(id) {\n          tocLinks.forEach(function (link) {\n            link.classList.toggle('is-active', link.getAttribute('data-toc-link') === id);\n          });\n        }\n\n        if (mobileToggle && mobilePanel) {\n          mobileToggle.addEventListener('click', function () {\n            const isOpen = mobilePanel.classList.toggle('is-open');\n            mobileToggle.setAttribute('aria-expanded', isOpen ? 'true' : 'false');\n          });\n\n          document.addEventListener('click', function (event) {\n            const clickedInsidePanel = mobilePanel.contains(event.target);\n            const clickedToggle = mobileToggle.contains(event.target);\n\n            if (!clickedInsidePanel && !clickedToggle) {\n              mobilePanel.classList.remove('is-open');\n              mobileToggle.setAttribute('aria-expanded', 'false');\n            }\n          });\n        }\n\n        tocLinks.forEach(function (link) {\n          link.addEventListener('click', function () {\n            setActiveToc(link.getAttribute('data-toc-link'));\n            if (mobilePanel) mobilePanel.classList.remove('is-open');\n            if (mobileToggle) mobileToggle.setAttribute('aria-expanded', 'false');\n          });\n        });\n\n        window.addEventListener('hashchange', function () {\n          const id = (window.location.hash || '').replace('#', '');\n          if (id) setActiveToc(id);\n        });\n\n        if (desktopToc && desktopToggle) {\n          desktopToggle.addEventListener('click', function () {\n            const collapsed = desktopToc.classList.toggle('is-collapsed');\n            desktopToggle.setAttribute('aria-expanded', collapsed ? 'false' : 'true');\n            desktopToggle.setAttribute('aria-label', collapsed ? 'Expand table of contents' : 'Collapse table of contents');\n            const icon = desktopToggle.querySelector('span');\n            if (icon) icon.textContent = collapsed ? '\u2039' : '\u203a';\n          });\n        }\n\n        function handleDesktopTocVisibility() {\n          if (!desktopToc || window.innerWidth <= 1280) return;\n          const shouldShow = window.scrollY > 80;\n          desktopToc.classList.toggle('is-visible', shouldShow);\n        }\n\n        window.addEventListener('scroll', handleDesktopTocVisibility, { passive: true });\n        window.addEventListener('resize', handleDesktopTocVisibility);\n        handleDesktopTocVisibility();\n\n        if (!sections.length || !tocLinks.length || !('IntersectionObserver' in window)) return;\n\n        const linkMap = {};\n        tocLinks.forEach(function (link) {\n          const key = link.getAttribute('data-toc-link');\n          linkMap[key] = linkMap[key] || [];\n          linkMap[key].push(link);\n        });\n\n        const observer = new IntersectionObserver(function (entries) {\n          entries.forEach(function (entry) {\n            if (!entry.isIntersecting) return;\n            const id = entry.target.id;\n            setActiveToc(id);\n          });\n        }, {\n          rootMargin: '-20% 0px -60% 0px',\n          threshold: 0.1\n        });\n\n        sections.forEach(function (section) {\n          observer.observe(section);\n        });\n\n        setActiveToc((window.location.hash || '#section-calculator').replace('#', ''));\n      }\n\n      bindStaticText();\n      loadLogo();\n      initChart();\n      updateStats();\n      setInterval(updateStats, 60000);\n      setupHint('[data-gcp-calc-hint]');\n      setupHint('[data-gcp-rates-hint]');\n      buildFaqJsonLd();\n      initToc();\n\n      initFiats().then(function () {\n        initCalculator();\n        initRates();\n      }).catch(function () {\n        showCalcError('Failed to load BTC calculator market data.');\n        showRatesError('Failed to load BTC calculator market data.');\n      });\n\n      document.addEventListener('click', function (event) {\n        if (!event.target.closest('.gcp-dropdown')) closeDropdowns();\n        if (!event.target.closest('.gcp-hint')) closeHints();\n      });\n    })();\n  <\/script>\n<\/div>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Convert BTC to USD, EUR and other fiat currencies, check the live Bitcoin price chart, market data, dominance and buy BTC securely.<\/p>\n","protected":false},"author":12,"featured_media":8920,"comment_status":"open","ping_status":"open","sticky":false,"template":"coin-price","format":"standard","meta":{"om_disable_all_campaigns":false,"_uag_custom_page_level_css":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[174],"tags":[],"class_list":["post-8911","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cryptocurrency-news-and-insights"],"uagb_featured_image_src":{"full":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-scaled.jpg",2560,511,false],"thumbnail":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-300x60.jpg",300,60,true],"medium":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-scaled.jpg",2560,511,false],"medium_large":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-768x153.jpg",768,153,true],"large":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-1920x383.jpg",1920,383,true],"1536x1536":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-1536x307.jpg",1536,307,true],"2048x2048":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-2048x409.jpg",2048,409,true],"rpwe-thumbnail":["https:\/\/guardarian.com\/blog\/wp-content\/uploads\/2026\/04\/BTC-Price-and-Calculator-45x45.jpg",45,45,true]},"uagb_author_info":{"display_name":"Daria Liukshina","author_link":"https:\/\/guardarian.com\/blog\/author\/daria-liukshina"},"uagb_comment_info":0,"uagb_excerpt":"Convert BTC to USD, EUR and other fiat currencies, check the live Bitcoin price chart, market data, dominance and buy BTC securely.","_links":{"self":[{"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/posts\/8911","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/comments?post=8911"}],"version-history":[{"count":18,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/posts\/8911\/revisions"}],"predecessor-version":[{"id":8976,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/posts\/8911\/revisions\/8976"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/media\/8920"}],"wp:attachment":[{"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/media?parent=8911"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/categories?post=8911"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/guardarian.com\/blog\/wp-json\/wp\/v2\/tags?post=8911"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}