*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--bg-primary: #FAFBFD;--bg-secondary: #FFFFFF;--bg-card: #FFFFFF;--bg-card-hover: #F1F5F9;--bg-surface: #F1F5F9;--bg-input: #F8FAFC;--accent-gold: #E6960A;--accent-gold-hover: #D48A08;--accent-teal: #0D9488;--accent-teal-hover: #0F766E;--accent-purple: #9333EA;--accent-pink: #DB2777;--accent-blue: #2563EB;--accent-green: #059669;--accent-red: #DC2626;--accent-orange: #EA580C;--gradient-primary: linear-gradient(135deg, #0D9488 0%, #2563EB 50%, #9333EA 100%);--gradient-gold: linear-gradient(135deg, #E6960A 0%, #EA580C 100%);--gradient-hero: linear-gradient(135deg, #F0F9FF 0%, #E0F2FE 40%, #F0FDFA 100%);--gradient-card: linear-gradient(145deg, rgba(255,255,255,.9) 0%, rgba(241,245,249,.6) 100%);--gradient-premium: linear-gradient(135deg, #E6960A 0%, #DB2777 50%, #9333EA 100%);--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-accent: #0D9488;--text-gold: #B45309;--border-color: rgba(15, 23, 42, .08);--border-subtle: rgba(15, 23, 42, .06);--border-active: rgba(13, 148, 136, .4);--shadow-sm: 0 1px 2px rgba(0,0,0,.04), 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 2px 4px rgba(0,0,0,.03), 0 4px 12px rgba(0,0,0,.06);--shadow-lg: 0 4px 6px rgba(0,0,0,.02), 0 10px 30px rgba(0,0,0,.08);--shadow-xl: 0 8px 16px rgba(0,0,0,.04), 0 20px 48px rgba(0,0,0,.1);--shadow-glow-teal: 0 0 20px rgba(13,148,136,.15);--shadow-glow-gold: 0 0 20px rgba(230,150,10,.15);--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(15, 23, 42, .06);--glass-blur: blur(16px);--font-heading: "Outfit", sans-serif;--font-body: "Inter", sans-serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-toast: 400;--max-width: 1280px;--container-padding: var(--space-6)}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 10% 20%,rgba(13,148,136,.07) 0%,transparent 45%),radial-gradient(circle at 90% 10%,rgba(37,99,235,.06) 0%,transparent 45%),radial-gradient(circle at 50% 90%,rgba(147,51,234,.05) 0%,transparent 45%),radial-gradient(circle at 80% 65%,rgba(230,150,10,.04) 0%,transparent 40%);pointer-events:none;z-index:-1}body:after{content:"";position:fixed;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(to right,rgba(15,23,42,.02) 1px,transparent 1px),linear-gradient(to bottom,rgba(15,23,42,.02) 1px,transparent 1px),radial-gradient(rgba(15,23,42,.04) 1px,transparent 1px);background-size:32px 32px,32px 32px,16px 16px;pointer-events:none;z-index:-1}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--text-primary)}a{color:var(--accent-teal);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-teal-hover)}img{max-width:100%;height:auto;display:block}ul{list-style:none}button{font-family:var(--font-body);cursor:pointer;border:none;outline:none}input,select,textarea{font-family:var(--font-body);outline:none}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--container-padding)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-weight:600;font-size:var(--text-sm);transition:all var(--transition-base);position:relative;overflow:hidden;white-space:nowrap}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.1) 0%,transparent 50%);opacity:0;transition:opacity var(--transition-fast)}.btn:hover:after{opacity:1}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-md),0 0 16px #4ecdc433}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow-teal)}.btn-gold{background:var(--gradient-gold);color:#fff;font-weight:700;box-shadow:var(--shadow-md),0 0 16px #e6960a26}.btn-gold:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),var(--shadow-glow-gold)}.btn-outline{background:transparent;color:var(--text-primary);border:1px solid var(--border-color)}.btn-outline:hover{border-color:var(--accent-teal);background:#4ecdc41a;color:var(--accent-teal)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{color:var(--text-primary);background:#ffffff0d}.btn-danger{background:var(--accent-red);color:#fff}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--text-xs)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--text-base);border-radius:var(--radius-lg)}.btn-icon{padding:var(--space-2);border-radius:var(--radius-md);background:transparent;color:var(--text-secondary);transition:all var(--transition-fast)}.btn-icon:hover{color:var(--text-primary);background:#ffffff0d}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:linear-gradient(180deg,#fff,#f8fafc);border:1px solid rgba(15,23,42,.08);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-base);box-shadow:0 1px 3px #00000008,0 4px 12px #0f172a08,inset 0 1px #fff;position:relative}.card:hover{border-color:#0d948859;transform:translateY(-3px);box-shadow:0 4px 16px #0000000a,0 12px 24px #0d94880f}.card-glass{background:#ffffffd9;-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid rgba(15,23,42,.08);border-radius:var(--radius-lg);box-shadow:0 4px 20px #0000000a}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-2)}.form-input{width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-input);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-base);transition:all var(--transition-fast)}.form-input:focus{border-color:var(--accent-teal);box-shadow:0 0 0 3px #4ecdc41a}.form-input::placeholder{color:var(--text-muted)}.form-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:var(--space-10)}textarea.form-input{resize:vertical;min-height:100px}.form-error{color:var(--accent-red);font-size:var(--text-xs);margin-top:var(--space-1)}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-teal{background:#4ecdc426;color:var(--accent-teal)}.badge-gold{background:#f5a62326;color:var(--accent-gold)}.badge-purple{background:#a855f726;color:var(--accent-purple)}.badge-green{background:#10b98126;color:var(--accent-green)}.badge-red{background:#ef444426;color:var(--accent-red)}.badge-blue{background:#3b82f626;color:var(--accent-blue)}.badge-orange{background:#f9731626;color:var(--accent-orange)}.stars{display:inline-flex;gap:2px}.star{color:var(--text-muted)}.star.filled{color:var(--accent-gold)}.grid{display:grid;gap:var(--space-6)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(3,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.text-center{text-align:center}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.text-3xl{font-size:var(--text-3xl)}.text-muted{color:var(--text-secondary)}.text-gold{color:var(--accent-gold)}.text-teal{color:var(--accent-teal)}.font-bold{font-weight:700}.font-semibold{font-weight:600}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.w-full{width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #4ecdc466}50%{box-shadow:0 0 20px 4px #4ecdc433}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in{animation:fadeIn .5s ease-out forwards}.animate-slide-left{animation:slideInLeft .5s ease-out forwards}.animate-slide-right{animation:slideInRight .5s ease-out forwards}.animate-scale{animation:scaleIn .3s ease-out forwards}.stagger-children>*{opacity:0;animation:fadeIn .4s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:.05s}.stagger-children>*:nth-child(2){animation-delay:.1s}.stagger-children>*:nth-child(3){animation-delay:.15s}.stagger-children>*:nth-child(4){animation-delay:.2s}.stagger-children>*:nth-child(5){animation-delay:.25s}.stagger-children>*:nth-child(6){animation-delay:.3s}.stagger-children>*:nth-child(7){animation-delay:.35s}.stagger-children>*:nth-child(8){animation-delay:.4s}.skeleton{background:linear-gradient(90deg,var(--bg-card) 25%,var(--bg-card-hover) 37%,var(--bg-card) 63%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius-md)}.progress-bar{width:100%;height:6px;background:var(--bg-surface);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full);transition:width var(--transition-slow)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);animation:fadeIn .2s ease-out}.modal-content{background:var(--bg-secondary);border:1px solid var(--glass-border);border-radius:var(--radius-xl);padding:var(--space-8);max-width:560px;width:90%;max-height:90vh;overflow-y:auto;animation:scaleIn .3s ease-out}.toast-container{position:fixed;top:var(--space-6);right:var(--space-6);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-3)}.toast{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:var(--space-4) var(--space-6);display:flex;align-items:center;gap:var(--space-3);min-width:300px;box-shadow:var(--shadow-lg);animation:slideInRight .3s ease-out}.toast-success{border-left:3px solid var(--accent-green)}.toast-error{border-left:3px solid var(--accent-red)}.toast-info{border-left:3px solid var(--accent-blue)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-surface);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.page{min-height:calc(100vh - 72px);padding-top:var(--space-8);padding-bottom:var(--space-16)}.page-header{margin-bottom:var(--space-8)}.page-title{font-size:var(--text-3xl);font-weight:800;background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.section{margin-bottom:var(--space-16)}.section-title{font-size:var(--text-2xl);font-weight:700;margin-bottom:var(--space-6)}.dashboard-layout{display:grid;grid-template-columns:260px 1fr;min-height:calc(100vh - 72px)}.dashboard-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-subtle);padding:var(--space-6);position:sticky;top:72px;height:calc(100vh - 72px);overflow-y:auto}.dashboard-content{padding:var(--space-8)}@media (max-width: 1024px){.dashboard-layout{grid-template-columns:1fr}.dashboard-sidebar{display:none}}.stat-card{background:var(--gradient-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--space-6);position:relative;overflow:hidden;transition:all var(--transition-base)}.stat-card:hover{border-color:var(--border-active);transform:translateY(-4px);box-shadow:var(--shadow-lg)}.stat-card:before{content:"";position:absolute;top:0;right:0;width:80px;height:80px;border-radius:0 0 0 var(--radius-xl);opacity:.1}.stat-card .stat-icon{width:48px;height:48px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-4)}.stat-card .stat-value{font-family:var(--font-heading);font-size:var(--text-3xl);font-weight:800;line-height:1;margin-bottom:var(--space-1)}.stat-card .stat-label{font-size:var(--text-sm);color:var(--text-secondary)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border-subtle)}table{width:100%;border-collapse:collapse}thead{background:var(--bg-surface)}th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}td{padding:var(--space-3) var(--space-4);font-size:var(--text-sm);border-top:1px solid var(--border-subtle)}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:#4ecdc408}.pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-8)}.pagination button{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:var(--text-sm);font-weight:500;background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-subtle);transition:all var(--transition-fast)}.pagination button:hover:not(:disabled){border-color:var(--accent-teal);color:var(--accent-teal)}.pagination button.active{background:var(--gradient-primary);color:#fff;border:none}.course-card{border-radius:var(--radius-lg);overflow:hidden;background:var(--gradient-card);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);transition:all var(--transition-base);cursor:pointer;display:flex;flex-direction:column}.course-card:hover{transform:translateY(-6px);border-color:var(--border-active);box-shadow:var(--shadow-lg),0 0 30px #4ecdc41a}.course-card .course-image{width:100%;aspect-ratio:16/9;object-fit:cover;position:relative;overflow:hidden;background:var(--bg-surface)}.course-card .course-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.course-card:hover .course-image img{transform:scale(1.05)}.course-card .course-body{padding:var(--space-5);flex:1;display:flex;flex-direction:column}.course-card .course-category{font-size:var(--text-xs);color:var(--accent-teal);font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.course-card .course-title{font-family:var(--font-heading);font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4}.course-card .course-instructor{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:var(--space-3)}.course-card .course-meta{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--border-subtle)}.course-card .course-price{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:700;color:var(--text-primary)}.course-card .course-price-premium{font-size:var(--text-xs);color:var(--accent-gold);text-decoration:line-through;margin-right:var(--space-2)}.course-card .premium-badge{position:absolute;top:var(--space-3);right:var(--space-3);background:var(--gradient-gold);color:#0a1628;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;z-index:2}.availability-badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-xs);font-weight:500}.availability-badge.available{background:#10b9811f;color:var(--accent-green)}.availability-badge.limited{background:#f5a6231f;color:var(--accent-gold)}.availability-badge.full{background:#ef44441f;color:var(--accent-red)}.availability-badge.upcoming{background:#3b82f61f;color:var(--accent-blue)}.availability-badge .pulse-dot{width:6px;height:6px;border-radius:50%;animation:pulse-glow 2s infinite}.availability-badge.available .pulse-dot{background:var(--accent-green)}.availability-badge.limited .pulse-dot{background:var(--accent-gold)}.availability-badge.full .pulse-dot{background:var(--accent-red)}.availability-badge.upcoming .pulse-dot{background:var(--accent-blue)}.navbar-mobile-toggle{display:none!important}@media (max-width: 768px){.navbar-search,.navbar-desktop-links{display:none!important}.navbar-mobile-toggle{display:flex!important}}@media (max-width: 1024px){.container{padding-left:var(--space-5);padding-right:var(--space-5)}.course-detail-grid{grid-template-columns:1fr!important;gap:var(--space-6)!important}.course-detail-sidebar{position:relative!important;top:auto!important}.page-title{font-size:var(--text-2xl)!important}.section-title{font-size:var(--text-xl)}}@media (max-width: 768px){:root{--space-8: 1.25rem;--space-10: 1.5rem;--space-12: 2rem;--space-16: 2.5rem;--space-20: 3rem}.container{padding-left:var(--space-4);padding-right:var(--space-4)}.page{padding-top:90px;padding-bottom:var(--space-8)}.navbar{padding:0 var(--space-4)}.navbar .nav-links{display:none}.hero-section h1,.page-title{font-size:clamp(1.5rem,5vw,2rem)!important}.card{padding:var(--space-4)}.form-input,.form-select,.form-textarea{font-size:16px}.btn{padding:10px 16px;font-size:.85rem}.btn-lg{padding:12px 20px}.footer-grid{grid-template-columns:1fr!important;gap:var(--space-6)}.stat-grid{grid-template-columns:repeat(2,1fr)!important}.course-detail-grid{grid-template-columns:1fr!important}.course-detail-sidebar{position:relative!important;top:auto!important}.grid-2{grid-template-columns:1fr!important}}@media (max-width: 480px){.container{padding-left:var(--space-3);padding-right:var(--space-3)}.page{padding-top:80px}.page-title{font-size:1.35rem!important}.card{padding:var(--space-3);border-radius:var(--radius-md)}.btn{padding:8px 14px;font-size:.8rem}.flex-wrap{gap:var(--space-2)!important}.badge{font-size:.6rem;padding:3px 8px}.stat-grid{grid-template-columns:1fr!important}.lightbox-controls{padding:6px 10px!important;gap:8px!important}}
