{"id":3509,"date":"2026-09-28T18:59:53","date_gmt":"2026-09-28T13:29:53","guid":{"rendered":"https:\/\/thefinancialmail.com\/in\/?p=3509"},"modified":"2026-09-28T19:05:07","modified_gmt":"2026-09-28T13:35:07","slug":"upcoming-ipo-gmp","status":"publish","type":"post","link":"https:\/\/thefinancialmail.com\/in\/upcoming-ipo-gmp\/","title":{"rendered":"Upcoming IPO GMP"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"3509\" class=\"elementor elementor-3509\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9fc7f0e e-flex e-con-boxed e-con e-parent\" data-id=\"9fc7f0e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e1622b4 elementor-widget elementor-widget-html\" data-id=\"e1622b4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n  <title>Upcoming IPO GMP - Live Grey Market Premium Tracker<\/title>\n  <style>\n    \/* ==========================================================================\n       STRICTLY ISOLATED CSS - ZERO BLEED GUARANTEE (Scoped to #ipo-gmp-tracker-widget)\n       ========================================================================== *\/\n    #ipo-gmp-tracker-widget {\n      --bg-dark: #070c16;\n      --bg-card: #0c1424;\n      --bg-surface: #101b30;\n      --border-subtle: rgba(255, 255, 255, 0.08);\n      --border-highlight: rgba(56, 189, 248, 0.35);\n      --text-white: #ffffff;\n      --text-main: #e2e8f0;\n      --text-muted: #8492a6;\n      --ipo-cyan: #38bdf8;\n      --ipo-green: #10b981;\n      --ipo-amber: #f59e0b;\n      --ipo-red: #ef4444;\n\n      all: initial;\n      display: block !important;\n      width: 100% !important;\n      max-width: 1200px !important;\n      box-sizing: border-box !important;\n      margin: 20px auto !important;\n      padding: 0 !important;\n      border-radius: 18px !important;\n      background: linear-gradient(160deg, #060a12 0%, #0c1424 50%, #101c33 100%) !important;\n      color: var(--text-main) !important;\n      font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif !important;\n      box-shadow: 0 20px 45px -10px rgba(0, 0, 0, 0.8), 0 0 0 1px var(--border-subtle) !important;\n      overflow: hidden !important;\n      position: relative !important;\n      text-align: left !important;\n      line-height: 1.5 !important;\n      -webkit-font-smoothing: antialiased;\n    }\n\n    #ipo-gmp-tracker-widget *,\n    #ipo-gmp-tracker-widget *::before,\n    #ipo-gmp-tracker-widget *::after {\n      box-sizing: border-box !important;\n      font-family: inherit;\n    }\n\n    \/* --- HEADER BAR --- *\/\n    #ipo-gmp-tracker-widget .igw-header {\n      padding: 18px 24px !important;\n      border-bottom: 1px solid var(--border-subtle) !important;\n      display: flex !important;\n      justify-content: space-between !important;\n      align-items: center !important;\n      flex-wrap: wrap !important;\n      gap: 14px !important;\n      background: rgba(0, 0, 0, 0.25) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-title-wrap {\n      display: flex !important;\n      align-items: center !important;\n      gap: 14px !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-app-icon {\n      width: 42px !important;\n      height: 42px !important;\n      border-radius: 11px !important;\n      background: linear-gradient(135deg, #1e3a8a 0%, #0284c7 100%) !important;\n      border: 1px solid rgba(56, 189, 248, 0.4) !important;\n      display: flex !important;\n      align-items: center !important;\n      justify-content: center !important;\n      box-shadow: 0 4px 14px rgba(2, 132, 199, 0.3) !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-app-icon svg {\n      width: 22px;\n      height: 22px;\n    }\n    #ipo-gmp-tracker-widget .igw-title-text {\n      display: flex !important;\n      flex-direction: column !important;\n      gap: 2px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-heading {\n      margin: 0 !important;\n      font-size: 1.25rem !important;\n      font-weight: 800 !important;\n      color: var(--text-white) !important;\n      letter-spacing: 0.5px !important;\n      text-transform: uppercase !important;\n      line-height: 1.2 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-subtitle {\n      margin: 0 !important;\n      font-size: 0.76rem !important;\n      color: var(--text-muted) !important;\n      font-weight: 500 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-header-badges {\n      display: flex !important;\n      align-items: center !important;\n      gap: 8px !important;\n      flex-wrap: wrap !important;\n    }\n    #ipo-gmp-tracker-widget .igw-badge {\n      background: rgba(255, 255, 255, 0.04) !important;\n      border: 1px solid var(--border-subtle) !important;\n      padding: 6px 13px !important;\n      border-radius: 20px !important;\n      font-size: 0.74rem !important;\n      color: #cbd5e1 !important;\n      font-weight: 500 !important;\n      display: inline-flex !important;\n      align-items: center !important;\n      gap: 6px !important;\n      white-space: nowrap !important;\n    }\n    #ipo-gmp-tracker-widget .igw-badge-status {\n      border-color: rgba(239, 68, 68, 0.4) !important;\n      background: rgba(239, 68, 68, 0.12) !important;\n      color: #f87171 !important;\n      font-weight: 600 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-badge-status.open {\n      border-color: rgba(16, 185, 129, 0.4) !important;\n      background: rgba(16, 185, 129, 0.12) !important;\n      color: #34d399 !important;\n    }\n\n    \/* --- STATUS TABS --- *\/\n    #ipo-gmp-tracker-widget .igw-tabs-container {\n      padding: 16px 24px 8px !important;\n      background: rgba(0, 0, 0, 0.12) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-status-tabs {\n      display: grid !important;\n      grid-template-columns: repeat(3, 1fr) !important;\n      background: #09101d !important;\n      padding: 4px !important;\n      border-radius: 12px !important;\n      border: 1px solid var(--border-subtle) !important;\n      gap: 6px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tab-btn {\n      padding: 10px 16px !important;\n      border-radius: 9px !important;\n      text-align: center !important;\n      font-weight: 700 !important;\n      font-size: 0.82rem !important;\n      color: var(--text-muted) !important;\n      cursor: pointer !important;\n      user-select: none !important;\n      transition: all 0.18s ease !important;\n      display: flex !important;\n      align-items: center !important;\n      justify-content: center !important;\n      gap: 8px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tab-btn:hover {\n      color: var(--text-white) !important;\n      background: rgba(255, 255, 255, 0.04) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tab-btn.active {\n      background: var(--ipo-cyan) !important;\n      color: #06101e !important;\n      box-shadow: 0 2px 10px rgba(56, 189, 248, 0.3) !important;\n    }\n    #ipo-gmp-tracker-widget .count-badge {\n      font-size: 0.7rem !important;\n      padding: 2px 7px !important;\n      border-radius: 9999px !important;\n      background: rgba(0, 0, 0, 0.3) !important;\n      font-weight: 800 !important;\n      color: #ffffff !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tab-btn.active .count-badge {\n      background: rgba(0, 0, 0, 0.28) !important;\n      color: #ffffff !important;\n    }\n\n    \/* --- SECONDARY CONTROLS & PARALLEL TOOLBAR BAR --- *\/\n    #ipo-gmp-tracker-widget .igw-toolbar {\n      padding: 10px 24px 14px !important;\n      display: flex !important;\n      justify-content: space-between !important;\n      align-items: center !important;\n      flex-wrap: nowrap !important;\n      gap: 12px !important;\n      background: rgba(0, 0, 0, 0.12) !important;\n      border-bottom: 1px solid var(--border-subtle) !important;\n      overflow-x: auto !important;\n      -webkit-overflow-scrolling: touch !important;\n      scrollbar-width: none !important;\n    }\n    #ipo-gmp-tracker-widget .igw-toolbar::-webkit-scrollbar {\n      display: none !important;\n    }\n    #ipo-gmp-tracker-widget .igw-cat-pills {\n      display: flex !important;\n      gap: 6px !important;\n      align-items: center !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-pill {\n      padding: 6px 13px !important;\n      border-radius: 20px !important;\n      font-size: 0.74rem !important;\n      font-weight: 600 !important;\n      background: rgba(255, 255, 255, 0.04) !important;\n      border: 1px solid var(--border-subtle) !important;\n      color: #94a3b8 !important;\n      cursor: pointer !important;\n      transition: all 0.15s ease !important;\n      user-select: none !important;\n      white-space: nowrap !important;\n    }\n    #ipo-gmp-tracker-widget .igw-pill:hover {\n      color: var(--text-white) !important;\n      border-color: rgba(255, 255, 255, 0.25) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-pill.active {\n      background: rgba(56, 189, 248, 0.14) !important;\n      border-color: var(--ipo-cyan) !important;\n      color: #38bdf8 !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-controls-right {\n      display: flex !important;\n      align-items: center !important;\n      gap: 8px !important;\n      flex-shrink: 0 !important;\n      justify-content: flex-end !important;\n      margin-left: auto !important;\n    }\n    #ipo-gmp-tracker-widget .igw-search-box {\n      position: relative !important;\n      width: 180px !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-search-box input {\n      width: 100% !important;\n      background: #09111f !important;\n      border: 1px solid var(--border-subtle) !important;\n      border-radius: 8px !important;\n      padding: 7px 10px 7px 30px !important;\n      color: #ffffff !important;\n      font-size: 0.75rem !important;\n      outline: none !important;\n      transition: border-color 0.2s !important;\n    }\n    #ipo-gmp-tracker-widget .igw-search-box input:focus {\n      border-color: var(--ipo-cyan) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-search-box .search-icon {\n      position: absolute !important;\n      left: 10px !important;\n      top: 50% !important;\n      transform: translateY(-50%) !important;\n      font-size: 11px !important;\n      color: #64748b !important;\n      pointer-events: none !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-sort-select {\n      background: #09111f !important;\n      color: #cbd5e1 !important;\n      border: 1px solid var(--border-subtle) !important;\n      border-radius: 8px !important;\n      padding: 7px 10px !important;\n      font-size: 0.75rem !important;\n      outline: none !important;\n      cursor: pointer !important;\n      flex-shrink: 0 !important;\n      white-space: nowrap !important;\n    }\n    #ipo-gmp-tracker-widget .igw-sort-select option {\n      background: #09111f !important;\n      color: #ffffff !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-view-toggle {\n      display: flex !important;\n      background: #09111f !important;\n      border: 1px solid var(--border-subtle) !important;\n      border-radius: 8px !important;\n      padding: 2px !important;\n      gap: 2px !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-view-btn {\n      background: transparent !important;\n      border: none !important;\n      color: #64748b !important;\n      padding: 5px 9px !important;\n      border-radius: 6px !important;\n      cursor: pointer !important;\n      font-size: 0.85rem !important;\n      line-height: 1 !important;\n      transition: all 0.15s ease !important;\n    }\n    #ipo-gmp-tracker-widget .igw-view-btn.active {\n      background: rgba(56, 189, 248, 0.2) !important;\n      color: var(--ipo-cyan) !important;\n    }\n\n    \/* --- TABLE LAYOUT (SCREENER-STYLE FROZEN FIRST COLUMN) --- *\/\n    #ipo-gmp-tracker-widget .igw-table-wrapper {\n      width: 100% !important;\n      overflow-x: auto !important;\n      -webkit-overflow-scrolling: touch !important;\n      display: none;\n      background: #080d19 !important;\n      position: relative !important;\n    }\n    #ipo-gmp-tracker-widget .igw-table-wrapper.active {\n      display: block !important;\n    }\n    #ipo-gmp-tracker-widget table {\n      width: 100% !important;\n      border-collapse: separate !important;\n      border-spacing: 0 !important;\n      text-align: left !important;\n      font-size: 0.82rem !important;\n      min-width: 820px !important;\n    }\n    #ipo-gmp-tracker-widget th {\n      background: #0b1322 !important;\n      color: #8492a6 !important;\n      font-weight: 700 !important;\n      padding: 12px 14px !important;\n      font-size: 0.72rem !important;\n      text-transform: uppercase !important;\n      letter-spacing: 0.5px !important;\n      border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;\n      border-right: 1px solid rgba(255, 255, 255, 0.05) !important;\n      white-space: nowrap !important;\n      user-select: none !important;\n      cursor: pointer !important;\n      transition: background 0.15s ease !important;\n    }\n    #ipo-gmp-tracker-widget th:last-child {\n      border-right: none !important;\n      cursor: default !important;\n    }\n    #ipo-gmp-tracker-widget th:hover:not(:last-child) {\n      background: rgba(255, 255, 255, 0.03) !important;\n      color: #ffffff !important;\n    }\n    #ipo-gmp-tracker-widget .th-content {\n      display: inline-flex !important;\n      align-items: center !important;\n      gap: 6px !important;\n      white-space: nowrap !important;\n    }\n    #ipo-gmp-tracker-widget .igw-sort-svg {\n      width: 8px !important;\n      height: 12px !important;\n      flex-shrink: 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-sort-svg .arrow-up,\n    #ipo-gmp-tracker-widget .igw-sort-svg .arrow-down {\n      fill: #475569;\n      transition: fill 0.15s ease, opacity 0.15s ease;\n    }\n    #ipo-gmp-tracker-widget th.sorted-asc .arrow-up {\n      fill: var(--ipo-cyan);\n    }\n    #ipo-gmp-tracker-widget th.sorted-asc .arrow-down {\n      fill: #1e293b;\n      opacity: 0.3;\n    }\n    #ipo-gmp-tracker-widget th.sorted-desc .arrow-down {\n      fill: var(--ipo-cyan);\n    }\n    #ipo-gmp-tracker-widget th.sorted-desc .arrow-up {\n      fill: #1e293b;\n      opacity: 0.3;\n    }\n\n    #ipo-gmp-tracker-widget td {\n      padding: 13px 14px !important;\n      border-bottom: 1px solid rgba(255, 255, 255, 0.04) !important;\n      border-right: 1px solid rgba(255, 255, 255, 0.05) !important;\n      color: #cbd5e1 !important;\n      vertical-align: middle !important;\n      background: #080e1a !important;\n    }\n    #ipo-gmp-tracker-widget td:last-child {\n      border-right: none !important;\n    }\n    #ipo-gmp-tracker-widget tr:hover td {\n      background: #0c1424 !important;\n    }\n\n    \/* SCREENER.IN STYLE: FROZEN \/ STICKY FIRST COLUMN (COMPANY NAME) *\/\n    #ipo-gmp-tracker-widget th:first-child,\n    #ipo-gmp-tracker-widget td:first-child {\n      position: sticky !important;\n      left: 0 !important;\n      z-index: 10 !important;\n      background: #0b1322 !important;\n      box-shadow: 3px 0 10px rgba(0, 0, 0, 0.6) !important;\n      border-right: 1px solid rgba(56, 189, 248, 0.25) !important;\n      min-width: 165px !important;\n      max-width: 200px !important;\n    }\n    #ipo-gmp-tracker-widget td:first-child {\n      background: #080e1a !important;\n      z-index: 8 !important;\n    }\n    #ipo-gmp-tracker-widget tr:hover td:first-child {\n      background: #0c1424 !important;\n    }\n\n    \/* Trend indicator dot *\/\n    #ipo-gmp-tracker-widget .trend-indicator {\n      display: inline-block !important;\n      font-size: 0.68rem !important;\n      line-height: 1 !important;\n      margin-left: 3px !important;\n      vertical-align: middle !important;\n    }\n\n    \/* Badges *\/\n    #ipo-gmp-tracker-widget .badge-mainboard {\n      background: rgba(14, 165, 233, 0.12) !important;\n      color: #38bdf8 !important;\n      border: 1px solid rgba(56, 189, 248, 0.35) !important;\n      font-size: 0.65rem !important;\n      font-weight: 800 !important;\n      padding: 3px 8px !important;\n      border-radius: 4px !important;\n      text-transform: uppercase !important;\n      letter-spacing: 0.5px !important;\n      white-space: nowrap !important;\n      display: inline-block !important;\n    }\n    #ipo-gmp-tracker-widget .badge-sme {\n      background: rgba(245, 158, 11, 0.12) !important;\n      color: #fbbf24 !important;\n      border: 1px solid rgba(245, 158, 11, 0.35) !important;\n      font-size: 0.65rem !important;\n      font-weight: 800 !important;\n      padding: 3px 8px !important;\n      border-radius: 4px !important;\n      text-transform: uppercase !important;\n      letter-spacing: 0.5px !important;\n      white-space: nowrap !important;\n      display: inline-block !important;\n    }\n\n    #ipo-gmp-tracker-widget .btn-table-action {\n      background: rgba(56, 189, 248, 0.1) !important;\n      border: 1px solid rgba(56, 189, 248, 0.3) !important;\n      color: var(--ipo-cyan) !important;\n      padding: 5px 10px !important;\n      border-radius: 6px !important;\n      font-size: 0.72rem !important;\n      font-weight: 700 !important;\n      cursor: pointer !important;\n      transition: all 0.15s ease !important;\n      white-space: nowrap !important;\n    }\n    #ipo-gmp-tracker-widget .btn-table-action:hover {\n      background: var(--ipo-cyan) !important;\n      color: #06101e !important;\n    }\n\n    \/* --- CARDS GRID (OPTIONAL VIEW) --- *\/\n    #ipo-gmp-tracker-widget .igw-cards-grid {\n      padding: 20px 24px !important;\n      display: grid !important;\n      grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;\n      gap: 16px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-ipo-card {\n      background: #0a1120 !important;\n      border: 1px solid var(--border-subtle) !important;\n      border-radius: 14px !important;\n      padding: 16px !important;\n      display: flex !important;\n      flex-direction: column !important;\n      justify-content: space-between !important;\n      transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-ipo-card:hover {\n      border-color: var(--border-highlight) !important;\n      background: #0e172a !important;\n      transform: translateY(-2px) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-card-header {\n      display: flex !important;\n      justify-content: space-between !important;\n      align-items: flex-start !important;\n      gap: 10px !important;\n      margin-bottom: 12px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-card-title {\n      font-size: 1.02rem !important;\n      font-weight: 800 !important;\n      color: #ffffff !important;\n      margin: 0 !important;\n      line-height: 1.25 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-card-sub {\n      font-size: 0.72rem !important;\n      color: var(--text-muted) !important;\n      margin-top: 3px !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-gmp-box {\n      background: radial-gradient(circle at 10% 50%, rgba(16, 185, 129, 0.12), transparent 70%), #080d19 !important;\n      border: 1px solid rgba(16, 185, 129, 0.25) !important;\n      border-radius: 10px !important;\n      padding: 10px 14px !important;\n      display: flex !important;\n      justify-content: space-between !important;\n      align-items: center !important;\n      margin-bottom: 12px !important;\n    }\n    #ipo-gmp-tracker-widget .gmp-label {\n      font-size: 0.68rem !important;\n      text-transform: uppercase !important;\n      letter-spacing: 0.5px !important;\n      color: #34d399 !important;\n      font-weight: 700 !important;\n    }\n    #ipo-gmp-tracker-widget .gmp-val-card {\n      font-size: 1.2rem !important;\n      font-weight: 800 !important;\n      color: #34d399 !important;\n      margin-top: 1px !important;\n    }\n    #ipo-gmp-tracker-widget .est-gain-card {\n      font-size: 0.8rem !important;\n      font-weight: 700 !important;\n      padding: 3px 8px !important;\n      border-radius: 6px !important;\n      background: rgba(16, 185, 129, 0.2) !important;\n      color: #34d399 !important;\n      text-align: right !important;\n    }\n    #ipo-gmp-tracker-widget .est-price-card {\n      font-size: 0.7rem !important;\n      color: var(--text-muted) !important;\n      margin-top: 2px !important;\n      text-align: right !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-card-metrics {\n      display: grid !important;\n      grid-template-columns: 1fr 1fr !important;\n      gap: 8px !important;\n      background: #080e1a !important;\n      border-radius: 9px !important;\n      padding: 10px 12px !important;\n      margin-bottom: 12px !important;\n      border: 1px solid rgba(255, 255, 255, 0.04) !important;\n    }\n    #ipo-gmp-tracker-widget .metric-cell {\n      display: flex !important;\n      flex-direction: column !important;\n      gap: 2px !important;\n    }\n    #ipo-gmp-tracker-widget .metric-cell .lbl {\n      font-size: 0.68rem !important;\n      color: var(--text-muted) !important;\n      text-transform: uppercase !important;\n      letter-spacing: 0.4px !important;\n    }\n    #ipo-gmp-tracker-widget .metric-cell .val {\n      font-size: 0.88rem !important;\n      font-weight: 700 !important;\n      color: #ffffff !important;\n    }\n\n    #ipo-gmp-tracker-widget .igw-card-footer {\n      display: flex !important;\n      align-items: center !important;\n      justify-content: space-between !important;\n      gap: 8px !important;\n      padding-top: 8px !important;\n      border-top: 1px solid rgba(255, 255, 255, 0.06) !important;\n    }\n    #ipo-gmp-tracker-widget .sub-rate-card {\n      font-size: 0.75rem !important;\n      color: #94a3b8 !important;\n    }\n    #ipo-gmp-tracker-widget .sub-rate-card strong {\n      color: var(--ipo-cyan) !important;\n    }\n\n    \/* --- MODAL DRAWER --- *\/\n    #ipo-gmp-tracker-widget .igw-modal-backdrop {\n      position: fixed !important;\n      inset: 0 !important;\n      background: rgba(0, 0, 0, 0.8) !important;\n      backdrop-filter: blur(5px) !important;\n      -webkit-backdrop-filter: blur(5px) !important;\n      z-index: 999999 !important;\n      display: none;\n      align-items: center !important;\n      justify-content: center !important;\n      padding: 20px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-modal-backdrop.show {\n      display: flex !important;\n    }\n    #ipo-gmp-tracker-widget .igw-modal-card {\n      background: #09111f !important;\n      border: 1px solid var(--border-highlight) !important;\n      border-radius: 18px !important;\n      max-width: 480px !important;\n      width: 100% !important;\n      padding: 24px !important;\n      color: #ffffff !important;\n      box-shadow: 0 25px 60px rgba(0, 0, 0, 0.95) !important;\n      position: relative !important;\n    }\n    #ipo-gmp-tracker-widget .igw-modal-close {\n      position: absolute !important;\n      top: 16px !important;\n      right: 16px !important;\n      background: transparent !important;\n      border: none !important;\n      color: var(--text-muted) !important;\n      font-size: 1.4rem !important;\n      cursor: pointer !important;\n      line-height: 1 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-modal-close:hover {\n      color: #ffffff !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tier-grid {\n      display: grid !important;\n      grid-template-columns: 1fr 1fr !important;\n      gap: 10px !important;\n      margin: 16px 0 !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tier-box {\n      background: #050a14 !important;\n      padding: 12px !important;\n      border-radius: 10px !important;\n      border: 1px solid var(--border-subtle) !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tier-title {\n      font-size: 0.7rem !important;\n      font-weight: 700 !important;\n      text-transform: uppercase !important;\n      color: var(--ipo-cyan) !important;\n      margin-bottom: 4px !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tier-cost {\n      font-size: 1.05rem !important;\n      font-weight: 800 !important;\n      color: #ffffff !important;\n    }\n    #ipo-gmp-tracker-widget .igw-tier-sub {\n      font-size: 0.68rem !important;\n      color: var(--text-muted) !important;\n      margin-top: 2px !important;\n    }\n\n    \/* Disclaimer *\/\n    #ipo-gmp-tracker-widget .igw-disclaimer {\n      padding: 12px 24px !important;\n      border-top: 1px solid var(--border-subtle) !important;\n      font-size: 0.7rem !important;\n      color: #64748b !important;\n      display: flex !important;\n      flex-wrap: wrap !important;\n      justify-content: space-between !important;\n      gap: 8px !important;\n      background: rgba(0, 0, 0, 0.2) !important;\n    }\n\n    \/* --- MOBILE BREAKPOINT (< 680px) --- *\/\n    @media (max-width: 680px) {\n      #ipo-gmp-tracker-widget .igw-header {\n        display: grid !important;\n        grid-template-columns: 1fr auto !important;\n        grid-template-areas: \n          \"title status\"\n          \"meta meta\" !important;\n        gap: 12px 10px !important;\n        padding: 16px 18px !important;\n      }\n      #ipo-gmp-tracker-widget .igw-title-wrap {\n        grid-area: title !important;\n      }\n      #ipo-gmp-tracker-widget .igw-header-badges {\n        grid-area: meta !important;\n        width: 100% !important;\n        justify-content: space-between !important;\n        border-top: 1px solid rgba(255, 255, 255, 0.06) !important;\n        padding-top: 10px !important;\n      }\n      #ipo-gmp-tracker-widget .igw-tabs-container {\n        padding: 12px 16px 6px !important;\n      }\n      #ipo-gmp-tracker-widget .igw-status-tabs {\n        width: 100% !important;\n      }\n      #ipo-gmp-tracker-widget .igw-tab-btn {\n        padding: 7px 4px !important;\n        font-size: 0.74rem !important;\n      }\n      #ipo-gmp-tracker-widget .igw-toolbar {\n        padding: 10px 16px !important;\n        gap: 8px !important;\n      }\n      #ipo-gmp-tracker-widget .igw-pill {\n        padding: 6px 10px !important;\n        font-size: 0.72rem !important;\n      }\n      #ipo-gmp-tracker-widget .igw-search-box {\n        width: 125px !important;\n      }\n      #ipo-gmp-tracker-widget .igw-search-box input {\n        padding: 6px 8px 6px 26px !important;\n        font-size: 0.72rem !important;\n      }\n      #ipo-gmp-tracker-widget .igw-sort-select {\n        padding: 6px 8px !important;\n        font-size: 0.72rem !important;\n      }\n      #ipo-gmp-tracker-widget .igw-tier-grid {\n        grid-template-columns: 1fr !important;\n      }\n      #ipo-gmp-tracker-widget .igw-cards-grid {\n        padding: 16px !important;\n        grid-template-columns: 1fr !important;\n      }\n      #ipo-gmp-tracker-widget th:first-child,\n      #ipo-gmp-tracker-widget td:first-child {\n        min-width: 135px !important;\n        max-width: 155px !important;\n        padding: 10px 10px !important;\n      }\n      #ipo-gmp-tracker-widget td {\n        padding: 10px 10px !important;\n      }\n    }\n  <\/style>\n<\/head>\n<body>\n\n  <!-- ROOT CONTAINER -->\n  <div id=\"ipo-gmp-tracker-widget\" data-default-tab=\"upcoming\">\n    \n    <!-- Header with Live Market & Clock -->\n    <div class=\"igw-header\">\n      <div class=\"igw-title-wrap\">\n        <div class=\"igw-app-icon\">\n          <svg viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n            <path d=\"M4 19L20 19\" stroke=\"#ffffff\" stroke-width=\"2\" stroke-linecap=\"round\"\/>\n            <path d=\"M6 14L10 8L14 12L19 5\" stroke=\"#38bdf8\" stroke-width=\"2.2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n            <path d=\"M19 5H15M19 5V9\" stroke=\"#38bdf8\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\/>\n          <\/svg>\n        <\/div>\n        <div class=\"igw-title-text\">\n          <h2 class=\"igw-heading\">IPO GMP Today<\/h2>\n          <p class=\"igw-subtitle\">Grey Market Premium, Kostak & Estimated Listing Price<\/p>\n        <\/div>\n      <\/div>\n      <div class=\"igw-header-badges\">\n        <span class=\"igw-badge igw-date-pill\">Mon, 28 Sept<\/span>\n        <span class=\"igw-badge igw-time-pill\">-- IST<\/span>\n        <span class=\"igw-badge igw-badge-status igw-market-pill\">Checking NSE...<\/span>\n      <\/div>\n    <\/div>\n\n    <!-- Status Navigation Row -->\n    <div class=\"igw-tabs-container\">\n      <div class=\"igw-status-tabs\">\n        <div class=\"igw-tab-btn\" data-status=\"open\">\n          <span>Live \/ Open<\/span>\n          <span class=\"count-badge\" id=\"count-open\">4<\/span>\n        <\/div>\n        <div class=\"igw-tab-btn active\" data-status=\"upcoming\">\n          <span>Upcoming<\/span>\n          <span class=\"count-badge\" id=\"count-upcoming\">4<\/span>\n        <\/div>\n        <div class=\"igw-tab-btn\" data-status=\"listed\">\n          <span>Recently Listed<\/span>\n          <span class=\"count-badge\" id=\"count-listed\">3<\/span>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- Toolbar: Segment Pills & Search \/ Sort -->\n    <div class=\"igw-toolbar\">\n      <div class=\"igw-cat-pills\">\n        <div class=\"igw-pill active\" data-cat=\"all\">All IPOs<\/div>\n        <div class=\"igw-pill\" data-cat=\"mainboard\">Mainboard<\/div>\n        <div class=\"igw-pill\" data-cat=\"sme\">SME Segment<\/div>\n      <\/div>\n\n      <div class=\"igw-controls-right\">\n        <div class=\"igw-search-box\">\n          <span class=\"search-icon\">\ud83d\udd0d<\/span>\n          <input type=\"text\" id=\"igw-search-input\" placeholder=\"Search IPO or Registrar...\">\n        <\/div>\n        <select id=\"igw-sort-by\" class=\"igw-sort-select\">\n          <option value=\"gmp_desc\">Highest GMP (%)<\/option>\n          <option value=\"date_asc\">Dates (Nearest)<\/option>\n          <option value=\"size_desc\">Issue Size<\/option>\n          <option value=\"name_asc\">Name (A-Z)<\/option>\n        <\/select>\n        <div class=\"igw-view-toggle\">\n          <button class=\"igw-view-btn active\" id=\"btn-view-table\" title=\"Table View\">\u2630<\/button>\n          <button class=\"igw-view-btn\" id=\"btn-view-cards\" title=\"Cards View\">\u229e<\/button>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- Table View (Default) -->\n    <div class=\"igw-table-wrapper active\" id=\"igw-table-container\">\n      <table>\n        <thead>\n          <tr>\n            <th class=\"igw-th-sortable\" data-sort-key=\"name\">\n              <div class=\"th-content\">\n                <span>COMPANY NAME<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"type\">\n              <div class=\"th-content\">\n                <span>TYPE<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"price\">\n              <div class=\"th-content\">\n                <span>ISSUE PRICE<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable sorted-desc\" data-sort-key=\"gmp\">\n              <div class=\"th-content\">\n                <span>GMP (\u20b9)<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"estListing\">\n              <div class=\"th-content\">\n                <span>EST. LISTING<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"minInv\">\n              <div class=\"th-content\">\n                <span>LOT \/ MIN \u20b9<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"date\">\n              <div class=\"th-content\">\n                <span>DATES<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th class=\"igw-th-sortable\" data-sort-key=\"sub\">\n              <div class=\"th-content\">\n                <span>SUBSCRIPTION<\/span>\n                <svg class=\"igw-sort-svg\" viewBox=\"0 0 8 12\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                  <path class=\"arrow-up\" d=\"M4 1L7.5 5H0.5L4 1Z\"\/>\n                  <path class=\"arrow-down\" d=\"M4 11L0.5 7H7.5L4 11Z\"\/>\n                <\/svg>\n              <\/div>\n            <\/th>\n            <th>ACTION<\/th>\n          <\/tr>\n        <\/thead>\n        <tbody id=\"igw-table-body\">\n          <!-- Dynamic rows populated here -->\n        <\/tbody>\n      <\/table>\n    <\/div>\n\n    <!-- Cards Grid (Optional View) -->\n    <div class=\"igw-cards-grid\" id=\"igw-cards-container\" style=\"display: none;\">\n      <!-- Dynamic cards populated here -->\n    <\/div>\n\n    <!-- Empty State -->\n    <div id=\"igw-no-results\" style=\"display: none; text-align: center; padding: 40px 16px; color: var(--text-muted);\">\n      <p style=\"font-size: 15px; margin: 0 0 6px;\">No IPOs found matching your current filter.<\/p>\n      <span style=\"font-size: 12px;\">Try switching between Mainboard, SME, or clearing the search query.<\/span>\n    <\/div>\n\n    <!-- SEBI Lot \/ Bid Estimator Modal Drawer -->\n    <div class=\"igw-modal-backdrop\" id=\"igw-modal\">\n      <div class=\"igw-modal-card\">\n        <button class=\"igw-modal-close\" id=\"igw-modal-close-btn\">&times;<\/button>\n        <div style=\"font-size: 11px; color: var(--ipo-cyan); font-weight: 700; text-transform: uppercase;\">SEBI Bid Application Planner<\/div>\n        <h3 id=\"igw-modal-title\" style=\"margin: 4px 0 12px; font-size: 17px; color: #fff;\">Company Name<\/h3>\n        <p style=\"margin: 0 0 12px; font-size: 12px; color: var(--text-muted);\">\n          Price Band: <strong id=\"modal-price-band\" style=\"color: #fff;\">\u20b90<\/strong> | \n          Lot Size: <strong id=\"modal-lot-size\" style=\"color: #fff;\">0 shares<\/strong>\n        <\/p>\n\n        <div class=\"igw-tier-grid\">\n          <div class=\"igw-tier-box\">\n            <div class=\"igw-tier-title\">Retail Minimum (1 Lot)<\/div>\n            <div class=\"igw-tier-cost\" id=\"tier-ret-min-val\">\u20b90<\/div>\n            <div class=\"igw-tier-sub\" id=\"tier-ret-min-sub\">1 Lot \u2022 0 Shares<\/div>\n          <\/div>\n          <div class=\"igw-tier-box\">\n            <div class=\"igw-tier-title\">Retail Max (&le; \u20b92 Lakh)<\/div>\n            <div class=\"igw-tier-cost\" id=\"tier-ret-max-val\">\u20b90<\/div>\n            <div class=\"igw-tier-sub\" id=\"tier-ret-max-sub\">0 Lots \u2022 0 Shares<\/div>\n          <\/div>\n          <div class=\"igw-tier-box\">\n            <div class=\"igw-tier-title\">Small HNI \/ sNII (&gt; \u20b92 Lakh)<\/div>\n            <div class=\"igw-tier-cost\" id=\"tier-shni-val\">\u20b90<\/div>\n            <div class=\"igw-tier-sub\" id=\"tier-shni-sub\">0 Lots \u2022 0 Shares<\/div>\n          <\/div>\n          <div class=\"igw-tier-box\">\n            <div class=\"igw-tier-title\">Big HNI \/ bNII (&gt; \u20b910 Lakh)<\/div>\n            <div class=\"igw-tier-cost\" id=\"tier-bhni-val\">\u20b90<\/div>\n            <div class=\"igw-tier-sub\" id=\"tier-bhni-sub\">0 Lots \u2022 0 Shares<\/div>\n          <\/div>\n        <\/div>\n\n        <div style=\"background: rgba(16, 185, 129, 0.12); border: 1px dashed rgba(16, 185, 129, 0.35); border-radius: 8px; padding: 10px; font-size: 12px; color: #34d399;\">\n          <strong>Estimated Profit Potential:<\/strong> <span id=\"modal-profit-line\">\u20b90 per retail lot<\/span> based on current GMP.\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <!-- Legal & Attribution Footer -->\n    <div class=\"igw-disclaimer\">\n      <span>* Grey Market Premium (GMP) is an unregulated OTC indicator and not an official exchange price.<\/span>\n      <span>Source: IPOWatch Benchmark Feed<\/span>\n    <\/div>\n  <\/div>\n\n  <script>\n    (function () {\n      let currentData = null;\n      let activeStatus = \"upcoming\";\n      let activeCategory = \"all\";\n      let searchQuery = \"\";\n      let sortKey = \"gmp\";\n      let sortDir = \"desc\";\n      let currentView = \"table\";\n\n      const root = document.getElementById(\"ipo-gmp-tracker-widget\");\n      const cardsContainer = document.getElementById(\"igw-cards-container\");\n      const tableContainer = document.getElementById(\"igw-table-container\");\n      const tableBody = document.getElementById(\"igw-table-body\");\n      const noResults = document.getElementById(\"igw-no-results\");\n      const searchInput = document.getElementById(\"igw-search-input\");\n      const sortSelect = document.getElementById(\"igw-sort-by\");\n      const modal = document.getElementById(\"igw-modal\");\n\n      function initDateTimeAndMarket() {\n        const dateEl = root.querySelector('.igw-date-pill');\n        const timeEl = root.querySelector('.igw-time-pill');\n        const marketEl = root.querySelector('.igw-market-pill');\n\n        function tick() {\n          const now = new Date();\n          const istDate = new Date(now.toLocaleString(\"en-US\", { timeZone: \"Asia\/Kolkata\" }));\n\n          if (dateEl) {\n            dateEl.textContent = istDate.toLocaleDateString('en-IN', {\n              weekday: 'short', month: 'short', day: 'numeric'\n            });\n          }\n          if (timeEl) {\n            timeEl.textContent = istDate.toLocaleTimeString('en-IN', {\n              hour: 'numeric', minute: '2-digit', second: '2-digit', hour12: true\n            }) + \" IST\";\n          }\n\n          if (marketEl) {\n            const day = istDate.getDay();\n            const mins = istDate.getHours() * 60 + istDate.getMinutes();\n            \/\/ NSE\/BSE IPO bidding hours: 10:00 AM to 5:00 PM IST (Mon-Fri)\n            const isOpen = (day >= 1 && day <= 5) && (mins >= 600 && mins < 1020);\n            if (isOpen) {\n              marketEl.classList.add('open');\n              marketEl.textContent = '\u25cf Bidding: Open';\n            } else {\n              marketEl.classList.remove('open');\n              marketEl.textContent = '\u25cb Bidding: Closed';\n            }\n          }\n        }\n        tick();\n        setInterval(tick, 1000);\n      }\n\n      function loadLiveExternalData() {\n        const script = document.createElement(\"script\");\n        script.src = \"\/datafiles\/india-ipo-gmp-data.js?_t=\" + Date.now();\n        script.onload = () => {\n          const feed = window.INDIA_IPO_GMP_DATA || window.INDIA_IPO_DATA;\n          if (feed) {\n            currentData = Array.isArray(feed) ? feed : (feed.ipos || []);\n            updateCounts();\n            render();\n          }\n        };\n        script.onerror = () => {\n          \/\/ Fallback check to india-ipo-data.js if india-ipo-gmp-data.js is absent\n          const fallbackScript = document.createElement(\"script\");\n          fallbackScript.src = \"\/datafiles\/india-ipo-data.js?_t=\" + Date.now();\n          fallbackScript.onload = () => {\n            const feed = window.INDIA_IPO_GMP_DATA || window.INDIA_IPO_DATA;\n            if (feed) {\n              currentData = Array.isArray(feed) ? feed : (feed.ipos || []);\n              updateCounts();\n              render();\n            }\n          };\n          fallbackScript.onerror = () => {\n            if (!currentData) {\n              render();\n            }\n          };\n          document.head.appendChild(fallbackScript);\n        };\n        document.head.appendChild(script);\n      }\n\n      function detectDefaultTab() {\n        const urlParams = new URLSearchParams(window.location.search);\n        const urlTab = urlParams.get(\"ipo_tab\");\n        const containerAttr = root.getAttribute(\"data-default-tab\");\n        const chosenTab = urlTab || containerAttr || \"upcoming\";\n\n        if ([\"open\", \"upcoming\", \"listed\"].includes(chosenTab)) {\n          activeStatus = chosenTab;\n          document.querySelectorAll(\"#ipo-gmp-tracker-widget .igw-tab-btn\").forEach(btn => {\n            btn.classList.toggle(\"active\", btn.getAttribute(\"data-status\") === activeStatus);\n          });\n        }\n      }\n\n      function updateCounts() {\n        if (!currentData) {\n          document.getElementById(\"count-open\").textContent = \"0\";\n          document.getElementById(\"count-upcoming\").textContent = \"0\";\n          document.getElementById(\"count-listed\").textContent = \"0\";\n          return;\n        }\n        const openCount = currentData.filter(d => d.status === \"open\").length;\n        const upcomingCount = currentData.filter(d => d.status === \"upcoming\").length;\n        const listedCount = currentData.filter(d => d.status === \"listed\").length;\n\n        document.getElementById(\"count-open\").textContent = openCount;\n        document.getElementById(\"count-upcoming\").textContent = upcomingCount;\n        document.getElementById(\"count-listed\").textContent = listedCount;\n      }\n\n      function formatINR(val) {\n        return new Intl.NumberFormat(\"en-IN\", { style: \"currency\", currency: \"INR\", maximumFractionDigits: 0 }).format(val);\n      }\n\n      function getFilteredData() {\n        if (!currentData) return [];\n        return currentData.filter(item => {\n          if (item.status !== activeStatus) return false;\n          if (activeCategory === \"mainboard\" && item.type.toLowerCase() !== \"mainboard\") return false;\n          if (activeCategory === \"sme\" && item.type.toLowerCase() !== \"sme\") return false;\n\n          if (searchQuery.trim() !== \"\") {\n            const q = searchQuery.toLowerCase();\n            const matchName = item.name.toLowerCase().includes(q);\n            const matchReg = item.registrar && item.registrar.toLowerCase().includes(q);\n            if (!matchName && !matchReg) return false;\n          }\n\n          return true;\n        }).sort((a, b) => {\n          let valA, valB;\n\n          switch (sortKey) {\n            case \"name\":\n              return sortDir === \"asc\" ? a.name.localeCompare(b.name) : b.name.localeCompare(a.name);\n            case \"type\":\n              return sortDir === \"asc\" ? a.type.localeCompare(b.type) : b.type.localeCompare(a.type);\n            case \"price\":\n              valA = a.priceMax; valB = b.priceMax; break;\n            case \"gmp\":\n              valA = a.gmp; valB = b.gmp; break;\n            case \"estListing\":\n              valA = a.priceMax + a.gmp; valB = b.priceMax + b.gmp; break;\n            case \"minInv\":\n              valA = a.priceMax * a.lotSize; valB = b.priceMax * b.lotSize; break;\n            case \"date\":\n              valA = new Date(a.openDate).getTime() || 0; valB = new Date(b.openDate).getTime() || 0; break;\n            case \"sub\":\n              valA = a.subOverall || 0; valB = b.subOverall || 0; break;\n            case \"size\":\n              valA = a.issueSizeCr || 0; valB = b.issueSizeCr || 0; break;\n            default:\n              valA = (a.gmp \/ a.priceMax); valB = (b.gmp \/ b.priceMax);\n          }\n\n          return sortDir === \"asc\" ? valA - valB : valB - valA;\n        });\n      }\n\n      function updateHeaderSortIndicators() {\n        document.querySelectorAll(\"#ipo-gmp-tracker-widget th.igw-th-sortable\").forEach(th => {\n          const key = th.getAttribute(\"data-sort-key\");\n          th.classList.remove(\"sorted-asc\", \"sorted-desc\");\n          if (key === sortKey) {\n            th.classList.add(sortDir === \"asc\" ? \"sorted-asc\" : \"sorted-desc\");\n          }\n        });\n      }\n\n      function render() {\n        if (!currentData) {\n          cardsContainer.style.display = \"none\";\n          tableContainer.classList.remove(\"active\");\n          noResults.style.display = \"block\";\n          const p = noResults.querySelector(\"p\");\n          const s = noResults.querySelector(\"span\");\n          if (p) p.textContent = \"Loading live IPO data...\";\n          if (s) s.textContent = \"Connecting to \/datafiles\/india-ipo-gmp-data.js\";\n          return;\n        }\n\n        const filtered = getFilteredData();\n        updateHeaderSortIndicators();\n\n        if (filtered.length === 0) {\n          cardsContainer.style.display = \"none\";\n          tableContainer.classList.remove(\"active\");\n          noResults.style.display = \"block\";\n          const p = noResults.querySelector(\"p\");\n          const s = noResults.querySelector(\"span\");\n          if (p) p.textContent = \"No IPOs found matching your current filter.\";\n          if (s) s.textContent = \"Try switching between Mainboard, SME, or clearing the search query.\";\n          return;\n        }\n\n        noResults.style.display = \"none\";\n\n        if (currentView === \"cards\") {\n          cardsContainer.style.display = \"grid\";\n          tableContainer.classList.remove(\"active\");\n          renderCards(filtered);\n        } else {\n          cardsContainer.style.display = \"none\";\n          tableContainer.classList.add(\"active\");\n          renderTable(filtered);\n        }\n      }\n\n      function renderCards(items) {\n        cardsContainer.innerHTML = items.map(item => {\n          const estPrice = item.priceMax + item.gmp;\n          const estGainPct = ((item.gmp \/ item.priceMax) * 100).toFixed(1);\n          const minInv = item.priceMax * item.lotSize;\n          const lotProfit = item.gmp * item.lotSize;\n\n          return `\n            <div class=\"igw-ipo-card\">\n              <div>\n                <div class=\"igw-card-header\">\n                  <div>\n                    <h4 class=\"igw-card-title\">${item.name}<\/h4>\n                    <div class=\"igw-card-sub\">${item.openDate} \u2013 ${item.closeDate} \u2022 Reg: ${item.registrar || \"Link Intime\"}<\/div>\n                  <\/div>\n                  <span class=\"${item.type.toLowerCase() === 'sme' ? 'badge-sme' : 'badge-mainboard'}\">${item.type}<\/span>\n                <\/div>\n\n                <div class=\"igw-gmp-box\">\n                  <div>\n                    <span class=\"gmp-label\">Live IPO GMP<\/span>\n                    <div class=\"gmp-val-card\">\n                      ${item.gmp > 0 ? \"+\" : \"\"}\u20b9${item.gmp}\n                    <\/div>\n                  <\/div>\n                  <div>\n                    <div class=\"est-gain-card\">${item.gmp >= 0 ? \"+\" : \"\"}${estGainPct}%<\/div>\n                    <div class=\"est-price-card\">Est: \u20b9${estPrice}<\/div>\n                  <\/div>\n                <\/div>\n\n                <div class=\"igw-card-metrics\">\n                  <div class=\"metric-cell\">\n                    <span class=\"lbl\">Price Band<\/span>\n                    <span class=\"val\">\u20b9${item.priceMin} \u2013 \u20b9${item.priceMax}<\/span>\n                  <\/div>\n                  <div class=\"metric-cell\">\n                    <span class=\"lbl\">Min. Investment<\/span>\n                    <span class=\"val\">${formatINR(minInv)} <small style=\"font-size:0.68rem; color:#64748b\">(${item.lotSize} sh)<\/small><\/span>\n                  <\/div>\n                  <div class=\"metric-cell\">\n                    <span class=\"lbl\">Issue Size<\/span>\n                    <span class=\"val\">\u20b9${item.issueSizeCr} Cr<\/span>\n                  <\/div>\n                  <div class=\"metric-cell\">\n                    <span class=\"lbl\">Est. Lot Profit<\/span>\n                    <span class=\"val\" style=\"color: #34d399;\">+${formatINR(lotProfit)}<\/span>\n                  <\/div>\n                <\/div>\n              <\/div>\n\n              <div class=\"igw-card-footer\">\n                <div class=\"sub-rate-card\">\n                  <span>Sub:<\/span>\n                  <strong>${item.subOverall > 0 ? item.subOverall + \"x\" : \"Awaited\"}<\/strong>\n                  ${item.subRetail > 0 ? `<span style=\"font-size: 10px; color:#64748b;\">(Ret: ${item.subRetail}x)<\/span>` : \"\"}\n                <\/div>\n                <button class=\"btn-table-action\" onclick=\"window.__openIpoModal('${item.id}')\">\ud83e\uddee Lot Planner<\/button>\n              <\/div>\n            <\/div>\n          `;\n        }).join(\"\");\n      }\n\n      function renderTable(items) {\n        tableBody.innerHTML = items.map(item => {\n          const estPrice = item.priceMax + item.gmp;\n          const estGainPct = ((item.gmp \/ item.priceMax) * 100).toFixed(1);\n          const minInv = item.priceMax * item.lotSize;\n          const isSme = item.type.toLowerCase() === 'sme';\n          \n          let trendEmoji = \"\ud83d\udfe2\";\n          if (item.trend === \"down\") trendEmoji = \"\ud83d\udd34\";\n          else if (item.trend === \"flat\" || item.gmp === 0) trendEmoji = \"\ud83d\udfe1\";\n\n          return `\n            <tr>\n              <td>\n                <strong style=\"color: #ffffff; display: block; font-size: 0.88rem; font-weight: 700; white-space: normal; line-height: 1.25;\">${item.name}<\/strong>\n                <span style=\"font-size: 0.72rem; color: #64748b; display: block; margin-top: 2px;\">${item.registrar}<\/span>\n              <\/td>\n              <td>\n                <span class=\"${isSme ? 'badge-sme' : 'badge-mainboard'}\">${item.type}<\/span>\n              <\/td>\n              <td style=\"color: #cbd5e1; font-weight: 600; white-space: nowrap;\">\u20b9${item.priceMin} \u2013 \u20b9${item.priceMax}<\/td>\n              <td style=\"color: #34d399; font-weight: 800; font-size: 0.96rem; white-space: nowrap;\">\n                +\u20b9${item.gmp} <span class=\"trend-indicator\">${trendEmoji}<\/span>\n              <\/td>\n              <td style=\"white-space: nowrap;\">\n                <div style=\"color: #34d399; font-weight: 700; font-size: 0.88rem;\">\u20b9${estPrice}<\/div>\n                <div style=\"font-size: 0.72rem; color: #34d399;\">(${estGainPct}%)<\/div>\n              <\/td>\n              <td style=\"white-space: nowrap;\">\n                <div style=\"color: #ffffff; font-weight: 600;\">${item.lotSize} sh<\/div>\n                <div style=\"font-size: 0.72rem; color: #64748b;\">${formatINR(minInv)}<\/div>\n              <\/td>\n              <td style=\"color: #cbd5e1; font-size: 0.78rem; white-space: nowrap;\">${item.openDate.split(\" \")[0]}\u2013${item.closeDate}<\/td>\n              <td style=\"white-space: nowrap;\">\n                <strong style=\"color: #ffffff; font-size: 0.86rem;\">${item.subOverall > 0 ? item.subOverall + \"x\" : \"\u2014\"}<\/strong>\n              <\/td>\n              <td>\n                <button class=\"btn-table-action\" onclick=\"window.__openIpoModal('${item.id}')\">\ud83e\uddee Planner<\/button>\n              <\/td>\n            <\/tr>\n          `;\n        }).join(\"\");\n      }\n\n      window.__openIpoModal = function (ipoId) {\n        const item = currentData.find(d => d.id === ipoId);\n        if (!item) return;\n\n        const maxPrice = item.priceMax;\n        const lot = item.lotSize;\n        const singleLotCost = maxPrice * lot;\n        const estProfitPerLot = item.gmp * lot;\n\n        const retMaxLots = Math.floor(200000 \/ singleLotCost) || 1;\n        const retMaxCost = retMaxLots * singleLotCost;\n\n        const sHniLots = Math.ceil(200001 \/ singleLotCost);\n        const sHniCost = sHniLots * singleLotCost;\n\n        const bHniLots = Math.ceil(1000001 \/ singleLotCost);\n        const bHniCost = bHniLots * singleLotCost;\n\n        document.getElementById(\"igw-modal-title\").textContent = item.name + \" (\" + item.type + \")\";\n        document.getElementById(\"modal-price-band\").textContent = \"\u20b9\" + maxPrice + \" (Cap)\";\n        document.getElementById(\"modal-lot-size\").textContent = lot + \" Shares\";\n\n        document.getElementById(\"tier-ret-min-val\").textContent = formatINR(singleLotCost);\n        document.getElementById(\"tier-ret-min-sub\").textContent = \"1 Lot \u2022 \" + lot + \" Shares\";\n\n        document.getElementById(\"tier-ret-max-val\").textContent = formatINR(retMaxCost);\n        document.getElementById(\"tier-ret-max-sub\").textContent = retMaxLots + \" Lots \u2022 \" + (retMaxLots * lot) + \" Shares\";\n\n        document.getElementById(\"tier-shni-val\").textContent = formatINR(sHniCost);\n        document.getElementById(\"tier-shni-sub\").textContent = sHniLots + \" Lots \u2022 \" + (sHniLots * lot) + \" Shares\";\n\n        document.getElementById(\"tier-bhni-val\").textContent = formatINR(bHniCost);\n        document.getElementById(\"tier-bhni-sub\").textContent = bHniLots + \" Lots \u2022 \" + (bHniLots * lot) + \" Shares\";\n\n        document.getElementById(\"modal-profit-line\").textContent = formatINR(estProfitPerLot) + \" per retail lot\";\n\n        modal.classList.add(\"show\");\n      };\n\n      document.getElementById(\"igw-modal-close-btn\").addEventListener(\"click\", () => {\n        modal.classList.remove(\"show\");\n      });\n      modal.addEventListener(\"click\", (e) => {\n        if (e.target === modal) modal.classList.remove(\"show\");\n      });\n\n      document.querySelectorAll(\"#ipo-gmp-tracker-widget .igw-tab-btn\").forEach(btn => {\n        btn.addEventListener(\"click\", () => {\n          document.querySelectorAll(\"#ipo-gmp-tracker-widget .igw-tab-btn\").forEach(b => b.classList.remove(\"active\"));\n          btn.classList.add(\"active\");\n          activeStatus = btn.getAttribute(\"data-status\");\n          render();\n        });\n      });\n\n      document.querySelectorAll(\"#ipo-gmp-tracker-widget .igw-pill\").forEach(pill => {\n        pill.addEventListener(\"click\", () => {\n          document.querySelectorAll(\"#ipo-gmp-tracker-widget .igw-pill\").forEach(p => p.classList.remove(\"active\"));\n          pill.classList.add(\"active\");\n          activeCategory = pill.getAttribute(\"data-cat\");\n          render();\n        });\n      });\n\n      searchInput.addEventListener(\"input\", (e) => {\n        searchQuery = e.target.value;\n        render();\n      });\n\n      sortSelect.addEventListener(\"change\", (e) => {\n        const val = e.target.value;\n        if (val === \"gmp_desc\") { sortKey = \"gmp\"; sortDir = \"desc\"; }\n        else if (val === \"date_asc\") { sortKey = \"date\"; sortDir = \"asc\"; }\n        else if (val === \"size_desc\") { sortKey = \"size\"; sortDir = \"desc\"; }\n        else if (val === \"name_asc\") { sortKey = \"name\"; sortDir = \"asc\"; }\n        render();\n      });\n\n      \/\/ Table Header Click Sort\n      document.querySelectorAll(\"#ipo-gmp-tracker-widget th.igw-th-sortable\").forEach(th => {\n        th.addEventListener(\"click\", function () {\n          const clickedKey = this.getAttribute(\"data-sort-key\");\n          if (sortKey === clickedKey) {\n            sortDir = sortDir === \"asc\" ? \"desc\" : \"asc\";\n          } else {\n            sortKey = clickedKey;\n            sortDir = (clickedKey === \"name\" || clickedKey === \"type\" || clickedKey === \"date\") ? \"asc\" : \"desc\";\n          }\n          render();\n        });\n      });\n\n      document.getElementById(\"btn-view-cards\").addEventListener(\"click\", function () {\n        currentView = \"cards\";\n        this.classList.add(\"active\");\n        document.getElementById(\"btn-view-table\").classList.remove(\"active\");\n        render();\n      });\n\n      document.getElementById(\"btn-view-table\").addEventListener(\"click\", function () {\n        currentView = \"table\";\n        this.classList.add(\"active\");\n        document.getElementById(\"btn-view-cards\").classList.remove(\"active\");\n        render();\n      });\n\n      initDateTimeAndMarket();\n      detectDefaultTab();\n      updateCounts();\n      render();\n      loadLiveExternalData();\n    })();\n  <\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>&nbsp; IPO GMP Today Grey Market Premium, Kostak &amp; Estimated Listing Price Mon, 28 Sept &#8212; IST Checking NSE&#8230; Live \/ Open 4 Upcoming 4 Recently Listed 3 All IPOs Mainboard SME Segment \ud83d\udd0d Highest GMP (%)Dates (Nearest)Issue SizeName (A-Z) \u2630 \u229e COMPANY NAME TYPE ISSUE PRICE GMP (\u20b9) EST. LISTING LOT \/ MIN \u20b9 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-3509","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-news"},"jetpack_featured_media_url":"","jetpack-related-posts":[],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/posts\/3509","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/comments?post=3509"}],"version-history":[{"count":9,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/posts\/3509\/revisions"}],"predecessor-version":[{"id":3522,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/posts\/3509\/revisions\/3522"}],"wp:attachment":[{"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/media?parent=3509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/categories?post=3509"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thefinancialmail.com\/in\/wp-json\/wp\/v2\/tags?post=3509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}