/* ========================================
   InterviewClear — Dark AI Theme Override
   Deep navy-black + cyan/purple gradients
   ======================================== */

:root {
    --ic-bg:        #080d1a;
    --ic-bg2:       #0d1530;
    --ic-bg3:       #111c3a;
    --ic-cyan:      #00d4ff;
    --ic-purple:    #7c3aed;
    --ic-grad:      linear-gradient(135deg, #00d4ff 0%, #7c3aed 100%);
    --ic-text:      #ffffff;
    --ic-muted:     rgba(255,255,255,0.60);
    --ic-border:    rgba(0,212,255,0.18);
    --ic-glow:      0 0 32px rgba(0,212,255,0.15);
    --primary:      #00d4ff;
}

/* ---- Base ---- */
body {
    background: var(--ic-bg) !important;
    color: var(--ic-text) !important;
}

/* ---- Navbar ---- */
.navbar.bg-white,
.navbar-light {
    background: rgba(8,13,26,0.96) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid var(--ic-border);
    box-shadow: 0 2px 24px rgba(0,0,0,0.5) !important;
}
.navbar-light .navbar-nav .nav-link,
.navbar-light .navbar-brand h2 {
    color: var(--ic-text) !important;
}
.navbar-light .navbar-nav .nav-link:hover,
.navbar-light .navbar-nav .nav-link.active {
    color: var(--ic-cyan) !important;
}
.navbar-toggler-icon {
    filter: invert(1);
}
.navbar-light .navbar-toggler {
    border-color: rgba(255,255,255,0.3);
}
@media (max-width: 991.98px) {
    .navbar-light .navbar-nav { border-top: 1px solid var(--ic-border) !important; }
}

/* ---- CTA Button ---- */
#joinNowButton,
.btn-book-session,
a.btn.btn-primary {
    background: var(--ic-grad) !important;
    border: none !important;
    color: #fff !important;
    font-weight: 700;
    letter-spacing: 0.3px;
    box-shadow: 0 4px 20px rgba(0,212,255,0.3);
    transition: transform 0.2s, box-shadow 0.2s;
}
#joinNowButton:hover,
.btn-book-session:hover,
a.btn.btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0,212,255,0.45);
}

/* ---- Stats bar ---- */
.container-fluid[style*="background: var(--primary)"],
.container-fluid[style*="background:var(--primary)"] {
    background: linear-gradient(135deg, #0d1a3a 0%, #1a0d3a 100%) !important;
    border-top: 1px solid var(--ic-border);
    border-bottom: 1px solid var(--ic-border);
}

/* ---- Section backgrounds ---- */
.container-xxl,
.container-fluid.py-5:not(.footer) {
    background: transparent !important;
}
section, .container-xxl.py-5 {
    background: transparent !important;
}

/* ---- Service cards ---- */
.service-item {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    border-radius: 12px;
    transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s !important;
}
.service-item:hover {
    background: var(--ic-bg3) !important;
    border-color: var(--ic-cyan) !important;
    box-shadow: var(--ic-glow) !important;
    transform: translateY(-6px) !important;
    margin-top: 0 !important;
}
.service-item:hover * {
    color: var(--ic-text) !important;
}
.service-item h5, .service-item p, .service-item li {
    color: var(--ic-text) !important;
}
.service-item .text-primary {
    color: var(--ic-cyan) !important;
}

/* ---- Section titles ---- */
h1, h2, h3, h4, h5, h6 {
    color: var(--ic-text) !important;
}
.section-title {
    color: var(--ic-cyan) !important;
}
.section-title::before, .section-title::after {
    background: var(--ic-cyan) !important;
}
p { color: var(--ic-muted) !important; }
p strong { color: var(--ic-text) !important; }

/* ---- About section ---- */
.col-lg-6 p { color: var(--ic-muted) !important; }

/* ---- Team / Key to success cards ---- */
.team-item {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    border-radius: 12px;
    overflow: hidden;
}
.team-item .text-center.p-4 {
    background: var(--ic-bg2) !important;
}

/* ---- Testimonials ---- */
.testimonial-text {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    border-radius: 8px;
}
.testimonial-text p { color: var(--ic-muted) !important; }
.testimonial-carousel .owl-item.center .testimonial-text {
    background: var(--ic-bg3) !important;
    border-color: var(--ic-cyan) !important;
    box-shadow: var(--ic-glow) !important;
}
.testimonial-carousel .owl-item.center .testimonial-text * {
    color: var(--ic-text) !important;
}
.testimonial-carousel::before {
    background: linear-gradient(to right, var(--ic-bg) 0%, transparent 100%) !important;
}
.testimonial-carousel::after {
    background: linear-gradient(to left, var(--ic-bg) 0%, transparent 100%) !important;
}
.fa-star.text-warning { color: #ffd700 !important; }

/* ---- Newsletter / CTA strip ---- */
.container-fluid[style*="#1a1a2e"],
.container-fluid[style*="1a1a2e"] {
    background: linear-gradient(135deg, #0d1535 0%, #1a0d35 100%) !important;
    border: 1px solid var(--ic-border);
}
.newsletter-form .form-control {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.newsletter-form .form-control::placeholder { color: var(--ic-muted) !important; }

/* ---- FAQ section ---- */
.container-xxl.py-5.bg-light {
    background: var(--ic-bg) !important;
}
.faq-item {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
}
.faq-question-btn {
    color: var(--ic-text) !important;
    background: transparent !important;
}
.faq-answer { color: var(--ic-muted) !important; }
.faq-answer strong { color: var(--ic-text) !important; }
.faq-answer a { color: var(--ic-cyan) !important; }
.fa-plus.text-primary { color: var(--ic-cyan) !important; }

/* ---- Page header (course sub-pages) ---- */
.page-header {
    background: linear-gradient(rgba(8,13,26,.85), rgba(8,13,26,.85)), url(../img/carousel-1.jpg) !important;
}

/* ---- Carousel hero ---- */
.owl-carousel-item img { filter: brightness(0.4) !important; }

/* ---- Misc ---- */
.bg-white { background: var(--ic-bg2) !important; }
.bg-light  { background: var(--ic-bg) !important; }
.text-dark { color: var(--ic-text) !important; }
.text-muted { color: var(--ic-muted) !important; }
.text-primary { color: var(--ic-cyan) !important; }
.border { border-color: var(--ic-border) !important; }
hr { border-color: var(--ic-border) !important; }

/* ---- DSA/Course page specific ---- */
.course-benefits { background: linear-gradient(135deg,#0d1a3a,#1a0d3a) !important; }
.testimonial-card {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
}
.testimonial-card p { color: var(--ic-muted) !important; }
.rigi-hero { background: transparent !important; }
.section-accent-line {
    background: var(--ic-grad) !important;
    height: 3px; width: 60px; border-radius: 2px; margin-bottom: 12px;
}

/* ---- New course page cards ---- */
.ic-course-card {
    background: var(--ic-bg2);
    border: 1px solid var(--ic-border);
    border-radius: 14px;
    padding: 28px 24px;
    transition: transform 0.3s, box-shadow 0.3s, border-color 0.3s;
}
.ic-course-card:hover {
    transform: translateY(-6px);
    box-shadow: var(--ic-glow);
    border-color: var(--ic-cyan);
}
.ic-pill {
    display: inline-block;
    background: rgba(0,212,255,0.1);
    border: 1px solid rgba(0,212,255,0.3);
    color: var(--ic-cyan);
    border-radius: 20px;
    padding: 4px 14px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 14px;
}
.ic-gradient-text {
    background: var(--ic-grad);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.ic-hero-section {
    background: radial-gradient(ellipse 80% 60% at 50% -10%, rgba(0,212,255,0.12) 0%, transparent 60%),
                radial-gradient(ellipse 60% 40% at 80% 50%, rgba(124,58,237,0.10) 0%, transparent 60%),
                var(--ic-bg);
    padding: 80px 0 60px;
}
.ic-curriculum-item {
    background: var(--ic-bg2);
    border: 1px solid var(--ic-border);
    border-radius: 10px;
    padding: 18px 22px;
    margin-bottom: 12px;
    cursor: pointer;
    transition: border-color 0.2s, background 0.2s;
}
.ic-curriculum-item:hover {
    border-color: var(--ic-cyan);
    background: var(--ic-bg3);
}
.ic-curriculum-item h5 {
    font-size: 15px;
    margin-bottom: 6px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.ic-cta-strip {
    background: linear-gradient(135deg, rgba(0,212,255,0.08), rgba(124,58,237,0.08));
    border: 1px solid var(--ic-border);
    border-radius: 16px;
    padding: 40px;
    text-align: center;
}
.ic-btn-primary {
    background: var(--ic-grad);
    border: none;
    color: #fff;
    font-weight: 700;
    font-size: 15px;
    padding: 14px 36px;
    border-radius: 50px;
    display: inline-block;
    text-decoration: none;
    box-shadow: 0 4px 20px rgba(0,212,255,0.30);
    transition: transform 0.2s, box-shadow 0.2s;
    cursor: pointer;
}
.ic-btn-primary:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0,212,255,0.45);
    color: #fff;
    text-decoration: none;
}
.ic-badge {
    background: rgba(124,58,237,0.15);
    border: 1px solid rgba(124,58,237,0.4);
    color: #b794f4;
    border-radius: 6px;
    padding: 3px 10px;
    font-size: 11px;
    font-weight: 600;
}
.ic-check-list { list-style: none; padding: 0; }
.ic-check-list li {
    padding: 6px 0;
    font-size: 14px;
    color: var(--ic-muted);
    display: flex;
    align-items: flex-start;
    gap: 10px;
}
.ic-check-list li::before {
    content: "✓";
    color: var(--ic-cyan);
    font-weight: 700;
    flex-shrink: 0;
    margin-top: 1px;
}
.ic-stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 40px 0;
}
@media(max-width:768px){
    .ic-stats-grid { grid-template-columns: repeat(2,1fr); }
    .ic-hero-section { padding: 50px 0 40px; }
}
.ic-stat-box {
    background: var(--ic-bg2);
    border: 1px solid var(--ic-border);
    border-radius: 10px;
    padding: 20px;
    text-align: center;
}
.ic-stat-box .ic-stat-num {
    font-size: 28px;
    font-weight: 800;
    background: var(--ic-grad);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}
.ic-stat-box .ic-stat-label {
    font-size: 12px;
    color: var(--ic-muted);
    margin-top: 4px;
}

/* Glowing grid background pattern */
.ic-grid-bg {
    position: relative;
    overflow: hidden;
}
.ic-grid-bg::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background-image:
        linear-gradient(rgba(0,212,255,0.04) 1px, transparent 1px),
        linear-gradient(90deg, rgba(0,212,255,0.04) 1px, transparent 1px);
    background-size: 40px 40px;
    pointer-events: none;
    z-index: 0;
}
.ic-grid-bg > * { position: relative; z-index: 1; }

/* ================================================================
   BOOTSTRAP CARD & BTN FIXES (blog cards, course cards)
   ================================================================ */
.card {
    background: var(--ic-bg2) !important;
    border-color: var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.card-body { background: transparent !important; }
.card-title { color: var(--ic-text) !important; }
.card-text, .card-text.text-muted { color: var(--ic-muted) !important; }
.card .text-muted { color: var(--ic-muted) !important; }
.card small, .card .small { color: var(--ic-muted) !important; }

/* blog card hover */
.blog-card:hover {
    border-color: var(--ic-cyan) !important;
    box-shadow: var(--ic-glow) !important;
}

/* btn-outline-primary fix for dark bg */
.btn-outline-primary {
    color: var(--ic-cyan) !important;
    border-color: var(--ic-cyan) !important;
    background: transparent !important;
}
.btn-outline-primary:hover {
    background: var(--ic-cyan) !important;
    color: #000 !important;
    border-color: var(--ic-cyan) !important;
}

/* ================================================================
   TAILWIND-BASED PAGES: text-secondary = rgb(38 23 78) = invisible
   on dark bg. Override all variants to be white/light.
   ================================================================ */
[class*="text-secondary"] {
    color: rgba(255,255,255,0.88) !important;
}
/* specific opacity variants */
.text-secondary\/50 { color: rgba(255,255,255,0.50) !important; }
.text-secondary\/60 { color: rgba(255,255,255,0.60) !important; }
.text-secondary\/80 { color: rgba(255,255,255,0.80) !important; }

/* Tailwind bg-white / bg-secondary / bg-gray on dark pages */
[class*="bg-secondary"], [class*="bg-gray-5"],
[class*="bg-gray-1"], [class*="bg-white"] {
    background: var(--ic-bg2) !important;
}

/* Tailwind border colors */
[class*="border-primary"] { border-color: var(--ic-border) !important; }

/* ================================================================
   ACCORDION / COLLAPSE (systemdesign, lld, dsa, completepack)
   ================================================================ */
/* Fix arrow SVG (dark image on dark bg) */
.arrow { filter: invert(1) !important; }

/* Accordion item background */
.accordion-item {
    background: transparent !important;
    border-top-color: rgba(0,212,255,0.2) !important;
    border-bottom-color: rgba(0,212,255,0.2) !important;
}
.accordion-headers {
    padding: 14px 0;
    color: var(--ic-text) !important;
}
/* When header has active class, show next sibling p (initial open state fix) */
.accordion-headers.active + p {
    opacity: 1 !important;
    max-height: 2000px !important;
    margin-bottom: 24px !important;
    margin-top: 16px !important;
}

/* ================================================================
   COURSE PAGE COMMON FIXES (rigi-hero, course-benefits, etc.)
   ================================================================ */
/* Section bg overrides for course pages */
[class*="rigi-hero"], .rigi-hero,
[class*="course-benefits"], .course-benefits {
    background: var(--ic-bg) !important;
}
/* Text that might be dark on dark */
[class*="text-dark"] { color: var(--ic-text) !important; }
[class*="text-gray"] { color: var(--ic-muted) !important; }

/* ================================================================
   BLOG HERO FIX
   ================================================================ */
.blog-hero {
    background: linear-gradient(135deg, var(--ic-bg) 0%, #0d2040 100%) !important;
    border-bottom: 1px solid var(--ic-border);
}

/* ================================================================
   DROPDOWN MENU (navbar course dropdown)
   ================================================================ */
.dropdown-menu {
    background: rgba(8,13,26,0.97) !important;
    border: 1px solid var(--ic-border) !important;
    backdrop-filter: blur(12px);
}
.dropdown-item {
    color: var(--ic-muted) !important;
}
.dropdown-item:hover, .dropdown-item:focus {
    background: rgba(0,212,255,0.08) !important;
    color: var(--ic-cyan) !important;
}
.dropdown-divider {
    display: none !important;
}

/* ================================================================
   OBJECTIVES LABEL FIX (style.css uses p.objectives-label & compound
   selector with higher specificity — match them here to win)
   ================================================================ */
p.objectives-label,
.course-hero-left .mt-5 > p:first-child {
    color: var(--ic-text) !important;
}
.zap-list li,
.zap-list li strong {
    color: var(--ic-muted) !important;
}
.zap-list li strong {
    color: var(--ic-text) !important;
}

/* ================================================================
   WHAT-YOU-LEARN ACCORDION DARK THEME FIXES
   style.css sets !important light backgrounds that beat generic rules
   ================================================================ */
.what-you-learn .accordion-headers {
    background: var(--ic-bg2) !important;
}
.what-you-learn .accordion-headers::before {
    background: var(--ic-cyan) !important;
}
.what-you-learn .accordion-headers span:first-of-type,
.what-you-learn .accordion-headers > div:first-of-type {
    color: var(--ic-text) !important;
}
.what-you-learn .accordion-headers.active,
.what-you-learn .accordion-item.open > .accordion-headers {
    background: rgba(0,212,255,0.08) !important;
}
.what-you-learn .accordion-item > p {
    background: var(--ic-bg3) !important;
    color: var(--ic-muted) !important;
    border-top-color: var(--ic-border) !important;
}
.what-you-learn .accordion-item > p strong {
    color: var(--ic-text) !important;
}
.what-you-learn ul li {
    color: var(--ic-muted) !important;
}
.lesson-intro {
    color: rgba(255,255,255,0.55) !important;
}
.what-you-learn > .accordion-item {
    border-color: var(--ic-border) !important;
    background: var(--ic-bg2) !important;
}

/* ================================================================
   FAQ ACCORDION DARK THEME FIXES
   style.css sets #fff and #181d38 on faq-section with !important
   ================================================================ */
.faq-section .accordion-headers {
    background: var(--ic-bg2) !important;
    color: var(--ic-text) !important;
}
.faq-section .accordion-headers:hover {
    background: var(--ic-bg3) !important;
}
.faq-section .accordion-item > p {
    background: var(--ic-bg3) !important;
    color: var(--ic-muted) !important;
}
.faq-section > .accordion-item {
    border-color: var(--ic-border) !important;
    background: var(--ic-bg2) !important;
}

/* ================================================================
   COURSE BENEFITS / FEATURES LIST (bg-white divs in course pages)
   ================================================================ */
.course-benefits .grid > div {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
}
.course-benefits .grid > div p {
    color: var(--ic-text) !important;
}

/* ================================================================
   SALARY CARDS (blog/software-jobs page)
   ================================================================ */
.salary-card {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.salary-card h5, .salary-card h4, .salary-card h3 { color: var(--ic-text) !important; }
.salary-card p, .salary-card span, .salary-card li { color: var(--ic-muted) !important; }
.salary-card strong, .salary-card b { color: var(--ic-text) !important; }

/* ================================================================
   FORM INPUTS (contact page, etc.)
   ================================================================ */
.form-control {
    background: var(--ic-bg2) !important;
    border-color: var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.form-control:focus {
    background: var(--ic-bg3) !important;
    border-color: var(--ic-cyan) !important;
    box-shadow: 0 0 0 0.2rem rgba(0,212,255,0.15) !important;
    color: var(--ic-text) !important;
}
.form-control::placeholder {
    color: var(--ic-muted) !important;
}
label { color: var(--ic-muted) !important; }
.form-floating label { color: var(--ic-muted) !important; }

/* form-select (blog filter dropdown) */
.form-select, select {
    background-color: var(--ic-bg2) !important;
    border-color: var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.form-select:focus, select:focus {
    background-color: var(--ic-bg3) !important;
    border-color: var(--ic-cyan) !important;
    box-shadow: 0 0 0 0.2rem rgba(0,212,255,0.15) !important;
    color: var(--ic-text) !important;
}

/* ================================================================
   MODAL (blog subscribe / any Bootstrap modal)
   ================================================================ */
.modal-content {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.modal-header {
    border-bottom-color: var(--ic-border) !important;
    background: var(--ic-bg3) !important;
}
.modal-footer {
    border-top-color: var(--ic-border) !important;
    background: var(--ic-bg3) !important;
}
.modal-title { color: var(--ic-text) !important; }
.modal-body p { color: var(--ic-muted) !important; }
.btn-close { filter: invert(1) brightness(2) !important; }
.modal-backdrop { --bs-backdrop-opacity: 0.7; }

/* ================================================================
   BTN-LIGHT (old course pages: GoLang, Java, ReactJS — CTA button
   uses btn-light which renders black text on near-white bg on dark)
   ================================================================ */
.btn-light {
    background: var(--ic-grad) !important;
    border: none !important;
    color: #fff !important;
    font-weight: 700;
    box-shadow: 0 4px 20px rgba(0,212,255,0.30);
    transition: transform 0.2s, box-shadow 0.2s;
}
.btn-light:hover, .btn-light:focus {
    transform: translateY(-2px);
    box-shadow: 0 8px 32px rgba(0,212,255,0.45) !important;
    color: #fff !important;
}

/* ================================================================
   SECTION-TITLE bg-white inline override (Bootstrap pages use
   class="section-title bg-white text-center text-primary px-3")
   ================================================================ */
h6.section-title.bg-white,
.section-title.bg-white {
    background: transparent !important;
}

/* ================================================================
   TABLE (any data tables on course/blog pages)
   ================================================================ */
table, .table {
    color: var(--ic-text) !important;
    border-color: var(--ic-border) !important;
}
.table th, .table td {
    border-color: var(--ic-border) !important;
    color: var(--ic-text) !important;
}
.table-striped > tbody > tr:nth-of-type(odd) > * {
    background-color: rgba(0,212,255,0.04) !important;
    color: var(--ic-text) !important;
}

/* ================================================================
   BLOG ARTICLE BODY (inline <style> sets .blog-post-body to dark gray
   text — override the whole body + affected child elements)
   ================================================================ */
.blog-post-body {
    color: var(--ic-muted) !important;
}
.blog-post-body h1, .blog-post-body h2, .blog-post-body h3,
.blog-post-body h4, .blog-post-body h5, .blog-post-body h6 {
    color: var(--ic-text) !important;
}
.blog-post-body p  { color: var(--ic-muted) !important; }
.blog-post-body li { color: var(--ic-muted) !important; }
.blog-post-body strong, .blog-post-body b { color: var(--ic-text) !important; }
.blog-post-body a  { color: var(--ic-cyan) !important; }
.blog-post-body a:hover { color: #fff !important; }

/* Table of Contents box */
.toc {
    background: var(--ic-bg2) !important;
    border: 1px solid var(--ic-border) !important;
    border-radius: 8px !important;
    color: var(--ic-text) !important;
}
.toc a { color: var(--ic-cyan) !important; }
.toc a:hover { color: #fff !important; }
.toc p, .toc li { color: var(--ic-muted) !important; }

/* Tip / callout boxes */
.tip-box {
    background: rgba(0,212,255,0.06) !important;
    border: 1px solid var(--ic-border) !important;
    border-left: 3px solid var(--ic-cyan) !important;
    color: var(--ic-muted) !important;
}
.tip-box p, .tip-box li, .tip-box span, .tip-box strong {
    color: var(--ic-muted) !important;
}
.tip-box strong, .tip-box b { color: var(--ic-cyan) !important; }

/* ================================================================
   CODE BLOCKS (blog articles)
   ================================================================ */
pre, code {
    background: var(--ic-bg3) !important;
    color: var(--ic-cyan) !important;
    border: 1px solid var(--ic-border) !important;
}
pre { padding: 12px 16px !important; border-radius: 6px !important; }

/* ================================================================
   BLOCKQUOTE (blog articles)
   ================================================================ */
blockquote {
    border-left: 3px solid var(--ic-cyan) !important;
    background: var(--ic-bg2) !important;
    padding: 12px 16px !important;
    color: var(--ic-muted) !important;
}

/* ================================================================
   BADGES & PILLS (Bootstrap)
   ================================================================ */
.badge.bg-primary { background: var(--ic-cyan) !important; color: #000 !important; }
.badge.bg-secondary { background: var(--ic-bg3) !important; color: var(--ic-text) !important; }
.badge.bg-light { background: var(--ic-bg3) !important; color: var(--ic-text) !important; }

/* ================================================================
   ALERT BOXES
   ================================================================ */
.alert { border-color: var(--ic-border) !important; }
.alert-primary { background: rgba(0,212,255,0.1) !important; color: var(--ic-cyan) !important; border-color: var(--ic-cyan) !important; }
.alert-info    { background: rgba(0,212,255,0.08) !important; color: var(--ic-text) !important; }

/* ================================================================
   URGENCY BAR
   ================================================================ */
.ic-urgency-bar {
    background: linear-gradient(90deg, #7c3aed 0%, #00d4ff 100%);
    position: relative;
    z-index: 1050;
}
.ic-timer-box {
    background: rgba(0,0,0,0.3);
    border-radius: 6px;
    padding: 4px 10px;
    text-align: center;
    min-width: 44px;
    color: #fff;
    font-size: 16px;
    line-height: 1.2;
}
.ic-timer-box small {
    display: block;
    font-size: 9px;
    text-transform: uppercase;
    color: rgba(255,255,255,0.7) !important;
    letter-spacing: 0.5px;
}
.ic-seats-badge {
    font-size: 12px;
    color: rgba(255,255,255,0.9);
    background: rgba(255,255,255,0.15);
    padding: 4px 12px;
    border-radius: 20px;
    font-weight: 600;
}

/* ================================================================
   COHORT BADGE (pulsing dot)
   ================================================================ */
.ic-cohort-badge {
    background: var(--ic-bg2);
    border: 1px solid var(--ic-border);
    border-radius: 24px;
    padding: 8px 18px;
}
.ic-cohort-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #28a745;
    display: inline-block;
    animation: ic-pulse 2s infinite;
}
@keyframes ic-pulse {
    0%, 100% { opacity: 1; box-shadow: 0 0 0 0 rgba(40,167,69,0.4); }
    50% { opacity: 0.6; box-shadow: 0 0 0 6px rgba(40,167,69,0); }
}

/* ================================================================
   AI CAREER TRACK TIMELINE
   ================================================================ */
.ic-track-timeline {
    position: relative;
    padding-left: 32px;
}
.ic-track-timeline::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 8px;
    bottom: 8px;
    width: 2px;
    background: linear-gradient(to bottom, #7c3aed, #00d4ff, #28a745, #ffa500);
    border-radius: 2px;
}
.ic-track-step {
    position: relative;
    margin-bottom: 28px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
}
.ic-track-step:last-child { margin-bottom: 0; }
.ic-track-dot {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid;
    flex-shrink: 0;
    margin-left: -32px;
    position: relative;
    z-index: 1;
}
.ic-track-step h5 { font-size: 16px; }
.ic-track-step p { font-size: 14px; color: var(--ic-muted); }
