/* Executive Luxury Business Coaching Design System */

:root {
    --bg-dark: #08090d;
    --bg-surface: #0e1018;
    --bg-card: rgba(22, 26, 38, 0.65);
    --bg-card-hover: rgba(30, 36, 53, 0.85);
    --border-subtle: rgba(255, 255, 255, 0.08);
    --border-gold: rgba(212, 175, 55, 0.35);
    
    --gold-primary: #D4AF37;
    --gold-light: #F5D061;
    --gold-dark: #997C22;
    --gold-gradient: linear-gradient(135deg, #F5D061 0%, #D4AF37 50%, #A38023 100%);
    --gold-glow: 0 0 25px rgba(212, 175, 55, 0.25);
    
    --emerald-accent: #10B981;
    --emerald-glow: 0 0 20px rgba(16, 185, 129, 0.3);
    
    --text-main: #F8FAFC;
    --text-muted: #94A3B8;
    --text-dim: #64748B;
    
    --glass-blur: blur(20px);
    --radius-sm: 8px;
    --radius-md: 14px;
    --radius-lg: 20px;
    --transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Outfit', 'Inter', -apple-system, sans-serif;
}

body {
    background-color: var(--bg-dark);
    color: var(--text-main);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    line-height: 1.6;
}

/* Background Ambient Lighting */
.ambient-glow-1 {
    position: fixed;
    width: 700px;
    height: 700px;
    background: radial-gradient(circle, rgba(212, 175, 55, 0.09) 0%, rgba(8, 9, 13, 0) 70%);
    top: -250px;
    right: -200px;
    pointer-events: none;
    z-index: -1;
}

.ambient-glow-2 {
    position: fixed;
    width: 600px;
    height: 600px;
    background: radial-gradient(circle, rgba(16, 185, 129, 0.06) 0%, rgba(8, 9, 13, 0) 70%);
    bottom: -200px;
    left: -150px;
    pointer-events: none;
    z-index: -1;
}

/* Navigation Bar */
.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.25rem 6%;
    background: rgba(8, 9, 13, 0.75);
    backdrop-filter: var(--glass-blur);
    border-bottom: 1px solid var(--border-subtle);
    position: sticky;
    top: 0;
    z-index: 1000;
}

.nav-brand {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--text-main);
    text-decoration: none;
    letter-spacing: 2px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.nav-brand span {
    background: var(--gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.nav-brand-badge {
    font-size: 0.65rem;
    background: rgba(212, 175, 55, 0.15);
    border: 1px solid var(--border-gold);
    color: var(--gold-light);
    padding: 2px 8px;
    border-radius: 20px;
    letter-spacing: 1px;
}

.nav-links {
    display: flex;
    align-items: center;
    gap: 2.2rem;
}

.nav-links a {
    color: var(--text-muted);
    text-decoration: none;
    font-weight: 500;
    font-size: 0.95rem;
    transition: var(--transition);
}

.nav-links a:hover, .nav-links a.active {
    color: var(--gold-light);
}

.user-pill {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid var(--border-subtle);
    padding: 0.4rem 1rem;
    border-radius: 30px;
    color: var(--text-main);
    text-decoration: none;
    transition: var(--transition);
}

.user-pill:hover {
    border-color: var(--gold-primary);
    box-shadow: var(--gold-glow);
}

.user-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--gold-gradient);
    color: #000;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
}

/* Buttons & Badges */
.btn-gold {
    background: var(--gold-gradient);
    color: #08090d;
    font-weight: 700;
    padding: 0.85rem 1.8rem;
    border-radius: var(--radius-sm);
    border: none;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    transition: var(--transition);
    box-shadow: 0 4px 20px rgba(212, 175, 55, 0.25);
    font-size: 0.95rem;
}

.btn-gold:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 25px rgba(212, 175, 55, 0.45);
    color: #000;
}

.btn-outline {
    background: transparent;
    color: var(--text-main);
    font-weight: 600;
    padding: 0.85rem 1.8rem;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-subtle);
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    transition: var(--transition);
    font-size: 0.95rem;
}

.btn-outline:hover {
    border-color: var(--gold-primary);
    color: var(--gold-light);
    background: rgba(212, 175, 55, 0.05);
}

.btn-emerald {
    background: linear-gradient(135deg, #10B981 0%, #059669 100%);
    color: #fff;
    font-weight: 700;
    padding: 0.85rem 1.8rem;
    border-radius: var(--radius-sm);
    border: none;
    cursor: pointer;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    transition: var(--transition);
    box-shadow: var(--emerald-glow);
}

.btn-emerald:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 25px rgba(16, 185, 129, 0.5);
}

.badge-gold {
    background: rgba(212, 175, 55, 0.15);
    border: 1px solid var(--border-gold);
    color: var(--gold-light);
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.badge-emerald {
    background: rgba(16, 185, 129, 0.15);
    border: 1px solid rgba(16, 185, 129, 0.3);
    color: #34D399;
    font-size: 0.75rem;
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 4px;
    text-transform: uppercase;
}

/* Hero Section */
.hero {
    padding: 5rem 6% 4rem;
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 4rem;
    align-items: center;
    max-width: 1400px;
    margin: 0 auto;
}

.hero-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: rgba(212, 175, 55, 0.1);
    border: 1px solid var(--border-gold);
    color: var(--gold-light);
    padding: 6px 16px;
    border-radius: 30px;
    font-size: 0.85rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.hero h1 {
    font-size: 3.6rem;
    font-weight: 800;
    line-height: 1.15;
    margin-bottom: 1.5rem;
    letter-spacing: -1px;
}

.hero h1 span {
    background: var(--gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.hero p {
    font-size: 1.15rem;
    color: var(--text-muted);
    margin-bottom: 2.5rem;
    max-width: 600px;
}

.hero-cta {
    display: flex;
    gap: 1.2rem;
    flex-wrap: wrap;
    margin-bottom: 3.5rem;
}

.hero-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--border-subtle);
}

.stat-item h3 {
    font-size: 2rem;
    font-weight: 800;
    color: var(--gold-light);
}

.stat-item p {
    font-size: 0.85rem;
    color: var(--text-dim);
    margin-bottom: 0;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.hero-media {
    position: relative;
}

.hero-video-card {
    position: relative;
    border-radius: var(--radius-lg);
    overflow: hidden;
    border: 1px solid var(--border-gold);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), var(--gold-glow);
}

.hero-video-card img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    display: block;
}

.play-button-overlay {
    position: absolute;
    inset: 0;
    background: rgba(8, 9, 13, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(2px);
    transition: var(--transition);
    cursor: pointer;
}

.play-button-overlay:hover {
    background: rgba(8, 9, 13, 0.2);
}

.play-icon-circle {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--gold-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    font-size: 2rem;
    box-shadow: 0 0 30px rgba(212, 175, 55, 0.6);
    transition: var(--transition);
}

.play-button-overlay:hover .play-icon-circle {
    transform: scale(1.1);
}

/* Category Filter Bar */
.category-filter-section {
    padding: 2rem 6%;
    max-width: 1400px;
    margin: 0 auto;
}

.category-pills {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    padding-bottom: 1rem;
    scrollbar-width: thin;
}

.cat-pill {
    padding: 0.65rem 1.4rem;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid var(--border-subtle);
    border-radius: 30px;
    color: var(--text-muted);
    text-decoration: none;
    white-space: nowrap;
    font-size: 0.9rem;
    font-weight: 500;
    transition: var(--transition);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.cat-pill:hover, .cat-pill.active {
    background: rgba(212, 175, 55, 0.15);
    border-color: var(--gold-primary);
    color: var(--gold-light);
}

/* Section Header */
.section-header {
    text-align: center;
    margin-bottom: 3.5rem;
}

.section-header h2 {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 0.75rem;
}

.section-header h2 span {
    background: var(--gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.section-header p {
    color: var(--text-muted);
    font-size: 1.1rem;
    max-width: 600px;
    margin: 0 auto;
}

/* Course Grid & Cards */
.course-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 2rem;
    padding: 0 6% 5rem;
    max-width: 1400px;
    margin: 0 auto;
}

.course-card {
    background: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    overflow: hidden;
    backdrop-filter: var(--glass-blur);
    transition: var(--transition);
    display: flex;
    flex-direction: column;
    position: relative;
}

.course-card:hover {
    transform: translateY(-8px);
    border-color: var(--border-gold);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.5), 0 0 20px rgba(212, 175, 55, 0.15);
}

.card-image-wrap {
    position: relative;
    height: 220px;
    overflow: hidden;
}

.card-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.course-card:hover .card-image-wrap img {
    transform: scale(1.05);
}

.card-badge {
    position: absolute;
    top: 12px;
    left: 12px;
    z-index: 2;
}

.card-level-badge {
    position: absolute;
    bottom: 12px;
    right: 12px;
    background: rgba(8, 9, 13, 0.85);
    backdrop-filter: blur(8px);
    border: 1px solid var(--border-subtle);
    color: var(--text-muted);
    font-size: 0.75rem;
    padding: 3px 10px;
    border-radius: 20px;
}

.card-body {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.card-instructor {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
}

.card-instructor img {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    object-fit: cover;
}

.card-title {
    font-size: 1.25rem;
    font-weight: 700;
    margin-bottom: 0.6rem;
    line-height: 1.35;
}

.card-title a {
    color: var(--text-main);
    text-decoration: none;
    transition: var(--transition);
}

.card-title a:hover {
    color: var(--gold-light);
}

.card-tagline {
    font-size: 0.9rem;
    color: var(--text-muted);
    margin-bottom: 1.25rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.card-meta {
    display: flex;
    gap: 1rem;
    font-size: 0.85rem;
    color: var(--text-dim);
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-subtle);
}

.card-meta-item {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.card-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
}

.price-box {
    display: flex;
    flex-direction: column;
}

.price-original {
    font-size: 0.85rem;
    color: var(--text-dim);
    text-decoration: line-through;
}

.price-current {
    font-size: 1.3rem;
    font-weight: 800;
    color: var(--gold-light);
}

.price-free {
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--emerald-accent);
}

/* Course Detail Page */
.detail-hero {
    padding: 3rem 6%;
    background: linear-gradient(180deg, rgba(14, 16, 24, 0.9) 0%, rgba(8, 9, 13, 0.95) 100%);
    border-bottom: 1px solid var(--border-subtle);
}

.detail-grid {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 3.5rem;
    max-width: 1400px;
    margin: 0 auto;
}

.detail-main h1 {
    font-size: 2.8rem;
    font-weight: 800;
    margin-bottom: 1rem;
}

.detail-tagline {
    font-size: 1.2rem;
    color: var(--text-muted);
    margin-bottom: 1.5rem;
}

.detail-instructor-box {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 2rem;
}

.detail-instructor-avatar {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: 2px solid var(--gold-primary);
}

.detail-sidebar-card {
    background: var(--bg-card);
    border: 1px solid var(--border-gold);
    border-radius: var(--radius-md);
    padding: 1.8rem;
    backdrop-filter: var(--glass-blur);
    position: sticky;
    top: 100px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.6), var(--gold-glow);
}

.syllabus-accordion {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin-top: 1.5rem;
}

.accordion-chapter {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-sm);
    overflow: hidden;
}

.chapter-header {
    padding: 1rem 1.25rem;
    background: rgba(255, 255, 255, 0.02);
    font-weight: 700;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
}

.lesson-list {
    display: flex;
    flex-direction: column;
}

.lesson-item {
    padding: 0.85rem 1.25rem;
    border-top: 1px solid var(--border-subtle);
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9rem;
    color: var(--text-muted);
    text-decoration: none;
    transition: var(--transition);
}

.lesson-item:hover {
    background: rgba(212, 175, 55, 0.08);
    color: var(--gold-light);
}

.lesson-item.active {
    background: rgba(212, 175, 55, 0.15);
    color: var(--gold-light);
    font-weight: 600;
    border-left: 3px solid var(--gold-primary);
}

/* LMS Video Classroom (Player Page) */
.lms-layout {
    display: grid;
    grid-template-columns: 1fr 380px;
    min-height: calc(100vh - 80px);
}

.lms-main {
    padding: 2rem 3.5rem;
    overflow-y: auto;
    background: #06070a;
}

.lms-video-container {
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.8);
    border: 1px solid var(--border-subtle);
    margin-bottom: 2rem;
}

.lms-video-container iframe, .lms-video-container video {
    width: 100%;
    height: 100%;
    border: none;
}

.lms-sidebar {
    background: #0a0b12;
    border-left: 1px solid var(--border-subtle);
    display: flex;
    flex-direction: column;
    height: calc(100vh - 80px);
    position: sticky;
    top: 80px;
}

.lms-sidebar-header {
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-subtle);
}

.lms-sidebar-content {
    overflow-y: auto;
    flex-grow: 1;
}

/* User Profile Dashboard */
.profile-container {
    padding: 3rem 6%;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}

.profile-header {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    background: var(--bg-card);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    padding: 2rem;
    margin-bottom: 2.5rem;
}

.profile-avatar-lg {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--gold-gradient);
    color: #000;
    font-size: 2.2rem;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
}

.enrollments-table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 1rem;
}

.enrollments-table th, .enrollments-table td {
    padding: 1rem 1.25rem;
    text-align: left;
    border-bottom: 1px solid var(--border-subtle);
}

.enrollments-table th {
    color: var(--text-dim);
    font-size: 0.85rem;
    text-transform: uppercase;
}

/* Auth Pages (Login / Register / Checkout) */
.auth-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
    padding: 3rem 1.5rem;
}

.auth-card {
    background: var(--bg-card);
    border: 1px solid var(--border-gold);
    border-radius: var(--radius-lg);
    padding: 3rem 2.5rem;
    width: 100%;
    max-width: 440px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.7), var(--gold-glow);
    backdrop-filter: var(--glass-blur);
    text-align: center;
}

.auth-card h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 0.5rem;
}

.auth-card h2 span {
    background: var(--gold-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.form-group {
    margin-bottom: 1.4rem;
    text-align: left;
}

.form-group label {
    display: block;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-muted);
    margin-bottom: 0.5rem;
}

.form-control {
    width: 100%;
    padding: 0.9rem 1.2rem;
    background: rgba(8, 9, 13, 0.7);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-sm);
    color: var(--text-main);
    font-size: 0.95rem;
    transition: var(--transition);
}

.form-control:focus {
    outline: none;
    border-color: var(--gold-primary);
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.2);
}

.errorlist {
    list-style: none;
    color: #fca5a5;
    font-size: .82rem;
    margin-top: .45rem;
    padding: 0;
}

.otp-input { direction: ltr; text-align: center; letter-spacing: .65rem; font-size: 1.35rem; }
.nav-logout-form { margin: 0; }
.nav-logout { background: none; border: 0; color: var(--text-dim); cursor: pointer; font-size: 1rem; }
.nav-logout:hover { color: var(--gold-light); }

/* Modal Video Player */
.modal-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.85);
    backdrop-filter: blur(10px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2000;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.3s ease;
}

.modal-overlay.active {
    opacity: 1;
    pointer-events: auto;
}

.modal-content-wrap {
    width: 90%;
    max-width: 900px;
    aspect-ratio: 16 / 9;
    background: #000;
    border-radius: var(--radius-md);
    overflow: hidden;
    position: relative;
    border: 1px solid var(--border-gold);
}

.modal-close-btn {
    position: absolute;
    top: 15px;
    right: 15px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border: 1px solid var(--border-subtle);
    font-size: 1.5rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

/* Footer */
footer {
    background: #050608;
    border-top: 1px solid var(--border-subtle);
    padding: 4rem 6% 2rem;
    margin-top: auto;
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr;
    gap: 3rem;
    max-width: 1400px;
    margin: 0 auto 3rem;
}

.footer-col h4 {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-main);
    margin-bottom: 1.2rem;
}

.footer-col ul {
    list-style: none;
}

.footer-col ul li {
    margin-bottom: 0.75rem;
}

.footer-col ul li a {
    color: var(--text-muted);
    text-decoration: none;
    transition: var(--transition);
}

.footer-col ul li a:hover {
    color: var(--gold-light);
}

.footer-bottom {
    text-align: center;
    padding-top: 2rem;
    border-top: 1px solid var(--border-subtle);
    color: var(--text-dim);
    font-size: 0.85rem;
}

/* Responsive adjustments */
@media (max-width: 1024px) {
    .hero, .detail-grid, .lms-layout {
        grid-template-columns: 1fr;
    }
    .lms-sidebar {
        height: auto;
        position: relative;
        top: 0;
    }
    .footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .hero h1 {
        font-size: 2.4rem;
    }
    .nav-links a:not(.user-pill) {
        display: none;
    }
    .footer-grid {
        grid-template-columns: 1fr;
    }
}

/* Persian light interface */
:root{--bg-dark:#fffaf2;--bg-surface:#f7f4ff;--bg-card:#fff;--bg-card-hover:#fff;--border-subtle:#e7e2ee;--border-gold:#cfc8ff;--gold-primary:#6d5dfc;--gold-light:#5848e8;--gold-dark:#4435c6;--gold-gradient:linear-gradient(135deg,#7667ff,#5c4ce6);--gold-glow:0 12px 35px rgba(109,93,252,.18);--emerald-accent:#159b76;--emerald-glow:0 10px 28px rgba(48,181,141,.2);--text-main:#29223d;--text-muted:#6f6880;--text-dim:#948da3;--glass-blur:blur(16px);--radius-sm:12px;--radius-md:20px;--radius-lg:28px}
*{font-family:'Vazirmatn',Tahoma,sans-serif}
body{background:var(--bg-dark);color:var(--text-main);direction:rtl;line-height:1.9}
.ambient-glow-1{background:radial-gradient(circle,rgba(109,93,252,.11),transparent 70%);top:-280px;right:-180px}.ambient-glow-2{background:radial-gradient(circle,rgba(48,181,141,.1),transparent 70%)}
.navbar{padding:1rem 6%;background:rgba(255,250,242,.9);border-color:var(--border-subtle);box-shadow:0 5px 25px rgba(48,40,74,.05)}
.nav-brand{letter-spacing:0;text-transform:none;gap:.7rem}.brand-mark{width:46px;height:46px;fill:none;stroke:var(--gold-primary);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.brand-copy{display:flex;flex-direction:column;line-height:1.25;background:none!important;-webkit-text-fill-color:initial!important}.brand-copy strong{font-size:1.15rem;color:var(--text-main)}.brand-copy small{font-size:.68rem;color:var(--text-muted);font-weight:500}
.nav-links{gap:1.5rem}.nav-links a{color:var(--text-muted)}.nav-links a:hover{color:var(--gold-primary)}.menu-toggle{display:none;border:0;background:#eeeaff;color:var(--gold-primary);width:42px;height:42px;border-radius:12px;font-size:1.4rem}.user-pill{background:#f4f1ff;border-color:#ddd7ff}.user-avatar{background:var(--gold-gradient);color:#fff}.nav-logout{display:flex;gap:.35rem;align-items:center;font-family:inherit}
.btn-gold{color:#fff;border-radius:14px;box-shadow:0 8px 24px rgba(109,93,252,.22)}.btn-gold:hover{color:#fff;box-shadow:0 12px 30px rgba(109,93,252,.3)}.btn-outline{color:var(--text-main);background:#fff;border-color:var(--border-subtle)}.btn-outline:hover{background:#f4f1ff;color:var(--gold-primary)}
.hero{min-height:650px;padding-top:4rem;grid-template-columns:1fr 1fr;direction:rtl}.hero-copy{max-width:650px}.hero h1{font-size:3.45rem;line-height:1.4;letter-spacing:-1.5px}.hero h1 span,.section-header h2 span,.why-copy h2 span{color:var(--gold-primary);background:none;-webkit-text-fill-color:initial}.hero p{line-height:2;color:var(--text-muted)}.hero-subtitle{background:#eeeaff;border-color:#d9d2ff;color:var(--gold-primary);text-transform:none;letter-spacing:0}.hero-stats{border-top-color:var(--border-subtle)}.stat-item h3{color:var(--gold-primary);font-size:1.65rem}.stat-item p{text-transform:none;letter-spacing:0}.hero-vector-card{position:relative;background:linear-gradient(145deg,#fff,#f5f2ff);border:1px solid #e8e3f2;border-radius:36px;padding:1rem;box-shadow:0 28px 70px rgba(58,43,97,.12);transform:rotate(-1deg)}.hero-vector{width:100%;display:block}.floating-note{position:absolute;background:#fff;padding:.65rem 1rem;border-radius:13px;box-shadow:0 10px 30px rgba(48,40,74,.13);font-size:.82rem;font-weight:700}.floating-note i{color:var(--gold-primary);margin-left:.35rem}.note-one{top:16%;right:-4%}.note-two{bottom:10%;left:-4%}
.eyebrow{color:var(--gold-primary);background:#eeeaff;border-radius:20px;padding:.35rem .9rem;font-size:.8rem;font-weight:700;display:inline-block;margin-bottom:.8rem}.section-header h2{font-size:2.3rem}.featured-section,.reviews-section{padding:4rem 0}.course-card{background:#fff;border-color:var(--border-subtle);box-shadow:0 12px 35px rgba(48,40,74,.07)}.course-card:hover{border-color:#cbc3ff;box-shadow:0 20px 45px rgba(48,40,74,.13)}.card-level-badge{right:auto;left:12px;background:rgba(255,255,255,.92);color:var(--text-muted)}.card-badge{right:12px;left:auto}.badge-gold{background:#eeeaff;color:var(--gold-primary);border-color:#d4cdff}.card-instructor i,.card-meta .bi-star-fill{color:var(--gold-primary)!important}.card-meta{border-color:var(--border-subtle)}.price-current{color:var(--gold-primary);font-size:1.05rem}.card-arrow{width:42px;height:42px;border-radius:13px;background:#eeeaff;color:var(--gold-primary);display:grid;place-items:center;text-decoration:none;transition:.25s}.card-arrow:hover{background:var(--gold-primary);color:#fff;transform:translateX(-3px)}
.why-section{max-width:1280px;margin:3rem auto 5rem;padding:3rem 5%;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5rem;background:#f6f2ff;border-radius:36px}.why-vector svg{width:100%;max-height:390px}.why-copy h2{font-size:2.4rem;line-height:1.5;margin-bottom:1rem}.why-copy>p{color:var(--text-muted);margin-bottom:1.5rem}.feature-list{display:grid;gap:1rem;margin-bottom:2rem}.feature-list>div{display:flex;gap:.8rem;align-items:center}.feature-list>div>i{width:35px;height:35px;background:#dff7ef;color:#159b76;display:grid;place-items:center;border-radius:50%;font-size:1.2rem}.feature-list span{display:flex;flex-direction:column}.feature-list small{color:var(--text-muted)}
.reviews-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1.5rem;max-width:1200px;margin:auto;padding:0 6%}.review-card{background:#fff;border:1px solid var(--border-subtle);border-radius:20px;padding:1.7rem;box-shadow:0 10px 30px rgba(48,40,74,.06)}.quote-mark{font-size:3.2rem;color:#cfc8ff;height:38px}.review-card>p{color:var(--text-muted)}.review-person{display:flex;align-items:center;gap:.7rem;margin-top:1.2rem}.review-person>span{width:42px;height:42px;border-radius:50%;background:#eeeaff;color:var(--gold-primary);display:grid;place-items:center;font-weight:800}.review-person div{display:flex;flex-direction:column}.review-person small{color:var(--text-muted)}.empty-state{grid-column:1/-1;text-align:center;background:#fff;border:1px dashed #d5cfee;border-radius:22px;padding:3rem}.empty-state svg{width:150px}
.auth-card,.profile-header,.detail-sidebar-card{background:#fff;border-color:var(--border-subtle);box-shadow:0 20px 55px rgba(48,40,74,.1)}.form-group{text-align:right}.form-control{background:#fff;border-color:#dcd7e6;color:var(--text-main);text-align:right}.form-control:focus{border-color:var(--gold-primary);box-shadow:0 0 0 4px rgba(109,93,252,.1)}.otp-input{text-align:center}.detail-hero{background:#f6f2ff;border-color:var(--border-subtle)}.accordion-chapter{background:#fff;border-color:var(--border-subtle)}.lms-main{background:#f5f2fa}.lms-sidebar{background:#fff;border-color:var(--border-subtle)}footer{background:linear-gradient(135deg,#172554,#312e81);color:#fff;border:0}footer .text-muted,.footer-col p,.footer-col a{color:#dbeafe!important}.footer-grid{grid-template-columns:1.6fr .8fr 1fr 1.2fr}.footer-col .brand-copy strong{color:#fff}.footer-col .brand-copy small{color:#bfdbfe}.footer-col .brand-mark{stroke:#93c5fd}.trust-chip{background:rgba(255,255,255,.1);padding:.7rem 1rem;border-radius:12px;color:#e0f2fe}.footer-bottom{color:#bfdbfe;border-color:rgba(255,255,255,.15);display:flex;justify-content:space-between;gap:1rem}.footer-bottom a{color:#fff;font-weight:700}.hyperwebs-link{display:flex;gap:.8rem;align-items:center;padding:1rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);border-radius:16px;text-decoration:none;transition:.25s}.hyperwebs-link:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}.hyperwebs-link svg{width:48px;height:48px;fill:none;stroke:#7dd3fc;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;flex:none}.hyperwebs-link span{display:flex;flex-direction:column}.hyperwebs-link strong{color:#fff}.hyperwebs-link small{font-size:.72rem}.hyperwebs-link b{font-size:.8rem;color:#7dd3fc;margin-top:.25rem}.messages{padding:1rem 6%;max-width:1200px;margin:auto}.message{display:flex;align-items:center;gap:.6rem;background:#eefaf6;color:#14775d;border:1px solid #c8eee2;border-radius:14px;padding:.8rem 1rem}.message button{margin-right:auto;border:0;background:none;font-size:1.3rem;color:inherit}
@media(max-width:900px){.hero,.why-section{grid-template-columns:1fr}.hero{padding-top:2.5rem}.hero-media{max-width:620px;margin:auto}.why-section{margin:2rem 4%;gap:1rem}.menu-toggle{display:grid;place-items:center}.nav-links{display:none;position:absolute;top:75px;right:4%;left:4%;background:#fff;border:1px solid var(--border-subtle);border-radius:18px;padding:1rem;box-shadow:0 15px 35px rgba(48,40,74,.12);flex-direction:column;align-items:stretch}.nav-links.open{display:flex}}
@media(max-width:640px){.navbar{padding:.75rem 4%}.hero{padding:2.5rem 5%;gap:2rem}.hero h1{font-size:2.15rem}.hero p{font-size:1rem}.hero-stats{gap:.6rem}.stat-item h3{font-size:1.15rem}.stat-item p{font-size:.68rem}.course-grid{grid-template-columns:1fr;padding-right:5%;padding-left:5%}.why-copy h2,.section-header h2{font-size:1.8rem}.floating-note{font-size:.7rem}.footer-grid{grid-template-columns:1fr}.enrollments-table{display:block;overflow-x:auto}.auth-card{padding:2rem 1.25rem}}

.resend-form{margin-top:1rem}.link-button{font-family:inherit;border:0;background:none;color:var(--gold-primary);cursor:pointer;padding:.6rem}.link-button:disabled{color:var(--text-dim);cursor:not-allowed}.status-page{min-height:65vh;display:grid;place-items:center;padding:3rem 1rem}.status-card{width:min(560px,100%);background:#fff;border:1px solid var(--border-subtle);border-radius:26px;padding:2.5rem;text-align:center;box-shadow:0 20px 55px rgba(48,40,74,.1)}.status-icon{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 1rem;font-size:2rem}.status-icon.success{background:#dff7ef;color:#159b76}.status-icon.pending{background:#fff2d3;color:#c27a12}.status-icon.failed{background:#ffe5e5;color:#c94545}.status-card p{color:var(--text-muted);margin:.7rem 0 1.5rem}.status-card dl{background:#f8f6fc;border-radius:16px;padding:.8rem 1.2rem;margin-bottom:1.5rem}.status-card dl div{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border-subtle)}.status-card dl div:last-child{border:0}.status-card dd{font-weight:700}
@media(max-width:900px){body.menu-open{overflow:hidden}.nav-links.open a,.nav-links.open form{display:flex!important}.nav-links.open{max-height:calc(100vh - 95px);overflow-y:auto}.detail-grid{grid-template-columns:1fr!important}.lms-layout{grid-template-columns:1fr!important}.lms-main{padding:1.25rem}.lms-sidebar{height:auto;position:static}.auth-wrapper>div[style*="grid-template-columns"]{grid-template-columns:1fr!important;padding:1.5rem!important}.auth-wrapper>div[style*="grid-template-columns"]>div[style*="border-left"]{border-left:0!important;border-top:1px solid var(--border-subtle);padding-left:0!important;padding-top:1.5rem}.profile-header{flex-wrap:wrap}.profile-header>div[style*="margin-left"]{margin-left:0!important}.enrollments-table th,.enrollments-table td{white-space:nowrap;text-align:right}}

/* Contrast fixes and checkout */
.card-badges{position:absolute;top:12px;right:12px;z-index:3;display:flex;flex-direction:column;align-items:flex-start;gap:.45rem}.discount-badge{display:inline-flex;align-items:center;background:#e5484d;color:#fff;border-radius:999px;padding:.3rem .7rem;font-size:.76rem;font-weight:800;box-shadow:0 7px 18px rgba(229,72,77,.24)}.price-original{color:#857e92!important;text-decoration-thickness:2px}.price-current{color:#5140db!important}.price-free{color:#087b5c!important}.badge-emerald{color:#087b5c;background:#dff7ef;border-color:#a9e4d2}.download-item{display:flex;justify-content:space-between;align-items:center;background:#f8f6fc;padding:.85rem 1rem;border-radius:10px;border:1px solid var(--border-subtle);color:var(--text-main)}.accordion-chapter,.lesson-item,.chapter-header{color:var(--text-main)}.lesson-item:hover{color:var(--gold-primary)}.profile-avatar-lg{color:#fff}.enrollments-table th,.enrollments-table td{text-align:right;color:var(--text-main)}.enrollments-table th{color:var(--text-muted);text-transform:none}.lms-sidebar-header,.lms-sidebar-content{color:var(--text-main)}
.checkout-page{padding:4rem 1.5rem;min-height:70vh;display:grid;place-items:center}.checkout-card{width:min(900px,100%);display:grid;grid-template-columns:1.15fr .85fr;background:#fff;border:1px solid var(--border-subtle);border-radius:28px;overflow:hidden;box-shadow:0 24px 65px rgba(48,40,74,.11)}.checkout-summary,.checkout-action{padding:2.5rem}.checkout-summary h1{font-size:1.8rem;margin:.8rem 0 .35rem}.checkout-summary>p,.checkout-action>p,.checkout-action>small{color:var(--text-muted)}.checkout-price-list{margin:1.5rem 0;border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);padding:.75rem 0}.checkout-price-list>div{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.discount-row{color:#087b5c}.old-checkout-price{text-decoration:line-through;color:var(--text-muted)}.checkout-total{border-top:1px dashed var(--border-subtle);margin-top:.4rem;padding-top:.9rem!important;font-size:1.12rem}.checkout-total strong{color:var(--gold-primary)}.checkout-benefits{list-style:none;display:grid;gap:.45rem;color:var(--text-muted);font-size:.9rem}.checkout-benefits i{color:#159b76;margin-left:.4rem}.checkout-action{background:#f7f4ff;border-right:1px solid var(--border-subtle);display:flex;flex-direction:column;justify-content:center;text-align:center}.checkout-icon{width:68px;height:68px;margin:0 auto 1rem;border-radius:20px;display:grid;place-items:center;background:#e9e5ff;color:var(--gold-primary);font-size:2rem}.checkout-action h2{margin-bottom:.35rem}.checkout-submit{width:100%;justify-content:center;margin:1.4rem 0 .8rem}.pending-notice{display:flex;align-items:center;gap:.5rem;text-align:right;background:#fff3d6;color:#8a5a0a;border:1px solid #f2d58e;border-radius:12px;padding:.7rem .8rem;margin-top:1rem;font-size:.86rem}
@media(max-width:760px){.checkout-page{padding:2rem .8rem}.checkout-card{grid-template-columns:1fr}.checkout-summary,.checkout-action{padding:1.5rem}.checkout-action{border-right:0;border-top:1px solid var(--border-subtle)}.checkout-summary h1{font-size:1.45rem}.card-footer{gap:.6rem}.price-current{font-size:.92rem}}

.course-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:3.5rem}.detail-main,.detail-grid>div,.course-content-grid>div{min-width:0}.detail-main h1{overflow-wrap:anywhere}.detail-sidebar-card .price-current{line-height:1.5}.detail-sidebar-card>div[style*="align-items: baseline"]{flex-wrap:wrap}.course-content-grid img,.detail-grid img{max-width:100%}.lesson-item{gap:.75rem}.chapter-header>div,.lesson-item>div{min-width:0}.footer-col{min-width:0}
@media(max-width:1100px){.detail-grid{grid-template-columns:minmax(0,1fr) 330px;gap:2rem}.course-content-grid{grid-template-columns:minmax(0,1fr) 300px;gap:2rem}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:820px){.detail-grid,.course-content-grid{grid-template-columns:1fr}.detail-sidebar-card{position:static}.detail-main h1{font-size:2rem}.detail-hero{padding:2rem 4%}.course-content-grid{gap:1.5rem}.footer-grid{grid-template-columns:1fr 1fr}.footer-bottom{flex-direction:column;align-items:center}.card-meta{flex-wrap:wrap}.lesson-item{align-items:flex-start}.chapter-header{gap:.7rem}}
@media(max-width:560px){.detail-main h1{font-size:1.65rem}.detail-tagline{font-size:1rem}.detail-instructor-box{align-items:flex-start}.detail-hero+section{padding:2rem 4%!important}.course-content-grid>div>div{padding:1.25rem!important}.chapter-header,.lesson-item{padding:.85rem}.lesson-item{flex-direction:column}.course-content-grid [style*="justify-content: space-between"]{gap:.75rem;flex-wrap:wrap}.courses-page h1,.section-header h1{font-size:2rem!important}.footer-grid{grid-template-columns:1fr}.profile-container{padding:2rem 4%}.profile-header{padding:1.25rem}.profile-avatar-lg{width:60px;height:60px;font-size:1.6rem}.profile-header h1{font-size:1.5rem!important}.lms-video-container{border-radius:12px}.lms-main{padding:.75rem}}

.nav-login-button,.nav-login-button:visited{color:#fff!important}.nav-login-button:hover{color:#fff!important}.footer-col h4{color:#fff!important}.footer-col p{color:#e0e7ff!important}.footer-col ul li a{color:#dbeafe!important}.footer-col ul li a:hover{color:#fff!important}.footer-col .trust-chip{color:#fff!important}.hyperwebs-link small{color:#dbeafe!important}.footer-bottom,.footer-bottom span{color:#dbeafe!important}.footer-bottom a{color:#fff!important;text-decoration:underline;text-underline-offset:4px}
