*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;padding-top:72px;background:#080d17;color:#eef3fb;font-family:"DM Sans",sans-serif;line-height:1.5}html.light body{background:#f5f7fb;color:#101828}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;background:rgba(8,13,23,.82);backdrop-filter:blur(16px);border-bottom:1px solid #1b2638;box-shadow:0 4px 18px rgba(0,0,0,.08)}html.light .site-header{background:rgba(245,247,251,.86);border-color:#e2e8f0}
body.admin-bar{padding-top:104px}body.admin-bar .site-header{top:32px}.nav{height:72px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:9px;color:inherit;text-decoration:none;font-family:Manrope;font-weight:800;font-size:20px;position:relative}.brand small{font:700 8px "DM Sans";letter-spacing:1.6px;position:absolute;left:37px;top:28px;opacity:.5}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#7c5cff,#35c9a5);color:white}.brand-accent{color:#72e6c8}html.light .brand-accent{color:#0e9a7c}.nav nav{display:flex;gap:28px}.nav nav a{color:#aeb9ca;text-decoration:none;font-size:14px}.nav nav a.active{color:#72e6c8;font-weight:800}html.light .nav nav a{color:#667085}html.light .nav nav a.active{color:#0e9a7c}.icon-btn{border:1px solid #27344a;background:#111a29;color:#e9eef8;width:38px;height:38px;border-radius:10px;cursor:pointer}html.light .icon-btn{background:#fff;color:#344054;border-color:#d9e0ea}.hero{padding:92px 0 78px;background:linear-gradient(180deg,rgba(224,232,255,.72) 0,rgba(246,248,251,0) 190px),radial-gradient(circle at 78% 30%,rgba(111,83,255,.16),transparent 34%),radial-gradient(circle at 25% 0,rgba(41,211,169,.11),transparent 30%)}
html:not(.light) .hero{background:linear-gradient(180deg,rgba(24,34,56,.62) 0,rgba(8,13,23,0) 190px),radial-gradient(circle at 78% 30%,rgba(111,83,255,.16),transparent 34%),radial-gradient(circle at 25% 0,rgba(41,211,169,.08),transparent 30%)}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.8px;color:#6fe0c4;margin-bottom:14px}.brand-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5fe2be;box-shadow:0 0 0 5px rgba(95,226,190,.1);margin-right:8px}.hero h1{font:800 clamp(42px,6vw,72px)/1.04 Manrope;margin:0;letter-spacing:-3px}.hero h1 span{color:#8f79ff}.hero-copy{max-width:650px;color:#aeb9ca;font-size:17px;margin:24px 0 30px}html.light .hero-copy,html.light .section-heading p,html.light .info-grid>div>p{color:#667085}.hero-actions{display:flex;gap:12px}.btn{padding:13px 18px;border-radius:11px;text-decoration:none;font-weight:700;font-size:14px}.btn-primary{background:#8a72ff;color:white;box-shadow:0 10px 28px rgba(119,91,255,.22)}.btn-ghost{border:1px solid #2a3850;color:#dce4f1}.hero-card{border:1px solid #26344a;background:linear-gradient(145deg,#101a2a,#0b121f);border-radius:22px;padding:25px;box-shadow:0 25px 70px rgba(0,0,0,.25)}html.light .hero-card{background:white;border-color:#e0e6ef;box-shadow:0 20px 60px rgba(16,24,40,.08)}.hero-card-top{display:flex;justify-content:space-between;color:#748198;font-size:10px;font-weight:800;letter-spacing:1.5px}.snapshot-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin:22px 0;background:#26344a}.snapshot-grid div{background:#101a2a;padding:20px}html.light .snapshot-grid div{background:#fff}.snapshot-grid strong{display:block;font:800 30px Manrope}.snapshot-grid span{color:#8390a5;font-size:12px}.market-note{font-size:11px;color:#758299}.status-dot{display:inline-block;width:6px;height:6px;background:#5fe2be;border-radius:50%;margin-right:7px}.section{padding-top:85px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading.compact{align-items:start}.section-heading h2,.info-grid h2{font:800 34px Manrope;letter-spacing:-1.2px;margin:0}.section-heading p{color:#8995a9;margin:6px 0 0}.search-box{width:280px;border:1px solid #29374d;background:#101927;border-radius:11px;display:flex;align-items:center;padding:0 13px;color:#76849a}html.light .search-box{background:white;border-color:#dbe2ec}.search-box input{width:100%;background:transparent;border:0;outline:0;color:inherit;padding:12px;font:inherit;font-size:13px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.tabs,.filters{display:flex;gap:6px;flex-wrap:wrap}.tab,.filter{border:0;background:transparent;color:#7f8ba0;padding:9px 13px;border-radius:9px;cursor:pointer;font:600 13px "DM Sans"}.tab.active,.filter.active{background:#18243a;color:#f3f6fb}html.light .tab.active,html.light .filter.active{background:#e9e7ff;color:#5743c8}.ipo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ipo-card{border:1px solid #233149;background:#0e1725;border-radius:17px;padding:19px;transition:.2s}html.light .ipo-card{background:#fff;border-color:#e0e6ef}.ipo-card:hover{transform:translateY(-2px);border-color:#43577a}.card-top{display:flex;align-items:center;gap:11px}.logo{width:43px;height:43px;border-radius:12px;background:linear-gradient(135deg,#302a66,#1e907e);display:grid;place-items:center;font-weight:800;font-size:12px;color:#fff}.card-name{min-width:0;flex:1}.card-name h3{margin:0;font:700 15px Manrope;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-name span{font-size:9px;color:#77859a;letter-spacing:.8px}.status{font-size:8px;font-weight:800;padding:5px 7px;border-radius:6px;letter-spacing:.8px}.status.current{background:#123b35;color:#66e0c2}.status.upcoming{background:#2b2551;color:#a795ff}.status.recent{background:#26303e;color:#aeb9c8}.status.listing-pending{background:#172d4b;color:#82adf1}.gmp-table .status.recent{background:#172d4b;color:#82adf1}.gmp-row{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px;margin:20px 0;padding:14px;background:#101b2a;border-radius:11px}html.light .gmp-row{background:#f6f8fb}.gmp-row small,.detail-grid span{display:block;color:#77859a;font-size:9px;text-transform:uppercase;letter-spacing:.7px}.gmp-row strong{font:800 20px Manrope}.gmp-est strong{font-size:14px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px 10px}.detail-grid b{font-size:12px}.view-btn{width:100%;border:0;border-top:1px solid #202d42;margin-top:18px;padding-top:14px;background:none;color:#8f79ff;text-align:left;font-weight:700;cursor:pointer}html.light .view-btn{border-color:#e6eaf0}.view-btn span{float:right}.empty{padding:50px;text-align:center;border:1px dashed #33425b;border-radius:16px}.empty div{font-size:30px}.hidden{display:none!important}.gmp-table-wrap{border:1px solid #233149;border-radius:16px;overflow:auto}html.light .gmp-table-wrap{border-color:#e0e6ef}.gmp-table{width:100%;border-collapse:collapse;min-width:700px}.gmp-table th,.gmp-table td{padding:15px 18px;text-align:left;border-bottom:1px solid #202c40;font-size:12px}html.light .gmp-table th,html.light .gmp-table td{border-color:#e8ecf2}.gmp-table th{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#7e8aa0;background:#0d1522}html.light .gmp-table th{background:#f7f8fa}.gmp-table td:first-child strong{display:block}.gmp-table td small{color:#7e8aa0}.gmp-positive{color:#55d7b4;font-weight:800}.mini-tag{font-size:8px;padding:4px 7px;border-radius:6px;background:#1a2740;color:#c5cfdd;border:1px solid #293a53;font-weight:700;white-space:nowrap}html.light .mini-tag{background:#e8edf4;color:#475467;border:1px solid #d8e0ea;font-weight:700}.info-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}.info-grid>div>p{color:#8995a9}.guide-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.guide-cards article{border:1px solid #233149;background:#0e1725;padding:20px;border-radius:15px}html.light .guide-cards article{background:#fff;border-color:#e0e6ef}.guide-cards span{color:#8f79ff;font-weight:800;font-size:11px}.guide-cards h3{margin:14px 0 7px;font:700 16px Manrope}.guide-cards p{margin:0;color:#7f8ba0;font-size:12px}.risk-banner{margin-top:75px;margin-bottom:80px;border:1px solid #473d26;background:#1d1910;color:#b6aa8d;border-radius:12px;padding:14px 17px;font-size:11px}html.light .risk-banner{background:#fffaf0;border-color:#f1dfb3}.risk-banner strong{color:#e4c56b}footer{border-top:1px solid #1c293c;padding:42px 0 18px;color:#7f8ba0}html.light footer{border-color:#e0e6ef}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .9fr 1.2fr;gap:40px}.footer-grid p{font-size:11px;max-width:390px}.footer-grid>div>strong{display:block;color:#dce4f1;font-size:12px;margin-bottom:10px}html.light .footer-grid>div>strong{color:#344054}.footer-grid a:not(.brand){display:block;color:#7f8ba0;text-decoration:none;font-size:12px;margin:6px 0}.footer-bottom{border-top:1px solid #1c293c;margin-top:30px;padding-top:15px;font-size:10px}html.light .footer-bottom{border-color:#e0e6ef}
/* UI/UX polish */
.site-nav a,.btn,.tab,.filter,.icon-btn,.view-btn,.footer-grid a{transition:color .18s ease,background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.site-nav a:focus-visible,.btn:focus-visible,.tab:focus-visible,.filter:focus-visible,.icon-btn:focus-visible,.view-btn:focus-visible,.footer-grid a:focus-visible,.search-box input:focus-visible{outline:3px solid rgba(143,121,255,.35);outline-offset:2px}
.site-nav a{border-radius:8px;padding:7px 9px}
.site-nav a:hover{background:rgba(143,121,255,.08)}
html.light .site-nav a:hover{background:#f0efff}
.icon-btn:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(16,24,40,.10)}
html.light .gmp-table tbody tr:hover{background:#f8fafc}
html.light .subscription-table tbody tr:hover{background:#f7f9fc}
.gmp-table td .mini-tag{vertical-align:middle}
.gmp-table td.issue-date-cell{white-space:nowrap}
@media(max-width:850px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:850px){.hero-grid,.info-grid{grid-template-columns:1fr}.hero{padding-top:60px}.ipo-grid{grid-template-columns:1fr}.guide-cards{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero-card{max-width:600px}.section-heading{align-items:start;flex-direction:column}.search-box{width:100%}}@media(max-width:560px){body{padding-top:112px}body.admin-bar{padding-top:158px}body.admin-bar .site-header{top:46px}.container{width:min(100% - 24px,1160px)}.site-header{box-shadow:0 5px 20px rgba(16,24,40,.10)}.nav{height:auto;min-height:104px;flex-wrap:wrap;padding:9px 0;row-gap:8px}.brand{font-size:18px}.brand-mark{width:30px;height:30px}.brand small{left:35px;top:26px}.nav .site-nav{display:flex;order:3;width:100%;justify-content:center;gap:6px;padding:2px 0 1px;border-top:1px solid #1b2638}.nav .site-nav a{flex:1;text-align:center;padding:8px 7px;border-radius:8px;font-size:13px;font-weight:700;min-height:36px;display:flex;align-items:center;justify-content:center}.nav .site-nav a.active{background:#18243a}.nav .icon-btn{flex:0 0 38px}html.light .nav .site-nav{border-color:#e2e8f0}html.light .nav .site-nav a.active{background:#e9e7ff}.hero h1{letter-spacing:-2px}.hero h1{letter-spacing:-2px}.toolbar{align-items:start;flex-direction:column}.gmp-row{grid-template-columns:1fr 1fr}.gmp-est:last-child{grid-column:span 2}.detail-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr}}

.legal-hero{padding:72px 0 50px;border-bottom:1px solid #1b293d;background:radial-gradient(circle at 75% 20%,rgba(111,83,255,.14),transparent 35%)}html.light .legal-hero{border-color:#e0e6ef}.legal-hero h1{font:800 clamp(40px,6vw,62px)/1.06 Manrope;letter-spacing:-2.5px;margin:0;max-width:850px}.legal-hero p{max-width:700px;color:#9aa7b9;font-size:16px;margin:18px 0 0}.legal-content{padding:45px 0 90px}.legal-card{max-width:900px;margin:auto;border:1px solid #233149;background:#0e1725;border-radius:18px;padding:34px 38px}html.light .legal-card{background:#fff;border-color:#e0e6ef}.legal-card h2{font:800 20px Manrope;margin:30px 0 8px}.legal-card h2:first-of-type{margin-top:0}.legal-card p{color:#9aa7b9;font-size:13px;line-height:1.8;margin:0 0 16px}html.light .legal-card p{color:#667085}.policy-date{font-size:11px!important;color:#7f8ba0!important;border-bottom:1px solid #233149;padding-bottom:18px}@media(max-width:560px){.legal-card{padding:24px 20px}.legal-hero{padding:52px 0 35px}}

/* Hero background alignment: extend the hero backdrop into the small gap below the fixed header without moving hero content. */
html.light .hero{margin-top:-30px;padding-top:122px}
html:not(.light) .hero{margin-top:-30px;padding-top:122px}

/* v5 visual polish and light-mode fixes */
html.light body .btn-ghost{border-color:#cbd5e1;color:#344054;background:#fff}
html.light .icon-btn{color:#344054!important;background:#fff;border-color:#cbd5e1;font-size:17px;line-height:1;font-family:Arial,sans-serif;display:inline-grid;place-items:center}
html.light body .btn-ghost:hover{border-color:#8f79ff;color:#5743c8;background:#faf9ff}
.btn-ghost:hover{border-color:#667792;color:#fff}
.ipo-card{display:flex;flex-direction:column;min-width:0}.ipo-card[data-ipo-url]{cursor:pointer}.ipo-card[data-ipo-url]:focus-visible{outline:3px solid rgba(143,121,255,.35);outline-offset:3px}
.ipo-card .detail-grid{flex:0 0 auto}
.ipo-card .view-btn{margin-top:auto}
html.light body .ipo-card{box-shadow:0 2px 12px rgba(16,24,40,.025)}
html.light body .ipo-card:hover{border-color:#b9aefe;box-shadow:0 10px 30px rgba(16,24,40,.07)}
html.light body .status.current{background:#e6f8f3;color:#087f68}
html.light body .status.upcoming{background:#eeeaff;color:#5d47c7}
html.light body .status.recent{background:#eef1f5;color:#536174}html.light body .status.listing-pending{background:#e8f1ff;color:#356fc1}html.light body .gmp-table .status.recent{background:#e8f1ff;color:#356fc1}
html.light body .gmp-row{border:1px solid #edf0f5}
html.light body .gmp-row strong{color:#101828}
html.light body .gmp-row strong:not(.negative){color:#101828}
html.light body .gmp-positive{color:#087f68}
html.light body .empty{border-color:#d5dce7;background:#fff}
html.light body .section-heading h2,html.light body .info-grid h2{color:#101828}
html.light body .guide-cards article{box-shadow:0 2px 12px rgba(16,24,40,.025)}
html.light body footer{background:#f8fafc}

@media(max-width:850px){
  .hero{padding:70px 0 60px}
  .hero-grid{gap:38px}
  .section{padding-top:62px}
  .section-heading{gap:18px}
  .ipo-grid{gap:14px}
}
@media(max-width:560px){
  .container{width:min(100% - 24px,1160px)}
  .hero h1{font-size:clamp(38px,12vw,54px);letter-spacing:-2.2px}
  .hero-copy{font-size:15px;line-height:1.65}
  .hero-actions{flex-wrap:wrap}
  .hero-actions .btn{flex:1 1 auto;text-align:center}
  .card-top{align-items:flex-start}
  .status{margin-left:auto}
  .detail-grid{gap:14px 10px}
  .detail-grid b{overflow-wrap:anywhere}
}

.subscription-table-wrap{margin-bottom:10px}.subscription-table{min-width:980px}.subscription-table td:last-child{white-space:nowrap}.subscription-note{font-size:11px;color:#7f8ba0;margin-top:10px}@media(max-width:560px){.subscription-table-wrap{border-radius:12px}}

/* GMP semantic colors: positive = green, negative = red, zero = neutral */
.gmp-positive{color:#0e9f6e !important;font-weight:800}
.gmp-negative{color:#dc3545 !important;font-weight:800}
.gmp-neutral{color:#667085 !important;font-weight:800}
html:not(.light) .gmp-positive{color:#55d7b4 !important}
html:not(.light) .gmp-negative{color:#ff6b6b !important}
html:not(.light) .gmp-neutral{color:#aeb9c8 !important}
.gmp-callout .gmp-positive,.gmp-callout .gmp-negative,.gmp-callout .gmp-neutral{font-size:20px}

.gmp-est strong.gmp-positive,.gmp-est strong.gmp-negative,.gmp-est strong.gmp-neutral{font-weight:800}
.gmp-callout span.gmp-positive,.gmp-callout span.gmp-negative,.gmp-callout span.gmp-neutral{font-weight:800}

/* SEO/content UX additions */
.breadcrumbs{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:0 0 14px;color:#77859a;font-size:11px}.breadcrumbs a{color:#8f79ff;text-decoration:none}.ipo-faq details{border:1px solid #233149;border-radius:12px;padding:13px 15px;margin:9px 0;background:#0e1725}.ipo-faq summary{cursor:pointer;font-weight:700;font-size:13px}.ipo-faq p{color:#8995a9;font-size:12px;line-height:1.7;margin:10px 0 0}.related-ipo-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.related-ipo-links a{display:flex;justify-content:space-between;gap:10px;padding:14px;border:1px solid #233149;border-radius:12px;text-decoration:none;color:inherit;background:#0e1725;font-weight:700;font-size:12px}.related-ipo-links span{color:#8f79ff}.gmp-history-table{margin-top:10px}.content-section h3{font:700 17px Manrope;margin:20px 0 7px}@media(max-width:850px){.related-ipo-links{grid-template-columns:1fr}}html.light .ipo-faq details,html.light .related-ipo-links a{background:#fff;border-color:#e0e6ef}


/* Native IPO card header link: keeps the title/logo/exchange/status area directly clickable without relying on JavaScript. */
.ipo-card-main-link{display:block;color:inherit;text-decoration:none;border-radius:12px;outline:none}
.ipo-card-main-link:hover .card-name h2,.ipo-card-main-link:focus-visible .card-name h2{color:#8f79ff}
html.light .ipo-card-main-link:hover .card-name h2,html.light .ipo-card-main-link:focus-visible .card-name h2{color:#5743c8}
.ipo-card-main-link:focus-visible{outline:3px solid rgba(143,121,255,.35);outline-offset:3px}

/* IPO detail links: every IPO name in cards/tables points to its canonical detail page */
.ipo-name-link,.table-ipo-link{color:inherit;text-decoration:none}.ipo-name-link:hover,.table-ipo-link:hover{color:#8f79ff;text-decoration:underline;text-underline-offset:3px}.ipo-name-link:focus-visible,.table-ipo-link:focus-visible{outline:2px solid rgba(143,121,255,.45);outline-offset:3px;border-radius:3px}

/* Full IPO directory filters mirror the dashboard status/type controls. */
.ipo-directory-toolbar{margin:26px 0 12px;padding:0;}
.ipo-directory-toolbar .tab,.ipo-directory-toolbar .filter{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;}
.directory-filter-summary{color:#7f8ba0;font-size:11px;margin:0 0 18px;}
html.light .directory-filter-summary{color:#667085;}

.dashboard-full-search-link{display:inline-flex;margin-top:14px;}

/* v2.7.0 readability overhaul — higher contrast, larger type, clearer hierarchy */
:root{
  --text-main:#f4f7fb;
  --text-body:#c2ccda;
  --text-muted:#9aa7b8;
  --text-label:#aeb9c8;
  --border:#2b3950;
  --surface:#101a29;
  --surface-2:#0d1725;
  --light-main:#101828;
  --light-body:#475467;
  --light-muted:#667085;
  --light-label:#475467;
  --light-border:#d9e1eb;
}
body{font-size:16px;color:var(--text-body);line-height:1.6}
html.light body{color:var(--light-body);background:#f6f8fb}
.container{width:min(1180px,calc(100% - 40px))}

/* Header + navigation */
.site-header{border-bottom-color:#26344a}
html.light .site-header{border-bottom-color:#d9e1eb;background:rgba(248,250,252,.94)}
.nav{min-height:74px;height:74px}
.brand{font-size:21px;letter-spacing:-.25px}
.nav nav{gap:8px}
.nav nav a{font-size:15px;font-weight:600;color:#c1cbd8;padding:9px 12px}
.nav nav a.active{color:#72e6c8;background:rgba(114,230,200,.07)}
html.light .nav nav a{color:#475467}
html.light .nav nav a.active{color:#087f68;background:#e9f8f4}
.icon-btn{width:40px;height:40px;font-size:16px}

/* General headings and copy */
.eyebrow{font-size:12px;letter-spacing:1.5px}
.hero h1{letter-spacing:-2.5px}
.hero-copy{font-size:18px;line-height:1.7;color:#c2ccda}
html.light .hero-copy{color:#475467}
.section{padding-top:88px}
.section-heading h2,.info-grid h2{font-size:36px;letter-spacing:-1.3px}
.section-heading p{font-size:15px;color:#a2adbd}
html.light .section-heading p,html.light .info-grid>div>p{color:#667085}

/* Buttons and controls */
.btn{font-size:15px;padding:13px 19px}
.tab,.filter{font-size:14px;padding:10px 14px;color:#9eabba}
.tab.active,.filter.active{background:#1b2940;color:#f5f7fb}
html.light .tab,.light .filter{color:#475467}
html.light .tab.active,html.light .filter.active{background:#e9e7ff;color:#4f3bb7}
.search-box{min-height:46px}
.search-box input{font-size:14px;color:inherit}
.search-box input::placeholder{color:#8d99aa;opacity:1}
html.light .search-box input::placeholder{color:#98a2b3}

/* IPO cards */
.ipo-card{border-color:#2b3950;background:#101a29;border-radius:17px;padding:20px}
html.light .ipo-card{border-color:#d9e1eb;background:#fff}
.card-name h3{font-size:16px;line-height:1.35}
.card-name span{font-size:10px;color:#98a4b5}
.status{font-size:10px;padding:5px 8px}
.gmp-row{padding:15px;background:#111d2d}
html.light .gmp-row{background:#f5f7fa;border-color:#e7ebf1}
.gmp-row small,.detail-grid span{font-size:10px;color:#8f9bad;letter-spacing:.65px}
.gmp-row strong{font-size:21px}
.gmp-est strong{font-size:15px}
.detail-grid{gap:18px 12px}
.detail-grid b{font-size:13px;color:#d8e0ea}
html.light .detail-grid b{color:#344054}
.view-btn{font-size:14px;padding-top:15px}

/* Data tables — readability first */
.gmp-table-wrap,.subscription-table-wrap,.allotment-table-wrap{border-color:#2b3950;background:#0e1725}
html.light .gmp-table-wrap,html.light .subscription-table-wrap,html.light .allotment-table-wrap{border-color:#d9e1eb;background:#fff}
.gmp-table,.subscription-table,.allotment-table{font-size:14px}
.gmp-table th,.gmp-table td,.subscription-table th,.subscription-table td,.allotment-table th,.allotment-table td{padding:16px 18px;font-size:14px;line-height:1.45}
.gmp-table th,.subscription-table th,.allotment-table th{font-size:11px;letter-spacing:.85px;color:#a8b3c2;background:#111c2b;font-weight:800}
html.light .gmp-table th,html.light .subscription-table th,html.light .allotment-table th{background:#f4f6f8;color:#475467}
.gmp-table td,.subscription-table td,.allotment-table td{color:#c5cfdb}
html.light .gmp-table td,html.light .subscription-table td,html.light .allotment-table td{color:#475467}
.gmp-table td:first-child strong,.subscription-table td:first-child strong,.allotment-table td:first-child strong{font-size:14px;color:#eef3fb}
html.light .gmp-table td:first-child strong,html.light .subscription-table td:first-child strong,html.light .allotment-table td:first-child strong{color:#101828}
.gmp-table td small,.subscription-table td small,.allotment-table td:first-child small{font-size:11px;color:#98a4b5}
html.light .gmp-table td small,html.light .subscription-table td small,html.light .allotment-table td:first-child small{color:#667085}
.mini-tag{font-size:10px;padding:4px 8px}
.subscription-updated{font-size:12px;color:#98a4b5}
.subscription-note{font-size:12px!important;color:#8d99aa!important}

/* Detail pages */
.single-ipo-page{padding-top:56px}
.single-ipo-main h1{font-size:clamp(40px,5vw,60px);letter-spacing:-2.2px}
.single-ipo-main .ipo-meta{font-size:15px;color:#a0adbe}
.single-ipo-main .ipo-search-intro{max-width:820px;margin:10px 0 20px;font-size:15px;line-height:1.75;color:#c3ccda}.single-ipo-main .ipo-search-intro strong{color:inherit}
html.light .single-ipo-main .ipo-search-intro{color:#475467}
html.light .single-ipo-main .ipo-meta{color:#667085}
.single-gmp span{font-size:10px;color:#95a1b2}
.single-gmp strong{font-size:32px}
.single-gmp b{font-size:19px}
.content-section{border-color:#2b3950;padding:28px 30px}
html.light .content-section{border-color:#d9e1eb}
.content-section h2{font-size:23px;letter-spacing:-.3px}
.content-section h3{font-size:18px}
.content-section p,.rich-content{font-size:15px;line-height:1.8;color:#b6c1d0}
html.light .content-section p,html.light .rich-content{color:#475467}
.guide-content a{color:#aa9dff;text-decoration:underline;text-decoration-color:rgba(170,157,255,.55);text-underline-offset:2px;font-weight:700}
.guide-content a:hover{color:#c0b7ff;text-decoration-color:currentColor}
html.light .guide-content a{color:#5d47c7;text-decoration-color:rgba(93,71,199,.35)}
html.light .guide-content a:hover{color:#4b38b2}
.detail-table div{padding:16px}
.detail-table span{font-size:10px;color:#9aa6b6}
.detail-table b{font-size:14px;color:#eef3fb}
html.light .detail-table b{color:#101828}
.timeline b{font-size:12px}
.timeline span{font-size:13px;color:#a0adbe}
html.light .timeline span{color:#667085}
.large-highlights{font-size:15px;line-height:1.8;color:#b6c1d0}
html.light .large-highlights{color:#475467}

/* Directory / allotment headings and supporting text */
.archive-subtitle{font-size:15px;line-height:1.7;color:#a2adbd}
html.light .archive-subtitle{color:#667085}
.directory-intro{font-size:13px;line-height:1.65;color:#b9c4d2;border-color:#2b3950}
html.light .directory-intro{color:#475467;border-color:#d9e1eb}
.directory-filter-summary{font-size:12px}

/* Footer */
footer{padding:48px 0 20px;color:#98a4b5}
.footer-grid{gap:44px}
.footer-grid>div>strong{font-size:14px;color:#e5eaf2;margin-bottom:12px}
.footer-grid a:not(.brand){font-size:14px;margin:8px 0;color:#aab5c4}
.footer-grid p{font-size:13px;line-height:1.7;color:#98a4b5}
html.light footer{background:#f8fafc;border-color:#d9e1eb;color:#667085}
html.light .footer-grid>div>strong{color:#344054}
html.light .footer-grid a:not(.brand){color:#667085}
html.light .footer-grid p{color:#667085}
.footer-bottom{font-size:12px;color:#a8b3c2}
html.light .footer-bottom{color:#475467}

/* Allotment action / buttons */
.allotment-action-copy strong{font-size:15px}
.allotment-action-copy span{font-size:12px}
.allotment-action-button,.allotment-table-action{font-size:12px}
.allotment-table td:first-child strong{font-size:14px}
.allotment-date strong{font-size:13px}
.allotment-badge{font-size:9px}
.allotment-unavailable{font-size:11px}
.allotment-info{font-size:14px}

/* FAQ / related links */
.ipo-faq summary{font-size:14px}
.ipo-faq p{font-size:13px;line-height:1.75}
.related-ipo-links a{font-size:13px}
.breadcrumbs{font-size:12px}

/* Keyboard/focus visibility */
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid rgba(143,121,255,.38);outline-offset:2px}

@media(max-width:850px){
  .nav{min-height:72px;height:auto}
  .section-heading h2,.info-grid h2{font-size:31px}
  .hero-copy{font-size:16px}
  .gmp-table th,.gmp-table td,.subscription-table th,.subscription-table td,.allotment-table th,.allotment-table td{padding:14px 15px}
}
@media(max-width:560px){
  body{font-size:15px}
  .container{width:min(100% - 24px,1180px)}
  .nav nav a{font-size:13px;padding:8px 6px}
  .hero-copy{font-size:15px}
  .section-heading h2,.info-grid h2{font-size:28px}
  .single-ipo-main h1{font-size:38px;letter-spacing:-1.5px}
  .content-section{padding:22px 20px}
  .content-section p,.rich-content{font-size:14px}
  .gmp-table th,.gmp-table td,.subscription-table th,.subscription-table td,.allotment-table th,.allotment-table td{font-size:13px;padding:13px 12px}
  .footer-grid{gap:28px}
}


/* Dashboard IPO directory heading and primary directory link */
.dashboard-view-all{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-left:8px;
  padding:7px 11px;
  border:1px solid #8f79ff;
  border-radius:8px;
  background:rgba(143,121,255,.08);
  color:#6f57e8 !important;
  text-decoration:none;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
  vertical-align:middle;
  transition:background .2s ease,border-color .2s ease,transform .2s ease;
}
.dashboard-view-all span{
  font-size:15px;
  line-height:1;
}
.dashboard-view-all:hover{
  background:rgba(143,121,255,.16);
  border-color:#745be8;
  transform:translateY(-1px);
}
@media(max-width:600px){
  .dashboard-view-all{
    margin-left:0;
    margin-top:8px;
  }
}

/* v1.1.4 dashboard UX: remove the numerical market snapshot and give the hero a cleaner, full-width focus. */
.hero-grid{grid-template-columns:1fr;gap:34px;max-width:980px}
.hero-grid>div:first-child{max-width:820px}
.hero-highlights{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}
.hero-highlight{display:flex;align-items:center;gap:12px;padding:14px 15px;border:1px solid #26344a;background:rgba(16,26,42,.72);border-radius:14px;text-decoration:none;color:inherit;transition:transform .2s,border-color .2s,box-shadow .2s}
.hero-highlight:hover{transform:translateY(-2px);border-color:#43577a;box-shadow:0 12px 30px rgba(0,0,0,.12)}
.hero-highlight-icon{width:36px;height:36px;flex:0 0 36px;border-radius:10px;display:grid;place-items:center;background:#18243a;color:#9f8eff;font-weight:800;font-size:15px}
.hero-highlight strong{display:block;font:700 15px Manrope;color:#eef3fb}
.hero-highlight small{display:block;margin-top:2px;color:#7f8ba0;font-size:12px}
html.light .hero-highlight{background:rgba(255,255,255,.9);border-color:#dfe5ee}
html.light .hero-highlight-icon{background:#eeeaff;color:#604dd4}
html.light .hero-highlight strong{color:#101828}
.hero{padding-bottom:58px}
#ipos{padding-top:18px}
#ipos .section-heading{margin-bottom:22px}
#ipos .section-heading h2{font-size:38px}
#ipos .toolbar{padding:10px 0 2px;border-top:1px solid #e4e9f0}
html:not(.light) #ipos .toolbar{border-color:#233149}
@media(max-width:850px){.hero-grid{max-width:none}.hero-highlights{grid-template-columns:1fr}.hero-highlight{min-height:62px}.hero{padding-bottom:48px}#ipos{padding-top:10px}}
@media(max-width:560px){.hero-grid{gap:24px}.hero-highlights{margin-top:24px;gap:9px}.hero-highlight{padding:12px}.hero-highlight small{font-size:11px}.hero-highlight-icon{width:34px;height:34px;flex-basis:34px}#ipos .section-heading h2{font-size:28px}}

/* v1.1.11 mobile IPO card layout: compact priority-first information without changing desktop cards. */
@media(max-width:560px){
  .ipo-card .gmp-row{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:6px;
    margin:18px 0;
    padding:13px 10px;
  }
  /* Keep all three key metrics on one row on mobile. */
  .ipo-card .gmp-row .gmp-est:last-child{
    grid-column:auto !important;
  }
  .ipo-card .gmp-row > div{
    min-width:0;
  }
  .ipo-card .gmp-row small,
  .ipo-card .gmp-row strong{
    white-space:nowrap;
  }
  .ipo-card .gmp-row small{
    font-size:9px;
  }
  .ipo-card .gmp-row strong{
    font-size:18px;
  }
  .ipo-card .gmp-est strong{
    font-size:14px;
  }
  .ipo-card .detail-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px 12px;
  }
  /* Mobile priority layout: Open/Close, then Price Band/Issue Size. */
  .ipo-card .detail-grid > div:nth-child(4),
  .ipo-card .detail-grid > div:nth-child(6){
    display:none;
  }
  .ipo-card .view-btn{
    margin-top:16px;
    padding-top:13px;
  }
}

/* v1.1.35: polished IPO related-links hub */
.ipo-related-hub{
  margin:18px 0 28px;
  padding:18px;
  border:1px solid #dfe5ee;
  border-radius:16px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
  box-shadow:0 6px 24px rgba(16,24,40,.045);
}
.ipo-related-hub-heading{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:14px;
  padding:0 2px;
}
.ipo-related-hub-heading>div{min-width:0}
.ipo-related-hub-heading strong{
  display:block;
  margin:0;
  color:#101828;
  font:800 15px/1.25 Manrope,sans-serif;
  letter-spacing:-.15px;
}
.ipo-related-hub-heading span{
  display:block;
  margin-top:3px;
  color:#667085;
  font-size:11px;
  line-height:1.45;
}
.ipo-related-hub-links{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:10px;
}
.ipo-related-hub-links>a{
  position:relative;
  min-width:0;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 10px;
  align-items:center;
  gap:6px;
  min-height:70px;
  padding:11px 9px;
  border:1px solid #e2e7ef;
  border-radius:12px;
  background:#fff;
  color:#101828;
  text-decoration:none;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.ipo-related-hub-links>a:hover{
  transform:translateY(-2px);
  border-color:#b9aefe;
  background:#fcfbff;
  box-shadow:0 8px 20px rgba(16,24,40,.07);
}
.ipo-related-hub-links>a:focus-visible{
  outline:3px solid rgba(143,121,255,.28);
  outline-offset:2px;
}
.ipo-hub-icon{
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:9px;
  background:#eeeaff;
  color:#604dd4;
  font:800 14px/1 Manrope,sans-serif;
}
.ipo-hub-copy{min-width:0}
.ipo-hub-copy strong{
  display:block;
  color:#101828;
  font:800 12px/1.25 Manrope,sans-serif;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.ipo-hub-copy small{
  display:block;
  margin-top:3px;
  overflow:hidden;
  color:#667085;
  font-size:10px;
  line-height:1.35;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.ipo-hub-arrow{
  color:#8f79ff;
  font-size:16px;
  font-weight:800;
  text-align:right;
  transition:transform .18s ease;
}
.ipo-related-hub-links>a:hover .ipo-hub-arrow{transform:translateX(2px)}
html:not(.light) .ipo-related-hub{
  border-color:#26344a;
  background:linear-gradient(180deg,#101a2a 0%,#0c1522 100%);
  box-shadow:0 12px 30px rgba(0,0,0,.18);
}
html:not(.light) .ipo-related-hub-heading strong{color:#eef3fb}
html:not(.light) .ipo-related-hub-heading span{color:#8995a9}
html:not(.light) .ipo-related-hub-links>a{
  border-color:#29374d;
  background:#101a29;
  color:#eef3fb;
}
html:not(.light) .ipo-related-hub-links>a:hover{
  border-color:#51457f;
  background:#131f32;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
html:not(.light) .ipo-hub-icon{background:#201c42;color:#b6a8ff}
html:not(.light) .ipo-hub-copy strong{color:#eef3fb}
html:not(.light) .ipo-hub-copy small{color:#8995a9}
html:not(.light) .ipo-hub-arrow{color:#a795ff}
.directory-inline-note{
  margin:14px 0 0;
  color:#667085;
  font-size:12px;
  line-height:1.6;
}
.directory-inline-note .directory-inline-link{font-weight:700}
html:not(.light) .directory-inline-note{color:#8995a9}
@media(max-width:1050px){
  .ipo-related-hub-links{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:850px){
  .ipo-related-hub-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .ipo-related-hub{margin:16px 0 24px;padding:14px}
  .ipo-related-hub-heading{margin-bottom:12px}
  .ipo-related-hub-heading strong{font-size:14px}
  .ipo-related-hub-heading span{font-size:10px}
  .ipo-related-hub-links{grid-template-columns:1fr;gap:8px}
  .ipo-related-hub-links>a{min-height:62px;padding:10px 11px}
}


/* IPO Calendar */
/* The calendar page intentionally uses the same archive heading system as
   IPO Directory, GMP, Subscription and Allotment for consistent sizing,
   spacing and right-aligned page actions. */
.ipo-calendar-page{padding:62px 0 90px}
.calendar-intro{display:grid;grid-template-columns:1.45fr .8fr;gap:18px;margin:0 0 30px;padding:24px 26px;border:1px solid #233149;border-radius:16px;background:linear-gradient(145deg,#101a2a,#0c1522);box-shadow:0 12px 30px rgba(0,0,0,.12)}
html.light .calendar-intro{background:#fff;border-color:#e0e6ef;box-shadow:0 12px 30px rgba(16,24,40,.05)}
.calendar-intro-copy strong{display:block;font:800 18px Manrope;color:#eef3fb;margin-bottom:7px}
html.light .calendar-intro-copy strong{color:#101828}
.calendar-intro-copy p{margin:0;color:#9aa7b9;font-size:13px;line-height:1.75}
html.light .calendar-intro-copy p{color:#667085}
.calendar-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;align-self:stretch;background:#26344a;border-radius:12px;overflow:hidden}
.calendar-stats div{display:flex;flex-direction:column;justify-content:center;align-items:center;padding:14px 8px;background:#101a2a;text-align:center}
html.light .calendar-stats{background:#e0e6ef}
html.light .calendar-stats div{background:#f8fafc}
.calendar-stats b{font:800 24px Manrope;color:#eef3fb}
html.light .calendar-stats b{color:#101828}
.calendar-stats span{margin-top:3px;color:#8995a9;font-size:10px;font-weight:700}
html.light .calendar-stats span{color:#667085}
.calendar-months{display:grid;gap:18px}
.calendar-month{border:1px solid #233149;background:#0e1725;border-radius:16px;overflow:hidden}
html.light .calendar-month{background:#fff;border-color:#e0e6ef}
.calendar-month-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid #202d42}
html.light .calendar-month-heading{border-color:#e8ecf2}
.calendar-month-kicker{display:block;color:#6fe0c4;font-size:9px;font-weight:800;letter-spacing:1.3px;margin-bottom:3px}
.calendar-month-heading h2{margin:0;font:800 22px Manrope;letter-spacing:-.5px}
.calendar-month-count{padding:6px 9px;border-radius:7px;background:#18243a;color:#aeb9ca;font-size:10px;font-weight:800;white-space:nowrap}
html.light .calendar-month-count{background:#eef1f6;color:#475467}
.calendar-table-wrap{overflow:auto}
.ipo-calendar-table{width:100%;border-collapse:collapse;min-width:850px}
.ipo-calendar-table th,.ipo-calendar-table td{padding:14px 18px;text-align:left;border-bottom:1px solid #202c40;font-size:12px;line-height:1.45;vertical-align:middle}
html.light .ipo-calendar-table th,html.light .ipo-calendar-table td{border-color:#e8ecf2}
.ipo-calendar-table th{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#7e8aa0;background:#0d1522;font-weight:800}
html.light .ipo-calendar-table th{background:#f7f8fa}
.ipo-calendar-table tbody tr:last-child td{border-bottom:0}
.ipo-calendar-table tbody tr:hover{background:#111d2d}
html.light .ipo-calendar-table tbody tr:hover{background:#f8fafc}
.ipo-calendar-table td:first-child{min-width:260px}
.ipo-calendar-table td:first-child a{display:block;color:inherit;text-decoration:none}
.ipo-calendar-table td:first-child strong{display:block;color:#eef3fb;font-size:13px}
html.light .ipo-calendar-table td:first-child strong{color:#101828}
.ipo-calendar-table td:first-child small{display:block;margin-top:3px;color:#7e8aa0;font-size:10px}
.calendar-content{margin-top:28px}
.calendar-content a{color:#8f79ff;text-decoration:none;font-weight:700}
@media(max-width:850px){.calendar-intro{grid-template-columns:1fr}.calendar-stats{min-height:82px}}
@media(max-width:560px){.ipo-calendar-page{padding-top:30px}.calendar-intro{padding:19px 18px}.calendar-stats b{font-size:21px}.calendar-month-heading{padding:17px 16px}.calendar-month-heading h2{font-size:19px}.ipo-calendar-table th,.ipo-calendar-table td{padding:12px 13px}}

/* =========================================================
   IPO Calendar — native monthly calendar UI
   One clear month per row; only months containing events are shown.
   ========================================================= */
.ipo-calendar-legend{display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;margin:0 0 20px;padding:12px 15px;border:1px solid #dfe5ee;border-radius:12px;background:#fff;color:#667085;font-size:11px;font-weight:700}
.ipo-calendar-legend span{display:inline-flex;align-items:center;gap:7px}
.calendar-dot{width:8px;height:8px;border-radius:50%;display:inline-block}
.calendar-dot.open{background:#0e9f6e}.calendar-dot.close{background:#8f79ff}.calendar-dot.allotment{background:#e3a52b}.calendar-dot.listing{background:#4b8df8}
html:not(.light) .ipo-calendar-legend{background:#0e1725;border-color:#26344a;color:#aeb9ca}
.calendar-month-list{display:grid;grid-template-columns:1fr;gap:22px}
.calendar-card{min-width:0;border:1px solid #e0e6ef;border-radius:18px;background:#fff;overflow:hidden;box-shadow:0 7px 28px rgba(16,24,40,.045)}
html:not(.light) .calendar-card{background:#0e1725;border-color:#26344a;box-shadow:none}
.calendar-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 22px 16px;border-bottom:1px solid #e8ecf2}
html:not(.light) .calendar-card-head{border-color:#202d42}
.calendar-card-head h2{margin:0;font:800 24px Manrope;letter-spacing:-.6px;color:#101828}
html:not(.light) .calendar-card-head h2{color:#eef3fb}
.calendar-month-kicker{display:block;color:#0e9a7c;font-size:9px;font-weight:800;letter-spacing:1.4px;margin-bottom:4px}
html:not(.light) .calendar-month-kicker{color:#6fe0c4}
.calendar-month-count{padding:6px 9px;border-radius:8px;background:#eef1f6;color:#475467;font-size:10px;font-weight:800;white-space:nowrap}
html:not(.light) .calendar-month-count{background:#18243a;color:#aeb9ca}
.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.calendar-weekdays{padding:10px 14px 0;background:#f8fafc}
html:not(.light) .calendar-weekdays{background:#0d1522}
.calendar-weekdays span{text-align:center;color:#8a95a6;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.7px;padding:5px 2px}
.calendar-grid{padding:0 14px 14px;background:#f8fafc}
html:not(.light) .calendar-grid{background:#0d1522}
.calendar-day{position:relative;min-height:128px;padding:9px 8px 8px;border:1px solid #e7ebf1;border-top:0;border-left:0;background:#fff;overflow:hidden}
.calendar-day:nth-child(7n){border-right:0}
html:not(.light) .calendar-day{background:#0e1725;border-color:#243248}
.calendar-day-empty{background:#f8fafc!important}
html:not(.light) .calendar-day-empty{background:#0d1522!important}
.calendar-day.is-weekend{background:#fcfdff}
html:not(.light) .calendar-day.is-weekend{background:#101a29}
.calendar-day.is-today{box-shadow:inset 0 0 0 2px rgba(143,121,255,.45);z-index:1}
.calendar-day-top{display:flex;align-items:center;justify-content:space-between;gap:5px;min-height:20px}
.calendar-day-number{font:800 13px Manrope;color:#344054}
html:not(.light) .calendar-day-number{color:#cdd6e3}
.calendar-today{font-size:7px;line-height:1;padding:4px 5px;border-radius:5px;background:#eeeaff;color:#5d47c7;font-weight:800;text-transform:uppercase;letter-spacing:.3px}
.calendar-events{display:grid;gap:5px;margin-top:7px}
.calendar-event{display:flex;align-items:center;gap:6px;min-width:0;padding:6px 6px;border-radius:8px;text-decoration:none;color:#101828;border:1px solid #e2e7ef;background:#f8fafc;line-height:1.2;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.calendar-event:hover{transform:translateY(-1px);border-color:#bdb3ff;background:#f5f2ff;box-shadow:0 4px 10px rgba(16,24,40,.07)}
.calendar-event:focus-visible{outline:3px solid rgba(143,121,255,.28);outline-offset:1px}
.calendar-event-badge{flex:0 0 auto;font-size:7px;font-weight:900;letter-spacing:.3px;padding:4px 4px;border-radius:4px;background:#e9edf3;color:#526073}
.calendar-event-name{min-width:0;font-size:10px;font-weight:750;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.calendar-event-open{border-left:3px solid #0e9f6e}.calendar-event-open .calendar-event-badge{background:#e6f8f3;color:#087f68}
.calendar-event-close{border-left:3px solid #8f79ff}.calendar-event-close .calendar-event-badge{background:#eeeaff;color:#5d47c7}
.calendar-event-allotment{border-left:3px solid #e3a52b}.calendar-event-allotment .calendar-event-badge{background:#fff4d8;color:#956b10}
.calendar-event-listing{border-left:3px solid #4b8df8}.calendar-event-listing .calendar-event-badge{background:#e8f1ff;color:#356fc1}
.calendar-no-event{display:block;margin-top:20px;text-align:center;color:#c4ccd7;font-size:10px}
html:not(.light) .calendar-event{background:#111d2d;color:#eef3fb;border-color:#1d2a3d}
html:not(.light) .calendar-event:hover{background:#171d35;border-color:#51479b}
html:not(.light) .calendar-event-badge{background:#1d293b;color:#aeb9ca}
html:not(.light) .calendar-event-open .calendar-event-badge{background:#123b35;color:#66e0c2}
html:not(.light) .calendar-event-close .calendar-event-badge{background:#282452;color:#aa9dff}
html:not(.light) .calendar-event-allotment .calendar-event-badge{background:#3b301b;color:#e4c56b}
html:not(.light) .calendar-event-listing .calendar-event-badge{background:#172d4b;color:#82adf1}
html:not(.light) .calendar-no-event{color:#56647a}
@media(max-width:850px){.calendar-card-head{padding:18px 18px 14px}.calendar-grid{padding:0 10px 10px}.calendar-weekdays{padding:9px 10px 0}.calendar-day{min-height:118px;padding:8px 6px 7px}.calendar-event-name{font-size:9px}}
@media(max-width:600px){
  .ipo-calendar-page{padding-top:30px}
  .ipo-calendar-legend{gap:8px 13px;padding:11px 12px}
  .calendar-card{border-radius:15px}
  .calendar-card-head{padding:16px 15px 13px;border-bottom:1px solid #e8ecf2}
  html:not(.light) .calendar-card-head{border-color:#202d42}
  .calendar-card-head h2{font-size:21px}
  .calendar-month-count{font-size:9px;padding:5px 7px}
  .calendar-weekdays{padding:8px 5px 0}
  .calendar-weekdays span{font-size:7px;letter-spacing:.45px}
  .calendar-grid{padding:0 5px 5px}
  .calendar-day{min-height:105px;padding:7px 4px 5px}
  .calendar-day-number{font-size:11px}
  .calendar-events{gap:4px;margin-top:5px}
  .calendar-event{gap:4px;padding:4px;border-radius:6px}
  .calendar-event-badge{font-size:6px;padding:3px}
  .calendar-event-name{font-size:8px;-webkit-line-clamp:2}
  .calendar-weekdays,.calendar-grid{display:none}
  .calendar-mobile-agenda{display:block}
  .calendar-agenda-day{grid-template-columns:68px minmax(0,1fr);gap:9px;padding:12px 12px}
  .calendar-agenda-date strong{font-size:21px}
  .calendar-agenda-event{gap:7px;padding:9px 8px}
  .calendar-agenda-name{font-size:10px}
}

@media(max-width:420px){.calendar-month-list{gap:16px}.calendar-card-head h2{font-size:19px}.calendar-day{min-height:88px;padding:6px 3px 4px}.calendar-day-number{font-size:10px}.calendar-event{display:block;padding:3px}.calendar-event-badge{display:inline-block;font-size:5px;padding:2px 3px;margin-bottom:2px}.calendar-event-name{font-size:7px}.calendar-today{font-size:6px;padding:3px 4px}}

.calendar-empty-state{padding:28px 20px;text-align:center;border:1px dashed #d6dde8;border-radius:14px;background:#fff;color:#667085;font-size:13px;font-weight:600}
html:not(.light) .calendar-empty-state{border-color:#2b3a50;background:#0e1725;color:#aeb9ca}

/* =========================================================
   IPO Calendar — single-month navigation
   Only the selected month is rendered server-side; previous/next
   month links load another month on demand.
   ========================================================= */
.calendar-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;margin:0 0 18px}
.calendar-navigation-side{min-width:0}
.calendar-navigation-next{text-align:right}
.calendar-nav-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:42px;padding:0 14px;border:1px solid #dfe5ee;border-radius:10px;background:#fff;color:#344054;text-decoration:none;font-size:11px;font-weight:800;line-height:1.2;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.calendar-nav-btn:hover{transform:translateY(-1px);border-color:#bdb3ff;background:#f8f6ff;box-shadow:0 5px 14px rgba(16,24,40,.06)}
.calendar-nav-btn:focus-visible{outline:3px solid rgba(143,121,255,.25);outline-offset:2px}
.calendar-nav-btn.is-disabled{opacity:.45;cursor:default}
.calendar-nav-btn.is-disabled:hover{transform:none;border-color:#dfe5ee;background:#fff;box-shadow:none}
html:not(.light) .calendar-nav-btn{background:#0e1725;border-color:#26344a;color:#eef3fb}
html:not(.light) .calendar-nav-btn:hover{background:#171d35;border-color:#51479b}
html:not(.light) .calendar-nav-btn.is-disabled:hover{background:#0e1725;border-color:#26344a}
.calendar-navigation-center{text-align:center}
.calendar-month-label{font:800 17px Manrope;color:#101828;letter-spacing:-.2px}
html:not(.light) .calendar-month-label{color:#eef3fb}
.calendar-today-link{display:inline-block;margin-top:4px;color:#6d5ce7;text-decoration:none;font-size:10px;font-weight:800}
.calendar-today-link:hover{text-decoration:underline}
html:not(.light) .calendar-today-link{color:#a99cff}

/* Mobile calendar uses a readable agenda instead of squeezing seven columns. */
.calendar-mobile-agenda{display:none}
.calendar-agenda-day{display:grid;grid-template-columns:78px minmax(0,1fr);gap:12px;padding:13px 14px;border-top:1px solid #e8ecf2;background:#fff}
.calendar-agenda-day:first-child{border-top:0}
.calendar-agenda-day.is-today{background:#faf9ff;box-shadow:inset 3px 0 0 #8f79ff}
.calendar-agenda-date{display:flex;align-items:flex-start;justify-content:space-between;gap:5px}
.calendar-agenda-date>div{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}
.calendar-agenda-weekday{display:block;width:100%;font-size:8px;font-weight:800;letter-spacing:.8px;text-transform:uppercase;color:#8a95a6}
.calendar-agenda-date strong{font:800 23px/1 Manrope;color:#101828;letter-spacing:-.5px}
.calendar-agenda-month{font-size:10px;font-weight:800;color:#667085}
.calendar-agenda-today{display:inline-flex;align-items:center;padding:4px 6px;border-radius:6px;background:#eeeaff;color:#5d47c7;font-size:7px;font-weight:900;white-space:nowrap}
.calendar-agenda-events{display:grid;gap:7px;min-width:0}
.calendar-agenda-event{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:10px 10px;border:1px solid #e2e7ef;border-left-width:3px;border-radius:10px;background:#f8fafc;color:#101828;text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}
.calendar-agenda-event:hover{transform:translateY(-1px);border-color:#bdb3ff;background:#f5f2ff;box-shadow:0 4px 10px rgba(16,24,40,.07)}
.calendar-agenda-event:focus-visible{outline:3px solid rgba(143,121,255,.28);outline-offset:1px}
.calendar-agenda-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;padding:5px 6px;border-radius:5px;background:#e9edf3;color:#526073;font-size:7px;font-weight:900;letter-spacing:.3px}
.calendar-agenda-name{min-width:0;font-size:11px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}
.calendar-agenda-ipo{font-size:8px;font-weight:700;color:#8a95a6}
.calendar-agenda-arrow{font-size:14px;font-weight:800;color:#8f79ff}
.calendar-agenda-event.calendar-event-open{border-left-color:#0e9f6e}.calendar-agenda-event.calendar-event-open .calendar-agenda-badge{background:#e6f8f3;color:#087f68}
.calendar-agenda-event.calendar-event-close{border-left-color:#8f79ff}.calendar-agenda-event.calendar-event-close .calendar-agenda-badge{background:#eeeaff;color:#5d47c7}
.calendar-agenda-event.calendar-event-allotment{border-left-color:#e3a52b}.calendar-agenda-event.calendar-event-allotment .calendar-agenda-badge{background:#fff4d8;color:#956b10}
.calendar-agenda-event.calendar-event-listing{border-left-color:#4b8df8}.calendar-agenda-event.calendar-event-listing .calendar-agenda-badge{background:#e8f1ff;color:#356fc1}
html:not(.light) .calendar-agenda-day{background:#0e1725;border-color:#202d42}
html:not(.light) .calendar-agenda-day.is-today{background:#12192a;box-shadow:inset 3px 0 0 #8f79ff}
html:not(.light) .calendar-agenda-weekday{color:#8995a9}
html:not(.light) .calendar-agenda-date strong{color:#eef3fb}
html:not(.light) .calendar-agenda-month{color:#8995a9}
html:not(.light) .calendar-agenda-event{background:#111d2d;color:#eef3fb;border-color:#1d2a3d}
html:not(.light) .calendar-agenda-event:hover{background:#171d35;border-color:#51479b}
html:not(.light) .calendar-agenda-badge{background:#1d293b;color:#aeb9ca}
html:not(.light) .calendar-agenda-event.calendar-event-open .calendar-agenda-badge{background:#123b35;color:#66e0c2}
html:not(.light) .calendar-agenda-event.calendar-event-close .calendar-agenda-badge{background:#282452;color:#aa9dff}
html:not(.light) .calendar-agenda-event.calendar-event-allotment .calendar-agenda-badge{background:#3b301b;color:#e4c56b}
html:not(.light) .calendar-agenda-event.calendar-event-listing .calendar-agenda-badge{background:#172d4b;color:#82adf1}
html:not(.light) .calendar-agenda-ipo{color:#8995a9}
html:not(.light) .calendar-agenda-today{background:#282452;color:#aa9dff}

@media(max-width:600px){
  .calendar-mobile-agenda{display:block}
  .calendar-weekdays,.calendar-grid{display:none}
  .calendar-navigation{grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}
  .calendar-navigation-center{grid-column:1 / -1;grid-row:1;text-align:center;margin-bottom:1px}
  .calendar-navigation-side{grid-row:2}
  .calendar-navigation-next{text-align:right}
  .calendar-nav-btn{width:100%;min-height:40px;padding:0 9px;font-size:9px}
  .calendar-nav-btn span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .calendar-month-label{font-size:16px}
}

/* Mobile calendar empty state */
.calendar-mobile-no-events{padding:18px 14px;border-top:1px solid #e2e7ef;background:#f8fafc;color:#526073;font-size:12px;line-height:1.6;text-align:center}
html:not(.light) .calendar-mobile-no-events{border-color:#202d42;background:#111d2d;color:#aeb9ca}

/* Mobile table/status safeguards */
@media(max-width:560px){.gmp-table td .status{display:inline-flex;align-items:center;white-space:nowrap}.nav .site-nav a{min-width:0;white-space:nowrap}}


/* Mobile allotment table: match the GMP table's compact, wrapping IPO-name treatment. */
@media(max-width:560px){
  .allotment-table{table-layout:fixed;min-width:0;width:100%;}
  .allotment-table th,.allotment-table td{overflow:hidden;vertical-align:top;}
  .allotment-table th:first-child,.allotment-table td:first-child{width:29%;max-width:29%;}
  .allotment-table th:nth-child(2),.allotment-table td:nth-child(2){width:14%;}
  .allotment-table th:nth-child(3),.allotment-table td:nth-child(3){width:16%;}
  .allotment-table th:nth-child(4),.allotment-table td:nth-child(4){width:10%;}
  .allotment-table th:nth-child(5),.allotment-table td:nth-child(5){width:11%;}
  .allotment-table th:nth-child(6),.allotment-table td:nth-child(6){width:10%;}
  .allotment-table th:nth-child(7),.allotment-table td:nth-child(7){width:10%;}
  .allotment-table td:first-child strong{display:block;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.3;}
  .allotment-table td:first-child small{display:block;white-space:normal;overflow-wrap:anywhere;}
  .allotment-table .mini-tag{white-space:normal;overflow-wrap:anywhere;text-align:center;display:inline-block;max-width:100%;}
  .allotment-table .allotment-date strong,.allotment-table .allotment-badge{white-space:normal;overflow-wrap:anywhere;}
  .allotment-table .allotment-table-action,.allotment-table .allotment-unavailable{white-space:normal;overflow-wrap:anywhere;}
}

/* Phase 3 directory architecture */
.directory-breadcrumbs{margin:0 0 16px;font-size:12px;color:#7f8ba0}.directory-breadcrumbs a{color:#7f8ba0;text-decoration:none}.directory-breadcrumbs span{margin:0 6px}.directory-seo-content{margin-top:42px;padding-top:30px;border-top:1px solid #233149}.directory-seo-content h2{font:800 26px Manrope;letter-spacing:-.7px;margin:0 0 10px}.directory-seo-content p{max-width:900px;color:#8995a9;font-size:13px;line-height:1.7;margin:8px 0}.directory-seo-content a{color:#8f79ff;text-decoration:none;font-weight:700}.directory-seo-content .directory-seo-note{font-size:11px;color:#77859a;margin-top:14px}html.light .directory-seo-content{border-color:#e0e6ef}html.light .directory-seo-content p{color:#667085}html.light .directory-seo-content .directory-seo-note{color:#7f8a9a}
