.navbar{position:sticky;top:0;z-index:var(--z-sticky);background:#0f0f0ff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border)}[data-theme=light] .navbar{background:#f8f6f1f2;border-bottom-color:#e5dfd3}.navbar-container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-4);height:var(--navbar-height);display:flex;align-items:center;justify-content:space-between;gap:var(--space-8)}.navbar-logo{display:flex;align-items:baseline;gap:var(--space-2);text-decoration:none}.logo-text{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.logo-sub{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.1em}.navbar-links{display:flex;align-items:center;gap:var(--space-2);list-style:none}.nav-link{padding:var(--space-2) var(--space-4);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);transition:all var(--transition-normal)}.nav-link:hover{color:var(--color-text);background:var(--color-surface)}.nav-link.active{color:var(--color-primary)}.navbar-auth,.auth-buttons{display:flex;align-items:center;gap:var(--space-2)}.user-menu{position:relative}.user-button{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;transition:all var(--transition-normal)}.user-button:hover{background:var(--color-surface-elevated)}.user-avatar{width:28px;height:28px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);overflow:hidden}.user-avatar img{width:100%;height:100%;object-fit:cover}.user-name{font-weight:var(--font-weight-medium);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-arrow{transition:transform var(--transition-normal)}.dropdown-arrow.open{transform:rotate(180deg)}.dropdown-menu{position:absolute;top:calc(100% + var(--space-2));right:0;min-width:220px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);overflow:hidden;animation:dropdownFadeIn .15s ease}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:var(--space-3) var(--space-4);background:var(--color-surface-elevated)}.dropdown-email{font-size:var(--font-size-sm);color:var(--color-text-muted)}.dropdown-divider{height:1px;background:var(--color-border)}.dropdown-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text);text-decoration:none;transition:all var(--transition-normal);border:none;background:none;width:100%;text-align:left;font-size:var(--font-size-base);cursor:pointer}.dropdown-item:hover{background:var(--color-surface-elevated)}.dropdown-item.logout{color:var(--color-error)}.dropdown-item.logout:hover{background:var(--color-error-light)}.dropdown-item.admin-link{color:var(--primary-color, #6366f1)}.dropdown-item.admin-link:hover{background:#6366f114}.dropdown-item.theme-toggle{color:var(--color-text-secondary)}.dropdown-item.theme-toggle:hover{background:var(--color-surface-elevated);color:var(--color-text)}.theme-toggle-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-normal)}.theme-toggle-btn:hover{background:var(--color-surface-elevated);color:var(--color-text);border-color:var(--color-primary)}.mobile-menu-button{display:none;padding:var(--space-2);background:none;border:none;color:var(--color-text);cursor:pointer}.mobile-menu{display:none;padding:var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface)}.mobile-links{list-style:none;margin-bottom:var(--space-4)}.mobile-link{display:block;padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);transition:all var(--transition-normal)}.mobile-link:hover,.mobile-link.active{color:var(--color-text);background:var(--color-surface-elevated)}.mobile-auth{display:flex;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.mobile-auth .btn{flex:1}.nav-item-with-dropdown{position:relative}.nav-dropdown-trigger{display:flex;align-items:center;gap:var(--space-1);background:none;border:none;cursor:pointer;font-family:inherit;font-size:inherit}.nav-dropdown-arrow{transition:transform var(--transition-normal);margin-left:2px}.nav-dropdown-arrow.open{transform:rotate(180deg)}.nav-badge{display:inline-block;padding:2px 6px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:var(--color-bg);border-radius:var(--radius-sm);margin-left:var(--space-2);text-transform:uppercase;letter-spacing:.02em}.nav-dropdown-menu{position:absolute;top:calc(100% + var(--space-2));left:50%;transform:translate(-50%);min-width:280px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-dropdown);overflow:hidden;animation:dropdownFadeIn .15s ease;z-index:var(--z-dropdown)}.nav-dropdown-item{display:flex;flex-direction:column;gap:2px;padding:var(--space-3) var(--space-4);color:var(--color-text);text-decoration:none;transition:all var(--transition-normal)}.nav-dropdown-item:hover{background:var(--color-surface-elevated)}.nav-dropdown-item.active{background:var(--color-surface-elevated);border-left:3px solid var(--color-primary)}.nav-dropdown-main{background:var(--color-surface-elevated);font-weight:var(--font-weight-medium)}.nav-dropdown-item-label{font-weight:var(--font-weight-medium)}.nav-dropdown-item-desc{font-size:var(--font-size-xs);color:var(--color-text-muted)}.nav-dropdown-status{display:inline-block;font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm);margin-top:var(--space-1);width:fit-content}.nav-dropdown-status.coming-soon{background:var(--color-warning-light);color:var(--color-warning-dark)}.nav-dropdown-status.closed{background:var(--color-error-light);color:var(--color-error)}.nav-dropdown-divider{height:1px;background:var(--color-border);margin:var(--space-1) 0}.mobile-nav-group{margin-bottom:var(--space-2)}.mobile-link-parent{font-weight:var(--font-weight-semibold);color:var(--color-text)}.mobile-nav-children{list-style:none;padding-left:var(--space-4);margin-top:var(--space-1)}.mobile-link-child{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.mobile-status{font-size:var(--font-size-xs);padding:2px 6px;border-radius:var(--radius-sm)}.mobile-status.coming-soon{background:var(--color-warning-light);color:var(--color-warning-dark)}.mobile-status.closed{background:var(--color-error-light);color:var(--color-error)}@media(max-width:768px){.navbar-links,.auth-buttons{display:none}.mobile-menu-button,.mobile-menu{display:block}.user-name{display:none}}.unread-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;color:#fff;background:#e53e3e;border-radius:10px;margin-left:auto;line-height:1}.site-footer{display:flex;justify-content:center;padding:.75rem 1rem;opacity:.45;font-size:.7rem;-webkit-user-select:none;user-select:none}.site-footer-version{color:var(--text-secondary, #888)}.notification-cta-banner{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:0;margin:0 0 24px;border-radius:8px;box-shadow:0 4px 12px #667eea4d;animation:slideDown .3s ease-out;position:relative;overflow:hidden}.notification-cta-banner:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><pattern id="pattern" x="0" y="0" width="20" height="20" patternUnits="userSpaceOnUse"><path d="M20 0L0 20" stroke="rgba(255,255,255,0.05)" stroke-width="1"/></pattern></defs><rect width="100" height="100" fill="url(%23pattern)"/></svg>');pointer-events:none}.notification-cta-content{display:flex;align-items:center;gap:16px;padding:16px 20px;position:relative;z-index:1}.notification-cta-icon{font-size:28px;animation:pulse 2s infinite;flex-shrink:0}.notification-cta-text{flex:1;min-width:0}.notification-cta-title{margin:0;font-weight:600;font-size:16px;line-height:1.4}.notification-cta-subtitle{margin:4px 0 0;font-size:13px;opacity:.9;line-height:1.3}.notification-cta-actions{display:flex;gap:8px;flex-shrink:0;flex-wrap:wrap}.notification-cta-actions .btn{white-space:nowrap}.btn-primary{background-color:#fff;color:#667eea;font-weight:600;border:none;padding:6px 14px;border-radius:4px;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 2px 8px #00000026}.btn-ghost{background-color:#fff3;color:#fff;border:none;padding:6px 14px;border-radius:4px;cursor:pointer;transition:all .2s;font-weight:500}.btn-ghost:hover{background-color:#ffffff4d}.btn-sm{font-size:13px;padding:6px 12px}.notification-cta-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;padding:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center;opacity:.7;transition:opacity .2s;flex-shrink:0}.notification-cta-close:hover{opacity:1}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@media(max-width:768px){.notification-cta-content{flex-direction:column;align-items:flex-start;gap:12px}.notification-cta-actions{width:100%;justify-content:space-between}.notification-cta-icon{position:absolute;right:16px;top:16px;opacity:.2}}@media(max-width:480px){.notification-cta-banner{margin:0 -12px 24px;border-radius:0}.notification-cta-content{padding:12px 16px}.notification-cta-title{font-size:14px}.notification-cta-subtitle{font-size:12px}.notification-cta-actions{flex-direction:column;width:100%}.notification-cta-actions .btn{flex:1}}.toast-container{position:fixed;top:5rem;right:1.5rem;display:flex;flex-direction:column;gap:.75rem;z-index:var(--z-toast, 500);pointer-events:none}.toast{display:flex;align-items:center;gap:.75rem;min-width:280px;max-width:420px;padding:.875rem 1.25rem;border-radius:var(--radius-md, 8px);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 24px #00000040;font-size:.9rem;cursor:pointer;pointer-events:auto;animation:toast-slide-in .3s ease-out}.toast--success{background:#22c55e26;border:1px solid rgba(34,197,94,.4);color:#22c55e}.toast--error{background:#ef444426;border:1px solid rgba(239,68,68,.4);color:#ef4444}.toast--info{background:#3b82f626;border:1px solid rgba(59,130,246,.4);color:#3b82f6}.toast__icon{font-size:1.1rem;font-weight:700;flex-shrink:0}.toast__message{flex:1;line-height:1.4;color:var(--text-primary, #fff)}@keyframes toast-slide-in{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.home-page{min-height:calc(100vh - var(--navbar-height))}.hero{position:relative;width:100%;height:520px;overflow:hidden;background:#0a0a0a;border-bottom:1px solid var(--color-border)}.hero-slide-img-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-slide-img{width:80vw;height:520px;object-fit:cover;display:block;transition:opacity .4s ease;opacity:1;flex-shrink:0}.hero-slide-img.hero-slide-fade{opacity:0}.hero-slide-label{position:absolute;bottom:32px;left:50%;transform:translate(-50%);background:#0009;color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px 12px;border-radius:99px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;pointer-events:none}.hero-slide-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:5px;z-index:3}.hero-slide-dot{width:6px;height:6px;border-radius:50%;border:none;background:#fff6;cursor:pointer;padding:0;transition:background .2s}.hero-slide-dot.active{background:#fff}.hero-info-bar{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-secondary-light) 100%);border-bottom:1px solid var(--color-border)}.hero-info-row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.hero-divider{color:var(--color-text-muted);font-weight:300;opacity:.4;-webkit-user-select:none;user-select:none}.hero-info-bar h1{font-size:var(--font-size-lg);font-weight:var(--font-weight-extrabold);line-height:1.2;margin:0;white-space:nowrap}.hero-stats-row{gap:var(--space-4)}.stat-inline{display:inline-flex;align-items:baseline;gap:var(--space-1)}.stat-number{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-primary)}.features{padding:var(--space-16) var(--space-4)}.features h2{text-align:center;font-size:var(--font-size-3xl);margin-bottom:var(--space-12)}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:var(--container-max);margin:0 auto}.feature-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8);transition:all var(--transition-normal)}.feature-card:hover{border-color:var(--color-primary);transform:translateY(-4px)}.feature-icon{font-size:var(--font-size-4xl);margin-bottom:var(--space-4)}.feature-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-3)}.feature-card p{color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}.feature-card a{font-weight:var(--font-weight-medium);color:var(--color-primary)}.feature-card a.btn{color:#fff}.feature-card--featured{grid-column:1 / -1;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:var(--space-10, 2.5rem) var(--space-12, 3rem);background:linear-gradient(var(--color-surface),var(--color-surface)) padding-box,linear-gradient(135deg,#f59e0b,#ef4444,#8b5cf6) border-box;border:2px solid transparent;border-radius:var(--radius-xl, 1rem);box-shadow:0 8px 32px #f59e0b26,0 2px 8px #00000014}.feature-card--featured:hover{transform:translateY(-6px);box-shadow:0 12px 40px #f59e0b40,0 4px 12px #0000001a;border-color:transparent}.feature-card--featured .feature-icon{font-size:3.5rem}.feature-card--featured h3{font-size:var(--font-size-2xl, 1.5rem);background:linear-gradient(135deg,#f59e0b,#ef4444);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.feature-card--featured p{max-width:640px;font-size:var(--font-size-base)}.featured-badge{position:absolute;top:var(--space-3, .75rem);right:var(--space-3, .75rem);background:linear-gradient(135deg,#f59e0b,#ef4444);color:#fff;font-size:var(--font-size-xs, .75rem);font-weight:var(--font-weight-bold, 700);padding:2px 10px;border-radius:99px;letter-spacing:.04em;text-transform:uppercase;line-height:1.6}.featured-highlights{list-style:none;padding:0;margin:0 0 var(--space-4) 0;display:flex;gap:var(--space-4);flex-wrap:wrap;justify-content:center}.featured-highlights li{font-size:var(--font-size-sm, .875rem);color:var(--color-text-secondary);padding:var(--space-1, .25rem) var(--space-3, .75rem);background:var(--color-bg, #f8f8f8);border-radius:99px;white-space:nowrap}.featured-highlights li:before{content:"✓ ";color:#16a34a;font-weight:700}.cta{padding:var(--space-16) var(--space-4);text-align:center;background:var(--color-surface);border-top:1px solid var(--color-border)}.cta h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-4)}.cta p{color:var(--color-text-secondary);margin-bottom:var(--space-8);max-width:500px;margin-left:auto;margin-right:auto}@media(max-width:768px){.hero{height:300px}.hero-slide-img{width:100vw;height:300px}.hero-info-bar{padding:var(--space-3) var(--space-4)}.hero-info-bar h1{font-size:var(--font-size-base);white-space:normal}.hero-divider{display:none}.hero-info-row{gap:var(--space-2)}.features h2,.cta h2{font-size:var(--font-size-2xl)}.features-grid{grid-template-columns:1fr}.feature-card--featured{padding:var(--space-6) var(--space-4)}.featured-highlights{flex-direction:column;align-items:center;gap:var(--space-2)}}.courses-page{padding:var(--space-8) var(--space-4) var(--space-16)}.section-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-2);color:var(--color-text)}.section-subtitle{color:var(--color-text-muted);margin-bottom:var(--space-6)}.signature-section{margin-bottom:var(--space-12)}.signature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:var(--space-6)}.signature-card{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg) 100%);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;transition:all var(--transition-normal);position:relative;overflow:hidden}.signature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.signature-card:hover{box-shadow:0 8px 32px rgba(var(--color-primary-rgb),.2);transform:translateY(-2px)}.signature-card-header{margin-bottom:var(--space-4)}.signature-badge{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.has-competition{display:inline-block;padding:var(--space-1) var(--space-3);background:var(--color-secondary-light);color:var(--color-secondary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.signature-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-2);color:var(--color-text)}.course-overview{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.course-benefits{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.course-benefits h4,.course-features-section h4,.fee-structure h4,.competition-tracks h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3);color:var(--color-text)}.course-benefits ul{list-style:none;padding:0;margin:0}.course-benefits li{padding:var(--space-2) 0;padding-left:var(--space-5);position:relative;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.course-benefits li:before{content:"★";position:absolute;left:0;color:var(--color-primary)}.course-features-section{margin-bottom:var(--space-4)}.fee-structure{background:var(--color-bg);border-radius:var(--radius-md);padding:var(--space-4);margin-bottom:var(--space-4)}.fee-structure p{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-3)}.installments{display:flex;gap:var(--space-2);flex-wrap:wrap}.installment{flex:1;min-width:80px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3);text-align:center}.installment-label{display:block;font-size:var(--font-size-xs);color:var(--color-text-muted);margin-bottom:var(--space-1)}.installment-value{display:block;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-primary)}.competition-tracks{margin-bottom:var(--space-4)}.tracks-list{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.track-tag{padding:var(--space-1) var(--space-3);background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.prize-info{font-size:var(--font-size-sm);color:var(--color-secondary);font-weight:var(--font-weight-semibold)}.signature-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-border);margin-top:auto}.signature-card:not(.expanded) .course-benefits,.signature-card:not(.expanded) .course-features-section,.signature-card:not(.expanded) .fee-structure,.signature-card:not(.expanded) .competition-tracks{display:none}.all-courses-section{margin-top:var(--space-8)}.category-filters{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-6)}.courses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-6)}.course-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;transition:all var(--transition-normal)}.course-card:hover{border-color:var(--color-primary)}.course-card-badges{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.course-category{display:inline-block;padding:var(--space-1) var(--space-3);background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.coming-soon-badge{padding:var(--space-1) var(--space-3);background:var(--color-warning-light);color:var(--color-warning);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.course-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-2)}.course-duration{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.course-description{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4);flex-grow:1}.course-features{list-style:none;margin-bottom:var(--space-4);padding:var(--space-4);background:var(--color-bg);border-radius:var(--radius-md)}.course-features li{padding:var(--space-2) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.mini-tracks{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-4)}.mini-track-tag{padding:var(--space-1) var(--space-2);background:var(--color-secondary-light);color:var(--color-secondary);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.mini-track-tag.more{background:var(--color-bg);color:var(--color-text-muted)}.course-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-border)}.course-price{font-weight:var(--font-weight-semibold);color:var(--color-text-muted);font-size:var(--font-size-sm)}.course-prize{font-weight:var(--font-weight-semibold);color:var(--color-secondary);font-size:var(--font-size-sm)}@media(max-width:768px){.signature-grid,.courses-grid{grid-template-columns:1fr}.installments{flex-direction:column}.installment{min-width:100%}}.why-learn-section{margin-bottom:var(--space-12);padding:var(--space-8);background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-surface) 100%);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.why-learn-description{font-size:var(--font-size-lg);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8);max-width:800px}.benefits-section{margin-bottom:var(--space-8)}.benefits-section h3{font-size:var(--font-size-xl);margin-bottom:var(--space-4);color:var(--color-text)}.benefits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4)}.benefit-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-fast)}.benefit-item:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.benefit-icon{font-size:var(--font-size-2xl);flex-shrink:0}.benefit-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.opportunities-section{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--space-6);border:1px solid var(--color-border)}.opportunities-section h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4);color:var(--color-text)}.opportunities-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-2) var(--space-6);list-style:none;padding:0;margin:0}.opportunities-list li{position:relative;padding-left:var(--space-5);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.opportunities-list li:before{content:"✓";position:absolute;left:0;color:var(--color-primary);font-weight:var(--font-weight-bold)}.fee-programs-section{margin-bottom:var(--space-12)}.fee-programs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--space-6)}.fee-program-card{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;transition:all var(--transition-normal);position:relative;overflow:hidden}.fee-program-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-secondary),var(--color-primary))}.fee-program-card:hover{border-color:var(--color-primary);box-shadow:0 8px 24px #0000001a;transform:translateY(-4px)}.fee-program-header{margin-bottom:var(--space-4)}.fee-program-header h3{font-size:var(--font-size-xl);color:var(--color-text);margin-bottom:var(--space-2)}.fee-duration{font-size:var(--font-size-sm);color:var(--color-text-muted)}.fee-total{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) 0;margin-bottom:var(--space-4)}.fee-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.fee-amount{font-size:var(--font-size-2xl);color:var(--color-text);font-weight:var(--font-weight-bold)}.fee-class-info{margin-bottom:var(--space-4)}.fee-class-info p{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.fee-breakdown{margin-bottom:var(--space-4)}.fee-breakdown h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:var(--space-3)}.fee-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.fee-table th,.fee-table td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--color-border)}.fee-table th{background:var(--color-bg);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);font-size:var(--font-size-xs);text-transform:uppercase}.fee-table td:last-child{text-align:right;font-weight:var(--font-weight-semibold);color:var(--color-primary)}.fee-certificate{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-4);background:var(--color-secondary-light);border-radius:var(--radius-md);margin-bottom:var(--space-4)}.certificate-icon{font-size:var(--font-size-xl);flex-shrink:0}.certificate-info{display:flex;flex-direction:column;gap:var(--space-1)}.certificate-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.certificate-amount{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-secondary)}.fee-examinations{margin-bottom:var(--space-4)}.fee-examinations h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.fee-examinations ul{list-style:none;padding:0;margin:0}.fee-examinations li{font-size:var(--font-size-xs);color:var(--color-text-muted);padding:var(--space-1) 0;padding-left:var(--space-4);position:relative}.fee-examinations li:before{content:"•";position:absolute;left:0;color:var(--color-primary)}.fee-enroll-btn,.fee-learn-btn{width:100%;text-align:center}.fee-card-actions{display:flex;gap:var(--space-2);margin-top:auto}.fee-card-actions .btn{flex:1;text-align:center}.card-actions{display:flex;gap:var(--space-2)}@media(max-width:768px){.why-learn-section{padding:var(--space-6)}.benefits-grid,.fee-programs-grid,.opportunities-list{grid-template-columns:1fr}}.batch-info{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:.4rem}.batch-badge{display:inline-flex;align-items:center;gap:.25rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:.2rem .6rem;border-radius:var(--radius-sm);background:var(--color-info-light);color:var(--color-info);white-space:nowrap}.seats-indicator{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);padding:.15rem .5rem;border-radius:var(--radius-sm);background:var(--color-surface-elevated)}.seats-indicator.seats-low{background:var(--color-warning-light);color:var(--color-warning);font-weight:var(--font-weight-semibold)}.courses-filters{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:2rem}.courses-filters .filter-chip{padding:.45rem 1rem;border-radius:999px;border:1px solid var(--color-border, #e5dfd3);background:var(--color-surface, #fffdf7);color:var(--text-secondary, #6b7280);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.courses-filters .filter-chip:hover{border-color:var(--color-primary, #d4af37);color:var(--color-primary, #d4af37)}.courses-filters .filter-chip.active{background:var(--color-primary, #d4af37);border-color:var(--color-primary, #d4af37);color:#1a1500}.courses-filters .filter-count{margin-left:auto;font-size:.78rem;color:var(--text-secondary, #9ca3af);font-weight:500}.courses-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.25rem 1.75rem}.ccard{background:var(--card-bg, #fffdf7);border:1px solid var(--color-border, #e5dfd3);border-radius:16px;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;min-height:240px;box-shadow:0 2px 8px #8b73380f,0 1px 3px #8b73380a;position:relative;overflow:hidden}.ccard:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--color-primary, #d4af37),var(--color-secondary, #22c55e));border-radius:16px 16px 0 0;z-index:1}.ccard:hover{transform:translateY(-4px);box-shadow:0 12px 28px #8b73381f,0 4px 10px #8b733814}.ccard-photo{position:relative;width:100%;overflow:hidden;background:var(--bg-secondary, #f0ede5)}.ccard-thumbnail-link{display:block;line-height:0}.ccard-thumbnail{width:100%;height:160px;object-fit:cover;display:block;transition:transform .3s ease}.ccard:hover .ccard-thumbnail{transform:scale(1.03)}.ccard-photo-placeholder{display:flex;align-items:center;justify-content:center;height:100px;font-size:2.5rem;opacity:.35;text-decoration:none;background:linear-gradient(135deg,var(--bg-secondary, #f0ede5) 0%,rgba(212,175,55,.06) 100%)}.ccard-status-ribbon{position:absolute;top:.6rem;right:.6rem;font-size:.65rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}.ccard-status-ribbon.coming-soon{background:#f59e0be6;color:#fff}.ccard-status-ribbon.closed{background:#ef4444e6;color:#fff}.ccard-info{padding:1.15rem 1.5rem .65rem;display:flex;flex-direction:column;gap:.5rem}.ccard-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.35rem}.ccard-category-badge{font-size:.7rem;font-weight:600;letter-spacing:.02em;padding:.3rem .65rem;border-radius:9999px;background:#d4af371f;color:var(--color-primary, #b45309);text-transform:uppercase}.ccard-duration{font-size:.75rem;color:var(--text-secondary, #6b7280);font-weight:500}.ccard-info h3{font-size:1.15rem;font-weight:700;margin:0;color:var(--text-primary, #1f2937);letter-spacing:-.01em;line-height:1.3}.ccard-title-link{color:inherit;text-decoration:none}.ccard-title-link:hover{color:var(--color-primary, #d4af37)}.ccard-description{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.6}.ccard-stats{padding:0 1.5rem}.ccard-divider{height:1px;background:var(--border-color, #e5dfd3);margin-bottom:.75rem}.ccard-meta{display:flex;flex-wrap:wrap;gap:.5rem 1rem;padding-bottom:.5rem}.ccard-meta-item{font-size:.78rem;color:var(--text-secondary, #6b7280);font-weight:500;white-space:nowrap}.ccard-spacer{flex:1}.ccard-bottom{padding:.25rem 1.5rem 1.4rem;margin-top:auto;display:flex;flex-direction:column;gap:.5rem}.ccard-bottom .btn{width:100%;padding:.7rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600;text-align:center;text-decoration:none;transition:all .2s ease;border:none;cursor:pointer;display:block}.ccard-bottom .btn-primary{background:var(--primary-color, #d4af37);color:#1a1500}.ccard-bottom .btn-primary:hover{background:var(--primary-hover, #b8942d);box-shadow:0 2px 8px #d4af374d}.ccard-bottom .btn-secondary{background:var(--bg-secondary, #f0ebe0);color:#059669}.ccard-bottom .btn-secondary:hover{background:#0596691a}[data-theme=dark] .ccard{background:var(--card-bg);border-color:var(--color-border)}[data-theme=dark] .ccard-bottom .btn-primary{color:#1a1500}[data-theme=dark] .ccard-bottom .btn-secondary{background:#0596691f;color:#34d399}[data-theme=dark] .ccard-status-ribbon.coming-soon{background:#f59e0bd9;color:#1a1500}@media(max-width:768px){.courses-card-grid{grid-template-columns:1fr}.courses-filters{gap:.35rem}.courses-filters .filter-chip{font-size:.75rem;padding:.35rem .75rem}}.markdown-content{line-height:1.75;color:var(--text-secondary, #4b5563)}.markdown-content h1{font-size:1.75rem;font-weight:700;margin:2.5rem 0 1rem;color:var(--text-primary, #1f2937);border-bottom:1px solid var(--border-color, #e5e7eb);padding-bottom:.5rem}.markdown-content h2{font-size:1.5rem;font-weight:700;margin:2.5rem 0 .75rem;color:var(--text-primary, #1f2937);border-bottom:1px solid var(--border-color, #e5e7eb);padding-bottom:.5rem}.markdown-content h2:first-child,.markdown-content h1:first-child{margin-top:0}.markdown-content h3{font-size:1.2rem;font-weight:600;margin:2rem 0 .5rem;color:var(--text-primary, #1f2937)}.markdown-content h4{font-size:1.05rem;font-weight:600;margin:1.5rem 0 .4rem;color:var(--text-primary, #1f2937)}.markdown-content h5,.markdown-content h6{font-size:.95rem;font-weight:600;margin:1.25rem 0 .35rem;color:var(--text-primary, #1f2937)}.markdown-content p{font-size:1rem;line-height:1.75;color:var(--text-secondary, #4b5563);margin-bottom:1.15rem}.markdown-content ul,.markdown-content ol{margin:.5rem 0 1.25rem 1.75rem;color:var(--text-secondary, #4b5563)}.markdown-content ul{list-style:disc}.markdown-content ol{list-style:decimal}.markdown-content li{margin-bottom:.45rem;line-height:1.7}.markdown-content li:before{content:none}.markdown-content ul ul,.markdown-content ol ul{list-style:circle;margin-top:.25rem;margin-bottom:.25rem}.markdown-content ul ul ul,.markdown-content ol ul ul{list-style:square}.markdown-content strong{color:var(--text-primary, #1f2937);font-weight:600}.markdown-content em{font-style:italic}.markdown-content a{color:var(--primary-color, #d4af37);text-decoration:none;font-weight:500}.markdown-content a:hover{text-decoration:underline}.markdown-content blockquote{border-left:3px solid var(--primary-color, #d4af37);padding:.75rem 1.25rem;margin:1.25rem 0;background:var(--bg-secondary, #f9fafb);border-radius:0 8px 8px 0;color:var(--text-secondary, #6b7280)}.markdown-content blockquote p{margin-bottom:.5rem}.markdown-content blockquote p:last-child{margin-bottom:0}.markdown-content hr{border:none;border-top:1px solid var(--border-color, #e5e7eb);margin:2.5rem 0}.markdown-content table{width:100%;border-collapse:collapse;margin:1.25rem 0;font-size:.92rem}.markdown-content th,.markdown-content td{border:1px solid var(--border-color, #e5e7eb);padding:.6rem .75rem;text-align:left;color:var(--text-secondary, #4b5563)}.markdown-content th{background:var(--bg-secondary, #f3f4f6);font-weight:600;color:var(--text-primary, #1f2937)}.markdown-content tbody tr:nth-child(2n){background:var(--bg-tertiary, rgba(0,0,0,.02))}.markdown-content code{font-family:SF Mono,Fira Code,Cascadia Code,monospace;font-size:.88em;background:var(--bg-secondary, #f3f4f6);padding:.15rem .4rem;border-radius:4px;color:var(--text-primary, #1f2937)}.markdown-content pre{background:var(--bg-secondary, #f3f4f6);padding:1rem 1.25rem;border-radius:8px;overflow-x:auto;margin:1.25rem 0;border:1px solid var(--border-color, #e5e7eb)}.markdown-content pre code{background:none;padding:0;font-size:.85rem;line-height:1.6}.markdown-content img{max-width:100%;height:auto;border-radius:8px;margin:1rem 0}.markdown-content ul.contains-task-list{list-style:none;margin-left:0}.markdown-content li.task-list-item{display:flex;align-items:flex-start;gap:.5rem}.markdown-content li.task-list-item input[type=checkbox]{margin-top:.35rem}[data-theme=dark] .markdown-content{--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827;--bg-tertiary: rgba(255,255,255,.03);--border-color: #374151;--primary-color: #d4af37;color:var(--text-secondary)}[data-theme=dark] .markdown-content blockquote,[data-theme=dark] .markdown-content code{background:var(--bg-secondary, #111827)}[data-theme=dark] .markdown-content pre{background:var(--bg-secondary, #111827);border-color:var(--border-color, #374151)}[data-theme=dark] .markdown-content th{background:var(--bg-secondary, #1f2937)}.gallery-section{margin:2rem 0}.gallery-section h2{margin-bottom:1rem;font-size:1.4rem}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem}.gallery-item{position:relative;overflow:hidden;border-radius:8px;border:none;padding:0;margin:0;cursor:pointer;background:var(--color-surface-alt, #1a1a2e);aspect-ratio:4 / 3;transition:transform .2s ease,box-shadow .2s ease}.gallery-item:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000004d}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}.gallery-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000eb;display:flex;align-items:center;justify-content:center;animation:lightbox-fade-in .2s ease}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-content img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px;box-shadow:0 0 40px #00000080}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:2.5rem;width:48px;height:48px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s;line-height:1;padding:0}.lightbox-nav:hover{background:#ffffff40}.lightbox-prev{left:-64px}.lightbox-next{right:-64px}.lightbox-close{position:absolute;top:-48px;right:-8px;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;opacity:.7;transition:opacity .2s;padding:4px 8px}.lightbox-close:hover{opacity:1}.lightbox-counter{position:absolute;bottom:-36px;left:50%;transform:translate(-50%);color:#fff9;font-size:.85rem}@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.5rem}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-nav{width:40px;height:40px;font-size:2rem}.lightbox-close{top:-40px;right:0}}@media(max-width:480px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}.item-navigation{margin:3rem 0;padding:2rem 0;border-top:1px solid var(--border-color, #e5e7eb)}.item-navigation .nav-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.item-navigation .nav-card{padding:1.5rem;border:2px solid var(--border-color, #e5e7eb);border-radius:8px;text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:.5rem;transition:all .3s ease}.item-navigation .nav-card:not(.nav-empty):hover{border-color:var(--primary-color, #d4af37);background-color:var(--card-hover-bg, rgba(212, 175, 55, .05))}.item-navigation .nav-arrow{font-size:.875rem;color:var(--text-secondary, #6b7280);font-weight:500}.item-navigation .nav-prev .nav-arrow{color:var(--primary-color, #d4af37)}.item-navigation .nav-next .nav-arrow{color:var(--primary-color, #d4af37);text-align:right}.item-navigation .nav-title{font-size:1.125rem;font-weight:600;color:var(--text-primary, #1f2937);line-height:1.4}.item-navigation .nav-next .nav-title{text-align:right}.item-navigation .nav-empty{opacity:.3}[data-theme=dark] .item-navigation{--border-color: #374151;--text-primary: #f3f4f6;--text-secondary: #d1d5db}[data-theme=dark] .item-navigation .nav-title{color:#f3f4f6}[data-theme=dark] .item-navigation .nav-arrow{color:#fcd34d}@media(max-width:768px){.item-navigation .nav-grid{grid-template-columns:1fr}}@media(max-width:480px){.item-navigation .nav-card{padding:1rem}.item-navigation .nav-title{font-size:1rem}}.sentiment-bar{margin:2.5rem 0;padding:1.5rem 1.75rem;border-radius:12px;background:var(--card-bg, #f8f9fa);border:1px solid var(--border-color, #e0e0e0)}.sentiment-bar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.sentiment-bar-title{font-size:1rem;font-weight:600;color:var(--text-primary, #333);margin:0}.sentiment-bar-total{font-size:.8rem;color:var(--text-secondary, #777);background:var(--border-color, #e8e8e8);padding:.2rem .6rem;border-radius:12px;font-weight:500}.sentiment-bar-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:.6rem}.sentiment-card{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem .5rem;border-radius:10px;border:2px solid var(--border-color, #d8d8d8);background:var(--card-bg, #fff);color:var(--text-secondary, #666);cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none;position:relative}.sentiment-card:hover{border-color:var(--primary, #4a6cf7);background:#4a6cf70a;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.sentiment-card--active{border-color:var(--primary, #4a6cf7);background:#4a6cf714;color:var(--primary, #4a6cf7)}.sentiment-card--active:hover{background:#4a6cf724}.sentiment-card--voting{opacity:.6;pointer-events:none}.sentiment-card-emoji{font-size:1.5rem;line-height:1}.sentiment-card-count{font-size:1.35rem;font-weight:700;line-height:1;color:var(--text-primary, #333);font-variant-numeric:tabular-nums}.sentiment-card--active .sentiment-card-count{color:var(--primary, #4a6cf7)}.sentiment-card-label{font-size:.72rem;font-weight:500;text-transform:uppercase;letter-spacing:.03em;line-height:1;opacity:.8}.sentiment-card-check{position:absolute;top:4px;right:6px;font-size:.65rem;font-weight:700;color:var(--primary, #4a6cf7);line-height:1}.sentiment-bar-hint{margin-top:.75rem;margin-bottom:0;font-size:.8rem;color:var(--text-secondary, #888);text-align:center}.sentiment-login-link{background:none;border:none;padding:0;color:var(--primary, #4a6cf7);font-size:inherit;font-weight:600;cursor:pointer;text-decoration:underline}.sentiment-login-link:hover{color:var(--primary-dark, #3a54c4)}[data-theme=dark] .sentiment-bar{background:var(--card-bg, #1e1e2e);border-color:var(--border-color, #333)}[data-theme=dark] .sentiment-bar-title{color:var(--text-primary, #e0e0e0)}[data-theme=dark] .sentiment-bar-total{background:#ffffff14}[data-theme=dark] .sentiment-card{background:var(--card-bg, #252535);border-color:var(--border-color, #444);color:var(--text-secondary, #aaa)}[data-theme=dark] .sentiment-card-count{color:var(--text-primary, #e0e0e0)}[data-theme=dark] .sentiment-card:hover{border-color:var(--primary, #6c8cff);background:#6c8cff1a;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .sentiment-card--active{border-color:var(--primary, #6c8cff);background:#6c8cff26;color:var(--primary, #6c8cff)}[data-theme=dark] .sentiment-card--active .sentiment-card-count{color:var(--primary, #6c8cff)}[data-theme=dark] .sentiment-bar-hint{color:var(--text-secondary, #aaa)}@media(max-width:768px){.sentiment-bar-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:420px){.sentiment-bar{padding:1rem}.sentiment-bar-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}.sentiment-card{padding:.6rem .4rem}.sentiment-card-emoji{font-size:1.25rem}.sentiment-card-count{font-size:1.1rem}}.course-detail-page{padding:var(--space-6) var(--space-4) var(--space-16);min-height:100vh}.course-detail-page .container{max-width:1200px;margin:0 auto}.breadcrumb{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-6);font-size:var(--font-size-sm)}.breadcrumb a{color:var(--color-primary);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.breadcrumb-sep{color:var(--color-text-muted)}.breadcrumb-current{color:var(--color-text-secondary)}.detail-hero{display:grid;grid-template-columns:1fr 340px;gap:var(--space-8);margin-bottom:var(--space-10);padding:var(--space-8);background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg) 100%);border:1px solid var(--color-border);border-radius:var(--radius-xl);position:relative;overflow:hidden}.detail-hero:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary))}.detail-badges{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-4)}.badge{display:inline-block;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em}.badge-category{background:var(--color-primary-light);color:var(--color-primary)}.badge-competition{background:var(--color-secondary-light);color:var(--color-secondary)}.badge-status{background:var(--color-bg);color:var(--color-text-muted);border:1px solid var(--color-border)}.badge-status-open{background:#22c55e26;color:#22c55e;border-color:#22c55e4d}.badge-status-coming-soon{background:var(--color-warning-light);color:var(--color-warning);border-color:var(--color-warning)}.detail-hero h1{font-size:var(--font-size-3xl);line-height:var(--line-height-tight);margin-bottom:var(--space-3);color:var(--color-text)}.detail-duration{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-2)}.detail-audience{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-4)}.detail-overview{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.detail-hero-actions{display:flex;gap:var(--space-3);flex-wrap:wrap}.detail-quick-info{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.detail-quick-info h3{font-size:var(--font-size-lg);margin-bottom:var(--space-4);color:var(--color-text)}.quick-info-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.qi-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.qi-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);text-align:right}.qi-value.prize{color:var(--color-secondary)}.detail-content{display:grid;grid-template-columns:1fr 380px;gap:var(--space-8);margin-bottom:var(--space-10)}.detail-main{display:flex;flex-direction:column;gap:var(--space-8)}.detail-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.detail-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-4);color:var(--color-text)}.detail-benefits-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-3)}.detail-benefits-list li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.benefit-bullet{color:var(--color-primary);flex-shrink:0;font-size:var(--font-size-lg)}.detail-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-3)}.detail-feature-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.feature-check{color:#22c55e;font-weight:var(--font-weight-bold);flex-shrink:0}.detail-tracks{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.detail-track-tag{padding:var(--space-2) var(--space-4);background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.detail-category-tag{padding:var(--space-2) var(--space-4);background:var(--color-secondary-light);color:var(--color-secondary);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.detail-prize-info{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-secondary);margin-top:var(--space-2)}.detail-sidebar{position:sticky;top:calc(var(--navbar-height, 80px) + var(--space-4));height:fit-content}.detail-fee-card{background:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--space-6);position:relative;overflow:hidden}.detail-fee-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-primary)}.detail-fee-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-4);color:var(--color-text)}.fee-total{text-align:center;padding:var(--space-5) 0;margin-bottom:var(--space-4)}.fee-total-label{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);margin-bottom:var(--space-1)}.fee-total-value{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1.2}.fee-desc{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:var(--line-height-relaxed)}.fee-installments{margin-bottom:var(--space-6)}.fee-installments h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:var(--space-3);text-transform:uppercase;letter-spacing:.05em}.installment-list{display:flex;flex-direction:column;gap:var(--space-2)}.installment-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-3);background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border)}.inst-label{font-size:var(--font-size-sm);color:var(--color-text)}.inst-value{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--color-primary)}.btn-block{display:block;width:100%;text-align:center}.detail-bottom-cta{text-align:center;padding:var(--space-10) var(--space-6);background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-surface) 100%);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.detail-bottom-cta h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-3);color:var(--color-text)}.detail-bottom-cta p{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-6);max-width:600px;margin-left:auto;margin-right:auto}.bottom-cta-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.course-detail-page .loading-state,.course-detail-page .error-state{text-align:center;padding:var(--space-16) var(--space-4)}.course-detail-page .error-state h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-3);color:var(--color-text)}.course-detail-page .error-state p{color:var(--color-text-secondary);margin-bottom:var(--space-6)}@media(max-width:968px){.detail-hero,.detail-content{grid-template-columns:1fr;gap:var(--space-6)}.detail-sidebar{position:static}.detail-hero h1{font-size:var(--font-size-2xl)}}@media(max-width:640px){.detail-hero{padding:var(--space-6)}.detail-section{padding:var(--space-4)}.detail-features-grid{grid-template-columns:1fr}.detail-hero-actions{flex-direction:column}.detail-hero-actions .btn{width:100%;text-align:center}.bottom-cta-actions{flex-direction:column;align-items:center}.bottom-cta-actions .btn{width:100%}}.detail-batch-card{background:var(--color-info-light);border:1px solid var(--color-border-light);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1rem}.detail-batch-card h3{margin:0 0 .75rem;font-size:var(--font-size-lg);color:var(--color-text)}.batch-detail-name{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-info);margin-bottom:.75rem}.detail-batch-card .quick-info-row{color:var(--color-text-secondary)}.detail-batch-card .qi-value{color:var(--color-text)}.detail-batch-card .qi-value.seats-low{color:var(--color-warning)}.batch-enroll-btn{margin-top:.75rem;width:100%;text-align:center}.btn-block{display:block}.dept-hub-hero{text-align:center;padding:2.5rem 0 1.5rem}.dept-hub-hero h1{font-size:2rem;margin-bottom:.75rem}.dept-hub-tagline{font-size:1.15rem;color:var(--text-secondary, #666);max-width:700px;margin:0 auto;line-height:1.6}.dept-hub-content{max-width:860px;margin:0 auto 2.5rem;padding:2rem 0;border-bottom:1px solid var(--border-color, #e5e7eb)}.dept-hub-section{margin:2.5rem 0}.dept-hub-section h2{font-size:1.4rem;margin-bottom:1.25rem;padding-bottom:.5rem;border-bottom:2px solid var(--accent-color, #d4a843)}.dept-hub-empty{text-align:center;color:var(--text-secondary, #666);padding:2rem;font-style:italic}.dept-hub-related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.dept-hub-related-card{background:var(--surface-color, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;transition:box-shadow .2s,transform .2s}.dept-hub-related-card:hover{box-shadow:0 4px 16px #00000014;transform:translateY(-2px)}.dept-hub-related-card h4{font-size:1.05rem;margin:0}.dept-hub-related-card p{font-size:.9rem;color:var(--text-secondary, #666);margin:0;line-height:1.5;flex:1}.dept-hub-related-status{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.dept-hub-related-meta{font-size:.85rem;color:var(--text-secondary, #888)}.dept-hub-related-card .btn-sm{align-self:flex-start;font-size:.85rem;padding:.35rem .85rem;margin-top:.25rem}.dept-hub-bottom-cta{text-align:center;padding:3rem 0 2rem;margin-top:2rem;border-top:1px solid var(--border-color, #e5e7eb)}.dept-hub-detail-list{display:flex;flex-direction:column;gap:2.5rem}.dept-hub-detail-card{background:var(--surface-color, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:14px;padding:0;overflow:hidden;display:grid;grid-template-columns:1fr 320px;transition:box-shadow .25s}.dept-hub-detail-card:hover{box-shadow:0 6px 24px #00000014}.dhd-card-hero{padding:1.75rem 2rem;display:flex;flex-direction:column;gap:.6rem}.dhd-card-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.25rem}.dhd-card-badges .badge{font-size:.75rem;font-weight:600;padding:.25rem .65rem;border-radius:20px;text-transform:uppercase;letter-spacing:.03em}.dhd-card-badges .badge-category{background:var(--accent-color-light, #faf0d7);color:var(--accent-color, #b8860b)}.dhd-card-badges .badge-competition{background:#e3f2fd;color:#1565c0}.dhd-card-badges .badge-status{color:#fff}.dhd-card-badges .badge-status-open,.dhd-card-badges .badge-status-always-open{background:#2e7d32}.dhd-card-badges .badge-status-coming-soon{background:#f9a825;color:#333}.dhd-card-badges .badge-status-closed{background:#c62828}.dhd-card-hero h3{font-size:1.35rem;margin:0;line-height:1.3}.dhd-card-hero h3 a{color:inherit;text-decoration:none}.dhd-card-hero h3 a:hover{color:var(--accent-color, #d4a843)}.dhd-meta{font-size:.88rem;color:var(--text-secondary, #777)}.dhd-overview{font-size:.95rem;color:var(--text-secondary, #555);line-height:1.6;margin:0}.dhd-actions{display:flex;gap:.75rem;margin-top:.5rem}.dhd-card-sidebar{background:var(--surface-alt, #f8f9fa);border-left:1px solid var(--border-color, #e5e7eb);padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.dhd-quick-info{display:flex;flex-direction:column;gap:.5rem}.quick-info-row{display:flex;justify-content:space-between;align-items:center;font-size:.88rem;padding:.4rem 0;border-bottom:1px solid var(--border-color, #e5e7eb)}.quick-info-row:last-child{border-bottom:none}.quick-info-row.highlight{background:var(--accent-color-light, #faf0d7);padding:.4rem .6rem;border-radius:6px;border-bottom:none}.qi-label{font-weight:500;color:var(--text-secondary, #666)}.qi-value{font-weight:600;text-align:right}.qi-value.seats-low{color:#c62828;font-weight:700}.dhd-fee-card,.dhd-batch-card{background:var(--surface-color, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:10px;padding:1rem}.dhd-fee-card h4,.dhd-batch-card h4{font-size:.95rem;margin:0 0 .6rem}.fee-desc{font-size:.85rem;color:var(--color-text-secondary, var(--text-secondary, #555));margin:0 0 .5rem}.fee-installments h5{font-size:.82rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-secondary, var(--text-secondary, #666));margin:.5rem 0 .35rem}.installment-row{display:flex;justify-content:space-between;font-size:.85rem;padding:.25rem 0}.inst-label{color:var(--color-text, var(--text-primary, #333))}.inst-value{font-weight:600;color:var(--accent-color, #d4a843)}.batch-detail-name{font-weight:600;font-size:.95rem;margin-bottom:.5rem}.dhd-detail-section{grid-column:1 / -1;padding:1.25rem 2rem;border-top:1px solid var(--border-color, #e5e7eb)}.dhd-detail-section h4{font-size:1.05rem;margin:0 0 .75rem}.detail-benefits-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem}.detail-benefits-list li{display:flex;align-items:flex-start;gap:.5rem;font-size:.92rem;line-height:1.5}.benefit-bullet{color:var(--accent-color, #d4a843);flex-shrink:0;font-size:1rem}.detail-features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.6rem}.detail-feature-item{display:flex;align-items:flex-start;gap:.5rem;font-size:.92rem;line-height:1.5}.detail-feature-item .feature-check{color:#2e7d32;font-weight:700;flex-shrink:0}.detail-tracks{display:flex;flex-wrap:wrap;gap:.5rem}.detail-track-tag{background:var(--accent-color-light, #faf0d7);color:var(--accent-color, #b8860b);padding:.35rem .85rem;border-radius:20px;font-size:.85rem;font-weight:500}.detail-category-tag{background:#e8eaf6;color:#3949ab;padding:.35rem .85rem;border-radius:20px;font-size:.85rem;font-weight:500}.dhd-funding-progress{background:var(--surface-color, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:10px;padding:1rem}.dhd-funding-progress h4{font-size:.95rem;margin:0 0 .6rem}.dhd-funding-progress .progress-bar-container{margin-bottom:.5rem}.dhd-funding-progress .progress-bar{height:10px;background:var(--border-color, #e5e7eb);border-radius:5px;overflow:hidden;margin-bottom:.35rem}.dhd-funding-progress .progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-color, #d4a843),#e6c068);border-radius:5px;transition:width .5s ease}.dhd-funding-progress .progress-label{font-size:.82rem;font-weight:600;color:var(--accent-color, #d4a843)}.dhd-funding-progress .progress-stats{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-secondary, #888)}.dept-hub-bottom-cta h2{font-size:1.5rem;margin-bottom:.5rem}.dept-hub-bottom-cta p{color:var(--text-secondary, #666);margin-bottom:1.5rem}.dept-hub-cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}@media(prefers-color-scheme:dark){.dept-hub-related-card,.dept-hub-detail-card{background:var(--surface-color, #1e1e1e);border-color:var(--border-color, #333)}.dept-hub-related-card:hover,.dept-hub-detail-card:hover{box-shadow:0 4px 16px #ffffff0f}.dhd-card-sidebar{background:var(--surface-alt, #252525);border-left-color:var(--border-color, #333)}.dhd-fee-card,.dhd-batch-card,.dhd-funding-progress{background:var(--surface-color, #1e1e1e);border-color:var(--border-color, #333)}}[data-theme=dark] .dept-hub-related-card,[data-theme=dark] .dept-hub-detail-card{background:var(--surface-color, #1e1e1e);border-color:var(--border-color, #333)}[data-theme=dark] .dept-hub-related-card:hover,[data-theme=dark] .dept-hub-detail-card:hover{box-shadow:0 4px 16px #ffffff0f}[data-theme=dark] .dhd-card-sidebar{background:var(--surface-alt, #252525);border-left-color:var(--border-color, #333)}[data-theme=dark] .dhd-fee-card,[data-theme=dark] .dhd-batch-card,[data-theme=dark] .dhd-funding-progress{background:var(--surface-color, #1e1e1e);border-color:var(--border-color, #333)}@media(max-width:768px){.dept-hub-hero h1{font-size:1.5rem}.dept-hub-tagline{font-size:1rem}.dept-hub-related-grid{grid-template-columns:1fr}.dept-hub-content{padding:1rem 0}.dept-hub-detail-card{grid-template-columns:1fr}.dhd-card-sidebar{border-left:none;border-top:1px solid var(--border-color, #e5e7eb)}.dhd-card-hero{padding:1.25rem}.dhd-detail-section{padding:1rem 1.25rem}.detail-benefits-list,.detail-features-grid{grid-template-columns:1fr}}.payment-section{margin:1rem 0}.wallet-balance-card{border:2px solid var(--color-border, #e2e8f0);border-radius:12px;padding:1.25rem;background:var(--color-surface-elevated, #f8fafc);transition:border-color .2s ease}.wallet-balance-card.sufficient{border-color:#22c55e}.wallet-balance-card.insufficient{border-color:#f59e0b}.wallet-balance-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.wallet-icon{font-size:1.4rem}.wallet-label{font-weight:600;color:var(--color-text, #1e293b);flex-grow:1}.wallet-amount{font-size:1.25rem;font-weight:700;color:var(--color-text, #1e293b)}.wallet-amount.loading-pulse{color:var(--color-text-muted, #94a3b8);animation:pulse 1.5s infinite}.wallet-amount.error-text{color:#ef4444;font-size:.9rem}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.wallet-status{margin-bottom:.75rem}.wallet-status p{margin:0;font-size:.9rem;line-height:1.4}.status-sufficient{color:#22c55e;font-weight:500}.status-insufficient{color:#f59e0b;font-weight:500}.wallet-add-funds{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--color-border-light, #fde68a)}.add-funds-form{display:flex;flex-direction:column;gap:.5rem}.add-funds-input-row{display:flex;align-items:center;gap:.5rem}.currency-prefix{font-size:1.1rem;font-weight:600;color:var(--color-text, #1e293b);padding:.5rem 0}.add-funds-input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-border, #cbd5e1);border-radius:8px;font-size:1rem;outline:none;background:var(--color-bg, #fff);color:var(--color-text, #1e293b);transition:border-color .2s}.add-funds-input:focus{border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 2px #3b82f626}.btn-add-funds{white-space:nowrap;padding:.5rem 1rem;font-size:.9rem}.add-funds-error{color:#ef4444;font-size:.85rem;margin:0}.add-funds-note{font-size:.82rem;color:var(--color-text-muted, #64748b);margin:.25rem 0 0;line-height:1.4}.add-funds-note a{color:var(--color-primary, #3b82f6);text-decoration:none;font-weight:500}.add-funds-note a:hover{text-decoration:underline}.add-funds-success{background:var(--color-surface-elevated, #dcfce7);border:1px solid #22c55e;border-radius:8px;padding:.5rem .75rem;margin-bottom:.5rem}.add-funds-success p{margin:0;color:#22c55e;font-size:.9rem;font-weight:500}.btn-show-add-funds{width:100%;text-align:center;padding:.6rem 1rem;font-size:.9rem}.wallet-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.75rem;padding-top:.5rem;border-top:1px solid var(--color-border, #e2e8f0)}.wallet-refresh-btn{background:none;border:none;color:var(--color-text-muted, #64748b);cursor:pointer;font-size:.82rem;padding:0;transition:color .2s}.wallet-refresh-btn:hover{color:var(--color-primary, #3b82f6)}.wallet-link{font-size:.82rem;color:var(--color-primary, #3b82f6);text-decoration:none;font-weight:500}.wallet-link:hover{text-decoration:underline}.enrollment-page{padding:2rem 0;min-height:100vh;background:var(--color-bg)}.enrollment-page .container{max-width:1200px}.enrollment-header{text-align:center;margin-bottom:3rem}.enrollment-header h1{font-size:2.5rem;margin-bottom:1rem;color:var(--color-text)}.enrollment-header p{font-size:1.1rem;color:var(--color-text-secondary);max-width:600px;margin:0 auto}.enrollment-content{display:grid;grid-template-columns:1fr 380px;gap:3rem;align-items:start}.enrollment-form-section{background:var(--color-surface);border-radius:12px;padding:2.5rem;box-shadow:0 2px 8px #00000014;border:1px solid var(--color-border)}.enrollment-form{display:flex;flex-direction:column;gap:2rem}.enrollment-form fieldset{border:none;padding:0;margin:0;display:flex;flex-direction:column;gap:1.5rem}.enrollment-form legend{font-size:1.2rem;font-weight:600;color:var(--color-text);margin-bottom:.5rem;padding:0}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;color:var(--color-text);font-size:.95rem}.form-group input{padding:.75rem;border:1px solid var(--color-border);border-radius:6px;font-size:1rem;font-family:inherit;transition:border-color .3s ease;background:var(--color-bg);color:var(--color-text)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff1a}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem}.coupon-input-group{display:flex;gap:1rem}.coupon-input-group input{flex:1;padding:.75rem;border:1px solid var(--color-border);border-radius:6px;font-size:1rem;background:var(--color-bg);color:var(--color-text)}.coupon-input-group .btn{white-space:nowrap;padding:.75rem 1.5rem}.coupon-message{padding:1rem;border-radius:6px;font-size:.95rem;margin-top:.5rem}.coupon-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.coupon-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.coupon-message p{margin:0}.payment-note{background-color:var(--color-primary-light, #e7f3ff);border-left:4px solid var(--color-primary);padding:1rem;border-radius:4px;color:var(--color-text)}.payment-note p{margin:0;font-size:.9rem}.course-fee-banner{display:flex;justify-content:space-between;align-items:center;background:var(--color-primary, #2563eb);color:#fff;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.25rem}.course-fee-banner .fee-label{font-size:1rem;font-weight:500;opacity:.9}.course-fee-banner .fee-amount{font-size:1.5rem;font-weight:700;letter-spacing:.025em}.course-fee-banner.discount-banner{background:#059669;padding:.75rem 1.25rem;margin-bottom:.5rem}.course-fee-banner.discount-banner .fee-amount{font-size:1.25rem}.course-fee-banner.final-banner{background:#d97706;margin-bottom:1.25rem}.price-row.total-fee,.price-row.final-fee{display:flex;justify-content:space-between;padding:.5rem 0;font-weight:600}.price-row.final-fee{border-top:2px solid var(--color-border, #e5e7eb);margin-top:.25rem;padding-top:.75rem;font-size:1.1rem}.price-row.discount{display:flex;justify-content:space-between;padding:.35rem 0;color:#059669}.discount-value{font-weight:600}.btn{padding:.75rem 1.5rem;border:none;border-radius:6px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease;font-family:inherit}.btn-primary{background-color:var(--color-primary);color:var(--color-text-inverse)}.btn-primary:hover:not(:disabled){background-color:#0056b3;transform:translateY(-2px);box-shadow:0 4px 12px #007bff4d}.btn-secondary{background-color:var(--color-secondary);color:var(--color-text-inverse)}.btn-secondary:hover:not(:disabled){background-color:#5a6268}.btn-large{width:100%;padding:1rem;font-size:1.1rem;margin-top:1rem}.enrollment-summary{height:fit-content;position:sticky;top:100px}.price-summary-card{background:var(--color-surface);border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014;border:1px solid var(--color-border)}.price-summary-card h3{font-size:1.3rem;margin-bottom:1.5rem;color:var(--color-text)}.course-info{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-border)}.course-title{font-weight:600;font-size:1.1rem;margin-bottom:.5rem;color:var(--color-text)}.course-duration,.course-category{font-size:.9rem;color:var(--color-text-secondary);margin:.25rem 0}.price-breakdown{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.price-row{display:flex;justify-content:space-between;align-items:center;font-size:1rem;color:var(--color-text)}.price-row .label,.price-row .value{font-weight:500}.price-row.discount,.price-row.discount .discount-value{color:#28a745}.price-row.total{font-size:1.3rem;padding-top:1rem;border-top:2px solid var(--color-border);gap:1rem}.price-row.total .label{color:var(--color-text);font-weight:600}.price-row.total .total-value{color:var(--color-primary);font-size:1.4rem}.coupon-applied{background-color:#d4edda;border:1px solid #c3e6cb;border-radius:6px;padding:1rem;margin-bottom:1.5rem;color:#155724;font-size:.95rem}.coupon-applied p{margin:0}.enrollment-features{background-color:var(--color-bg);border-radius:6px;padding:1.5rem}.enrollment-features h4{font-size:1rem;margin-bottom:1rem;color:var(--color-text)}.enrollment-features ul{list-style:none;padding:0;margin:0}.enrollment-features li{padding:.5rem 0;color:var(--color-text-secondary);font-size:.95rem}.enrollment-features li:before{content:"✓ ";color:#28a745;font-weight:700;margin-right:.5rem}.auth-notice{background-color:var(--color-warning-light, #fff3cd);border:1px solid var(--color-warning, #ffc107);border-radius:6px;padding:1rem 1.5rem;text-align:center;color:var(--color-warning, #856404)}.enrollment-status-banner{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;margin-bottom:2rem;border-radius:10px;background:var(--color-success-light, rgba(22, 163, 74, .1));border:1px solid var(--color-success, #16a34a)}.enrollment-status-icon{font-size:2rem;line-height:1;flex-shrink:0}.enrollment-status-info{flex:1;min-width:0}.enrollment-status-info h3{margin:0 0 .25rem;font-size:1rem;font-weight:600;color:var(--color-success, #16a34a)}.enrollment-status-info p{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.enrollment-status-banner .btn-sm{padding:.4rem 1rem;font-size:.85rem;white-space:nowrap;flex-shrink:0}.auth-notice p{margin:0;font-size:.95rem}.auth-notice a{color:var(--color-primary);font-weight:600;text-decoration:underline}.fee-description{font-size:.95rem;color:var(--color-text-secondary);margin-bottom:1rem}.fee-installments{margin-top:1rem}.fee-installments h4{font-size:.95rem;margin-bottom:.5rem;color:var(--color-text)}.installment-list{display:flex;flex-direction:column;gap:.4rem}.installment-row{display:flex;justify-content:space-between;font-size:.9rem;color:var(--color-text-secondary);padding:.3rem 0}.installment-row .inst-label{font-weight:500}.installment-row .inst-value{font-weight:600;color:var(--color-text)}.course-audience{font-size:.9rem;color:var(--color-text-secondary);margin:.25rem 0}.enrollment-features+.enrollment-features{margin-top:1rem}.badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;margin-top:.5rem}.badge-status-open{background-color:#d4edda;color:#155724}.badge-status-coming-soon{background-color:#fff3cd;color:#856404}.badge-status-closed{background-color:#f8d7da;color:#721c24}.badge-status-always-open{background-color:#cce5ff;color:#004085}.enrollment-page .breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.9rem;color:var(--color-text-secondary)}.enrollment-page .breadcrumb a{color:var(--color-primary);text-decoration:none}.enrollment-page .breadcrumb a:hover{text-decoration:underline}.enrollment-page .breadcrumb-sep{color:var(--color-text-muted)}.enrollment-page .breadcrumb-current{color:var(--color-text)}.error-message{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24;padding:1rem;border-radius:6px;margin-bottom:1rem}.loading-state,.error-state{text-align:center;padding:4rem 2rem}.error-state h2{margin-bottom:1rem;color:var(--color-text)}.error-state p{color:var(--color-text-secondary);margin-bottom:2rem}.loading{text-align:center;padding:2rem;font-size:1.1rem;color:var(--color-text-secondary)}@media(max-width:968px){.enrollment-content{grid-template-columns:1fr;gap:2rem}.enrollment-summary{position:static}}@media(max-width:640px){.enrollment-form-section{padding:1.5rem}.enrollment-header h1{font-size:1.8rem}.form-row{grid-template-columns:1fr;gap:1rem}.coupon-input-group{flex-direction:column}.coupon-input-group .btn{width:100%}.price-summary-card{padding:1.5rem}.enrollment-content{gap:1.5rem}.enrollment-form-section{gap:1rem}.enrollment-form{gap:1.5rem}}.registration-success{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1.5rem 4rem;max-width:560px;margin:0 auto}.success-icon-large{font-size:4rem;line-height:1;margin-bottom:1rem}.registration-success h1{font-size:1.75rem;font-weight:700;margin:0 0 .5rem;color:var(--color-text)}.success-subtitle{font-size:1.05rem;color:var(--color-text-secondary);margin:0 0 2rem;line-height:1.5}.success-details-card{width:100%;background:var(--color-surface, #1a1a1a);border:1px solid var(--color-border, #333);border-radius:12px;padding:1.25rem 1.5rem;margin-bottom:2rem;text-align:left}.success-detail-row{display:flex;justify-content:space-between;align-items:center;padding:.6rem 0}.success-detail-row+.success-detail-row{border-top:1px solid var(--color-border-light, #404040)}.success-detail-row .detail-label{font-size:.9rem;color:var(--color-text-muted);font-weight:500}.success-detail-row .detail-value{font-size:.95rem;color:var(--color-text);font-weight:600}.success-detail-row .status-badge{background:#22c55e26;color:#22c55e;padding:.2rem .75rem;border-radius:20px;font-size:.82rem;font-weight:600}.success-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center}.email-notice{display:flex;align-items:center;gap:.5rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:.75rem 1.25rem;margin-top:1.5rem;font-size:.88rem;color:var(--text-secondary, #6b7280)}.email-notice .email-icon{font-size:1.1rem;flex-shrink:0}.email-notice strong{color:var(--text-primary, #1f2937)}.registration-success .mono{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:.85rem;letter-spacing:.03em;background:#6366f114;padding:.15rem .5rem;border-radius:4px}[data-theme=dark] .email-notice{background:#3b82f61a;border-color:#3b82f640;color:var(--text-secondary, #9ca3af)}[data-theme=dark] .email-notice strong{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .registration-success .mono{background:#6366f126;color:#a5b4fc}.competitions-page{padding:var(--space-8) var(--space-4) var(--space-16)}.filters-section{margin-bottom:var(--space-8);padding:var(--space-4) var(--space-6);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.status-filters{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.status-btn{padding:var(--space-2) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.status-btn:hover{border-color:var(--color-primary)}.status-btn.active{background:var(--color-surface);border-color:var(--color-primary);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.status-btn.open.active{border-color:var(--color-success);color:var(--color-success)}.status-btn.coming.active{border-color:var(--color-warning);color:var(--color-warning)}.category-filters{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-btn{padding:var(--space-2) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.competitions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:var(--space-6)}.competition-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);display:flex;flex-direction:column;transition:all var(--transition-normal);overflow:hidden}.competition-card.has-thumbnail{padding:0}.competition-card.has-thumbnail .competition-header,.competition-card.has-thumbnail .competition-description,.competition-card.has-thumbnail .audience,.competition-card.has-thumbnail .categories,.competition-card.has-thumbnail .competition-footer{padding-inline:var(--space-6)}.competition-card.has-thumbnail .competition-header{padding-top:var(--space-5)}.competition-card.has-thumbnail .competition-footer{padding-bottom:var(--space-5)}.comp-card-thumbnail-link{display:block;overflow:hidden;aspect-ratio:16 / 9}.comp-card-thumbnail{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.competition-card:hover .comp-card-thumbnail{transform:scale(1.04)}.competition-card:hover{border-color:var(--color-primary)}.competition-card.has-course{border-left:3px solid var(--color-secondary)}.competition-header{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-3)}.badge-row{display:flex;gap:var(--space-2);flex-wrap:wrap}.status-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.status-badge.open{background:var(--color-success-light);color:var(--color-success)}.status-badge.coming-soon{background:var(--color-warning-light);color:var(--color-warning)}.course-badge{padding:var(--space-1) var(--space-3);background:var(--color-secondary-light);color:var(--color-secondary);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.category-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.deadline{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-2)}.competition-card h3{font-size:var(--font-size-xl);margin-bottom:var(--space-2)}.competition-description{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-3);flex-grow:1}.audience{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-3);font-style:italic}.categories{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.category-tag{padding:var(--space-1) var(--space-2);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-muted)}.category-tag.more{background:var(--color-surface-elevated);font-weight:var(--font-weight-semibold)}.competition-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-4);border-top:1px solid var(--color-border);flex-wrap:wrap;gap:var(--space-3)}.prize{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-primary)}.action-buttons{display:flex;gap:var(--space-2)}.no-results{text-align:center;padding:var(--space-12) var(--space-4);color:var(--color-text-muted)}.no-results p{margin-bottom:var(--space-4)}@media(max-width:768px){.competitions-grid{grid-template-columns:1fr}.status-filters{flex-wrap:wrap}.competition-footer{flex-direction:column;align-items:flex-start}.action-buttons{width:100%;flex-direction:column}.action-buttons .btn{width:100%;text-align:center}.section-header-row{flex-direction:column;gap:var(--space-2)}}.competitions-open-section{margin-bottom:var(--space-10)}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-4);gap:var(--space-4)}.section-header-row .filter-count{white-space:nowrap;color:var(--color-text-muted);font-size:var(--font-size-sm);padding-top:var(--space-2)}.competitions-collapsible-section{margin-bottom:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.collapsible-header{display:flex;justify-content:space-between;align-items:center;width:100%;padding:var(--space-4) var(--space-6);background:var(--color-surface-elevated);border:none;cursor:pointer;color:var(--color-text);transition:background var(--transition-fast)}.collapsible-header:hover{background:var(--color-surface)}.collapsible-title-group{display:flex;align-items:center;gap:var(--space-3)}.collapsible-title-group .section-title{margin-bottom:0;font-size:var(--font-size-lg)}.collapsible-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 var(--space-2);border-radius:var(--radius-full);background:var(--color-primary);color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.collapsible-chevron{transition:transform var(--transition-normal);color:var(--color-text-muted);flex-shrink:0}.collapsible-chevron.open{transform:rotate(180deg)}.collapsible-body{padding:var(--space-4) var(--space-6) var(--space-6)}.collapsible-body .section-subtitle{margin-bottom:var(--space-4)}.competition-card.open{border-left:3px solid var(--color-success)}.competition-card.coming-soon{border-left:3px solid var(--color-warning)}.competition-card.closed{border-left:3px solid var(--color-text-muted);opacity:.85}.competition-meta-row{display:flex;gap:var(--space-3);align-items:center;flex-wrap:wrap}.competition-detail-page{padding:var(--space-6, 1.5rem) var(--space-4, 1rem) var(--space-16, 4rem);min-height:100vh}.competition-detail-page .container{max-width:960px;margin:0 auto}.competition-detail-page .breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.875rem;color:var(--color-text-secondary, #6b7280)}.competition-detail-page .breadcrumb a{color:var(--color-primary, #d4af37);text-decoration:none;font-weight:500}.competition-detail-page .breadcrumb a:hover{text-decoration:underline}.comp-hero{margin-bottom:2.5rem;padding:var(--space-8, 2rem);background:linear-gradient(135deg,var(--color-surface, #1e1e2e) 0%,var(--color-bg, #111) 100%);border:1px solid var(--color-border, #333);border-radius:var(--radius-xl, 16px)}.comp-hero .hero-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.comp-status-badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600}.comp-status-badge.status-open,.comp-status-badge.status-always-open{background:var(--color-success-light, rgba(34, 197, 94, .15));color:var(--color-success, #22c55e)}.comp-status-badge.status-coming-soon{background:var(--color-warning-light, rgba(234, 179, 8, .15));color:var(--color-warning, #eab308)}.comp-status-badge.status-closed{background:#ef444426;color:#ef4444}.comp-category-badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--color-surface-elevated, #2a2a3e);color:var(--color-text-secondary, #a3a3c2);text-transform:uppercase;letter-spacing:.05em}.comp-course-badge{padding:.25rem .75rem;border-radius:999px;font-size:.75rem;font-weight:600;background:var(--color-secondary-light, rgba(168, 85, 247, .15));color:var(--color-secondary, #a855f7)}.comp-hero h1{font-size:2rem;margin-bottom:.75rem;line-height:1.2}.comp-hero .hero-description{font-size:1.05rem;color:var(--color-text-secondary, #a3a3c2);line-height:1.6;margin-bottom:1.5rem}.comp-hero .hero-actions{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}.closed-label{color:var(--color-text-muted, #6b7280);font-style:italic;font-size:.95rem}.comp-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2.5rem}.competition-detail-page .info-card{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--color-surface, #1e1e2e);border:1px solid var(--color-border, #333);border-radius:var(--radius-lg, 12px)}.competition-detail-page .info-card.highlight{border-color:var(--color-primary, #d4af37);background:linear-gradient(135deg,var(--color-surface, #1e1e2e),rgba(212,175,55,.08))}.competition-detail-page .info-icon{font-size:1.5rem;line-height:1}.competition-detail-page .info-label{display:block;font-size:.7rem;color:var(--color-text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.15rem}.competition-detail-page .info-value{display:block;font-weight:600;font-size:.95rem}.comp-tracks-section{margin-bottom:2.5rem}.comp-tracks-section h2{font-size:1.3rem;margin-bottom:1rem}.tracks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem}.track-card{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:var(--color-surface, #1e1e2e);border:1px solid var(--color-border, #333);border-radius:var(--radius-md, 8px);transition:border-color .2s}.track-card:hover{border-color:var(--color-primary, #d4af37)}.track-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--color-primary, #d4af37);color:#000;font-size:.75rem;font-weight:700;flex-shrink:0}.track-name{font-size:.9rem;font-weight:500}.comp-features-section,.comp-benefits-section{margin-bottom:2.5rem}.comp-features-section h2,.comp-benefits-section h2{font-size:1.3rem;margin-bottom:1rem}.features-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.5rem}.feature-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;font-size:.95rem}.feature-check{color:var(--color-success, #22c55e);font-weight:700;flex-shrink:0}.benefits-list{list-style:none;padding:0;margin:0}.benefits-list li{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem 0;font-size:.95rem;line-height:1.5}.benefit-star{color:var(--color-primary, #d4af37);flex-shrink:0}.comp-content-section{margin:2.5rem 0;padding:2rem;background:var(--color-surface, #1e1e2e);border:1px solid var(--color-border, #333);border-radius:var(--radius-lg, 12px)}.competition-detail-page .coming-soon-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin:2rem 0}.competition-detail-page .placeholder-card{padding:1.5rem;background:var(--color-surface, #1e1e2e);border:1px dashed var(--color-border, #333);border-radius:var(--radius-lg, 12px);text-align:center}.competition-detail-page .placeholder-card h3{margin-bottom:.5rem;font-size:1.1rem}.competition-detail-page .placeholder-card p{color:var(--color-text-muted, #6b7280);font-size:.9rem}.comp-bottom-cta{text-align:center;padding:3rem 1.5rem;margin:2.5rem 0 1rem;background:linear-gradient(135deg,var(--color-surface, #1e1e2e) 0%,var(--color-bg, #111) 100%);border:1px solid var(--color-border, #333);border-radius:var(--radius-xl, 16px)}.comp-bottom-cta h2{font-size:1.5rem;margin-bottom:.5rem}.comp-bottom-cta p{color:var(--color-text-secondary, #a3a3c2);margin-bottom:1.5rem}.comp-bottom-cta .cta-buttons{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap}.competition-detail-page .loading-text{text-align:center;padding:4rem 0;color:var(--color-text-muted, #6b7280)}.competition-detail-page .error-state{text-align:center;padding:4rem 0}.competition-detail-page .error-state p{margin-bottom:1rem;color:var(--color-text-muted, #6b7280)}@media(max-width:768px){.comp-hero{padding:var(--space-6, 1.5rem)}.comp-hero h1{font-size:1.6rem}.comp-info-grid{grid-template-columns:1fr 1fr}.tracks-grid,.features-list{grid-template-columns:1fr}.comp-hero .hero-actions{flex-direction:column}.comp-hero .hero-actions .btn{width:100%;text-align:center}.comp-bottom-cta .cta-buttons{flex-direction:column}.comp-bottom-cta .cta-buttons .btn{width:100%}}@media(max-width:480px){.comp-info-grid{grid-template-columns:1fr}}.departments-page{padding:2rem 0;min-height:calc(100vh - 64px);background:var(--dept-page-bg, linear-gradient(180deg, #f8f6f1 0%, #f0ede5 40%, #e8e4da 100%))}.departments-page .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.departments-page .page-header{text-align:center;margin-bottom:3rem}.departments-page .page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.departments-page .page-header p{font-size:1.125rem;color:var(--text-secondary, #6b7280);max-width:700px;margin:0 auto;line-height:1.6}.departments-page .stats-section{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin-bottom:2rem}.departments-page .stat-card{background:var(--card-bg, #fffdf7);border:1px solid var(--color-border, #e5dfd3);border-radius:14px;padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem;box-shadow:0 2px 8px #8b73380f,0 1px 3px #8b73380a}.departments-page .stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1f2937)}.departments-page .stat-card .stat-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.departments-page .stat-card.pre-prod{background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(245,158,11,.1) 100%);border-color:#f59e0b40}.departments-page .stat-card.pre-prod .stat-number{color:#d97706}.departments-page .stat-card.prod{background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(34,197,94,.1) 100%);border-color:#22c55e40}.departments-page .stat-card.prod .stat-number{color:#16a34a}.departments-page .stat-card.post-prod{background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(139,92,246,.1) 100%);border-color:#8b5cf640}.departments-page .stat-card.post-prod .stat-number{color:#7c3aed}.departments-page .filters-bar{display:flex;gap:.5rem;align-items:center;margin-bottom:1.5rem;padding:.5rem .75rem;background:var(--dept-bar-bg, #f5f0e6);border:1px solid var(--color-border, #e5dfd3);border-radius:10px;overflow-x:auto}.departments-page .category-filters{display:flex;flex-wrap:wrap;gap:.35rem;flex:1 1 auto;min-width:0}.departments-page .filter-bar-end{display:flex;align-items:center;gap:.35rem;flex-shrink:0;margin-left:auto;border-left:1px solid var(--color-border, #e5dfd3);padding-left:.5rem}.departments-page .sort-chip{display:inline-flex;align-items:center;gap:.2rem;padding:.3rem .55rem;border:1px solid var(--color-border, #e5dfd3);border-radius:999px;background:transparent;font-size:.72rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease;white-space:nowrap}.departments-page .sort-chip:hover{border-color:var(--color-secondary, #06b6d4);color:var(--color-secondary, #06b6d4)}.departments-page .sort-chip.active{background:var(--color-secondary, #06b6d4);border-color:var(--color-secondary, #06b6d4);color:#fff}.departments-page .filter-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .65rem;border:1px solid var(--border-color, #e5dfd3);border-radius:999px;background:transparent;font-size:.78rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease;white-space:nowrap}.departments-page .filter-chip:hover{border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37)}.departments-page .filter-chip.active{background:var(--primary-color, #d4af37);border-color:var(--primary-color, #d4af37);color:#fff}.departments-page .filter-icon{font-size:.85rem}.departments-page .filter-count{font-size:.78rem;color:var(--text-secondary, #6b7280);white-space:nowrap}.departments-page .departments-grid-section{margin-bottom:3rem}.departments-page .departments-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2.25rem 1.75rem}.departments-page .department-card{background:var(--card-bg, #fffdf7);border:1px solid var(--color-border, #e5dfd3);border-radius:16px;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease;min-height:240px;box-shadow:0 2px 8px #8b73380f,0 1px 3px #8b73380a;position:relative;overflow:hidden}.departments-page .department-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-color, #e5e7eb);border-radius:16px 16px 0 0;z-index:1}.departments-page .department-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #8b73381f,0 4px 10px #8b733814}.departments-page .department-card.category-pre-production:before{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.departments-page .department-card.category-production:before{background:linear-gradient(90deg,#22c55e,#4ade80)}.departments-page .department-card.category-post-production:before{background:linear-gradient(90deg,#8b5cf6,#a78bfa)}.dcard-photo{position:relative;width:100%;overflow:hidden;background:var(--bg-secondary, #f0ede5)}.dcard-photo .card-thumbnail-link{display:block;line-height:0}.dcard-photo .card-thumbnail{width:100%;height:160px;object-fit:cover;display:block;transition:transform .3s ease;border-radius:0;margin:0;aspect-ratio:auto}.departments-page .department-card:hover .dcard-photo .card-thumbnail{transform:scale(1.03)}.dcard-photo-placeholder{display:flex;align-items:center;justify-content:center;height:100px;font-size:2.5rem;opacity:.35;text-decoration:none;background:linear-gradient(135deg,var(--bg-secondary, #f0ede5) 0%,rgba(212,175,55,.06) 100%)}.dcard-joined-ribbon{position:absolute;top:.6rem;right:.6rem;font-size:.65rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:#059669e6;color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:2}[data-theme=dark] .dcard-joined-ribbon{background:#34d399d9;color:#064e3b}.dcard-info{padding:1.15rem 1.5rem .65rem;display:flex;flex-direction:column;gap:.6rem}.dcard-info h3{font-size:1.15rem;font-weight:700;margin:0;color:var(--text-primary, #1f2937);letter-spacing:-.01em;line-height:1.3}.departments-page .department-card-header{display:flex;justify-content:space-between;align-items:center}.departments-page .department-group-badge{font-size:.7rem;font-weight:600;letter-spacing:.02em;padding:.3rem .65rem;border-radius:9999px;background:var(--bg-secondary, #f0ebe0);color:var(--text-secondary, #6b7280);text-transform:uppercase}.departments-page .department-card.category-pre-production .department-group-badge{background:#f59e0b1f;color:#b45309}.departments-page .department-card.category-production .department-group-badge{background:#22c55e1f;color:#15803d}.departments-page .department-card.category-post-production .department-group-badge{background:#8b5cf61f;color:#6d28d9}.departments-page .department-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.6}.dcard-stats{padding:0 1.5rem}.dcard-divider{height:1px;background:var(--border-color, #e5dfd3);margin-bottom:.75rem}.dcard-spacer{flex:1}.dcard-bottom{padding:.25rem 1.5rem 1.4rem;margin-top:auto;display:flex;flex-direction:column;gap:.5rem}.dcard-bottom .btn{width:100%;padding:.7rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600;text-align:center;transition:all .2s ease;border:none;cursor:pointer}.dcard-bottom .btn-primary{background:var(--primary-color, #d4af37);color:#1a1500}.dcard-bottom .btn-primary:hover{background:var(--primary-hover, #b8942d);box-shadow:0 2px 8px #d4af374d}.dcard-bottom .btn-secondary{background:var(--bg-secondary, #f0ebe0);color:#059669}.dcard-bottom .btn-secondary:hover{background:#0596691a}[data-theme=dark] .dcard-bottom .btn-primary{color:#1a1500}[data-theme=dark] .dcard-bottom .btn-secondary{background:#0596691f;color:#34d399}.departments-page .department-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.departments-page .dept-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;padding:.4rem .5rem;border-radius:8px;font-size:.72rem;font-weight:600;text-decoration:none;transition:all .15s ease;border:none;background:var(--bg-secondary, #f0ebe0);color:var(--text-secondary, #4b5563);white-space:nowrap}.departments-page .dept-action-btn:hover{transform:translateY(-1px);box-shadow:0 2px 6px #00000014}.departments-page .dept-action-btn.action-courses{background:#3b82f614;color:#2563eb}.departments-page .dept-action-btn.action-courses:hover{background:#3b82f629;color:#1d4ed8}.departments-page .dept-action-btn.action-competitions{background:#f59e0b14;color:#b45309}.departments-page .dept-action-btn.action-competitions:hover{background:#f59e0b29;color:#92400e}.departments-page .dept-action-btn.action-investments{background:#22c55e14;color:#15803d}.departments-page .dept-action-btn.action-investments:hover{background:#22c55e29;color:#166534}.departments-page .dept-action-btn.action-learn-more{background:#d4af3714;color:#92700c}.departments-page .dept-action-btn.action-learn-more:hover{background:#d4af3729;color:#78590a}[data-theme=dark] .departments-page .dept-action-btn{background:#ffffff0f;color:#94a3b8}[data-theme=dark] .departments-page .dept-action-btn.action-courses{background:#3b82f61f;color:#60a5fa}[data-theme=dark] .departments-page .dept-action-btn.action-competitions{background:#f59e0b1f;color:#fbbf24}[data-theme=dark] .departments-page .dept-action-btn.action-investments{background:#22c55e1f;color:#4ade80}[data-theme=dark] .departments-page .dept-action-btn.action-learn-more{background:#d4af371f;color:#d4af37}.star-rating{font-size:.95rem;letter-spacing:1px;color:#f59e0b;white-space:nowrap;line-height:1}.star-rating .half-star{display:inline-block;position:relative;overflow:hidden;width:.55em}.mini-stats{display:flex;flex-wrap:wrap;gap:.4rem}.mini-stat{display:inline-flex;align-items:center;gap:.15rem;font-size:.75rem;font-weight:500;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f0ebe0);border-radius:999px;padding:.2rem .5rem;white-space:nowrap}.dept-tile-funding{padding:0;margin-top:.5rem}.dept-tile-funding-tags{display:flex;flex-wrap:nowrap;gap:.25rem;margin-bottom:.25rem}.dept-tile-tag{display:inline-flex;align-items:center;font-size:.6rem;font-weight:600;padding:.15rem .4rem;border-radius:999px;white-space:nowrap}.dept-tile-tag.tag-help{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.2)}.dept-tile-tag.tag-open{background:#22c55e1a;color:#15803d;border:1px solid rgba(34,197,94,.2)}.dept-tile-tag.tag-partner{background:#3b82f61a;color:#2563eb;border:1px solid rgba(59,130,246,.2)}.dept-tile-funding-details{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.funding-detail{font-size:.68rem;font-weight:500;color:var(--text-secondary, #6b7280)}.departments-page .no-results{text-align:center;padding:3rem;background:var(--bg-secondary, #f5f0e6);border-radius:12px;margin-bottom:2rem}.departments-page .no-results p{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.departments-page .no-results .btn-secondary{padding:.75rem 1.5rem;background:var(--card-bg, #fffdf7);border:1px solid var(--border-color, #e5dfd3);border-radius:8px;cursor:pointer;font-weight:500}.departments-page .cta-section{margin-top:4rem}.departments-page .cta-card{background:linear-gradient(135deg,var(--primary-color, #d4af37) 0%,#b8942d 100%);border-radius:16px;padding:3rem;text-align:center;color:#fff}.departments-page .cta-card h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem}.departments-page .cta-card p{font-size:1.125rem;opacity:.9;max-width:600px;margin:0 auto 2rem;line-height:1.6}.departments-page .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.departments-page .cta-buttons .btn{padding:.875rem 2rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease}.departments-page .cta-buttons .btn-primary{background:#fff;color:var(--primary-color, #d4af37)}.departments-page .cta-buttons .btn-primary:hover{background:#f9fafb;transform:translateY(-2px)}.departments-page .cta-buttons .btn-secondary{background:transparent;color:#fff;border:2px solid white}.departments-page .cta-buttons .btn-secondary:hover{background:#ffffff1a}[data-theme=dark] .departments-page{--dept-page-bg: transparent;--dept-bar-bg: #1e293b;--card-bg: #1e293b;--border-color: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--bg-secondary: #0f172a}[data-theme=dark] .departments-page .department-card{box-shadow:0 1px 3px #0003,0 1px 2px #00000026}[data-theme=dark] .departments-page .department-card:hover{box-shadow:0 12px 28px #00000059,0 4px 10px #0003}[data-theme=dark] .dcard-photo{background:#0f172a}[data-theme=dark] .dcard-photo-placeholder{background:linear-gradient(135deg,#0f172a,#d4af370d)}[data-theme=dark] .departments-page .filter-chip{background:transparent;border-color:#334155;color:#94a3b8}[data-theme=dark] .departments-page .filter-chip.active{background:var(--primary-color, #d4af37);border-color:var(--primary-color, #d4af37);color:#1e293b}[data-theme=dark] .departments-page .sort-chip{border-color:#334155;color:#94a3b8}[data-theme=dark] .departments-page .sort-chip.active{background:#0891b2;border-color:#0891b2;color:#fff}[data-theme=dark] .departments-page .filters-bar{background:#1e293b;border-color:#334155}[data-theme=dark] .departments-page .filter-bar-end{border-left-color:#334155}[data-theme=dark] .mini-stat{background:#334155;color:#cbd5e1}[data-theme=dark] .dept-tile-funding{border-top-color:#334155}[data-theme=dark] .dept-tile-tag.tag-help{background:#ef444426;color:#f87171;border-color:#ef444440}[data-theme=dark] .dept-tile-tag.tag-open{background:#22c55e26;color:#4ade80;border-color:#22c55e40}[data-theme=dark] .dept-tile-tag.tag-partner{background:#3b82f626;color:#60a5fa;border-color:#3b82f640}[data-theme=dark] .funding-detail{color:#94a3b8}[data-theme=dark] .departments-page .department-group-badge{background:#ffffff14;color:#94a3b8}[data-theme=dark] .departments-page .department-card.category-pre-production .department-group-badge{background:#f59e0b26;color:#fbbf24}[data-theme=dark] .departments-page .department-card.category-production .department-group-badge{background:#22c55e26;color:#4ade80}[data-theme=dark] .departments-page .department-card.category-post-production .department-group-badge{background:#8b5cf626;color:#a78bfa}[data-theme=dark] .dcard-divider{background:#334155}@media(max-width:768px){.departments-page .page-header h1{font-size:2rem}.departments-page .stats-section{grid-template-columns:repeat(2,1fr)}.departments-page .filters-bar{flex-direction:column;align-items:stretch;gap:.4rem}.departments-page .category-filters,.departments-page .filter-bar-end{justify-content:center}.departments-page .departments-card-grid{grid-template-columns:1fr}}@media(max-width:480px){.departments-page .stats-section{grid-template-columns:1fr}}.joined-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.7rem;font-weight:700;letter-spacing:.02em;color:#059669;background:#0596691a;border:none;border-radius:999px;padding:.2rem .55rem}[data-theme=dark] .joined-badge{background:#34d39926;color:#34d399}.department-detail-page{padding:2rem 0;min-height:calc(100vh - 64px)}.department-detail-page .container{max-width:900px;margin:0 auto;padding:0 1.5rem}.department-detail-page .breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.department-detail-page .breadcrumb a{color:var(--primary-color, #d4af37);text-decoration:none;font-weight:500}.department-detail-page .breadcrumb a:hover{text-decoration:underline}.department-detail-page .department-hero{margin-bottom:2.5rem}.department-detail-page .hero-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.department-detail-page .department-category-badge{font-size:.75rem;font-weight:500;padding:.35rem .85rem;background:var(--bg-secondary, #f3f4f6);border-radius:9999px;color:var(--text-secondary, #6b7280)}.department-detail-page .featured-badge{font-size:.75rem;font-weight:600;padding:.35rem .85rem;border-radius:9999px;background:#d4af371f;color:var(--primary-color, #d4af37)}.department-detail-page .joined-badge{font-size:.75rem;font-weight:600;padding:.35rem .85rem;border-radius:9999px;background:#22c55e1f;color:#16a34a}.department-detail-page .department-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.department-detail-page .hero-description{font-size:1.125rem;color:var(--text-secondary, #6b7280);line-height:1.7;max-width:700px}.department-detail-page .department-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2.5rem}.department-detail-page .info-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px}.department-detail-page .info-icon{font-size:1.5rem;flex-shrink:0}.department-detail-page .info-card div{display:flex;flex-direction:column;gap:.25rem}.department-detail-page .info-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #9ca3af)}.department-detail-page .info-value{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.department-detail-page .join-section{margin-bottom:2.5rem;text-align:center}.department-detail-page .btn-lg{font-size:1rem;padding:.85rem 2rem}.department-detail-page .department-content-section{margin-bottom:3rem;padding:2rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px}.department-detail-page .coming-soon-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem;margin-bottom:3rem}.department-detail-page .placeholder-card{padding:1.75rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;text-align:center}.department-detail-page .placeholder-card h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.department-detail-page .placeholder-card p{font-size:.9rem;color:var(--text-secondary, #9ca3af);line-height:1.5}.department-detail-page .related-items-section{margin-bottom:3rem}.department-detail-page .related-items-section h2{font-size:1.5rem;font-weight:700;margin-bottom:1.25rem;color:var(--text-primary, #1f2937)}.department-detail-page .related-items-list{display:flex;flex-direction:column;gap:.5rem}.department-detail-page .related-item{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:10px;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s}.department-detail-page .related-item:hover{border-color:var(--primary-color, #d4af37);box-shadow:0 2px 8px #0000000f}.department-detail-page .related-item-icon{font-size:1.25rem;flex-shrink:0;width:2rem;text-align:center}.department-detail-page .related-item-title{flex:1;font-size:.95rem;font-weight:500;color:var(--text-primary, #1f2937);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.department-detail-page .related-item-pill{font-size:.65rem;font-weight:600;padding:.2rem .55rem;border-radius:6px;text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.department-detail-page .pill-course{background:#3b82f61a;color:#2563eb}.department-detail-page .pill-competition{background:#f59e0b1a;color:#d97706}.department-detail-page .pill-project{background:#22c55e1a;color:#16a34a}.department-detail-page .pill-investment{background:#d4af3726;color:#b8860b}.department-detail-page .related-item-status{font-size:.7rem;font-weight:500;color:var(--text-secondary, #9ca3af);flex-shrink:0;text-transform:capitalize}.department-detail-page .related-item-status.status-open{color:#16a34a}.department-detail-page .related-item-status.status-coming-soon{color:#d97706}.department-detail-page .related-item-meta{font-size:.7rem;color:var(--text-secondary, #9ca3af);flex-shrink:0}.department-detail-page .related-item-arrow{font-size:.85rem;color:var(--text-secondary, #9ca3af);flex-shrink:0;transition:transform .15s}.department-detail-page .related-item:hover .related-item-arrow{transform:translate(3px);color:var(--primary-color, #d4af37)}.department-detail-page .back-link{text-align:center;padding:2rem 0}.department-detail-page .loading-text{text-align:center;padding:4rem 0;color:var(--text-secondary, #9ca3af)}.department-detail-page .error-state{text-align:center;padding:4rem 0}.department-detail-page .error-state p{color:var(--text-secondary, #9ca3af);margin-bottom:1.5rem}[data-theme=dark] .department-detail-page{--card-bg: #1f2937;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827;--primary-color: #d4af37}[data-theme=dark] .department-detail-page{--card-bg: #1f2937;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827}@media(max-width:640px){.department-detail-page .department-hero h1{font-size:1.75rem}.department-detail-page .department-info-grid,.department-detail-page .coming-soon-section{grid-template-columns:1fr}.department-detail-page .related-item{flex-wrap:wrap;gap:.4rem}.department-detail-page .related-item-title{min-width:0;flex-basis:calc(100% - 3.5rem)}}.investment-detail-page{padding:2rem 0;min-height:calc(100vh - 64px)}.investment-detail-page .container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.investment-detail-page .breadcrumb{margin-bottom:1.5rem;font-size:.9rem;color:var(--text-secondary, #6b7280)}.investment-detail-page .breadcrumb a{color:var(--accent, #6366f1);text-decoration:none}.investment-detail-page .breadcrumb a:hover{text-decoration:underline}.investment-detail-page .breadcrumb .separator{margin:0 .5rem;opacity:.5}.detail-hero{margin-bottom:2.5rem}.hero-badge-row{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.hero-badge-row .dept-icon{font-size:1.5rem}.hero-badge-row .dept-name{font-size:.875rem;font-weight:600;color:var(--text-secondary, #6b7280);background:var(--surface-alt, #f3f4f6);padding:.25rem .75rem;border-radius:999px}.hero-badge-row .status-badge{font-size:.75rem;font-weight:700;padding:.25rem .75rem;border-radius:999px;text-transform:uppercase;letter-spacing:.05em}.status-badge.status-open{background:#dcfce7;color:#166534}.status-badge.status-coming-soon{background:#fef3c7;color:#92400e}.status-badge.status-closed{background:#fee2e2;color:#991b1b}.detail-hero h1{font-size:2.25rem;font-weight:700;margin-bottom:.75rem;color:var(--text-primary, #1f2937)}.hero-description{font-size:1.1rem;line-height:1.7;color:var(--text-secondary, #4b5563);max-width:800px}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2.5rem}.metric-card{background:var(--surface, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.25rem;text-align:center;transition:transform .15s ease,box-shadow .15s ease}.metric-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.metric-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.metric-value{display:block;font-size:1.25rem;font-weight:700;color:var(--text-primary, #1f2937)}.funding-progress-section{margin-bottom:2.5rem}.funding-progress-section h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.progress-bar-container{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.progress-bar{flex:1;height:12px;background:var(--surface-alt, #e5e7eb);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:999px;transition:width .5s ease}.progress-label{font-size:.9rem;font-weight:600;color:#6366f1;white-space:nowrap}.progress-stats{display:flex;justify-content:space-between;font-size:.85rem;color:var(--text-secondary, #6b7280)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2.5rem}.detail-card{background:var(--surface, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem}.detail-card h2{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.terms-list{display:flex;flex-direction:column;gap:.75rem}.term-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--border, #e5e7eb)}.term-row:last-child{border-bottom:none}.term-label{font-size:.9rem;color:var(--text-secondary, #6b7280)}.term-value{font-size:.95rem;font-weight:600;color:var(--text-primary, #1f2937)}.term-value.highlight,.term-value.risk-low{color:#16a34a}.term-value.risk-medium,.term-value.risk-low-medium{color:#ca8a04}.term-value.risk-medium-high{color:#ea580c}.term-value.risk-high{color:#dc2626}.feature-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.625rem}.feature-list li{display:flex;align-items:flex-start;gap:.5rem;font-size:.95rem;color:var(--text-primary, #374151);line-height:1.5}.check-icon{flex-shrink:0;margin-top:.1em}.invest-cta-section{margin-bottom:3rem}.invest-cta{background:linear-gradient(135deg,#4338ca,#6d28d9);border-radius:12px;padding:1.1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap;color:#fff}.invest-cta-text{flex:1;min-width:0}.invest-cta h2{font-size:1.1rem;font-weight:700;margin-bottom:.2rem;color:#fff;letter-spacing:-.01em}.invest-cta p{font-size:.875rem;color:#ffffffe0;margin:0;line-height:1.4}.coming-soon-cta{background:linear-gradient(135deg,#b45309,#92400e)}.cta-buttons{display:flex;gap:.75rem;align-items:center;flex-shrink:0;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;border:none;transition:transform .15s ease,box-shadow .15s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.btn-primary{background:#fff;color:#4338ca;font-weight:700}.btn-secondary{background:#ffffff26;color:#fff;border:1px solid rgba(255,255,255,.45)}.btn-large{padding:1rem 2rem;font-size:1.1rem}.loading-state,.error-state{text-align:center;padding:4rem 0;color:var(--text-secondary, #6b7280)}.investment-content-section{margin:2.5rem 0}[data-theme=dark] .detail-hero h1,[data-theme=dark] .metric-value,[data-theme=dark] .detail-card h2,[data-theme=dark] .term-value,[data-theme=dark] .feature-list li,[data-theme=dark] .funding-progress-section h2{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .hero-description,[data-theme=dark] .metric-label,[data-theme=dark] .term-label,[data-theme=dark] .progress-stats{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .metric-card,[data-theme=dark] .detail-card{background:var(--surface, #1f2937);border-color:var(--border, #374151)}[data-theme=dark] .hero-badge-row .dept-name{background:var(--surface-alt, #374151);color:var(--text-secondary, #d1d5db)}[data-theme=dark] .progress-bar{background:var(--surface-alt, #374151)}[data-theme=dark] .term-row{border-color:var(--border, #374151)}[data-theme=dark] .status-badge.status-open{background:#064e3b;color:#6ee7b7}[data-theme=dark] .status-badge.status-coming-soon{background:#78350f;color:#fcd34d}@media(max-width:768px){.detail-hero h1{font-size:1.75rem}.metrics-grid{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}.invest-cta{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.25rem}.cta-buttons{width:100%}}.investments-page{padding:2rem 0;min-height:calc(100vh - 64px)}.investments-page .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.investments-page .page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;margin-bottom:3rem}.investments-page .header-content{flex:1;text-align:left}.investments-page .page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.investments-page .page-header p{font-size:1.125rem;color:var(--text-secondary, #6b7280);line-height:1.6}.header-help-link{flex-shrink:0;display:flex;align-items:center}.help-link-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#4338ca,#6d28d9);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:.95rem;transition:transform .15s ease,box-shadow .15s ease;white-space:nowrap}.help-link-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4338ca4d}.stats-section{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:3rem}.stat-card{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1f2937)}.stat-card .stat-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.stat-card.open{border-color:#22c55e;background:linear-gradient(135deg,var(--card-bg, #ffffff) 0%,rgba(34,197,94,.05) 100%)}.stat-card.open .stat-number{color:#16a34a}.stat-card.coming-soon{border-color:#f59e0b;background:linear-gradient(135deg,var(--card-bg, #ffffff) 0%,rgba(245,158,11,.05) 100%)}.stat-card.coming-soon .stat-number{color:#d97706}.featured-section{margin-bottom:3rem}.featured-section h2{font-size:1.5rem;font-weight:600;margin-bottom:1.5rem;color:var(--text-primary, #1f2937)}.investments-page .filters-section{display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;padding:1rem 1.5rem;background:var(--color-surface-elevated);border-radius:12px}.investments-page .filters-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.investments-page .category-filters,.investments-page .status-filters{display:flex;flex-wrap:wrap;gap:.5rem}.investments-page .filter-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--card-bg, #ffffff);font-size:.875rem;font-weight:500;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.investments-page .filter-btn:hover{border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37)}.investments-page .filter-btn.active{background:var(--primary-color, #d4af37);border-color:var(--primary-color, #d4af37);color:#fff}.investments-page .filter-icon{font-size:1rem}.investments-page .filter-count{font-size:.875rem;color:var(--text-secondary, #6b7280);padding:.5rem 1rem;background:var(--card-bg, #ffffff);border-radius:8px}.investments-page .filter-right{display:flex;align-items:center;gap:.75rem}.view-toggle{display:flex;gap:.25rem}.view-toggle button{padding:.5rem .75rem;font-size:1.1rem;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;background:var(--card-bg, #ffffff);color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .2s ease}.view-toggle button:hover{border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37)}.view-toggle button.active{background:var(--primary-color, #d4af37);border-color:var(--primary-color, #d4af37);color:#fff}.results-section{margin-bottom:3rem}.grouped-roles{display:flex;flex-direction:column;gap:3rem}.category-group{display:flex;flex-direction:column;gap:1.5rem}.category-header{display:flex;align-items:center;gap:1rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color, #e5e7eb)}.category-icon{font-size:2rem}.category-header h3{font-size:1.25rem;font-weight:600;margin:0;color:var(--text-primary, #1f2937)}.category-header p{font-size:.875rem;color:var(--text-secondary, #6b7280);margin:0}.category-count{margin-left:auto;font-size:.875rem;color:var(--text-secondary, #6b7280);background:var(--bg-secondary, #f3f4f6);padding:.25rem .75rem;border-radius:9999px}.no-results{text-align:center;padding:3rem;background:var(--bg-secondary, #f9fafb);border-radius:12px}.no-results p{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.no-results button{padding:.75rem 1.5rem;background:var(--primary-color, #d4af37);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500}.investments-page .cta-section{margin-top:4rem}.investments-page .cta-card{background:linear-gradient(135deg,var(--primary-color, #d4af37) 0%,#b8942d 100%);border-radius:16px;padding:3rem;text-align:center;color:#fff}.investments-page .cta-card h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem}.investments-page .cta-card p{font-size:1.125rem;opacity:.9;max-width:600px;margin:0 auto 2rem;line-height:1.6}.investments-page .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.investments-page .btn{padding:.875rem 2rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease}.investments-page .btn-primary{background:#fff;color:var(--primary-color, #d4af37)}.investments-page .btn-primary:hover{background:#f9fafb;transform:translateY(-2px)}.investments-page .btn-secondary{background:transparent;color:#fff;border:2px solid white}.investments-page .btn-secondary:hover{background:#ffffff1a}[data-theme=dark] .investments-page{--card-bg: #1f2937;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827}[data-theme=dark] .investments-page .filter-btn,[data-theme=dark] .investments-page .view-toggle button{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .investments-page .filter-btn.active,[data-theme=dark] .investments-page .view-toggle button.active{background:var(--primary-color, #d4af37);color:#1f2937}@media(max-width:768px){.investments-page .page-header{flex-direction:column;align-items:stretch;gap:1rem}.investments-page .header-content{text-align:center}.investments-page .page-header h1{font-size:2rem}.header-help-link{justify-content:center}.help-link-btn{width:100%;justify-content:center}.stats-section{grid-template-columns:1fr}.investments-page .filters-section,.investments-page .filters-row{flex-direction:column;align-items:stretch}.investments-page .category-filters,.investments-page .status-filters{justify-content:center}.investments-page .filter-count{text-align:center}.view-toggle{justify-content:center}.category-header{flex-wrap:wrap}.category-count{margin-left:0;margin-top:.5rem;width:100%;text-align:center}}.investment-listings-section{margin:3rem 0}.investment-listings-section h2{font-size:1.5rem;font-weight:700;margin-bottom:.25rem;color:var(--text-primary, #1f2937)}.section-subtitle{color:var(--text-secondary, #6b7280);font-size:.95rem;margin-bottom:1.5rem}.investment-listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.investment-listings-grid.list-view{grid-template-columns:1fr}.investment-listing-card{background:var(--surface, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem;transition:transform .15s ease,box-shadow .15s ease}.investment-listing-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.investment-listing-card.status-border-open{border-left:4px solid #16a34a}.investment-listing-card.status-border-coming-soon{border-left:4px solid #f59e0b}.listing-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.75rem}.listing-dept-icon{font-size:1.5rem;flex-shrink:0}.listing-title-group{flex:1;min-width:0}.listing-title-group h3{font-size:1.05rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.15rem;line-height:1.3}.listing-dept{font-size:.75rem;color:var(--text-secondary, #6b7280)}.listing-status{flex-shrink:0;font-size:.7rem;font-weight:700;padding:.2rem .6rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em}.listing-status.status-open{background:#dcfce7;color:#166534}.listing-status.status-coming-soon{background:#fef3c7;color:#92400e}.listing-description{font-size:.875rem;color:var(--text-secondary, #4b5563);line-height:1.5;margin-bottom:1rem}.listing-metrics{display:flex;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.listing-metric{display:flex;flex-direction:column;gap:.15rem}.lm-label{font-size:.7rem;font-weight:600;color:var(--text-secondary, #9ca3af);text-transform:uppercase;letter-spacing:.04em}.lm-value{font-size:.95rem;font-weight:700;color:var(--text-primary, #1f2937)}.listing-actions{display:flex;gap:.75rem}.listing-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.listing-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.details-btn{background:var(--surface-alt, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border, #d1d5db)}.invest-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.invest-soon-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;opacity:.85;cursor:default}.role-actions .listing-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;text-decoration:none;transition:transform .12s ease,box-shadow .12s ease}.role-actions .listing-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.role-actions .details-btn{background:var(--surface-alt, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border, #d1d5db)}.role-actions .invest-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.role-actions .invest-soon-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;opacity:.85;cursor:default}[data-theme=dark] .investment-listings-section h2,[data-theme=dark] .listing-title-group h3,[data-theme=dark] .lm-value{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .investment-listing-card{background:var(--surface, #1f2937);border-color:var(--border, #374151)}[data-theme=dark] .details-btn,[data-theme=dark] .role-actions .details-btn{background:var(--surface-alt, #374151);color:var(--text-primary, #f3f4f6);border-color:var(--border, #4b5563)}[data-theme=dark] .listing-status.status-open{background:#064e3b;color:#6ee7b7}[data-theme=dark] .listing-status.status-coming-soon{background:#78350f;color:#fcd34d}@media(max-width:768px){.investment-listings-grid{grid-template-columns:1fr}.listing-metrics{gap:.5rem}}.invest-page{padding:2rem 0;min-height:calc(100vh - 64px)}.invest-page .container{max-width:1100px;margin:0 auto;padding:0 1.5rem}.invest-page .breadcrumb{margin-bottom:1.5rem;font-size:.9rem;color:var(--text-secondary, #6b7280)}.invest-page .breadcrumb a{color:var(--accent, #6366f1);text-decoration:none}.invest-page .breadcrumb a:hover{text-decoration:underline}.invest-page .breadcrumb .separator{margin:0 .5rem;opacity:.5}.invest-layout{display:grid;grid-template-columns:340px 1fr;gap:2rem;align-items:flex-start}.invest-summary h2{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.summary-card{background:var(--surface, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem;position:sticky;top:80px}.summary-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--border, #e5e7eb)}.summary-header .dept-icon{font-size:1.5rem;flex-shrink:0}.summary-header h3{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937);margin-bottom:.25rem}.summary-header .dept-name{font-size:.8rem;color:var(--text-secondary, #6b7280)}.summary-metrics{display:flex;flex-direction:column;gap:.5rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.4rem 0;font-size:.875rem;color:var(--text-secondary, #6b7280)}.summary-row .value{font-weight:600;color:var(--text-primary, #1f2937)}.summary-row .value.highlight{color:#16a34a}.invest-form-section h1{font-size:1.75rem;font-weight:700;margin-bottom:1.5rem;color:var(--text-primary, #1f2937)}.invest-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.9rem;font-weight:600;color:var(--text-primary, #374151)}.form-input{padding:.75rem 1rem;border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:1rem;background:var(--surface, #ffffff);color:var(--text-primary, #1f2937);transition:border-color .15s ease}.form-input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f126}.form-textarea{resize:vertical;min-height:80px}.form-hint{font-size:.8rem;color:var(--text-secondary, #9ca3af)}.shares-input-group{display:flex;align-items:center;gap:0}.shares-btn{width:44px;height:44px;border:1px solid var(--border, #d1d5db);background:var(--surface-alt, #f3f4f6);font-size:1.25rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-primary, #374151);transition:background .15s ease}.shares-btn:first-child{border-radius:8px 0 0 8px}.shares-btn:last-child{border-radius:0 8px 8px 0}.shares-btn:hover:not(:disabled){background:var(--border, #e5e7eb)}.shares-btn:disabled{opacity:.4;cursor:not-allowed}.shares-input{width:100px;text-align:center;border-radius:0;border-left:none;border-right:none;-moz-appearance:textfield}.shares-input::-webkit-inner-spin-button,.shares-input::-webkit-outer-spin-button{-webkit-appearance:none}.quick-select{display:flex;gap:.5rem;flex-wrap:wrap}.quick-btn{padding:.375rem .75rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.8rem;font-weight:500;background:var(--surface, #ffffff);color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.quick-btn:hover{border-color:#6366f1;color:#6366f1}.quick-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.order-summary{background:var(--surface-alt, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem}.order-summary h3{font-size:1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.order-row{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.95rem;color:var(--text-secondary, #4b5563)}.order-row.total{border-top:2px solid var(--border, #e5e7eb);margin-top:.5rem;padding-top:.75rem;font-size:1.15rem;font-weight:700;color:var(--text-primary, #1f2937)}.order-note{font-size:.8rem;color:var(--text-secondary, #9ca3af);margin-top:.75rem;line-height:1.5}.form-error{background:#fef2f2;border:1px solid #fecaca;border-radius:8px;padding:.75rem 1rem;color:#dc2626;font-size:.9rem}.btn-submit{width:100%;padding:1rem;font-size:1.1rem;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:700;transition:transform .15s ease,box-shadow .15s ease}.btn-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 16px #6366f14d}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.disclaimer{font-size:.75rem;color:var(--text-secondary, #9ca3af);text-align:center;line-height:1.5}.invest-success{text-align:center;padding:3rem 0;max-width:600px;margin:0 auto}.success-icon{font-size:3rem;margin-bottom:1rem}.invest-success h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.success-message{font-size:1.05rem;color:var(--text-secondary, #6b7280);margin-bottom:2rem}.success-details{background:var(--surface, #ffffff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem;text-align:left;margin-bottom:2rem}.success-details .detail-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid var(--border, #f3f4f6)}.success-details .detail-row:last-child{border-bottom:none}.success-details .detail-row.total{font-weight:700;font-size:1.1rem;border-top:2px solid var(--border, #e5e7eb);margin-top:.25rem;padding-top:.75rem}.detail-label{color:var(--text-secondary, #6b7280);font-size:.9rem}.detail-value{font-weight:600;color:var(--text-primary, #1f2937);font-size:.9rem}.detail-value.mono{font-family:monospace;font-size:.8rem}.status-badge.status-pending{background:#fef3c7;color:#92400e;padding:.25rem .75rem;border-radius:6px;font-size:.8rem;text-transform:none;font-weight:600;letter-spacing:.01em;border:1px solid #fbbf24}.status-badge.status-completed{background:#d1fae5;color:#065f46;padding:.25rem .75rem;border-radius:6px;font-size:.8rem;text-transform:none;font-weight:600;letter-spacing:.01em;border:1px solid #34d399}.success-actions{display:flex;gap:1rem;justify-content:center}.success-actions .btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.success-actions .btn-secondary{background:var(--surface-alt, #f3f4f6);color:var(--text-primary, #374151);border:1px solid var(--border, #d1d5db)}.invest-success .email-notice{display:flex;align-items:center;gap:.5rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:.75rem 1.25rem;margin-top:1.5rem;font-size:.88rem;color:var(--text-secondary, #6b7280)}.invest-success .email-notice .email-icon{font-size:1.1rem;flex-shrink:0}.invest-success .email-notice strong{color:var(--text-primary, #1f2937)}[data-theme=dark] .invest-success .email-notice{background:#3b82f61a;border-color:#3b82f640;color:var(--text-secondary, #9ca3af)}[data-theme=dark] .invest-success .email-notice strong{color:var(--text-primary, #f3f4f6)}.existing-investment-notice{background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;padding:1rem 1.25rem;margin-bottom:1.5rem;color:#1e40af;font-size:.9rem;line-height:1.6}.existing-investment-notice p{margin:0;color:inherit}.login-prompt,.not-open-notice{text-align:center;padding:4rem 0}.login-prompt h2,.not-open-notice h2{font-size:1.5rem;margin-bottom:.75rem;color:var(--text-primary, #1f2937)}.login-prompt p,.not-open-notice p{color:var(--text-secondary, #6b7280);margin-bottom:1.5rem}[data-theme=dark] .invest-form-section h1,[data-theme=dark] .invest-summary h2,[data-theme=dark] .summary-header h3,[data-theme=dark] .summary-row .value,[data-theme=dark] .order-summary h3,[data-theme=dark] .order-row.total,[data-theme=dark] .invest-success h1,[data-theme=dark] .detail-value{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .summary-card,[data-theme=dark] .order-summary,[data-theme=dark] .success-details{background:var(--surface, #1f2937);border-color:var(--border, #374151)}[data-theme=dark] .form-input{background:var(--surface, #1f2937);border-color:var(--border, #4b5563);color:var(--text-primary, #f3f4f6)}[data-theme=dark] .shares-btn{background:var(--surface-alt, #374151);border-color:var(--border, #4b5563);color:var(--text-primary, #f3f4f6)}[data-theme=dark] .quick-btn{background:var(--surface, #1f2937);border-color:var(--border, #4b5563);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .status-badge.status-pending{background:#422006;color:#fbbf24;border-color:#854d0e}[data-theme=dark] .status-badge.status-completed{background:#064e3b;color:#34d399;border-color:#059669}[data-theme=dark] .existing-investment-notice{background:#1e293b;border-color:#3b82f6;color:#93c5fd}[data-theme=dark] .form-error{background:#450a0a;border-color:#7f1d1d}@media(max-width:768px){.invest-layout{grid-template-columns:1fr}.summary-card{position:static}.invest-form-section h1{font-size:1.4rem}}.content-page{padding:2rem 0;min-height:calc(100vh - 64px);background:var(--bg-primary, #ffffff)}.content-page .container{max-width:900px;margin:0 auto;padding:0 1.5rem}.content-page .breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.9rem;color:var(--text-secondary, #6b7280)}.content-page .breadcrumb a{color:var(--primary-color, #d4af37);text-decoration:none;transition:opacity .2s ease}.content-page .breadcrumb a:hover{opacity:.8}.content-page .breadcrumb .separator{opacity:.5;margin:0 .25rem}.content-page .loading-state,.content-page .error-state{text-align:center;padding:3rem 0;color:var(--text-secondary, #6b7280)}.content-page .error-state{background:var(--bg-secondary, #f9fafb);border-radius:12px;padding:2rem}.content-page .error-state p{margin-bottom:1.5rem}.content-page .btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;border:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease}.content-page .btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.content-page .btn-secondary{background:var(--bg-secondary, #f9fafb);color:var(--text-primary, #1f2937);border:1px solid var(--border-color, #e5e7eb)}.content-page .content-article{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:2.5rem;line-height:1.8}.content-page .markdown-content h1{margin-top:0}.content-article table{width:100%;border-collapse:collapse;margin:1.5rem 0;border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.content-article table thead{background:var(--bg-secondary, #f9fafb)}.content-article table th{padding:1rem;text-align:left;font-weight:600;color:var(--text-primary, #1f2937);border-bottom:2px solid var(--border-color, #e5e7eb);font-size:.95rem}.content-article table td{padding:.85rem 1rem;color:var(--text-secondary, #6b7280);border-bottom:1px solid var(--border-color, #e5e7eb)}.content-article table tbody tr:last-child td{border-bottom:none}.content-article table tbody tr:hover{background:var(--bg-secondary, #f9fafb)}.content-article code{background:var(--bg-secondary, #f9fafb);padding:.2rem .4rem;border-radius:4px;font-family:SF Mono,Monaco,Menlo,Courier New,monospace;font-size:.9em;color:#c7254e}.content-article pre{background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;padding:1.25rem;overflow-x:auto;margin:1.5rem 0}.content-article pre code{background:none;padding:0;color:var(--text-secondary, #6b7280)}@media(max-width:768px){.content-page .container{padding:0 1rem}.content-page .content-article{padding:1.5rem}.content-article table th,.content-article table td{padding:.65rem .75rem;font-size:.9rem}}[data-theme=dark] .content-page{background:var(--bg-primary, #1a1a1a)}[data-theme=dark] .content-page .content-article{background:var(--card-bg, #2a2a2a);border-color:var(--border-color, #444444)}[data-theme=dark] .content-article table{border-color:var(--border-color, #444444)}[data-theme=dark] .content-article table thead{background:var(--bg-secondary, #333333)}[data-theme=dark] .content-article table th{border-color:var(--border-color, #444444);color:#fff}[data-theme=dark] .content-article table td{border-color:var(--border-color, #444444)}[data-theme=dark] .content-article code{background:var(--bg-secondary, #333333);color:#ff7b72}[data-theme=dark] .content-article pre{background:var(--bg-secondary, #333333);border-color:var(--border-color, #444444)}.admin-inv-page{padding:2rem 0;min-height:calc(100vh - 64px);background:var(--color-bg)}.admin-inv-page .container{max-width:1300px;margin:0 auto;padding:0 1.5rem}.admin-inv-page .page-header{margin-bottom:2rem}.admin-inv-page .back-link{display:inline-block;color:var(--accent, #6366f1);text-decoration:none;font-size:.85rem;margin-bottom:.5rem}.admin-inv-page .back-link:hover{text-decoration:underline}.admin-inv-page .page-header h1{font-size:2rem;font-weight:700;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.admin-inv-page .page-header p{color:var(--text-secondary, #6b7280);font-size:1rem}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:2.5rem}.admin-stat-card{background:var(--card-bg, #fffdf7);border:1px solid var(--border-color, #e5dfd3);border-radius:12px;padding:1.25rem;text-align:center;box-shadow:0 2px 8px #8b73380f,0 1px 3px #8b73380a}.admin-stat-card.open{border-color:#16a34a59;background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(34,197,94,.1) 100%)}.admin-stat-card.pending{border-color:#f59e0b59;background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(245,158,11,.1) 100%)}.admin-stat-card.amount{border-color:#6366f159;background:linear-gradient(135deg,var(--card-bg, #fffdf7) 0%,rgba(99,102,241,.1) 100%)}.admin-stat-card .stat-number{display:block;font-size:1.5rem;font-weight:700;color:var(--text-primary, #1f2937);margin-bottom:.25rem}.admin-stat-card .stat-label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;letter-spacing:.03em}.report-section{margin-bottom:2.5rem}.report-section h2{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.table-wrapper{overflow-x:auto;border:1px solid var(--border-color, #e5dfd3);border-radius:12px;background:var(--card-bg, #fffdf7)}.report-table{width:100%;border-collapse:collapse;font-size:.875rem}.report-table th{background:var(--surface-alt, #f5f0e6);padding:.75rem 1rem;text-align:left;font-weight:600;color:var(--text-secondary, #6b7280);text-transform:uppercase;font-size:.75rem;letter-spacing:.05em;border-bottom:1px solid var(--border-color, #e5dfd3);white-space:nowrap}.report-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border-color, #efe9dc);color:var(--text-primary, #1f2937);white-space:nowrap}.report-table tbody tr:hover{background:var(--surface-alt, #f5f0e6)}.table-link{color:var(--accent, #6366f1);text-decoration:none;font-weight:500}.table-link:hover{text-decoration:underline}.mono-cell{font-family:monospace;font-size:.8rem}.status-pill{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.status-pill.status-open{background:#dcfce7;color:#166534}.status-pill.status-coming-soon{background:#fef3c7;color:#92400e}.status-pill.status-closed{background:#fee2e2;color:#991b1b}.status-pill.status-pending-approval{background:#fef3c7;color:#92400e}.status-pill.status-approved{background:#dcfce7;color:#166534}.status-pill.status-rejected{background:#fee2e2;color:#991b1b}.type-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700}.type-badge.type-buy{background:#dbeafe;color:#1e40af}.type-badge.type-sell{background:#fce7f3;color:#9d174d}.type-badge.mode-cash{background:#d1fae5;color:#065f46}.type-badge.mode-technical_partnership{background:#e0e7ff;color:#3730a3}.empty-text{color:var(--text-secondary, #9ca3af);font-style:italic}.loading-state,.error-state{text-align:center;padding:3rem 0;color:var(--text-secondary, #6b7280)}[data-theme=dark] .admin-inv-page .page-header h1,[data-theme=dark] .report-section h2,[data-theme=dark] .admin-stat-card .stat-number,[data-theme=dark] .report-table td{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .admin-stat-card{background:var(--surface, #1f2937);border-color:var(--border, #374151)}[data-theme=dark] .admin-stat-card.open{background:#064e3b;border-color:#065f46}[data-theme=dark] .admin-stat-card.pending{background:#78350f;border-color:#92400e}[data-theme=dark] .admin-stat-card.amount{background:#312e81;border-color:#4338ca}[data-theme=dark] .table-wrapper{border-color:var(--border, #374151)}[data-theme=dark] .report-table th{background:var(--surface-alt, #111827);border-color:var(--border, #374151);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .report-table td{border-color:var(--border, #1f2937)}[data-theme=dark] .report-table tbody tr:hover{background:var(--surface-alt, #111827)}[data-theme=dark] .type-badge.mode-cash{background:#05966933;color:#6ee7b7}[data-theme=dark] .type-badge.mode-technical_partnership{background:#6366f133;color:#a5b4fc}@media(max-width:768px){.admin-stats-grid{grid-template-columns:repeat(2,1fr)}.admin-inv-page .page-header h1{font-size:1.5rem}}.projects-page{padding:2rem 0;min-height:calc(100vh - 64px)}.projects-page .container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.projects-page .page-header{text-align:center;margin-bottom:3rem}.projects-page .page-header h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.projects-page .page-header p{font-size:1.125rem;color:var(--text-secondary, #6b7280);max-width:700px;margin:0 auto;line-height:1.6}.projects-page .stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem;margin-bottom:3rem}.projects-page .stat-card{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;padding:1.5rem;text-align:center;display:flex;flex-direction:column;gap:.5rem}.projects-page .stat-card .stat-number{font-size:2.5rem;font-weight:700;color:var(--text-primary, #1f2937)}.projects-page .stat-card .stat-label{font-size:.875rem;color:var(--text-secondary, #6b7280)}.projects-page .stat-card.highlight{border-color:var(--primary-color, #d4af37);background:linear-gradient(135deg,var(--card-bg, #ffffff) 0%,rgba(212,175,55,.05) 100%)}.projects-page .stat-card.highlight .stat-number{color:var(--primary-color, #d4af37)}.projects-page .section-header{margin-bottom:1.5rem}.projects-page .section-header h2{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.projects-page .section-header p{font-size:.95rem;color:var(--text-secondary, #6b7280);margin:0}.projects-page .featured-section{margin-bottom:3rem}.projects-page .featured-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.projects-page .project-card{background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:16px;display:flex;flex-direction:column;transition:all .25s ease;text-decoration:none;color:inherit;overflow:hidden;box-shadow:0 2px 8px #8b73380f,0 1px 3px #8b73380a}.projects-page .project-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #8b73381f,0 4px 10px #8b733814}.projects-page .project-card.featured{border-color:var(--primary-color, #d4af37)}.projects-page .pcard-photo{position:relative;width:100%;overflow:hidden;background:var(--bg-secondary, #f0ede5)}.projects-page .pcard-photo .card-thumbnail{width:100%;height:180px;object-fit:cover;display:block;transition:transform .3s ease;border-radius:0;margin:0;aspect-ratio:auto}.projects-page .project-card:hover .pcard-photo .card-thumbnail{transform:scale(1.03)}.projects-page .pcard-photo-placeholder{display:flex;align-items:center;justify-content:center;height:140px;font-size:3rem;opacity:.4;background:linear-gradient(135deg,var(--bg-secondary, #f0ede5) 0%,rgba(212,175,55,.06) 100%)}.projects-page .pcard-inv-ribbon{position:absolute;top:.75rem;right:.75rem;font-size:.65rem;font-weight:700;padding:.25rem .65rem;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.projects-page .pcard-inv-ribbon.inv-open{background:#22c55ee6;color:#fff}.projects-page .pcard-inv-ribbon.inv-coming-soon{background:#f59e0be6;color:#fff}.projects-page .pcard-inv-ribbon.inv-closed{background:#ef4444d9;color:#fff}.projects-page .pcard-center{padding:1.25rem 1.5rem .75rem;display:flex;flex-direction:column;gap:.5rem;flex:1}.projects-page .pcard-center h3{font-size:1.2rem;font-weight:700;margin:0;color:var(--text-primary, #1f2937);line-height:1.3;letter-spacing:-.01em}.projects-page .pcard-desc{font-size:.85rem;color:var(--text-secondary, #6b7280);margin:0;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.projects-page .pcard-bottom{padding:.75rem 1.5rem 1.25rem;display:flex;flex-direction:column;gap:.5rem;margin:0 .75rem}.projects-page .pcard-year{font-size:.72rem;font-weight:600;color:var(--text-secondary, #9ca3af);align-self:flex-end}.projects-page .project-badges{display:flex;gap:.5rem;flex-wrap:wrap}.projects-page .project-type{font-size:.75rem;font-weight:500;padding:.25rem .75rem;background:var(--bg-secondary, #f3f4f6);border-radius:9999px;color:var(--text-secondary, #6b7280)}.projects-page .project-status{font-size:.75rem;font-weight:500;padding:.25rem .75rem;border-radius:9999px}.projects-page .project-status.status-announced{background:#6366f11a;color:#6366f1}.projects-page .project-status.status-pre-production{background:#f59e0b1a;color:#d97706}.projects-page .project-status.status-in-production{background:#22c55e1a;color:#16a34a}.projects-page .project-status.status-post-production{background:#8b5cf61a;color:#8b5cf6}.projects-page .project-status.status-completed,.projects-page .project-status.status-released{background:#22c55e1a;color:#16a34a}.projects-page .project-genres{display:flex;gap:.35rem;flex-wrap:wrap}.projects-page .genre-tag{font-size:.65rem;padding:.15rem .45rem;background:var(--bg-secondary, #f0ebe0);border-radius:999px;color:var(--text-secondary, #6b7280);font-weight:500}.projects-page .filters-section{display:flex;flex-direction:column;gap:1rem;margin-bottom:2rem}.projects-page .type-icon-filters{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.projects-page .type-icon-btn{display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:.75rem 1.25rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px;cursor:pointer;transition:all .2s ease;min-width:90px}.projects-page .type-icon-btn:hover{border-color:var(--primary-color, #d4af37);transform:translateY(-2px)}.projects-page .type-icon-btn.active{border-color:var(--primary-color, #d4af37);background:linear-gradient(135deg,var(--card-bg, #ffffff) 0%,rgba(212,175,55,.08) 100%);box-shadow:0 2px 8px #d4af3726}.projects-page .type-icon{font-size:1.75rem}.projects-page .type-label{font-size:.75rem;font-weight:500;color:var(--text-secondary, #6b7280)}.projects-page .type-icon-btn.active .type-label{color:var(--primary-color, #d4af37);font-weight:600}.projects-page .status-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.projects-page .status-btn{padding:.5rem 1rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:9999px;font-size:.8rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.projects-page .status-btn:hover{border-color:var(--primary-color, #d4af37)}.projects-page .status-btn.active{background:var(--card-bg, #ffffff);border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37);font-weight:600}.projects-page .status-btn.announced.active{border-color:#6366f1;color:#6366f1}.projects-page .status-btn.pre-prod.active{border-color:#d97706;color:#d97706}.projects-page .status-btn.in-prod.active{border-color:#16a34a;color:#16a34a}.projects-page .status-btn.post-prod.active{border-color:#8b5cf6;color:#8b5cf6}.projects-page .status-btn.completed.active,.projects-page .status-btn.released.active{border-color:#16a34a;color:#16a34a}.projects-page .filter-count{text-align:center;font-size:.875rem;color:var(--text-secondary, #6b7280)}.projects-page .investment-filters,.projects-page .sort-row{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;align-items:center}.projects-page .filter-group-label{font-size:.8rem;font-weight:600;color:var(--text-secondary, #6b7280);margin-right:.25rem}.projects-page .sort-btn{padding:.4rem .85rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:9999px;font-size:.75rem;color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease}.projects-page .sort-btn:hover{border-color:var(--primary-color, #d4af37)}.projects-page .sort-btn.active{background:var(--card-bg, #ffffff);border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37);font-weight:600}.projects-page .status-btn.inv-open.active{border-color:#16a34a;color:#16a34a}.projects-page .status-btn.inv-coming.active{border-color:#d97706;color:#d97706}.projects-page .status-btn.inv-closed.active{border-color:#dc2626;color:#dc2626}.projects-page .status-btn.inv-none.active{border-color:#6b7280;color:#6b7280}.projects-page .project-inv-badge{font-size:.7rem;font-weight:600;padding:.2rem .6rem;border-radius:9999px;white-space:nowrap}.projects-page .project-inv-badge.inv-open{background:#22c55e1f;color:#16a34a}.projects-page .project-inv-badge.inv-coming-soon{background:#f59e0b1f;color:#d97706}.projects-page .project-inv-badge.inv-closed{background:#ef44441a;color:#dc2626}.projects-page .project-funding{padding-top:.5rem;border-top:1px solid var(--border-color, #e5e7eb)}.projects-page .project-funding-bar{height:6px;background:var(--bg-secondary, #e5e7eb);border-radius:3px;overflow:hidden;margin-bottom:.35rem}.projects-page .project-funding-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:3px;transition:width .5s ease;min-width:2px}.projects-page .project-funding-label{display:flex;justify-content:space-between;align-items:center;font-size:.72rem;font-weight:600;color:#059669}.projects-page .project-funding-amount{font-weight:400;color:var(--text-secondary, #6b7280);font-size:.65rem}.projects-page .project-list-info{display:flex;flex-direction:column;gap:.3rem;min-width:0}.projects-page .project-list-funding{display:flex;align-items:center;gap:.5rem}.projects-page .project-funding-bar-sm{height:4px;background:var(--bg-secondary, #e5e7eb);border-radius:2px;overflow:hidden;flex:1;min-width:60px;max-width:120px}.projects-page .project-funding-pct{font-size:.65rem;font-weight:600;color:#059669;white-space:nowrap}.projects-page .all-projects-section{margin-bottom:3rem}.projects-page .projects-list{display:flex;flex-direction:column;gap:.5rem}.projects-page .project-list-item{display:grid;grid-template-columns:40px auto 1fr auto auto auto;gap:1rem;align-items:center;padding:1rem 1.5rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;transition:all .2s ease;text-decoration:none;color:inherit}.projects-page .project-list-thumb{width:48px;height:32px;object-fit:cover;border-radius:4px;flex-shrink:0}.projects-page .project-list-item:hover{border-color:var(--primary-color, #d4af37);background:#d4af3705}.projects-page .project-number{font-size:.875rem;font-weight:600;color:var(--text-secondary, #9ca3af)}.projects-page .project-title{font-weight:600;color:var(--text-primary, #1f2937)}.projects-page .project-type-badge,.projects-page .project-status-badge{font-size:.75rem;font-weight:500;padding:.25rem .75rem;border-radius:9999px}.projects-page .project-type-badge{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.projects-page .project-status-badge.status-announced{background:#6366f11a;color:#6366f1}.projects-page .project-status-badge.status-pre-production{background:#f59e0b1a;color:#d97706}.projects-page .project-status-badge.status-in-production{background:#22c55e1a;color:#16a34a}.projects-page .project-status-badge.status-post-production{background:#8b5cf61a;color:#8b5cf6}.projects-page .project-status-badge.status-completed,.projects-page .project-status-badge.status-released{background:#22c55e1a;color:#16a34a}.projects-page .no-results{text-align:center;padding:3rem;background:var(--bg-secondary, #f9fafb);border-radius:12px}.projects-page .no-results p{color:var(--text-secondary, #6b7280);margin-bottom:1rem}.projects-page .no-results button{padding:.75rem 1.5rem;background:var(--primary-color, #d4af37);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:500}.projects-page .cta-section{margin-top:4rem}.projects-page .cta-card{background:linear-gradient(135deg,var(--primary-color, #d4af37) 0%,#b8942d 100%);border-radius:16px;padding:3rem;text-align:center;color:#fff}.projects-page .cta-card h2{font-size:1.75rem;font-weight:700;margin-bottom:1rem}.projects-page .cta-card p{font-size:1.125rem;opacity:.9;max-width:600px;margin:0 auto 2rem;line-height:1.6}.projects-page .cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.projects-page .btn{padding:.875rem 2rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease}.projects-page .btn-primary{background:#fff;color:var(--primary-color, #d4af37)}.projects-page .btn-primary:hover{background:#f9fafb;transform:translateY(-2px)}.projects-page .btn-secondary{background:transparent;color:#fff;border:2px solid white}.projects-page .btn-secondary:hover{background:#ffffff1a}[data-theme=dark] .projects-page{--card-bg: #1f2937;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827}[data-theme=dark] .projects-page .project-card{box-shadow:0 1px 3px #0003,0 1px 2px #00000026}[data-theme=dark] .projects-page .project-card:hover{box-shadow:0 12px 28px #00000059,0 4px 10px #0003}[data-theme=dark] .projects-page .pcard-photo{background:#111827}[data-theme=dark] .projects-page .pcard-photo-placeholder{background:linear-gradient(135deg,#111827,#d4af370d)}[data-theme=dark] .projects-page .type-icon-btn{background:#1f2937;border-color:#374151}[data-theme=dark] .projects-page .status-btn,[data-theme=dark] .projects-page .sort-btn{background:#1f2937;border-color:#374151;color:#9ca3af}[data-theme=dark] .projects-page .project-funding-bar,[data-theme=dark] .projects-page .project-funding-bar-sm{background:#374151}[data-theme=dark] .projects-page .project-funding-amount,[data-theme=dark] .projects-page .project-funding-pct{color:#10b981}@media(max-width:768px){.projects-page .page-header h1{font-size:2rem}.projects-page .stats-section{grid-template-columns:repeat(2,1fr)}.projects-page .type-icon-filters{gap:.5rem}.projects-page .type-icon-btn{min-width:70px;padding:.5rem .75rem}.projects-page .type-icon{font-size:1.25rem}.projects-page .type-label{font-size:.65rem}.projects-page .status-filters{gap:.4rem}.projects-page .status-btn{padding:.4rem .75rem;font-size:.7rem}.projects-page .project-list-item{grid-template-columns:40px 1fr;grid-template-rows:auto auto}.projects-page .project-type-badge,.projects-page .project-status-badge{grid-column:2}}@media(max-width:480px){.projects-page .stats-section{grid-template-columns:1fr}}.project-detail-page{padding:2rem 0;min-height:calc(100vh - 64px)}.project-detail-page .container{max-width:900px;margin:0 auto;padding:0 1.5rem}.project-detail-page .breadcrumb{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;font-size:.875rem;color:var(--text-secondary, #6b7280)}.project-detail-page .breadcrumb a{color:var(--primary-color, #d4af37);text-decoration:none;font-weight:500}.project-detail-page .breadcrumb a:hover{text-decoration:underline}.project-detail-page .project-hero{margin-bottom:2.5rem}.project-detail-page .hero-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.project-detail-page .project-type-badge{font-size:.75rem;font-weight:500;padding:.35rem .85rem;background:var(--bg-secondary, #f3f4f6);border-radius:9999px;color:var(--text-secondary, #6b7280)}.project-detail-page .project-status-badge{font-size:.75rem;font-weight:600;padding:.35rem .85rem;border-radius:9999px}.project-detail-page .project-status-badge.status-announced{background:#6366f11a;color:#6366f1}.project-detail-page .project-status-badge.status-pre-production{background:#f59e0b1a;color:#d97706}.project-detail-page .project-status-badge.status-in-production{background:#22c55e1a;color:#16a34a}.project-detail-page .project-status-badge.status-post-production{background:#8b5cf61a;color:#8b5cf6}.project-detail-page .project-status-badge.status-completed,.project-detail-page .project-status-badge.status-released{background:#22c55e1a;color:#16a34a}.project-detail-page .featured-badge{font-size:.75rem;font-weight:600;padding:.35rem .85rem;border-radius:9999px;background:#d4af371f;color:var(--primary-color, #d4af37)}.project-detail-page .project-hero h1{font-size:2.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary, #1f2937)}.project-detail-page .hero-description{font-size:1.125rem;color:var(--text-secondary, #6b7280);line-height:1.7;max-width:700px}.project-detail-page .project-info-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2.5rem}.project-detail-page .info-card{display:flex;align-items:flex-start;gap:.75rem;padding:1.25rem;background:var(--card-bg, #ffffff);border:1px solid var(--border-color, #e5e7eb);border-radius:12px}.project-detail-page .info-icon{font-size:1.5rem;flex-shrink:0}.project-detail-page .info-card div{display:flex;flex-direction:column;gap:.25rem}.project-detail-page .info-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary, #9ca3af)}.project-detail-page .info-value{font-size:1rem;font-weight:600;color:var(--text-primary, #1f2937)}.project-detail-page .genres-section{margin-bottom:2.5rem}.project-detail-page .genres-section h3{font-size:1.125rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary, #1f2937)}.project-detail-page .genre-tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-detail-page .genre-tag{padding:.35rem .75rem;background:var(--bg-secondary, #f3f4f6);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;font-size:.8rem;color:var(--text-secondary, #6b7280)}.project-detail-page .coming-soon-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin-bottom:2.5rem}.project-detail-page .placeholder-card{padding:1.5rem;background:var(--bg-secondary, #f9fafb);border:1px dashed var(--border-color, #e5e7eb);border-radius:12px;text-align:center}.project-detail-page .placeholder-card h3{font-size:1.125rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #1f2937)}.project-detail-page .placeholder-card p{font-size:.875rem;color:var(--text-secondary, #9ca3af)}.project-detail-page .project-content-section{margin-bottom:2.5rem}.project-detail-page .back-link{margin-top:2rem;margin-bottom:2rem}.project-detail-page .btn{display:inline-block;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;text-decoration:none;transition:all .2s ease}.project-detail-page .btn-secondary{background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #1f2937);border:1px solid var(--border-color, #e5e7eb)}.project-detail-page .btn-secondary:hover{border-color:var(--primary-color, #d4af37);color:var(--primary-color, #d4af37)}.project-detail-page .loading-text{text-align:center;padding:4rem 0;color:var(--text-secondary, #6b7280)}.project-detail-page .error-state{text-align:center;padding:4rem 0}.project-detail-page .error-state p{color:var(--text-secondary, #6b7280);margin-bottom:1.5rem;font-size:1.125rem}[data-theme=dark] .project-detail-page{--card-bg: #1f2937;--border-color: #374151;--text-primary: #f9fafb;--text-secondary: #9ca3af;--bg-secondary: #111827}.project-invest-section{margin:2.5rem 0;padding-top:2rem;border-top:2px solid var(--accent-color, #d4a843)}.project-invest-section h2{font-size:1.4rem;margin-bottom:1.25rem}.project-invest-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.project-invest-card{background:var(--surface-color, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:14px;padding:1.5rem;display:flex;flex-direction:column;gap:.75rem;transition:box-shadow .2s,transform .2s}.project-invest-card:hover{box-shadow:0 6px 24px #00000014;transform:translateY(-2px)}.invest-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.invest-card-header h3{font-size:1.15rem;margin:0;line-height:1.3}.invest-status{font-size:.75rem;font-weight:600;padding:.25rem .65rem;border-radius:20px;white-space:nowrap;text-transform:uppercase}.invest-status.status-open{background:#e8f5e9;color:#2e7d32}.invest-status.status-coming-soon{background:#fff8e1;color:#f9a825}.invest-desc{font-size:.9rem;color:var(--text-secondary, #666);line-height:1.5;margin:0}.invest-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.invest-metric{display:flex;flex-direction:column;padding:.5rem .65rem;background:var(--surface-alt, #f8f9fa);border-radius:8px}.invest-metric .metric-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary, #888);font-weight:500}.invest-metric .metric-value{font-size:1rem;font-weight:700;color:var(--text-primary, #1a1a1a)}.invest-progress{display:flex;flex-direction:column;gap:.25rem}.invest-progress-bar{height:8px;background:var(--border-color, #e5e7eb);border-radius:4px;overflow:hidden}.invest-progress-fill{height:100%;background:linear-gradient(90deg,var(--accent-color, #d4a843),#e6c068);border-radius:4px;transition:width .5s ease}.invest-progress-label{font-size:.8rem;font-weight:600;color:var(--accent-color, #d4a843)}.invest-card-actions{display:flex;gap:.75rem;margin-top:.25rem}.invest-dept-link{font-size:.82rem;color:var(--text-secondary, #888);border-top:1px solid var(--border-color, #e5e7eb);padding-top:.5rem}.project-invest-placeholder{text-align:center;padding:2rem;background:var(--surface-alt, #f8f9fa);border-radius:12px;border:1px dashed var(--border-color, #e5e7eb)}.project-invest-placeholder p{color:var(--text-secondary, #666);margin-bottom:1rem}[data-theme=dark] .project-invest-card{background:var(--surface-color, #1e1e1e);border-color:var(--border-color, #333)}[data-theme=dark] .project-invest-card:hover{box-shadow:0 6px 24px #ffffff0f}[data-theme=dark] .invest-metric{background:var(--surface-alt, #252525)}[data-theme=dark] .project-invest-placeholder{background:var(--surface-alt, #252525);border-color:var(--border-color, #333)}@media(max-width:768px){.project-detail-page .project-hero h1{font-size:1.75rem}.project-detail-page .project-info-grid{grid-template-columns:1fr 1fr}.project-detail-page .coming-soon-section,.project-invest-grid{grid-template-columns:1fr}.invest-metrics{grid-template-columns:1fr 1fr}}@media(max-width:480px){.project-detail-page .project-info-grid,.invest-metrics{grid-template-columns:1fr}}.contact-page{padding:var(--space-8) var(--space-4) var(--space-16)}.contact-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:var(--space-12);max-width:1000px;margin:0 auto}.contact-info{padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.contact-info h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-8)}.info-item{display:flex;gap:var(--space-3);margin-bottom:var(--space-4);align-items:flex-start}.info-icon{font-size:var(--font-size-xl);flex-shrink:0;margin-top:2px}.info-item h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.info-item p{color:var(--color-text-secondary);font-size:var(--font-size-sm);line-height:1.5;margin-bottom:0}.hours-label{display:inline-block;min-width:4.5rem;font-weight:var(--font-weight-medium);color:var(--color-text)}.social-links{margin-top:var(--space-8);padding-top:var(--space-8);border-top:1px solid var(--color-border)}.social-links h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4)}.social-icons{display:flex;gap:var(--space-4)}.social-icons a{font-size:var(--font-size-2xl);transition:transform var(--transition-normal)}.social-icons a:hover{transform:scale(1.2)}.contact-form{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.form-mode-toggle{display:flex;gap:var(--space-2);padding:var(--space-1);background:var(--color-surface-alt, #f5f5f5);border-radius:var(--radius-md);margin-bottom:var(--space-2)}.mode-btn{flex:1;padding:var(--space-3) var(--space-4);border:2px solid transparent;border-radius:var(--radius-sm);background:transparent;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-normal);color:var(--color-text-secondary)}.mode-btn:hover{background:var(--color-surface);color:var(--color-text)}.mode-btn.active{background:var(--color-surface);color:var(--color-primary, rgb(59, 130, 246));border-color:var(--color-primary, rgb(59, 130, 246));box-shadow:0 1px 3px #00000014}.contact-form select{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);background:var(--color-surface);color:var(--color-text);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23666' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-4) center}.contact-form select:focus{outline:none;border-color:var(--color-primary, rgb(59, 130, 246));box-shadow:0 0 0 3px #3b82f626}.form-recipient-info{background:var(--color-info-light, rgba(59, 130, 246, .08));border:1px solid var(--color-info, rgba(59, 130, 246, .25));border-radius:var(--radius-md);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-2)}.recipient-badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-info, rgb(59, 130, 246));margin-bottom:var(--space-2)}.recipient-detail{display:flex;flex-direction:column;gap:var(--space-1)}.recipient-detail strong{font-size:var(--font-size-base)}.recipient-email{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.recipient-email a{color:var(--color-info, rgb(59, 130, 246));text-decoration:none}.recipient-email a:hover{text-decoration:underline}.success-message{text-align:center;padding:var(--space-16) var(--space-8);max-width:500px;margin:0 auto}.success-icon{width:80px;height:80px;margin:0 auto var(--space-6);background:var(--color-success-light);color:var(--color-success);border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}.success-message h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}.success-message p{color:var(--color-text-secondary);margin-bottom:var(--space-8)}.form-message{padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.form-message.error{background-color:var(--color-error-light);color:var(--color-error);border-left:4px solid var(--color-error)}.form-message.info{background-color:var(--color-info-light, rgba(59, 130, 246, .1));color:var(--color-info, rgb(59, 130, 246));border-left:4px solid var(--color-info, rgb(59, 130, 246))}.field-locked input{background:var(--color-surface-alt, #f5f5f5);color:var(--color-text-secondary);cursor:not-allowed;border-style:dashed;opacity:.85}.field-locked label:after{content:" 🔒";font-size:var(--font-size-xs)}@media(max-width:768px){.contact-grid{grid-template-columns:1fr;gap:var(--space-8)}}.profile-page{padding:var(--space-8) var(--space-4) var(--space-16)}.profile-layout{max-width:900px;margin:0 auto}.profile-header{display:flex;align-items:center;gap:var(--space-8);padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-8)}.profile-avatar{width:100px;height:100px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:#fff;flex-shrink:0;overflow:hidden}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-info{flex:1}.profile-info h1{font-size:var(--font-size-2xl);margin-bottom:var(--space-1)}.profile-info p{color:var(--color-text-secondary);margin-bottom:var(--space-2)}.member-since{font-size:var(--font-size-sm);color:var(--color-text-muted)}.verified-badge{display:inline-block;background:var(--color-success-light, #dcfce7);color:var(--color-success, #16a34a);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);margin-left:var(--space-2)}.user-roles{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-2) 0}.role-badge{display:inline-block;background:var(--color-primary-light, #e0e7ff);color:var(--color-primary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:capitalize}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-8)}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center}.stat-value{display:block;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--space-1)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted)}.profile-sections{display:flex;flex-direction:column;gap:var(--space-8)}.profile-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.profile-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.admin-section,.instructor-section{background:linear-gradient(135deg,var(--color-primary-light, #e0e7ff) 0%,var(--color-surface) 100%)}.admin-actions,.instructor-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}@media(max-width:768px){.profile-header{flex-direction:column;text-align:center}.profile-stats{grid-template-columns:repeat(2,1fr)}.profile-info h1{font-size:var(--font-size-xl)}.user-roles{justify-content:center}}@media(max-width:480px){.profile-stats{grid-template-columns:1fr}}.public-profile-page{padding:var(--space-8) var(--space-4) var(--space-16)}.public-profile-layout{max-width:900px;margin:0 auto}.public-profile-header{display:flex;align-items:flex-start;gap:var(--space-6);padding:var(--space-8);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.public-profile-avatar{width:110px;height:110px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:#fff;flex-shrink:0;overflow:hidden}.public-profile-avatar img{width:100%;height:100%;object-fit:cover}.public-profile-details{flex:1;min-width:0}.public-profile-details h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-1)}.public-profile-username{font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:var(--space-3)}.public-profile-bio{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:1.6;margin-bottom:var(--space-4)}.public-profile-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.public-profile-meta span{display:flex;align-items:center;gap:var(--space-1)}.public-profile-meta a{color:var(--color-primary);text-decoration:none}.public-profile-meta a:hover{text-decoration:underline}.public-profile-actions{display:flex;flex-direction:column;gap:var(--space-2);flex-shrink:0}.btn-profile-action{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all .15s ease;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);text-decoration:none;white-space:nowrap;min-width:120px}.btn-profile-action:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light, #e0e7ff)}.btn-follow{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-follow:hover{opacity:.9;color:#fff;background:var(--color-primary)}.btn-unfollow{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-unfollow:hover{background:var(--color-danger-light, #fee2e2);border-color:var(--color-danger, #dc2626);color:var(--color-danger, #dc2626)}.btn-message:hover{border-color:var(--color-secondary, #6366f1);color:var(--color-secondary, #6366f1)}.btn-share.copied{background:var(--color-success-light, #dcfce7);border-color:var(--color-success, #16a34a);color:var(--color-success, #16a34a)}.btn-edit{background:var(--color-primary-light, #e0e7ff);color:var(--color-primary);border-color:var(--color-primary)}.public-profile-social-row{display:flex;gap:var(--space-6);padding:var(--space-4) var(--space-6);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4);overflow-x:auto}.social-stat{display:flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap}.social-stat strong{color:var(--color-text);font-weight:var(--font-weight-bold)}.profile-tabs{display:flex;gap:0;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-4)}.profile-tab{padding:var(--space-3) var(--space-6);background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-muted);cursor:pointer;transition:all .15s ease}.profile-tab:hover{color:var(--color-text)}.profile-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.activity-feed-section{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.activity-feed-section h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.activity-timeline{position:relative;padding-left:var(--space-8)}.activity-timeline:before{content:"";position:absolute;left:14px;top:0;bottom:0;width:2px;background:var(--color-border)}.activity-item{position:relative;padding-bottom:var(--space-6)}.activity-item:last-child{padding-bottom:0}.activity-dot{position:absolute;left:calc(-1 * var(--space-8) + 8px);top:4px;width:14px;height:14px;border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-surface);z-index:1}.activity-dot.enrollment_created{background:var(--color-success, #16a34a);border-color:var(--color-success, #16a34a)}.activity-dot.department_joined{background:var(--color-primary);border-color:var(--color-primary)}.activity-dot.department_left{background:var(--color-text-muted);border-color:var(--color-text-muted)}.activity-dot.certification_earned{background:#f59e0b;border-color:#f59e0b}.activity-dot.competition_submitted{background:#8b5cf6;border-color:#8b5cf6}.activity-summary{font-size:var(--font-size-base);color:var(--color-text);margin-bottom:var(--space-1)}.activity-meta{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm);color:var(--color-text-muted)}.activity-type-badge{display:inline-block;padding:1px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-primary-light, #e0e7ff);color:var(--color-primary)}.activity-type-badge.enrollment_created{background:var(--color-success-light, #dcfce7);color:var(--color-success, #16a34a)}.activity-type-badge.department_joined{background:var(--color-primary-light, #e0e7ff);color:var(--color-primary)}.activity-type-badge.department_left{background:#f3f4f6;color:#6b7280}.activity-type-badge.certification_earned{background:#fef3c7;color:#d97706}.load-more-btn{display:block;width:100%;padding:var(--space-3);margin-top:var(--space-6);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-primary);font-size:var(--font-size-sm);cursor:pointer;transition:all .15s ease}.load-more-btn:hover{background:var(--color-primary-light, #e0e7ff);border-color:var(--color-primary)}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.empty-activity{text-align:center;padding:var(--space-12) var(--space-6);color:var(--color-text-muted)}.empty-activity-icon{font-size:3rem;margin-bottom:var(--space-4)}.empty-activity h3{font-size:var(--font-size-lg);color:var(--color-text);margin-bottom:var(--space-2)}.empty-activity p{font-size:var(--font-size-base);margin-bottom:var(--space-6);max-width:400px;margin-left:auto;margin-right:auto}.empty-activity-actions{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.profile-not-found{text-align:center;padding:var(--space-16)}.profile-not-found h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-4)}.profile-not-found p{color:var(--color-text-secondary);margin-bottom:var(--space-6)}.about-section{display:flex;flex-direction:column;gap:var(--space-4)}.about-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6)}.about-card h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border)}.about-bio{font-size:var(--font-size-base);line-height:1.7;color:var(--color-text-secondary)}.about-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-4)}.about-stat-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-bg, #f9fafb)}.about-stat-icon{font-size:1.5rem;flex-shrink:0}.about-stat-item div{display:flex;flex-direction:column}.about-stat-item strong{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.about-stat-item span{font-size:var(--font-size-sm);color:var(--color-text-muted)}.contact-options{display:flex;gap:var(--space-3);flex-wrap:wrap}.btn-website{text-decoration:none}@media(max-width:768px){.public-profile-header{flex-direction:column;align-items:center;text-align:center}.public-profile-meta{justify-content:center}.public-profile-actions{flex-direction:row;flex-wrap:wrap;justify-content:center}.btn-profile-action{min-width:auto}.public-profile-social-row{gap:var(--space-4);justify-content:center}.about-stats-grid{grid-template-columns:1fr}}@media(max-width:480px){.public-profile-avatar{width:80px;height:80px;font-size:var(--font-size-2xl)}.public-profile-social-row{gap:var(--space-3);padding:var(--space-3) var(--space-4)}.social-stat{font-size:var(--font-size-xs)}}.messages-page{min-height:calc(100vh - 64px);background:var(--color-bg)}.messages-auth-prompt{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:400px;text-align:center;color:var(--color-text-muted)}.messages-layout{display:grid;grid-template-columns:340px 1fr;height:calc(100vh - 64px);max-width:1200px;margin:0 auto;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.messages-sidebar{border-right:1px solid var(--color-border);display:flex;flex-direction:column;overflow:hidden}.messages-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.messages-sidebar-header h2{margin:0;font-size:1.25rem;color:var(--color-text)}.btn-compose{background:none;border:1px solid var(--color-border);border-radius:8px;padding:6px 12px;cursor:pointer;font-size:1rem;transition:background .15s}.btn-compose:hover{background:var(--color-bg-hover)}.messages-loading{padding:40px 20px;text-align:center;color:var(--color-text-muted)}.messages-empty{padding:40px 20px;text-align:center;color:var(--color-text-muted);display:flex;flex-direction:column;align-items:center;gap:12px}.conversation-list{overflow-y:auto;flex:1}.conversation-item{display:flex;align-items:center;gap:12px;width:100%;padding:14px 20px;border:none;border-bottom:1px solid var(--color-border);background:transparent;cursor:pointer;text-align:left;transition:background .15s;color:var(--color-text)}.conversation-item:hover{background:var(--color-bg-hover)}.conversation-item.active{background:var(--color-primary-bg);border-left:3px solid var(--color-primary)}.conversation-item.unread .conv-name{font-weight:700}.conversation-item.unread .conv-preview{color:var(--color-text);font-weight:500}.conv-avatar{width:44px;height:44px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.conv-avatar img{width:100%;height:100%;object-fit:cover}.conv-avatar span{color:#fff;font-weight:600;font-size:1rem}.conv-details{flex:1;min-width:0}.conv-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.conv-name{font-weight:500;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.conv-time{font-size:.75rem;color:var(--color-text-muted);flex-shrink:0}.conv-preview{font-size:.82rem;color:var(--color-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.conv-badge{background:var(--color-primary);color:#fff;font-size:.7rem;font-weight:700;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0}.messages-thread{display:flex;flex-direction:column;overflow:hidden}.thread-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:100%;color:var(--color-text-muted);text-align:center}.thread-empty-icon{font-size:3rem}.thread-header{display:flex;align-items:center;gap:12px;padding:14px 20px;border-bottom:1px solid var(--color-border);background:var(--color-bg)}.thread-header-info{display:flex;flex-direction:column}.thread-header-info strong{color:var(--color-text)}.thread-header-username{font-size:.8rem;color:var(--color-primary);cursor:pointer}.thread-header-username:hover{text-decoration:underline}.btn-back-mobile{display:none;background:none;border:none;cursor:pointer;color:var(--color-primary);font-size:.9rem;padding:4px 8px}.thread-messages{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:8px}.thread-message{display:flex;max-width:75%}.thread-message.sent{align-self:flex-end}.thread-message.received{align-self:flex-start}.message-bubble{padding:10px 16px;border-radius:16px;line-height:1.5}.thread-message.sent .message-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.thread-message.received .message-bubble{background:var(--color-bg-hover);color:var(--color-text);border-bottom-left-radius:4px}.message-bubble p{margin:0;font-size:.9rem;white-space:pre-wrap;word-break:break-word}.message-time{display:block;font-size:.7rem;margin-top:4px;opacity:.7}.thread-message.sent .message-time{text-align:right}.thread-reply{display:flex;gap:8px;padding:12px 20px;border-top:1px solid var(--color-border);background:var(--color-bg)}.thread-reply textarea{flex:1;resize:none;border:1px solid var(--color-border);border-radius:12px;padding:10px 14px;font-family:inherit;font-size:.9rem;background:var(--color-bg);color:var(--color-text);outline:none;transition:border-color .15s}.thread-reply textarea:focus{border-color:var(--color-primary)}.btn-send{align-self:flex-end;border-radius:12px;padding:8px 20px}.compose-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.compose-modal{background:var(--color-bg);border-radius:16px;width:100%;max-width:520px;box-shadow:0 20px 60px #0003;overflow:hidden}.compose-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border)}.compose-header h3{margin:0}.compose-close{background:none;border:none;font-size:1.2rem;cursor:pointer;color:var(--color-text-muted);padding:4px 8px}.compose-field{padding:12px 20px;border-bottom:1px solid var(--color-border)}.compose-field label{display:block;font-size:.8rem;font-weight:600;color:var(--color-text-muted);margin-bottom:6px}.compose-field input,.compose-field textarea{width:100%;border:1px solid var(--color-border);border-radius:8px;padding:8px 12px;font-family:inherit;font-size:.9rem;background:var(--color-bg);color:var(--color-text);outline:none}.compose-field textarea{resize:vertical;min-height:100px}.compose-field input:focus,.compose-field textarea:focus{border-color:var(--color-primary)}.compose-recipient-chip{display:inline-flex;align-items:center;gap:8px;background:var(--color-primary-bg);border:1px solid var(--color-primary);border-radius:20px;padding:4px 12px;font-size:.85rem;color:var(--color-primary)}.compose-recipient-chip button{background:none;border:none;cursor:pointer;color:var(--color-primary);font-size:.9rem;padding:0}.compose-search{position:relative}.compose-search-results{position:absolute;top:100%;left:0;right:0;background:var(--color-bg);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 8px 24px #0000001f;max-height:200px;overflow-y:auto;z-index:10}.search-loading{padding:12px;text-align:center;color:var(--color-text-muted);font-size:.85rem}.search-result-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;background:transparent;cursor:pointer;text-align:left;color:var(--color-text);transition:background .15s}.search-result-item:hover{background:var(--color-bg-hover)}.search-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.search-avatar img{width:100%;height:100%;object-fit:cover}.search-avatar span{color:#fff;font-weight:600;font-size:.8rem}.search-username{font-size:.8rem;color:var(--color-text-muted);margin-left:6px}.compose-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px}@media(max-width:768px){.messages-layout{grid-template-columns:1fr}.messages-sidebar{display:flex}.messages-thread,.messages-layout.show-thread .messages-sidebar{display:none}.messages-layout.show-thread .messages-thread{display:flex}.btn-back-mobile{display:block}.thread-message{max-width:85%}}.settings-page{padding:var(--space-8) var(--space-4) var(--space-16)}.settings-layout{display:grid;grid-template-columns:220px 1fr;gap:var(--space-8);max-width:1000px;margin:0 auto}.settings-nav{display:flex;flex-direction:column;gap:var(--space-1)}.settings-nav .nav-item{padding:var(--space-3) var(--space-4);background:none;border:none;border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:all var(--transition-normal)}.settings-nav .nav-item:hover{background:var(--color-surface);color:var(--color-text)}.settings-nav .nav-item.active{background:var(--color-surface);color:var(--color-primary)}.settings-content{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8)}.settings-section h2{font-size:var(--font-size-xl);margin-bottom:var(--space-6);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.settings-form{display:flex;flex-direction:column;gap:var(--space-6)}.avatar-upload{display:flex;align-items:center;gap:var(--space-6)}.current-avatar{width:80px;height:80px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:#fff;overflow:hidden}.current-avatar img{width:100%;height:100%;object-fit:cover}@media(max-width:768px){.settings-layout{grid-template-columns:1fr}.settings-nav{flex-direction:row;flex-wrap:wrap;gap:var(--space-2)}.settings-content{padding:var(--space-6)}}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16);gap:var(--space-4)}.loading-state .spinner{width:48px;height:48px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-state p{color:var(--color-text-secondary)}.account-info,.profile-details{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.info-row{display:flex;align-items:center;gap:var(--space-3)}.info-label{font-weight:var(--font-weight-medium);color:var(--color-text-secondary);min-width:100px}.info-value{color:var(--color-text)}.info-id{font-family:monospace;font-size:var(--font-size-sm);color:var(--color-text-muted);word-break:break-all}.verified-badge{display:inline-block;background:var(--color-success-light, #dcfce7);color:var(--color-success, #16a34a);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.account-actions,.profile-actions{padding:var(--space-6);background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.account-actions p,.profile-actions p{color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:1.6}.session-section{padding:var(--space-6);background:var(--color-bg);border-radius:var(--radius-md);margin-bottom:var(--space-6)}.session-section h3{font-size:var(--font-size-lg);margin-bottom:var(--space-2)}.session-section p{color:var(--color-text-secondary);margin-bottom:var(--space-4)}.profile-preview{margin-bottom:var(--space-6)}.avatar-section{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-6);background:var(--color-bg);border-radius:var(--radius-md)}.avatar-info h3{font-size:var(--font-size-lg);margin-bottom:var(--space-1)}.avatar-info p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.dept-selector{position:relative}.dept-selector-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.45rem .6rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:.4rem;color:var(--color-text);font-size:.85rem;font-family:inherit;cursor:pointer;transition:border-color var(--transition-fast);text-align:left;gap:.5rem;min-height:36px}.dept-selector-trigger:hover{border-color:var(--color-border-light)}.dept-selector-trigger:focus{border-color:var(--color-primary);outline:none;box-shadow:var(--focus-ring)}.dept-selector-trigger.open{border-color:var(--color-primary);border-bottom-left-radius:0;border-bottom-right-radius:0}.dept-trigger-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dept-trigger-placeholder{color:var(--color-text-muted)}.dept-trigger-chevron{flex-shrink:0;width:16px;height:16px;color:var(--color-text-muted);transition:transform var(--transition-fast)}.dept-selector-trigger.open .dept-trigger-chevron{transform:rotate(180deg)}.dept-trigger-tags{display:flex;flex-wrap:wrap;gap:.3rem;flex:1;min-width:0}.dept-trigger-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.15rem .45rem;background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-full);font-size:.72rem;font-weight:600;white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}.dept-trigger-tag-remove{cursor:pointer;font-size:.8rem;line-height:1;opacity:.7;flex-shrink:0}.dept-trigger-tag-remove:hover{opacity:1}.dept-trigger-more{font-size:.72rem;color:var(--color-text-muted);white-space:nowrap}.dept-selector-dropdown{position:absolute;top:100%;left:0;right:0;z-index:var(--z-dropdown);background:var(--color-surface);border:1px solid var(--color-primary);border-top:none;border-bottom-left-radius:.4rem;border-bottom-right-radius:.4rem;box-shadow:var(--shadow-dropdown);max-height:320px;display:flex;flex-direction:column}.dept-selector-search{padding:.5rem;border-bottom:1px solid var(--color-border);flex-shrink:0}.dept-selector-search input{width:100%;padding:.4rem .6rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:.35rem;color:var(--color-text);font-size:.82rem;font-family:inherit}.dept-selector-search input:focus{border-color:var(--color-primary);outline:none}.dept-selector-search input::placeholder{color:var(--color-text-muted)}.dept-selector-groups{overflow-y:auto;flex:1}.dept-group{border-bottom:1px solid var(--color-border)}.dept-group:last-child{border-bottom:none}.dept-group-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary);background:var(--color-surface-elevated);transition:background var(--transition-fast)}.dept-group-header:hover{background:var(--color-surface-hover)}.dept-group-chevron{width:14px;height:14px;flex-shrink:0;color:var(--color-text-muted);transition:transform var(--transition-fast)}.dept-group.expanded .dept-group-chevron{transform:rotate(90deg)}.dept-group-icon{font-size:.9rem;flex-shrink:0}.dept-group-name{flex:1}.dept-group-count{font-size:.68rem;color:var(--color-text-muted);font-weight:400}.dept-group-items{padding:.2rem 0}.dept-item{display:flex;align-items:center;gap:.5rem;padding:.4rem .65rem .4rem 1.5rem;cursor:pointer;transition:background var(--transition-fast);font-size:.82rem;color:var(--color-text)}.dept-item:hover{background:var(--color-bg-hover)}.dept-item.selected{background:var(--color-primary-light)}.dept-item-check{width:16px;height:16px;flex-shrink:0;border:1.5px solid var(--color-border-light);border-radius:3px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);background:var(--color-bg)}.dept-item.selected .dept-item-check{background:var(--color-primary);border-color:var(--color-primary)}.dept-item-check.radio{border-radius:var(--radius-full)}.dept-item-check-inner{width:8px;height:8px;border-radius:1px;background:#fff;opacity:0;transition:opacity var(--transition-fast)}.dept-item.selected .dept-item-check-inner{opacity:1}.dept-item-check.radio .dept-item-check-inner{border-radius:var(--radius-full)}.dept-item-icon{font-size:.9rem;flex-shrink:0}.dept-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dept-selector-empty{padding:1rem;text-align:center;color:var(--color-text-muted);font-size:.82rem}.dept-selector-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-dropdown) - 1)}.account-page{min-height:calc(100vh - var(--navbar-height, 80px));background:var(--color-bg)}.account-layout{display:flex;min-height:calc(100vh - var(--navbar-height, 80px))}.account-login-prompt{display:flex;align-items:center;justify-content:center;padding:2rem}.login-prompt-card{text-align:center;padding:3rem;background:var(--color-surface);border-radius:var(--radius-xl);max-width:400px;border:1px solid var(--color-border)}.login-prompt-card svg{color:var(--color-text-secondary);margin-bottom:1.5rem}.login-prompt-card h1{margin:0 0 .5rem;color:var(--color-text);font-size:1.75rem}.login-prompt-card p{margin:0 0 1.5rem;color:var(--color-text-secondary)}.account-sidebar{width:280px;min-width:280px;background:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;height:calc(100vh - var(--navbar-height, 80px));position:sticky;top:var(--navbar-height, 80px)}.sidebar-user-card{padding:1.5rem;border-bottom:1px solid var(--color-border);display:flex;align-items:center;gap:1rem}.sidebar-avatar{width:48px;height:48px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:var(--font-weight-semibold);color:#fff;flex-shrink:0}.sidebar-user-info{display:flex;flex-direction:column;gap:.125rem;min-width:0}.sidebar-user-name{font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:.95rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-badge{display:inline-block;margin-top:.25rem;padding:.15rem .5rem;background:linear-gradient(135deg,var(--color-warning),#d97706);color:#fff;font-size:.65rem;font-weight:var(--font-weight-semibold);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em;width:fit-content}.sidebar-nav{flex:1;overflow-y:auto;padding:1rem 0}.nav-section{padding:0 .75rem;margin-bottom:1.5rem}.nav-section-title{display:block;padding:0 .75rem;margin-bottom:.5rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted)}.admin-nav-section .nav-section-title{color:var(--color-warning)}.nav-menu{list-style:none;padding:0;margin:0}.nav-menu-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;border:none;background:transparent;color:var(--color-text-secondary);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast);text-align:left}.nav-menu-item:hover{background:var(--color-surface-hover);color:var(--color-text)}.nav-menu-item.active{background:var(--color-primary);color:#fff}.nav-menu-item.active svg{color:#fff}.nav-menu-item svg{flex-shrink:0;color:var(--color-text-muted);transition:color var(--transition-fast)}.nav-menu-item:hover svg{color:var(--color-text)}.nav-menu-item.admin-item:hover{background:var(--color-warning-light);color:var(--color-warning)}.nav-menu-item.admin-item:hover svg{color:var(--color-warning)}.nav-menu-item.admin-item.active{background:linear-gradient(135deg,var(--color-warning),#d97706);color:#fff}.sidebar-footer{padding:1rem;border-top:1px solid var(--color-border)}.logout-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.75rem;background:transparent;border:1px solid var(--color-error);color:var(--color-error);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.logout-btn:hover{background:var(--color-error);color:#fff}.account-content{flex:1;padding:2rem;overflow-y:auto}.content-section{max-width:900px}.content-section h2{margin:0 0 1.5rem;font-size:var(--font-size-2xl);color:var(--color-text);font-weight:var(--font-weight-semibold)}.overview-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.courses{background:var(--color-info-light);color:var(--color-info)}.stat-icon.submissions{background:var(--color-success-light);color:var(--color-success)}.stat-icon.achievements{background:var(--color-warning-light);color:var(--color-warning)}.stat-info{display:flex;flex-direction:column}.stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.quick-actions{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--color-border)}.quick-actions h3{margin:0 0 1rem;font-size:var(--font-size-base);color:var(--color-text)}.actions-grid{display:flex;gap:1rem;flex-wrap:wrap}.action-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.action-btn:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.action-btn svg{color:var(--color-text-muted)}.action-btn:hover svg{color:#fff}.empty-state{text-align:center;padding:3rem 2rem;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.empty-state svg{color:var(--color-text-muted);margin-bottom:1rem;opacity:.5}.empty-state h3{margin:0 0 .5rem;color:var(--color-text);font-size:var(--font-size-lg)}.empty-state p{margin:0 0 1.5rem;color:var(--color-text-secondary);font-size:var(--font-size-sm)}.profile-form{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--color-border)}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input{width:100%;padding:.75rem 1rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);font-family:inherit}.form-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--focus-ring)}.form-input:read-only{opacity:.7;cursor:not-allowed}.form-hint{margin:1rem 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.settings-group{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.5rem;border:1px solid var(--color-border);margin-bottom:1rem}.settings-group h3{margin:0 0 1rem;font-size:var(--font-size-base);color:var(--color-text);font-weight:var(--font-weight-semibold)}.setting-row{display:flex;align-items:center;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.setting-row:last-child{border-bottom:none;padding-bottom:0}.setting-info{display:flex;flex-direction:column;gap:.25rem}.setting-label{font-weight:var(--font-weight-medium);color:var(--color-text);font-size:var(--font-size-sm)}.setting-desc{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.theme-switch{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-sm);font-family:inherit;cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.theme-switch:hover{background:var(--color-surface-hover)}.toggle{position:relative;display:inline-block;width:44px;height:24px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-full);transition:var(--transition-normal)}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:2px;bottom:2px;background:var(--color-text-muted);border-radius:var(--radius-full);transition:var(--transition-normal)}.toggle input:checked+.toggle-slider{background:var(--color-primary);border-color:var(--color-primary)}.toggle input:checked+.toggle-slider:before{background:#fff;transform:translate(20px)}.security-options{display:flex;flex-direction:column;gap:1rem}.security-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border)}.security-icon{width:48px;height:48px;border-radius:var(--radius-lg);background:var(--color-surface-elevated);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--color-text-muted)}.security-info{flex:1}.security-info h4{margin:0 0 .25rem;font-size:var(--font-size-sm);color:var(--color-text)}.security-info p{margin:0;font-size:var(--font-size-xs);color:var(--color-text-secondary)}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1.5rem}.admin-stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.5rem;text-align:center}.admin-stat-value{display:block;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-text);margin-bottom:.25rem}.admin-stat-label{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.admin-hint{color:var(--color-text-secondary);font-size:var(--font-size-sm);text-align:center;padding:1rem;background:var(--color-surface);border-radius:var(--radius-md)}.admin-recent-section{margin-top:2rem}.admin-recent-section h3{margin:0 0 .75rem;font-size:var(--font-size-lg);color:var(--color-text)}.admin-table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.admin-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.admin-table th{text-align:left;padding:.75rem 1rem;font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);background:var(--color-bg);border-bottom:1px solid var(--color-border);white-space:nowrap}.admin-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);color:var(--color-text)}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table tbody tr:hover{background:var(--color-bg)}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:var(--radius-full, 999px);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:capitalize}.status-active{background:#dcfce7;color:#166534}.status-completed{background:#dbeafe;color:#1e40af}.status-pending{background:#fef3c7;color:#92400e}.status-cancelled{background:#fee2e2;color:#991b1b}.admin-users-toolbar{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;flex-wrap:wrap}.admin-search-form{display:flex;gap:.5rem;flex:1;min-width:250px}.admin-search-input{flex:1;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--font-size-sm)}.admin-search-input:focus{outline:none;border-color:var(--color-primary, #6366f1);box-shadow:0 0 0 2px #6366f126}.admin-users-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:nowrap}.btn-sm{padding:.45rem .85rem;font-size:var(--font-size-xs)}.btn-ghost{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-md)}.btn-ghost:hover{background:var(--color-bg);color:var(--color-text)}.admin-user-cell{display:flex;align-items:center;gap:.75rem}.admin-user-avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary, #6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);flex-shrink:0}.admin-user-info{display:flex;flex-direction:column}.admin-user-name{font-weight:var(--font-weight-medium);color:var(--color-primary, #6366f1);text-decoration:none}.admin-user-name:hover{text-decoration:underline}.admin-user-handle{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.admin-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem;padding:.75rem 0}.admin-page-info{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.account-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);font-family:inherit;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-decoration:none}.account-page .btn-primary{background:var(--color-primary);color:#fff;border:none}.account-page .btn-primary:hover{background:var(--color-primary-hover)}.account-page .btn-secondary{background:var(--color-surface-elevated);color:var(--color-text);border:1px solid var(--color-border)}.account-page .btn-secondary:hover{background:var(--color-surface-hover)}.enrolled-courses-list{display:flex;flex-direction:column;gap:var(--space-3)}.enrolled-course-card{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4) var(--space-5);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.enrolled-course-card:hover{border-color:var(--color-primary);box-shadow:0 2px 8px #00000014}.enrolled-course-info h4{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text);margin-bottom:var(--space-2)}.enrolled-meta{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-sm)}.enrollment-status{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:capitalize}.enrollment-status.status-active{background:#22c55e26;color:#22c55e}.enrollment-status.status-enrolled{background:#3b82f626;color:#3b82f6}.enrollment-status.status-completed{background:#a855f726;color:#a855f7}.enrollment-status.status-cancelled{background:#ef444426;color:#ef4444}.enrollment-date{color:var(--color-text-muted)}.progress-bar-wrapper{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2)}.progress-bar{flex:1;height:6px;background:var(--color-bg);border-radius:var(--radius-full);overflow:hidden;max-width:200px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-secondary));border-radius:var(--radius-full);transition:width .3s ease}.progress-label{font-size:var(--font-size-xs);color:var(--color-text-muted);white-space:nowrap}.enrolled-course-payment{text-align:right;flex-shrink:0}.payment-info{display:flex;flex-direction:column;gap:2px}.payment-amount{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.payment-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold)}.payment-status.pstatus-paid{color:#22c55e}.payment-status.pstatus-partial{color:#f59e0b}.payment-status.pstatus-pending{color:var(--color-text-muted)}.paid-so-far{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px;display:block}.courses-grouped{display:flex;flex-direction:column;gap:var(--space-6)}.course-group{display:flex;flex-direction:column;gap:var(--space-3)}.course-group-header h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text);display:flex;align-items:center;gap:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.group-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 var(--space-2);background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold)}.enrolled-course-actions{text-align:right;flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:var(--space-2)}.course-action-btn{font-size:var(--font-size-xs)!important;padding:4px var(--space-3)!important;white-space:nowrap;border:1px solid var(--color-border)!important;border-radius:var(--radius-md)!important}.course-action-btn:disabled{opacity:.7;cursor:not-allowed}.course-action-btn:hover:not(:disabled){opacity:.85}.course-action-btn.drop-btn{color:#ef4444;border-color:#ef44444d!important}.course-action-btn.drop-btn:hover:not(:disabled){background:#ef44441a}.enrollment-status.status-suspended{background:#f9731626;color:#f97316}.enrollment-status.status-pending{background:#eab30826;color:#eab308}.overview-financial{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6)}.financial-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0}.financial-row+.financial-row{border-top:1px solid var(--color-border)}.fin-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.fin-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.fin-value.paid{color:#22c55e}.fin-value.pending{color:#f59e0b}.loading-text{color:var(--color-text-muted);padding:var(--space-4)}.error-text{color:#ef4444;padding:var(--space-4)}@media(max-width:900px){.account-layout{flex-direction:column}.account-sidebar{width:100%;min-width:100%;height:auto;position:static;border-right:none;border-bottom:1px solid var(--color-border)}.sidebar-nav{overflow-x:auto;overflow-y:hidden;padding:.5rem 0}.nav-section{margin-bottom:0}.nav-menu{display:flex;gap:.25rem;padding:0 .5rem}.nav-menu-item{white-space:nowrap;padding:.5rem .75rem}.nav-menu-item span,.sidebar-footer{display:none}.account-content{padding:1.5rem}}@media(max-width:640px){.account-content{padding:1rem}.overview-stats{grid-template-columns:1fr}.security-card{flex-direction:column;text-align:center}.security-card .btn{width:100%}}.wallet-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.wallet-summary-cards .summary-stat{background:var(--bg-secondary, #f5f5f5);border-radius:10px;padding:1.25rem;text-align:center}.wallet-summary-cards .stat-label{display:block;font-size:.8rem;color:var(--text-secondary, #666);margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.03em}.wallet-summary-cards .stat-value{display:block;font-size:1.3rem;font-weight:700;color:var(--text-primary, #1a1a2e)}.wallet-total{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--accent-primary, #e94560) 0%,var(--accent-secondary, #0f3460) 100%);border-radius:10px;color:#fff;font-weight:600;font-size:1rem}.wallet-total-amount{font-size:1.4rem;font-weight:700}[data-theme=dark] .wallet-summary-cards .summary-stat{background:#ffffff0f}[data-theme=dark] .wallet-summary-cards .stat-label{color:#ffffff8c}[data-theme=dark] .wallet-summary-cards .stat-value{color:#e0e0e0}.wallet-page{padding:2rem 0 4rem;min-height:60vh}.wallet-page .container{max-width:900px;margin:0 auto;padding:0 1.5rem}.wallet-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.wallet-header h1{font-size:1.8rem;font-weight:700;color:var(--text-primary, #1f2937);margin:0}.wallet-greeting{color:var(--text-secondary, #6b7280);font-size:.95rem;margin-top:.25rem}.add-funds-btn{white-space:nowrap}.wallet-toast{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem}.wallet-toast-success{background:#d1fae5;color:#065f46;border:1px solid #34d399}.wallet-toast button{background:none;border:none;font-size:1.2rem;cursor:pointer;color:inherit;padding:0 0 0 1rem}.add-funds-panel{background:var(--surface-alt, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.add-funds-panel h3{font-size:1.15rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0 0 .25rem}.add-funds-note{color:var(--text-secondary, #6b7280);font-size:.85rem;margin-bottom:1rem}.add-funds-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.add-funds-form .form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-primary, #374151);margin-bottom:.35rem}.add-funds-form .form-input{width:100%;padding:.6rem .8rem;border:1px solid var(--border, #d1d5db);border-radius:6px;font-size:.9rem;background:var(--surface, #ffffff);color:var(--text-primary, #1f2937);box-sizing:border-box}.quick-amounts{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.quick-amt-btn{padding:.4rem .9rem;border:1px solid var(--border, #d1d5db);border-radius:20px;background:var(--surface, #ffffff);color:var(--text-secondary, #6b7280);font-size:.8rem;cursor:pointer;transition:all .15s ease}.quick-amt-btn:hover,.quick-amt-btn.active{background:var(--color-primary, #6366f1);color:#fff;border-color:var(--color-primary, #6366f1)}.form-error-msg{color:#dc2626;font-size:.85rem;margin-bottom:.75rem}.balance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.25rem}.balance-card{background:var(--surface-alt, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:.75rem;transition:transform .15s ease,box-shadow .15s ease}.balance-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.balance-icon{font-size:1.6rem}.balance-info{display:flex;flex-direction:column}.balance-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #6b7280);margin-bottom:.15rem}.balance-amount{font-size:1.15rem;font-weight:700;color:var(--text-primary, #1f2937)}.balance-cash{border-left:3px solid #10b981}.balance-investments{border-left:3px solid #6366f1}.balance-coupons{border-left:3px solid #f59e0b}.balance-certs{border-left:3px solid #ec4899}.total-value-bar{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;padding:1rem 1.5rem;border-radius:12px;margin-bottom:2rem}.total-label{font-size:.95rem;font-weight:500;opacity:.9}.total-amount{font-size:1.5rem;font-weight:700}.tx-section{margin-bottom:2rem}.tx-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tx-header h2{font-size:1.2rem;font-weight:600;color:var(--text-primary, #1f2937);margin:0}.tx-count{font-size:.8rem;color:var(--text-secondary, #6b7280)}.tx-empty{text-align:center;padding:3rem 0;color:var(--text-secondary, #6b7280)}.tx-list{display:flex;flex-direction:column;gap:0}.tx-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-bottom:1px solid var(--border, #f3f4f6);transition:background .1s ease}.tx-row:hover{background:var(--surface-alt, #f9fafb)}.tx-row:last-child{border-bottom:none}.tx-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.tx-icon{font-size:1.3rem;flex-shrink:0}.tx-meta{display:flex;flex-direction:column;min-width:0}.tx-category{font-size:.9rem;font-weight:600;color:var(--text-primary, #1f2937)}.tx-desc{font-size:.8rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-date{font-size:.72rem;color:var(--text-tertiary, #9ca3af);margin-top:.1rem}.tx-right{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.tx-amount{font-size:.95rem;font-weight:700}.tx-amount.credit{color:#059669}.tx-amount.debit{color:#dc2626}.tx-balance{font-size:.72rem;color:var(--text-tertiary, #9ca3af)}.wallet-actions{display:flex;gap:1rem;justify-content:center}.wallet-login-prompt,.wallet-error{text-align:center;padding:4rem 0}.wallet-login-prompt h2{font-size:1.5rem;margin-bottom:.75rem;color:var(--text-primary, #1f2937)}.wallet-login-prompt p,.wallet-error p{color:var(--text-secondary, #6b7280);margin-bottom:1.5rem}[data-theme=dark] .wallet-header h1,[data-theme=dark] .tx-header h2,[data-theme=dark] .add-funds-panel h3,[data-theme=dark] .balance-amount,[data-theme=dark] .tx-category{color:var(--text-primary, #f3f4f6)}[data-theme=dark] .balance-card,[data-theme=dark] .add-funds-panel{background:var(--surface, #1f2937);border-color:var(--border, #374151)}[data-theme=dark] .tx-row:hover{background:var(--surface, #1f2937)}[data-theme=dark] .tx-row{border-color:var(--border, #374151)}[data-theme=dark] .add-funds-form .form-input{background:var(--surface, #111827);border-color:var(--border, #4b5563);color:var(--text-primary, #f3f4f6)}[data-theme=dark] .quick-amt-btn{background:var(--surface, #1f2937);border-color:var(--border, #4b5563);color:var(--text-secondary, #9ca3af)}[data-theme=dark] .wallet-toast-success{background:#064e3b;color:#34d399;border-color:#059669}[data-theme=dark] .wallet-login-prompt h2{color:var(--text-primary, #f3f4f6)}@media(max-width:768px){.balance-grid{grid-template-columns:repeat(2,1fr)}.add-funds-form .form-row{grid-template-columns:1fr}.wallet-header{flex-direction:column;gap:1rem}.total-value-bar{flex-direction:column;text-align:center;gap:.25rem}}@media(max-width:480px){.balance-grid{grid-template-columns:1fr}}.admin-page{min-height:calc(100vh - 80px);padding:2.5rem 1.5rem;background:var(--bg-primary)}.admin-container{max-width:960px;margin:0 auto}.admin-loading{display:flex;align-items:center;justify-content:center;min-height:50vh;color:var(--text-secondary)}.admin-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:2.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border-color, rgba(255,255,255,.08))}.admin-header-text h1{margin:0 0 .25rem;font-size:1.7rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.admin-header-icon{width:26px;height:26px;color:var(--primary-color, #6366f1)}.admin-header-text p{margin:0;color:var(--text-secondary);font-size:.9rem}.admin-header-link{font-size:.82rem;color:var(--text-secondary);text-decoration:none;white-space:nowrap;transition:color .15s}.admin-header-link:hover{color:var(--primary-color, #6366f1)}.admin-stats-bar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem;padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border-color, rgba(255,255,255,.06));border-radius:10px}.admin-stats-loading{font-size:.82rem;color:var(--text-secondary);padding:.25rem 0}.stat-pill{display:flex;align-items:baseline;gap:.35rem;padding:.3rem .75rem;background:var(--bg-primary);border-radius:8px;border:1px solid var(--border-color, rgba(255,255,255,.06))}.stat-val{font-size:1.05rem;font-weight:700;color:var(--primary-color, #6366f1)}.stat-lbl{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.admin-section{margin-bottom:2rem}.admin-section-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0 0 .75rem .25rem}.admin-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.admin-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:10px;text-decoration:none;color:var(--text-primary);border:1px solid var(--border-color, rgba(255,255,255,.06));transition:border-color .2s,transform .15s,box-shadow .2s;position:relative}.admin-card:hover{transform:translateY(-2px);border-color:var(--primary-color, #6366f1);box-shadow:0 6px 24px #6366f114}.admin-card.coming-soon{opacity:.45;pointer-events:none}.card-icon{flex-shrink:0;width:40px;height:40px;background:linear-gradient(135deg,var(--primary-color, #6366f1),var(--accent-color, #a78bfa));border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;padding:8px}.card-icon svg{width:22px;height:22px}.card-content h3{margin:0 0 .3rem;font-size:.95rem;font-weight:600}.card-content p{margin:0;font-size:.8rem;color:var(--text-secondary);line-height:1.35}.coming-soon-badge{position:absolute;top:.65rem;right:.65rem;padding:.15rem .45rem;background:var(--text-secondary);color:var(--bg-primary);font-size:.6rem;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.04em}.admin-section--root{margin-top:2.5rem;padding:1.25rem;background:#f59e0b0a;border:1px solid rgba(245,158,11,.15);border-radius:12px}.admin-section--root .admin-section-title{color:#f59e0b;display:flex;align-items:center;gap:.5rem}.root-badge{display:inline-block;padding:.1rem .45rem;background:#f59e0b2e;color:#f59e0b;font-size:.58rem;font-weight:700;border-radius:4px;text-transform:uppercase;letter-spacing:.06em;border:1px solid rgba(245,158,11,.25)}.admin-card--root .card-icon{background:linear-gradient(135deg,#f59e0b,#d97706)}.admin-card--root:hover{border-color:#f59e0b;box-shadow:0 6px 24px #f59e0b1a}.admin-card.admin-card-static{cursor:default}.admin-card.admin-card-static:hover{transform:none;border-color:var(--border-color, rgba(255,255,255,.06));box-shadow:none}@media(max-width:640px){.admin-page{padding:1.25rem .75rem}.admin-header{flex-direction:column;align-items:flex-start;gap:.5rem}.admin-header-text h1{font-size:1.35rem}.admin-cards{grid-template-columns:1fr}}.admin-courses-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-courses-container{max-width:1200px;margin:0 auto}.admin-courses-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-courses-header h1{margin:.25rem 0;font-size:1.7rem}.admin-courses-header p{margin:0;color:var(--text-secondary, #a1a1aa);font-size:.85rem}.back-link{font-size:.82rem;color:var(--accent, #6366f1);text-decoration:none}.back-link:hover{text-decoration:underline}.loading-msg{text-align:center;padding:3rem;color:var(--text-secondary)}.courses-table-wrapper{overflow-x:auto}.courses-table{width:100%;border-collapse:collapse;font-size:.85rem}.courses-table th,.courses-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.courses-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.courses-table tbody tr:nth-child(2n){background:#ffffff05}.courses-table tbody tr:nth-child(odd){background:#ffffff0d}.courses-table tbody tr:hover{background:#6366f114}.inactive-row{opacity:.55}.badge-course{background:#6366f126;color:#a5b4fc}.badge-competition{background:#facc151f;color:#facc15}.badge-both{background:#a855f726;color:#c084fc}.course-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.course-form h2{margin:0 0 1rem;font-size:1.15rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem}.form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group.full-width{margin-bottom:1rem}.form-group input,.form-group select,.form-group textarea{background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem;font-family:inherit}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent, #6366f1);box-shadow:0 0 0 2px #6366f126}.mono-text{font-family:SF Mono,Fira Code,monospace;font-size:.78rem!important}@media(max-width:768px){.form-grid-2{grid-template-columns:1fr}.admin-courses-header{flex-direction:column}}.admin-dept-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-dept-container{max-width:1200px;margin:0 auto}.admin-dept-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-dept-header h1{font-size:1.7rem;margin:.25rem 0}.admin-dept-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem}.dept-table-wrapper{overflow-x:auto}.dept-table{width:100%;border-collapse:collapse;font-size:.85rem}.dept-table th,.dept-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.dept-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.dept-table tbody tr:nth-child(2n){background:#ffffff05}.dept-table tbody tr:nth-child(odd){background:#ffffff0d}.dept-table tbody tr:hover{background:#6366f114}.ctx-cell{display:flex;flex-wrap:wrap;gap:.3rem}.ctx-tag{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;background:#6366f126;color:#a5b4fc}.dept-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.dept-form h2{font-size:1.15rem;margin-bottom:1rem}.section-label{font-size:.95rem;margin:1rem 0 .5rem;color:var(--text-secondary)}.ctx-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:1rem}.ctx-fieldset{border:1px solid var(--border-color, #27272a);border-radius:.5rem;padding:.75rem;display:flex;flex-direction:column;gap:.4rem}.ctx-fieldset legend{font-size:.82rem;font-weight:600;color:var(--text-secondary, #a1a1aa);padding:0 .3rem}.ctx-fieldset input[type=text],.ctx-fieldset input:not([type]),.ctx-fieldset select{padding:.4rem .6rem;border:1px solid var(--border-color, #27272a);border-radius:.4rem;font-size:.85rem;background:var(--bg-primary, #0f1117);color:inherit}.check-label{display:flex;align-items:center;gap:.4rem;font-size:.85rem}.admin-cat-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-cat-container{max-width:1200px;margin:0 auto}.admin-cat-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-cat-header h1{font-size:1.7rem;margin:.25rem 0}.admin-cat-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem}.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem;margin-bottom:2rem}.cat-card{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;transition:border-color .15s}.cat-card:hover{border-color:var(--accent, #6366f1)}.cat-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.cat-card-title{display:flex;align-items:center;gap:.5rem}.cat-card-title .cat-icon{font-size:1.25rem}.cat-card-title h3{font-size:1.05rem;margin:0;font-weight:600}.cat-card-slug{font-size:.72rem;color:var(--text-secondary, #a1a1aa);font-family:monospace}.cat-card-desc{font-size:.82rem;color:var(--text-secondary, #a1a1aa);line-height:1.4}.cat-card-meta{display:flex;gap:1rem;font-size:.75rem;color:var(--text-secondary, #a1a1aa)}.cat-card-meta span{display:flex;align-items:center;gap:.25rem}.cat-card-actions{display:flex;gap:.5rem}.cat-departments{border-top:1px solid var(--border-color, #27272a);padding-top:.75rem;margin-top:.25rem}.cat-departments h4{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa);margin:0 0 .5rem}.dept-chip-list{display:flex;flex-wrap:wrap;gap:.35rem}.dept-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:500;background:#6366f11f;color:#a5b4fc;cursor:default}.dept-chip .chip-icon{font-size:.72rem}.dept-chip-empty{font-size:.78rem;color:var(--text-secondary, #a1a1aa);font-style:italic}.move-dept-section{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.25rem;margin-bottom:2rem}.move-dept-section h2{font-size:1.05rem;margin:0 0 1rem}.move-dept-row{display:flex;gap:.75rem;align-items:flex-end;flex-wrap:wrap}.move-dept-row .form-group{flex:1;min-width:200px}.admin-cat-page .btn{border:none;cursor:pointer;border-radius:.4rem;font-size:.82rem;padding:.45rem .85rem;transition:opacity .15s}.admin-cat-page .btn:disabled{opacity:.5;cursor:not-allowed}.admin-cat-page .btn-primary{background:var(--accent, #6366f1);color:#fff}.admin-cat-page .btn-ghost{background:transparent;border:1px solid var(--border-color, #27272a);color:var(--text-primary, #e4e4e7)}.admin-cat-page .btn-sm{padding:.25rem .55rem;font-size:.75rem}.admin-cat-page .btn-danger{background:#ef444426;color:#f87171}.admin-cat-page .back-link{color:var(--accent, #6366f1);text-decoration:none;font-size:.82rem}.admin-cat-page .loading-msg{color:var(--text-secondary, #a1a1aa)}.admin-cat-page .admin-error{background:#ef44441a;border:1px solid #991b1b;color:#f87171;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem}.admin-cat-page .admin-success{background:#22c55e1a;border:1px solid #166534;color:#4ade80;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem}.admin-cat-page .cat-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.admin-cat-page .cat-form h2{font-size:1.15rem;margin-bottom:1rem}.admin-cat-page .form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.admin-cat-page .form-group{display:flex;flex-direction:column;gap:.3rem}.admin-cat-page .form-group.full-width{grid-column:1 / -1;margin-bottom:.75rem}.admin-cat-page .form-group input,.admin-cat-page .form-group textarea,.admin-cat-page .form-group select{background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem}.admin-cat-page .form-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa)}.admin-cat-page .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.searchable-select{position:relative}.searchable-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;background:var(--bg-primary, #09090b);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.45rem .65rem;font-size:.85rem;color:var(--text-primary, #e4e4e7);cursor:pointer;text-align:left;min-height:2.1rem}.searchable-select-trigger:hover{border-color:var(--accent, #6366f1)}.searchable-select-trigger .placeholder-text{color:var(--text-secondary, #71717a)}.searchable-select-trigger .selected-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.searchable-select-trigger .chevron{font-size:.7rem;color:var(--text-secondary, #71717a);margin-left:.35rem}.searchable-select-trigger .clear-btn{font-size:1rem;line-height:1;color:var(--text-secondary, #71717a);margin-left:.35rem;padding:0 .15rem;border-radius:.2rem}.searchable-select-trigger .clear-btn:hover{color:#f87171}.searchable-select-dropdown{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:50;background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.5rem;box-shadow:0 8px 24px #0006;overflow:hidden}.searchable-select-input{width:100%;box-sizing:border-box;padding:.55rem .65rem;font-size:.85rem;background:var(--bg-primary, #09090b);border:none;border-bottom:1px solid var(--border-color, #27272a);color:var(--text-primary, #e4e4e7);outline:none}.searchable-select-input::placeholder{color:var(--text-secondary, #71717a)}.searchable-select-list{list-style:none;margin:0;padding:.25rem 0;max-height:220px;overflow-y:auto}.searchable-select-option{padding:.4rem .65rem;font-size:.85rem;cursor:pointer;color:var(--text-primary, #e4e4e7)}.searchable-select-option:hover{background:var(--accent, #6366f1);color:#fff}.searchable-select-option.selected{background:#6366f126;color:var(--accent, #818cf8)}.searchable-select-empty{padding:.6rem .65rem;font-size:.82rem;color:var(--text-secondary, #71717a);text-align:center}.admin-proj-page{min-height:100vh;background:var(--color-bg);color:var(--color-text);padding:2rem 1rem}.admin-proj-container{max-width:1200px;margin:0 auto}.admin-proj-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-proj-header h1{font-size:1.7rem;margin:.25rem 0}.admin-proj-header p{color:var(--color-text-secondary);font-size:.85rem}.proj-table-wrapper{overflow-x:auto}.proj-table{width:100%;border-collapse:collapse;font-size:.85rem}.proj-table th,.proj-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--color-border)}.proj-table th{color:var(--color-text-secondary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.proj-table tbody tr:nth-child(2n){background:var(--color-surface)}.proj-table tbody tr:nth-child(odd){background:var(--color-bg)}.proj-table tbody tr:hover{background:var(--color-primary-light)}.proj-title-cell{font-weight:500}.proj-actions-cell{white-space:nowrap}.proj-empty-msg{text-align:center;color:var(--color-text-secondary);padding:1.5rem!important}.proj-genre-cell{display:flex;flex-wrap:wrap;gap:.3rem}.genre-tag{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;background:#6366f126;color:#a5b4fc}.proj-status-badge{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;text-transform:capitalize}.proj-status-announced{background:#facc151f;color:#facc15}.proj-status-pre-production{background:#3b82f61f;color:#60a5fa}.proj-status-in-production{background:#22c55e26;color:#4ade80}.proj-status-post-production{background:#a855f71f;color:#c084fc}.proj-status-released{background:#22c55e40;color:#22c55e}.proj-status-on-hold{background:#ef44441f;color:#f87171}.proj-form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.proj-form h2{font-size:1.15rem;margin-bottom:1rem}.proj-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.proj-form-group{display:flex;flex-direction:column;gap:.3rem}.proj-form-group.full-width{grid-column:1 / -1;margin-bottom:.75rem}.proj-form-group input,.proj-form-group textarea,.proj-form-group select{background:var(--color-bg);border:1px solid var(--color-border);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem}.proj-form-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-secondary)}.proj-form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.proj-dept-section{border-top:1px solid var(--color-border);margin-top:1.25rem;padding-top:1.25rem}.proj-dept-section h3{font-size:1rem;margin:0 0 .25rem}.proj-dept-hint{font-size:.78rem;color:var(--color-text-secondary);margin:0 0 1rem}.proj-dept-list{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.proj-dept-row{display:flex;align-items:center;gap:.65rem;padding:.45rem .65rem;background:var(--color-bg);border:1px solid var(--color-border);border-radius:.5rem}.proj-dept-icon{font-size:1rem;flex-shrink:0}.proj-dept-name{flex:1;font-size:.85rem;font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proj-dept-pct-group{display:flex;align-items:center;gap:.2rem}.proj-dept-pct-input{width:60px;text-align:right;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.35rem;padding:.3rem .4rem;font-size:.82rem;color:inherit}.proj-dept-pct-input:focus{border-color:var(--color-primary);outline:none}.proj-dept-pct-symbol{font-size:.78rem;color:var(--color-text-secondary)}.proj-dept-total{font-size:.82rem;font-weight:600;padding:.4rem .65rem;border-radius:.4rem;background:#6366f114;color:#a5b4fc;text-align:right}.proj-dept-total.full{background:#22c55e1a;color:#4ade80}.proj-dept-total.over{background:#ef44441a;color:#f87171}.proj-dept-warn,.proj-dept-ok{font-weight:400}.proj-dept-add{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.proj-dept-select{background:var(--color-bg);border:1px dashed var(--color-border);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem;min-width:220px;cursor:pointer}.proj-dept-select:hover{border-color:var(--color-primary)}.proj-dept-add-hint{font-size:.72rem;color:var(--color-text-secondary)}.proj-dept-empty{font-size:.82rem;color:var(--color-text-secondary);font-style:italic}.admin-coupon-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-coupon-container{max-width:1200px;margin:0 auto}.admin-coupon-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-coupon-header h1{font-size:1.7rem;margin:.25rem 0}.admin-coupon-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem}.coupon-table-wrapper{overflow-x:auto}.coupon-table{width:100%;border-collapse:collapse;font-size:.85rem}.coupon-table th,.coupon-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.coupon-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.coupon-table tbody tr:nth-child(2n){background:#ffffff05}.coupon-table tbody tr:nth-child(odd){background:#ffffff0d}.coupon-table tbody tr:hover{background:#6366f114}.coupon-code-cell{font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;letter-spacing:.03em}.coupon-actions-cell{white-space:nowrap}.coupon-empty-msg{text-align:center;color:var(--text-secondary, #a1a1aa);padding:1.5rem!important}.coupon-status-badge{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;text-transform:capitalize}.coupon-status-active{background:#22c55e26;color:#4ade80}.coupon-status-inactive{background:#ef44441f;color:#f87171}.coupon-status-expired{background:#facc151f;color:#facc15}.coupon-type-badge{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600}.coupon-type-percentage{background:#6366f126;color:#a5b4fc}.coupon-type-fixed{background:#a855f71f;color:#c084fc}.coupon-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.coupon-form h2{font-size:1.15rem;margin-bottom:1rem}.coupon-form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.coupon-form-group{display:flex;flex-direction:column;gap:.3rem}.coupon-form-group.full-width{grid-column:1 / -1;margin-bottom:.75rem}.coupon-form-group input,.coupon-form-group textarea,.coupon-form-group select{background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem}.coupon-form-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa)}.coupon-form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.admin-inv-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-inv-container{max-width:1200px;margin:0 auto}.admin-inv-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-inv-header h1{font-size:1.7rem;margin:.25rem 0}.admin-inv-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem}.inv-table-wrapper{overflow-x:auto}.inv-table{width:100%;border-collapse:collapse;font-size:.85rem}.inv-table th,.inv-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.inv-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.inv-table tbody tr:nth-child(2n){background:#ffffff05}.inv-table tbody tr:nth-child(odd){background:#ffffff0d}.inv-table tbody tr:hover{background:#6366f114}.badge-open{background:#22c55e26;color:#4ade80}.badge-closed{background:#ef44441f;color:#f87171}.badge-coming-soon{background:#facc151f;color:#facc15}.inv-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.inv-form h2{font-size:1.15rem;margin-bottom:1rem}.form-group textarea.mono-text{font-family:SF Mono,Fira Code,monospace;font-size:.78rem}.calc-hint{font-size:.65rem;font-weight:400;color:#4ade80;text-transform:none;letter-spacing:0;margin-left:.3rem}.calc-reset{font-size:.6rem;font-weight:500;color:var(--accent, #6366f1);background:none;border:1px solid var(--accent, #6366f1);border-radius:.3rem;padding:.1rem .35rem;cursor:pointer;text-transform:none;letter-spacing:0;margin-left:.3rem;transition:all .15s}.calc-reset:hover{background:var(--accent, #6366f1);color:#fff}.field-hint{font-size:.68rem;color:var(--text-secondary, #a1a1aa);font-weight:400;margin-top:.15rem}.admin-users-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.au-container{max-width:1000px;margin:0 auto}.au-header{margin-bottom:1.5rem}.au-header h1{font-size:1.5rem;margin:.25rem 0 .15rem}.au-header p{color:var(--text-secondary, #a1a1aa);font-size:.82rem}.au-toolbar{margin-bottom:1.25rem}.au-search-form{display:flex;gap:.5rem;max-width:480px}.au-search-input{flex:1;padding:.45rem .7rem;border:1px solid var(--border-color, #27272a);border-radius:.4rem;background:var(--bg-secondary, #18181b);color:inherit;font-size:.85rem}.au-search-input:focus{outline:none;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 2px #6366f126}.au-table-wrap{overflow-x:auto;border:1px solid var(--border-color, #27272a);border-radius:.6rem;background:var(--bg-secondary, #18181b)}.au-table{width:100%;border-collapse:collapse;font-size:.82rem}.au-table th{text-align:left;padding:.6rem .85rem;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa);border-bottom:1px solid var(--border-color, #27272a);white-space:nowrap}.au-table td{padding:.6rem .85rem;border-bottom:1px solid var(--border-color, #27272a)}.au-table tbody tr:last-child td{border-bottom:none}.au-table tbody tr:hover{background:#ffffff05}.au-user-cell{display:flex;align-items:center;gap:.6rem}.au-avatar{width:30px;height:30px;border-radius:50%;background:var(--primary-color, #6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.au-user-info{display:flex;flex-direction:column}.au-user-name{font-weight:500;color:var(--primary-color, #6366f1);text-decoration:none}.au-user-name:hover{text-decoration:underline}.au-user-handle{font-size:.72rem;color:var(--text-secondary, #a1a1aa)}.au-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.au-page-info{font-size:.82rem;color:var(--text-secondary, #a1a1aa)}.au-hint{color:var(--text-secondary, #a1a1aa);font-size:.85rem;text-align:center;padding:2rem}.au-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #a1a1aa)}.au-empty svg{margin-bottom:.75rem;opacity:.5}.au-empty h3{margin:0 0 .3rem;color:var(--text-primary, #e4e4e7)}.au-empty p{margin:0;font-size:.85rem}.btn-primary{background:var(--primary-color, #6366f1);color:#fff}.btn-sm{padding:.3rem .6rem;font-size:.75rem}.admin-reports{width:100%}.admin-reports h2{margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.reports-subtitle{color:var(--text-secondary, #6b7280);margin:0 0 1.25rem;font-size:.875rem}.reports-loading,.reports-error,.reports-empty{display:flex;align-items:center;gap:.75rem;padding:1.5rem;border-radius:8px;background:var(--bg-secondary, #f9fafb);border:1px solid var(--border-color, #e5e7eb)}.reports-error{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.reports-empty{justify-content:center;color:var(--text-secondary, #6b7280)}.reports-loading .spinner{width:20px;height:20px;border:2px solid var(--border-color, #e5e7eb);border-top-color:var(--accent-color, #3b82f6);border-radius:50%;animation:reportSpin .6s linear infinite}@keyframes reportSpin{to{transform:rotate(360deg)}}.report-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;margin-bottom:1.5rem}.report-card{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;cursor:pointer;transition:all .15s ease;text-align:left;font-family:inherit;font-size:inherit;color:inherit;width:100%}.report-card:hover{border-color:var(--accent-color, #3b82f6);box-shadow:0 2px 8px #3b82f61a}.report-card.active{border-color:var(--accent-color, #3b82f6);background:var(--accent-bg, #eff6ff);box-shadow:0 2px 8px #3b82f626}.report-card-icon{font-size:1.5rem;flex-shrink:0;width:2rem;text-align:center}.report-card-info{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.report-card-name{font-weight:600;font-size:.875rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-card-desc{font-size:.75rem;color:var(--text-secondary, #6b7280);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.report-card-arrow{flex-shrink:0;color:var(--text-secondary, #9ca3af);transition:transform .15s ease}.report-card.active .report-card-arrow{transform:rotate(90deg);color:var(--accent-color, #3b82f6)}.report-results{background:var(--bg-primary, #fff);border:1px solid var(--border-color, #e5e7eb);border-radius:8px;overflow:hidden}.report-results-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #e5e7eb);background:var(--bg-secondary, #f9fafb)}.report-results-title{display:flex;align-items:center;gap:.5rem}.report-results-icon{font-size:1.25rem}.report-results-title h3{margin:0;font-size:1rem;font-weight:600}.report-results-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary, #6b7280)}.meta-separator{color:var(--border-color, #d1d5db)}.report-table-wrapper{overflow-x:auto;max-height:500px;overflow-y:auto}.report-table{width:100%;border-collapse:collapse;font-size:.8125rem}.report-table thead{position:sticky;top:0;z-index:1}.report-table th{background:var(--bg-secondary, #f3f4f6);padding:.625rem .875rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary, #6b7280);border-bottom:1px solid var(--border-color, #e5e7eb);white-space:nowrap}.report-table td{padding:.5rem .875rem;border-bottom:1px solid var(--border-color, #f3f4f6);white-space:nowrap;max-width:300px;overflow:hidden;text-overflow:ellipsis}.report-table tbody tr:hover{background:var(--bg-secondary, #f9fafb)}.report-table tbody tr:last-child td{border-bottom:none}[data-theme=dark] .report-card{background:var(--bg-primary, #1f2937);border-color:var(--border-color, #374151)}[data-theme=dark] .report-card:hover{border-color:var(--accent-color, #60a5fa);box-shadow:0 2px 8px #60a5fa26}[data-theme=dark] .report-card.active{background:#3b82f61a;border-color:var(--accent-color, #60a5fa)}[data-theme=dark] .reports-loading,[data-theme=dark] .reports-empty{background:var(--bg-secondary, #111827);border-color:var(--border-color, #374151)}[data-theme=dark] .reports-error{background:#b91c1c1a;border-color:#ef44444d;color:#fca5a5}[data-theme=dark] .report-results{background:var(--bg-primary, #1f2937);border-color:var(--border-color, #374151)}[data-theme=dark] .report-results-header,[data-theme=dark] .report-table th{background:var(--bg-secondary, #111827);border-color:var(--border-color, #374151)}[data-theme=dark] .report-table td{border-color:var(--border-color, #1f2937)}[data-theme=dark] .report-table tbody tr:hover{background:var(--bg-secondary, #111827)}@media(max-width:768px){.report-cards{grid-template-columns:1fr}.report-results-header{flex-direction:column;align-items:flex-start;gap:.5rem}.report-table{font-size:.75rem}.report-table th,.report-table td{padding:.375rem .625rem}}.admin-reports-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.ar-container{max-width:1000px;margin:0 auto}.ar-header{margin-bottom:1.5rem}.ar-header h1{font-size:1.5rem;margin:.25rem 0 .15rem}.ar-header p{color:var(--text-secondary, #a1a1aa);font-size:.82rem}.admin-config-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.ac-container{max-width:720px;margin:0 auto}.ac-header{margin-bottom:2rem}.ac-header h1{font-size:1.5rem;margin:.25rem 0 .15rem}.ac-header p{color:var(--text-secondary, #a1a1aa);font-size:.82rem}.ac-placeholder{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #a1a1aa);background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;margin-bottom:1.5rem}.ac-placeholder svg{margin-bottom:.75rem;opacity:.4}.ac-placeholder h3{margin:0 0 .3rem;color:var(--text-primary, #e4e4e7)}.ac-placeholder p{margin:0;font-size:.85rem}.ac-info{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;overflow:hidden}.ac-info summary{padding:.85rem 1rem;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-secondary, #a1a1aa);-webkit-user-select:none;user-select:none}.ac-info summary:hover{color:var(--text-primary, #e4e4e7)}.ac-info[open] summary{border-bottom:1px solid var(--border-color, #27272a)}.ac-preview{padding:.85rem 1rem}.ac-preview h4{margin:0 0 .3rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary, #e4e4e7)}.ac-preview ul{margin:0 0 .85rem;padding-left:1.2rem;color:var(--text-secondary, #a1a1aa);font-size:.8rem;line-height:1.6}.ac-preview ul:last-child{margin-bottom:0}.ae-page{min-height:100vh;padding:2rem 1rem}.ae-container{max-width:1100px;margin:0 auto}.ae-header{margin-bottom:1.5rem}.ae-header .back-link{font-size:.82rem;color:var(--accent, #6366f1);text-decoration:none}.ae-header .back-link:hover{text-decoration:underline}.ae-header h1{display:flex;align-items:center;gap:.5rem;font-size:1.4rem;margin:.5rem 0 .25rem}.ae-header-icon{width:24px;height:24px;flex-shrink:0}.ae-subtitle{margin:0;font-size:.85rem;color:var(--text-secondary, #a1a1aa)}.ae-toolbar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:1.25rem}.ae-search-form{flex:1 1 220px}.ae-search-input{width:100%;padding:.5rem .75rem;border-radius:.4rem;border:1px solid var(--border-color, #27272a);background:var(--bg-secondary, #18181b);color:var(--text-primary, #e4e4e7);font-size:.82rem}.ae-search-input:focus{outline:none;border-color:var(--primary-color, #6366f1);box-shadow:0 0 0 2px #6366f126}.ae-filter-select{padding:.5rem .75rem;border-radius:.4rem;border:1px solid var(--border-color, #27272a);background:var(--bg-secondary, #18181b);color:var(--text-primary, #e4e4e7);font-size:.82rem;cursor:pointer;min-width:140px}.ae-filter-select:focus{outline:none;border-color:var(--primary-color, #6366f1)}.ae-course-section{margin-bottom:1.75rem}.ae-course-heading{font-size:1rem;font-weight:600;margin:0 0 .65rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ae-course-code{font-size:.72rem;font-weight:400;color:var(--text-secondary, #a1a1aa);background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.3rem;padding:.1rem .45rem}.ae-course-count{font-size:.72rem;font-weight:400;color:var(--text-secondary, #a1a1aa);margin-left:auto}.ae-table-wrap{overflow-x:auto;border:1px solid var(--border-color, #27272a);border-radius:.6rem;background:var(--bg-secondary, #18181b)}.ae-table{width:100%;border-collapse:collapse;font-size:.82rem}.ae-table th{text-align:left;padding:.6rem .85rem;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa);border-bottom:1px solid var(--border-color, #27272a);white-space:nowrap}.ae-table td{padding:.6rem .85rem;border-bottom:1px solid var(--border-color, #27272a);vertical-align:middle}.ae-table tbody tr:last-child td{border-bottom:none}.ae-table tbody tr:hover{background:#ffffff05}.ae-student-cell{display:flex;align-items:center;gap:.6rem}.ae-avatar{width:30px;height:30px;border-radius:50%;background:var(--primary-color, #6366f1);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600;flex-shrink:0}.ae-student-info{display:flex;flex-direction:column}.ae-student-name{font-weight:500}.ae-student-email{font-size:.72rem;color:var(--text-secondary, #a1a1aa)}.ae-status-badge{display:inline-block;padding:.15rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;text-transform:capitalize}.ae-progress-wrap{display:flex;align-items:center;gap:.5rem;min-width:110px}.ae-progress-bar{flex:1;height:6px;border-radius:3px;background:var(--border-color, #27272a);overflow:hidden}.ae-progress-fill{height:100%;border-radius:3px;background:var(--primary-color, #6366f1);transition:width .3s ease}.ae-progress-text{font-size:.72rem;color:var(--text-secondary, #a1a1aa);white-space:nowrap;min-width:30px}.ae-attendance-cell{white-space:nowrap}.ae-attendance-count{font-weight:500;font-variant-numeric:tabular-nums}.ae-date-cell{white-space:nowrap;font-size:.78rem;color:var(--text-secondary, #a1a1aa)}.ae-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.ae-attendance-btns{display:flex;gap:.3rem}.ae-status-select{padding:.25rem .5rem;border-radius:.35rem;border:1px solid var(--border-color, #27272a);background:var(--bg-secondary, #18181b);color:var(--text-primary, #e4e4e7);font-size:.72rem;cursor:pointer}.ae-pagination{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:1rem}.ae-page-info{font-size:.82rem;color:var(--text-secondary, #a1a1aa)}.ae-error-toast{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.6rem 1rem;margin-bottom:1rem;border-radius:.5rem;background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#fca5a5;font-size:.82rem}.ae-toast-dismiss{background:none;border:none;color:inherit;cursor:pointer;font-size:1.1rem;padding:0 .2rem}.ae-loading,.ae-empty{text-align:center;padding:3rem 1rem;color:var(--text-secondary, #a1a1aa)}.ae-empty svg{margin-bottom:.75rem;opacity:.5}.ae-empty h3{margin:0 0 .3rem;color:var(--text-primary, #e4e4e7)}.ae-empty p{margin:0;font-size:.85rem}.ae-error-banner{display:flex;align-items:center;gap:1rem;padding:1.25rem 1.5rem;margin-bottom:1.5rem;border-radius:.75rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.ae-error-banner svg{flex-shrink:0;opacity:.7}.ae-error-banner h3{margin:0 0 .25rem;font-size:.95rem;color:#fca5a5}.ae-error-banner p{margin:0;font-size:.82rem;opacity:.85}.ae-retry-btn{flex-shrink:0;padding:.4rem 1rem;border-radius:.4rem;border:1px solid rgba(239,68,68,.4);background:#ef444426;color:#fca5a5;cursor:pointer;font-size:.82rem;transition:background .15s}.ae-retry-btn:hover{background:#ef444440}.admin-enroll-settings{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.aes-container{max-width:720px;margin:0 auto}.aes-header{margin-bottom:2rem}.aes-header h1{font-size:1.5rem;margin:.25rem 0 .15rem}.aes-header p{color:var(--text-secondary, #a1a1aa);font-size:.82rem}.aes-loading{text-align:center;padding:3rem;color:var(--text-secondary, #a1a1aa)}.aes-alert{padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem;font-size:.85rem}.aes-alert-error{background:#ef44441f;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.aes-alert-success{background:#22c55e1f;border:1px solid rgba(34,197,94,.3);color:#86efac}.aes-card{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:1.5rem}.aes-card h2{margin:0 0 .25rem;font-size:1.1rem}.aes-card-desc{color:var(--text-secondary, #a1a1aa);font-size:.82rem;margin:0 0 1.5rem;line-height:1.55}.aes-field{margin-bottom:1.25rem}.aes-field>label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.4rem;color:var(--text-primary, #e4e4e7)}.aes-field-disabled{opacity:.45;pointer-events:none}.aes-toggle-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.88rem}.aes-toggle-wrap{position:relative;display:inline-flex;width:40px;height:22px;flex-shrink:0}.aes-toggle{opacity:0;width:0;height:0;position:absolute}.aes-toggle-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#3f3f46;border-radius:999px;transition:background .2s}.aes-toggle-slider:before{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:#e4e4e7;border-radius:50%;transition:transform .2s}.aes-toggle:checked+.aes-toggle-slider{background:#6366f1}.aes-toggle:checked+.aes-toggle-slider:before{transform:translate(18px)}.aes-input-row{display:flex;align-items:center;gap:.5rem}.aes-input{width:120px;padding:.5rem .65rem;font-size:.9rem;background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.5rem;color:var(--text-primary, #e4e4e7);outline:none}.aes-input:focus{border-color:#6366f1;box-shadow:0 0 0 2px #6366f126}.aes-input-suffix{font-size:.9rem;color:var(--text-secondary, #a1a1aa);font-weight:600}.aes-hint{display:block;margin-top:.3rem;font-size:.75rem;color:var(--text-secondary, #a1a1aa)}.aes-preview{background:#6366f114;border:1px solid rgba(99,102,241,.2);border-radius:.5rem;padding:.65rem .85rem;font-size:.82rem;color:#c7d2fe;margin-bottom:1rem}.aes-actions{display:flex;gap:.75rem;margin-top:1.25rem}.aes-btn-save{padding:.55rem 1.5rem;font-size:.85rem;font-weight:600;background:#6366f1;color:#fff;border:none;border-radius:.5rem;cursor:pointer;transition:background .15s}.aes-btn-save:hover:not(:disabled){background:#4f46e5}.aes-btn-save:disabled{opacity:.5;cursor:not-allowed}.aes-meta{margin-top:1rem;font-size:.75rem;color:var(--text-secondary, #a1a1aa)}.aes-info{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;overflow:hidden}.aes-info summary{padding:.85rem 1rem;cursor:pointer;font-size:.85rem;font-weight:600;color:var(--text-secondary, #a1a1aa);-webkit-user-select:none;user-select:none}.aes-info summary:hover{color:var(--text-primary, #e4e4e7)}.aes-info[open] summary{border-bottom:1px solid var(--border-color, #27272a)}.aes-info-body{padding:.85rem 1rem;font-size:.82rem;color:var(--text-secondary, #a1a1aa);line-height:1.6}.aes-info-body ol{padding-left:1.3rem;margin:0 0 .5rem}.aes-info-body li{margin-bottom:.35rem}.back-link{color:var(--primary-color, #6366f1);text-decoration:none;font-size:.82rem}.certificate-page{max-width:900px;margin:2rem auto;padding:0 1rem}.cert-message{text-align:center;padding:3rem 1rem;color:var(--color-text-secondary)}.cert-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.cert-card{background:var(--color-surface);border-radius:12px;overflow:hidden}.cert-border{border:3px solid var(--color-primary);border-radius:12px;margin:8px;padding:3rem 2rem}.cert-inner{text-align:center}.cert-logo{font-size:3rem;margin-bottom:.5rem}.cert-heading{font-size:1.8rem;font-weight:700;color:var(--color-primary);margin:0 0 .25rem}.cert-subheading{font-size:1rem;color:var(--color-text-secondary);margin:0 0 1.5rem;letter-spacing:.05em;text-transform:uppercase}.cert-divider{height:1px;background:linear-gradient(90deg,transparent,var(--color-primary),transparent);margin:1.5rem auto;max-width:60%}.cert-label{font-size:.9rem;color:var(--color-text-muted);margin:1rem 0 .25rem}.cert-name{font-size:2rem;font-weight:700;color:var(--color-text);margin:.25rem 0 1rem}.cert-course{font-size:1.3rem;font-weight:600;color:var(--color-secondary);margin:.25rem 0 1rem}.cert-date{font-size:.95rem;color:var(--color-text-secondary);margin:.5rem 0}.cert-footer{display:flex;justify-content:center;gap:3rem;margin-top:1rem}.cert-meta{display:flex;flex-direction:column;align-items:center}.cert-meta-label{font-size:.75rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.cert-meta-value{font-size:.9rem;color:var(--color-text);font-weight:600;margin-top:.15rem}.cert-verify-link{text-align:center;margin-top:1.5rem;font-size:.85rem;color:var(--color-text-muted)}.cert-verify-link a{color:var(--color-primary);word-break:break-all}.verify-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;padding:2.5rem 2rem;max-width:600px;margin:2rem auto}.verify-heading{text-align:center;font-size:1.5rem;margin:0 0 1.5rem;color:var(--color-text)}.verify-result{text-align:center;padding:1.5rem 0}.verify-icon{font-size:3rem;margin-bottom:.5rem}.verify-result h2{font-size:1.3rem;margin:.5rem 0 1rem}.verify-result.valid h2{color:#22c55e}.verify-result.invalid h2{color:#ef4444}.verify-details{text-align:left;margin:1.5rem auto;max-width:400px}.verify-row{display:flex;justify-content:space-between;padding:.6rem 0;border-bottom:1px solid var(--color-border)}.verify-row:last-child{border-bottom:none}.verify-label{color:var(--color-text-muted);font-size:.9rem}.verify-value{color:var(--color-text);font-weight:500;font-size:.9rem}.verify-hint{color:var(--color-text-muted);font-size:.85rem;margin-top:.5rem}.verify-actions{text-align:center;margin-top:1.5rem}@media print{body *{visibility:hidden}.no-print{display:none!important}.cert-card,.cert-card *{visibility:visible}.cert-card{position:absolute;left:0;top:0;width:100%;background:#fff!important;border:none}.cert-border{border-color:#8b5cf6!important}.cert-heading{color:#8b5cf6!important}.cert-name,.cert-meta-value{color:#000!important}.cert-course{color:#06b6d4!important}.cert-label,.cert-date,.cert-subheading,.cert-meta-label{color:#666!important}.cert-divider{background:linear-gradient(90deg,transparent,#8b5cf6,transparent)!important}}.bi-page{padding:2rem 1rem;max-width:720px;margin:0 auto}.bi-loading{text-align:center;color:var(--text-secondary, #888);padding:4rem 0}.bi-container .back-link{display:inline-block;margin-bottom:1rem;color:var(--text-secondary, #888);text-decoration:none;font-size:.875rem}.bi-container .back-link:hover{color:var(--text-primary, #fff)}.bi-header{margin-bottom:2rem}.bi-header h1{display:flex;align-items:center;gap:.5rem;font-size:1.75rem;margin:0 0 .5rem}.bi-header-icon{width:28px;height:28px;color:var(--accent, #e6a919)}.bi-subtitle{color:var(--text-secondary, #aaa);margin:0}.bi-status-card{display:flex;gap:.75rem;padding:1.25rem;border-radius:10px;margin-bottom:1.5rem;align-items:flex-start}.bi-status-card svg{flex-shrink:0;margin-top:2px}.bi-status-card strong{display:block;margin-bottom:.25rem}.bi-status-card p{margin:0 0 .5rem;font-size:.9rem;color:var(--text-secondary, #ccc)}.bi-status-approved{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.bi-status-pending{background:#fbbf241a;border:1px solid rgba(251,191,36,.3);color:#fbbf24}.bi-status-rejected{background:#ef444414;border:1px solid rgba(239,68,68,.25);color:#ef4444}.bi-status-cancelled{background:#9ca3af14;border:1px solid rgba(156,163,175,.2);color:#9ca3af}.bi-benefits{margin-bottom:2rem}.bi-benefits h2{font-size:1.2rem;margin-bottom:1rem}.bi-benefits-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.bi-benefit{background:var(--card-bg, rgba(255,255,255,.04));border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px;padding:1rem}.bi-benefit-icon{font-size:1.5rem;display:block;margin-bottom:.5rem}.bi-benefit h3{font-size:1rem;margin:0 0 .25rem}.bi-benefit p{font-size:.85rem;color:var(--text-secondary, #aaa);margin:0}.bi-fee-notice{background:#fbbf2414;border:1px solid rgba(251,191,36,.2);border-radius:10px;padding:1rem 1.25rem;margin-bottom:2rem;font-size:.95rem}.bi-fee-notice strong{color:#fbbf24}.bi-fee-notice p{color:var(--text-secondary, #aaa);margin:.25rem 0 0;font-size:.85rem}.bi-form{display:flex;flex-direction:column;gap:1.25rem}.bi-field label{display:block;margin-bottom:.35rem;font-weight:500;font-size:.95rem}.bi-field textarea,.bi-field input{width:100%;background:var(--input-bg, rgba(255,255,255,.06));border:1px solid var(--border, rgba(255,255,255,.12));border-radius:8px;padding:.75rem;color:var(--text-primary, #fff);font-size:.9rem;resize:vertical}.bi-field textarea:focus,.bi-field input:focus{outline:none;border-color:var(--accent, #e6a919)}.bi-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#ef4444;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.bi-submit-btn{align-self:flex-start;padding:.75rem 2rem}.bi-history{margin-top:2.5rem}.bi-history h2{font-size:1.1rem;margin-bottom:.75rem}.bi-history-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;margin-bottom:.5rem;font-size:.9rem}.bi-history-status{text-transform:capitalize;font-weight:600;min-width:80px}.bi-history-date{color:var(--text-secondary, #888);font-size:.85rem}.bi-history-notes{margin:0;font-style:italic;color:var(--text-secondary, #aaa);flex:1}.btn-ghost{background:transparent;border:1px solid currentColor;color:inherit;cursor:pointer;border-radius:6px;padding:.35rem .75rem;font-size:.8rem}.btn-ghost:hover{background:#ffffff0d}@media(max-width:560px){.bi-benefits-grid{grid-template-columns:1fr}}.arr-page{padding:2rem 1rem;max-width:1000px;margin:0 auto}.arr-loading,.arr-empty{text-align:center;color:var(--text-secondary, #888);padding:3rem 0}.arr-container .back-link{display:inline-block;margin-bottom:1rem;font-size:.82rem;color:var(--accent, #6366f1);text-decoration:none}.arr-container .back-link:hover{text-decoration:underline}.arr-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.arr-header h1{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;margin:0}.arr-header-icon{width:26px;height:26px;color:var(--accent, #e6a919)}.arr-total{color:var(--text-secondary, #888);font-size:.9rem}.arr-fee-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:var(--card-bg, rgba(255,255,255,.04));border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px;padding:.75rem 1.25rem;margin-bottom:1.5rem;font-size:.9rem;flex-wrap:wrap}.arr-fee-edit{display:flex;gap:.5rem;align-items:center}.arr-fee-input{width:100px;padding:.4rem .6rem;background:var(--input-bg, rgba(255,255,255,.06));border:1px solid var(--border, rgba(255,255,255,.12));border-radius:6px;color:var(--text-primary, #fff);font-size:.85rem}.arr-filters{display:flex;gap:.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.arr-filter-btn{padding:.4rem .9rem;border:1px solid var(--border, rgba(255,255,255,.12));border-radius:20px;background:transparent;color:var(--text-secondary, #aaa);cursor:pointer;font-size:.8rem;transition:all .15s}.arr-filter-btn:hover{border-color:var(--accent, #e6a919);color:var(--text-primary, #fff)}.arr-filter-btn.active{background:var(--accent, #e6a919);color:#000;border-color:var(--accent, #e6a919);font-weight:600}.arr-table-wrapper{overflow-x:auto;border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px}.arr-table{width:100%;border-collapse:collapse;font-size:.875rem}.arr-table th{text-align:left;padding:.75rem 1rem;font-weight:600;color:var(--text-secondary, #aaa);border-bottom:1px solid var(--border, rgba(255,255,255,.08));white-space:nowrap}.arr-table td{padding:.75rem 1rem;border-bottom:1px solid var(--border, rgba(255,255,255,.04));vertical-align:middle}.arr-table tbody tr:hover{background:#ffffff05}.arr-user{display:flex;flex-direction:column}.arr-user-name{font-weight:500}.arr-user-email{font-size:.8rem;color:var(--text-secondary, #888)}.arr-status-badge{display:inline-block;padding:.2rem .6rem;border:1px solid;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:capitalize}.arr-actions{display:flex;gap:.4rem}.btn-approve{background:#34d39926;color:#34d399;border:1px solid rgba(52,211,153,.3);border-radius:6px;cursor:pointer;padding:.35rem .75rem;font-size:.8rem;font-weight:600}.btn-approve:hover{background:#34d39940}.btn-reject{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:6px;cursor:pointer;padding:.35rem .75rem;font-size:.8rem;font-weight:600}.btn-reject:hover{background:#ef444440}.arr-reviewed{font-size:.8rem;color:var(--text-secondary, #888)}.arr-pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;font-size:.85rem}.arr-pagination button{background:transparent;border:1px solid var(--border, rgba(255,255,255,.12));color:var(--text-primary, #fff);padding:.4rem .8rem;border-radius:6px;cursor:pointer}.arr-pagination button:disabled{opacity:.3;cursor:default}.arr-details-section{margin-top:2rem}.arr-details-section h3{font-size:1rem;margin-bottom:.75rem;color:var(--text-secondary, #aaa)}.arr-detail-card{background:var(--card-bg, rgba(255,255,255,.04));border:1px solid var(--border, rgba(255,255,255,.08));border-radius:10px;padding:1rem;margin-bottom:.75rem}.arr-detail-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.arr-detail-card p{margin:.25rem 0;font-size:.875rem;color:var(--text-secondary, #ccc)}.arr-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.arr-modal{background:var(--bg, #1a1a2e);border:1px solid var(--border, rgba(255,255,255,.1));border-radius:14px;padding:2rem;max-width:480px;width:90%}.arr-modal h2{margin:0 0 1rem;font-size:1.2rem}.arr-modal-user{margin-bottom:.5rem}.arr-modal-text{color:var(--text-secondary, #aaa);font-size:.9rem;margin-bottom:1rem}.arr-waive-label{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem;cursor:pointer}.arr-modal-notes{width:100%;background:var(--input-bg, rgba(255,255,255,.06));border:1px solid var(--border, rgba(255,255,255,.12));border-radius:8px;padding:.75rem;color:var(--text-primary, #fff);font-size:.9rem;resize:vertical;margin-bottom:1rem}.arr-modal-error{background:#ef44441a;color:#ef4444;padding:.5rem .75rem;border-radius:6px;margin-bottom:.75rem;font-size:.85rem}.arr-modal-actions{display:flex;justify-content:flex-end;gap:.75rem}.admin-competitions-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-competitions-container{max-width:1200px;margin:0 auto}.admin-competitions-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.admin-competitions-header h1{margin:.25rem 0;font-size:1.7rem}.admin-competitions-header p{margin:0;color:var(--text-secondary, #a1a1aa);font-size:.85rem}.competitions-table-wrapper{overflow-x:auto}.competitions-table{width:100%;border-collapse:collapse;font-size:.85rem}.competitions-table th,.competitions-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.competitions-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.competitions-table tbody tr:nth-child(2n){background:#ffffff05}.competitions-table tbody tr:nth-child(odd){background:#ffffff0d}.competitions-table tbody tr:hover{background:#6366f114}.badge-draft{background:#94a3b826;color:#94a3b8}.competition-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.competition-form h2{margin:0 0 1rem;font-size:1.15rem}@media(max-width:768px){.admin-competitions-header{flex-direction:column}}.admin-rev-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.admin-rev-container{max-width:1280px;margin:0 auto}.admin-rev-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.admin-rev-header h1{font-size:1.7rem;margin:.25rem 0}.admin-rev-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem}.rev-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--border-color, #27272a);margin-bottom:1.5rem;overflow-x:auto}.rev-tab{padding:.6rem 1.1rem;border:none;background:none;color:var(--text-secondary, #a1a1aa);font-size:.82rem;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;transition:color .15s,border-color .15s}.rev-tab:hover{color:var(--text-primary, #e4e4e7)}.rev-tab.active{color:var(--accent, #6366f1);border-bottom-color:var(--accent, #6366f1)}.overview-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem;margin-bottom:2rem}.overview-card{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.25rem}.overview-card .oc-label{color:var(--text-secondary, #a1a1aa);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600;margin-bottom:.35rem}.overview-card .oc-value{font-size:1.4rem;font-weight:700}.overview-card .oc-subtext{color:var(--text-secondary, #a1a1aa);font-size:.75rem;margin-top:.2rem}.rev-table-wrapper{overflow-x:auto;margin-bottom:1.5rem}.rev-table{width:100%;border-collapse:collapse;font-size:.85rem}.rev-table th,.rev-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.rev-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.rev-table tbody tr:nth-child(2n){background:#ffffff05}.rev-table tbody tr:nth-child(odd){background:#ffffff0d}.rev-table tbody tr:hover{background:#6366f114}.title-cell{font-weight:500}.actions-cell{white-space:nowrap}.badge-main{background:#6366f126;color:#818cf8}.badge-stream{background:#facc151f;color:#facc15}.badge-employee{background:#6366f126;color:#818cf8}.badge-contractor{background:#22c55e26;color:#4ade80}.badge-sub-staff{background:#facc151f;color:#facc15}.badge-monthly{background:#6366f126;color:#818cf8}.badge-ad-hoc{background:#facc151f;color:#facc15}.badge-active{background:#22c55e26;color:#4ade80}.badge-inactive{background:#6b728026;color:#9ca3af}.rev-form{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1.5rem;margin-bottom:2rem}.rev-form h2{font-size:1.15rem;margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem 1rem;margin-bottom:1rem}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group.full-width{grid-column:1 / -1;margin-bottom:.75rem}.form-group label{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary, #a1a1aa)}.form-group input,.form-group textarea,.form-group select{background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.45rem .6rem;color:inherit;font-size:.85rem}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.pnl-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.pnl-card{background:var(--bg-secondary, #18181b);border:1px solid var(--border-color, #27272a);border-radius:.75rem;padding:1rem 1.25rem}.pnl-card .pnl-label{color:var(--text-secondary, #a1a1aa);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:600}.pnl-card .pnl-value{font-size:1.25rem;font-weight:700;margin-top:.25rem}.pnl-income{color:#4ade80}.pnl-expense{color:#f87171}.pnl-net{color:var(--accent, #6366f1)}.pnl-section-header{font-size:.9rem;font-weight:600;margin:1.25rem 0 .5rem;color:var(--text-primary, #e4e4e7)}.rev-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.rev-toolbar label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary, #a1a1aa)}.rev-toolbar input,.rev-toolbar select{background:var(--bg-primary, #0f1117);border:1px solid var(--border-color, #27272a);border-radius:.4rem;padding:.35rem .5rem;color:inherit;font-size:.82rem}.rev-toolbar .toolbar-group{display:flex;align-items:center;gap:.35rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent, #6366f1);color:#fff}.btn-danger{background:#ef444426;color:#f87171}.btn-success{background:#22c55e26;color:#4ade80}.back-link{color:var(--accent, #6366f1);text-decoration:none;font-size:.82rem}.admin-success{background:#22c55e1a;border:1px solid #166534;color:#4ade80;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem}.rev-section-title{font-size:1.1rem;font-weight:600;margin-bottom:1rem}@media(max-width:640px){.admin-rev-header{flex-direction:column;gap:.75rem}.overview-cards{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.rev-toolbar{flex-direction:column;align-items:flex-start}}.contractor-page{min-height:100vh;background:var(--bg-primary, #0f1117);color:var(--text-primary, #e4e4e7);padding:2rem 1rem}.contractor-container{max-width:1000px;margin:0 auto}.contractor-header h1{font-size:1.7rem;margin:.25rem 0}.contractor-header p{color:var(--text-secondary, #a1a1aa);font-size:.85rem;margin-bottom:1.5rem}.con-table-wrapper{overflow-x:auto;margin-bottom:1.5rem}.con-table{width:100%;border-collapse:collapse;font-size:.85rem}.con-table th,.con-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--border-color, #27272a)}.con-table th{color:var(--text-secondary, #a1a1aa);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.con-table tbody tr:nth-child(2n){background:#ffffff05}.con-table tbody tr:nth-child(odd){background:#ffffff0d}.con-table tbody tr:hover{background:#6366f114}.con-section-title{font-size:1.1rem;font-weight:600;margin:2rem 0 .75rem}.con-section-title:first-of-type{margin-top:.5rem}.mono-cell{font-family:SF Mono,Fira Code,monospace;font-size:.8rem}.right-align{text-align:right}.empty-msg{text-align:center;color:var(--text-secondary, #a1a1aa);padding:1.5rem!important}.badge{display:inline-block;padding:.2rem .55rem;border-radius:9999px;font-size:.72rem;font-weight:600;text-transform:capitalize}.badge-credit{background:#22c55e26;color:#4ade80}.badge-debit{background:#ef44441f;color:#f87171}.loading-msg{color:var(--text-secondary, #a1a1aa)}.admin-error{background:#ef44441a;border:1px solid #991b1b;color:#f87171;padding:.75rem 1rem;border-radius:.5rem;margin-bottom:1rem}.btn{border:none;cursor:pointer;border-radius:.4rem;font-size:.82rem;padding:.45rem .85rem;transition:opacity .15s}.btn-ghost{background:transparent;border:1px solid var(--border-color, #27272a);color:var(--text-primary, #e4e4e7)}.btn-sm{padding:.25rem .55rem;font-size:.75rem}.auth-page{min-height:calc(100vh - var(--navbar-height));display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-secondary-light) 100%)}.auth-container{width:100%;max-width:440px}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-8)}.auth-header{text-align:center;margin-bottom:var(--space-8)}.auth-header h1{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2);background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-header p{color:var(--color-text-secondary)}.auth-error{background:var(--color-error-light);border:1px solid rgba(239,68,68,.3);color:var(--color-error);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-6);font-size:var(--font-size-sm)}.auth-form{display:flex;flex-direction:column;gap:var(--space-5)}.forgot-link{font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-normal)}.auth-divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-6) 0}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.auth-divider span{font-size:var(--font-size-sm);color:var(--color-text-muted)}.social-buttons{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.auth-footer{text-align:center;margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-footer a{color:var(--color-primary);font-weight:var(--font-weight-medium)}.terms-link{text-align:center;margin-top:var(--space-4);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.terms-link a{color:var(--color-primary);font-weight:var(--font-weight-medium);text-decoration:none}.terms-link a:hover{text-decoration:underline}.auth-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-8);gap:var(--space-4)}.auth-loading .spinner{width:40px;height:40px;border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-loading p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.auth-info{text-align:center;color:var(--color-text-secondary);margin-bottom:var(--space-6);line-height:1.6}@media(max-width:480px){.auth-card{padding:var(--space-6)}.social-buttons{grid-template-columns:1fr}}:root{--color-primary: #8b5cf6;--color-primary-hover: #7c3aed;--color-primary-light: rgba(139, 92, 246, .15);--color-secondary: #06b6d4;--color-secondary-hover: #0891b2;--color-secondary-light: rgba(6, 182, 212, .15);--color-bg: #0f0f0f;--color-bg-elevated: #1a1a1a;--color-bg-hover: #1e1e1e;--color-surface: #1a1a1a;--color-surface-elevated: #262626;--color-surface-hover: #2a2a2a;--color-primary-bg: rgba(139, 92, 246, .1);--color-text: #f5f5f5;--color-text-secondary: #a3a3a3;--color-text-muted: #737373;--color-text-inverse: #0f0f0f;--color-border: #333333;--color-border-light: #404040;--color-border-focus: var(--color-primary);--color-success: #22c55e;--color-success-light: rgba(34, 197, 94, .15);--color-error: #ef4444;--color-error-light: rgba(239, 68, 68, .1);--color-warning: #f59e0b;--color-warning-light: rgba(245, 158, 11, .15);--color-info: #3b82f6;--color-info-light: rgba(59, 130, 246, .15);--font-family: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--line-height-tight: 1.25;--line-height-normal: 1.5;--line-height-relaxed: 1.625;--space-0: 0;--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;--container-max: 1200px;--navbar-height: 64px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .5);--shadow-dropdown: 0 10px 40px rgba(0, 0, 0, .5);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--focus-ring: 0 0 0 3px rgba(139, 92, 246, .15);--focus-ring-error: 0 0 0 3px rgba(239, 68, 68, .15);--z-dropdown: 50;--z-sticky: 100;--z-modal-backdrop: 200;--z-modal: 300;--z-tooltip: 400;--z-toast: 500;--card-bg: #1a1a1a;--surface: #1a1a1a;--surface-alt: #262626;--border: #333333;--border-color: #333333;--text-primary: #f5f5f5;--text-secondary: #a3a3a3;--bg-secondary: #0f0f0f;--accent: #8b5cf6;--primary-color: #d4af37}[data-theme=light]{--color-primary: #7c3aed;--color-primary-hover: #6d28d9;--color-primary-light: rgba(124, 58, 237, .1);--color-secondary: #0891b2;--color-secondary-hover: #0e7490;--color-secondary-light: rgba(8, 145, 178, .1);--color-bg: #f8f6f1;--color-bg-elevated: #fffdf7;--color-bg-hover: #f0ede5;--color-surface: #fffdf7;--color-surface-elevated: #f5f0e6;--color-surface-hover: #e8e4da;--color-primary-bg: rgba(124, 58, 237, .08);--color-text: #1f2937;--color-text-secondary: #4b5563;--color-text-muted: #9ca3af;--color-text-inverse: #ffffff;--color-border: #e5dfd3;--color-border-light: #d5cfc3;--color-success: #16a34a;--color-success-light: rgba(22, 163, 74, .1);--color-error: #dc2626;--color-error-light: rgba(220, 38, 38, .1);--color-warning: #d97706;--color-warning-light: rgba(217, 119, 6, .1);--color-info: #2563eb;--color-info-light: rgba(37, 99, 235, .1);--shadow-sm: 0 1px 2px rgba(139, 115, 56, .06);--shadow-md: 0 4px 6px rgba(139, 115, 56, .08);--shadow-lg: 0 10px 15px rgba(139, 115, 56, .1);--shadow-xl: 0 20px 25px rgba(139, 115, 56, .12);--shadow-dropdown: 0 10px 40px rgba(139, 115, 56, .15);--card-bg: #fffdf7;--surface: #fffdf7;--surface-alt: #f5f0e6;--border: #e5dfd3;--border-color: #e5dfd3;--text-primary: #1f2937;--text-secondary: #6b7280;--bg-secondary: #f0ede5;--accent: #7c3aed;--primary-color: #d4af37}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}html,body,#root{height:100%}body{font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--color-text);background-color:var(--color-bg)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--space-4)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover)}input,button,select,textarea{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;background:none;color:inherit}input:focus,select:focus,textarea:focus,button:focus{outline:none}ul,ol{list-style:none}img,picture,video,canvas,svg{display:block;max-width:100%}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-4)}.gradient-text{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);line-height:1;border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal);text-decoration:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn-secondary{background:transparent;color:var(--color-text);border-color:var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-surface-elevated);border-color:var(--color-border-light)}.btn-ghost{background:transparent;color:var(--color-text);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-surface)}.btn-danger{background:var(--color-error);color:#fff;border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:#dc2626;border-color:#dc2626}.btn-social{display:flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-weight:var(--font-weight-medium);transition:all var(--transition-normal)}.btn-social:hover{background:var(--color-surface-elevated);border-color:var(--color-text-muted)}.btn-full{width:100%;padding:var(--space-4)}.form-group{display:flex;flex-direction:column;gap:var(--space-2)}.form-group label{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text)}.form-group input,.form-group select,.form-group textarea{padding:var(--space-3) var(--space-4);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-normal)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-border-focus);box-shadow:var(--focus-ring)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted)}.form-group textarea{resize:vertical;min-height:120px}.form-group select{cursor:pointer}.form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted)}.form-checkbox{display:flex;align-items:flex-start;gap:var(--space-3)}.form-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;margin-top:2px}.form-checkbox label{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-normal)}.toggle-group{display:flex;justify-content:space-between;align-items:center;padding:var(--space-4);background:var(--color-bg);border-radius:var(--radius-md)}.toggle-info{display:flex;flex-direction:column;gap:var(--space-1)}.toggle-label{font-weight:var(--font-weight-medium)}.toggle-desc{font-size:var(--font-size-sm);color:var(--color-text-muted)}.toggle{width:44px;height:24px;accent-color:var(--color-primary);cursor:pointer}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--transition-normal)}.card:hover{border-color:var(--color-primary)}.card-header{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.card-footer{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.badge{display:inline-block;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;border-radius:var(--radius-full)}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-secondary{background:var(--color-secondary-light);color:var(--color-secondary)}.badge-success{background:var(--color-success-light);color:var(--color-success)}.badge-error{background:var(--color-error-light);color:var(--color-error)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning)}.alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.alert-error{background:var(--color-error-light);border:1px solid rgba(239,68,68,.3);color:var(--color-error)}.alert-success{background:var(--color-success-light);border:1px solid rgba(34,197,94,.3);color:var(--color-success)}.alert-warning{background:var(--color-warning-light);border:1px solid rgba(245,158,11,.3);color:var(--color-warning)}.alert-info{background:var(--color-info-light);border:1px solid rgba(59,130,246,.3);color:var(--color-info)}.empty-state{text-align:center;padding:var(--space-8)}.empty-state p{color:var(--color-text-muted);margin-bottom:var(--space-4)}.page-header{text-align:center;max-width:700px;margin:0 auto var(--space-12)}.page-header h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.page-header p{color:var(--color-text-secondary);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed)}@media(max-width:768px){.page-header h1{font-size:var(--font-size-3xl)}.page-header p{font-size:var(--font-size-base)}}.divider{display:flex;align-items:center;gap:var(--space-4);margin:var(--space-6) 0}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.divider span{font-size:var(--font-size-sm);color:var(--color-text-muted)}.danger-zone{margin-top:var(--space-12);padding:var(--space-6);background:var(--color-error-light);border:1px solid rgba(239,68,68,.3);border-radius:var(--radius-md)}.danger-zone h3{color:var(--color-error);margin-bottom:var(--space-2)}.danger-zone p{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.card-thumbnail{width:100%;aspect-ratio:16 / 9;object-fit:cover;border-radius:var(--radius-md, 8px);margin-bottom:.75rem;background:var(--color-surface, #f3f4f6);display:block}a:has(>.card-thumbnail){display:block;line-height:0;text-decoration:none}.has-thumbnail{padding-top:0;overflow:hidden}.has-thumbnail>.card-thumbnail{border-radius:var(--radius-md, 8px) var(--radius-md, 8px) 0 0;margin-bottom:0}.has-thumbnail>.card-thumbnail+*{padding-top:.75rem}
