:root{--color-primary:#a435f0;--color-primary-hover:#8710d8;--color-primary-light:#f5ebff;--color-primary-dark:#8710d8;--color-primary-gradient:linear-gradient(135deg,#a435f0,#8710d8);--color-secondary:#5624d0;--color-secondary-hover:#401b9c;--color-rating:#e59819;--color-rating-light:#f4c150;--color-bestseller-bg:#eceb98;--color-bestseller-text:#3d3c0a;--color-new-bg:#acd2cc;--color-new-text:#003b36;--color-popular-bg:#f5ebff;--color-popular-text:#5624d0;--color-success:#1e6f5c;--color-success-light:#d4edda;--color-success-dark:#155724;--color-warning:#e59819;--color-warning-light:#fff3cd;--color-warning-dark:#856404;--color-danger:#c4302b;--color-danger-light:#f8d7da;--color-danger-dark:#721c24;--color-info:#1c75bc;--color-info-light:#d1ecf1;--color-info-dark:#0c5460;--color-white:#fff;--color-black:#000;--color-gray-50:#f7f9fa;--color-gray-100:#f7f9fa;--color-gray-200:#e8e9eb;--color-gray-300:#d1d7dc;--color-gray-400:#b4b4b4;--color-gray-500:#6a6f73;--color-gray-600:#6a6f73;--color-gray-700:#3e4143;--color-gray-800:#2d2f31;--color-gray-900:#1c1d1f;--text-primary:#1c1d1f;--text-secondary:#6a6f73;--text-muted:#b4b4b4;--text-white:#fff;--text-link:#5624d0;--text-link-hover:#401b9c;--bg-primary:#fff;--bg-secondary:#f7f9fa;--bg-tertiary:#fff;--bg-dark:#1c1d1f;--bg-dark-lighter:#2d2f31;--border-light:#e8e9eb;--border-medium:#d1d7dc;--border-dark:#b4b4b4;--primary-color:#a435f0;--secondary-color:#5624d0;--success-color:#1e6f5c;--danger-color:#c4302b;--warning-color:#e59819;--border-color:#e8e9eb;--background:#fff;--background-secondary:#f7f9fa;--shadow-xs:0 1px 2px #0000000f;--shadow-sm:0 2px 4px #00000014;--shadow-md:0 4px 8px #00000014;--shadow-lg:0 4px 16px #0000001f;--shadow-xl:0 8px 24px #00000029;--shadow-2xl:0 12px 40px #0003;--shadow-card:0 2px 4px #00000014,0 4px 12px #00000014;--shadow-card-hover:0 4px 8px #0000001f,0 8px 24px #0000001f;--radius-none:0;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-xl:12px;--radius-full:9999px;--space-0:0;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.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;--space-24:6rem;--font-family-base:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Roboto","Segoe UI","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--font-family-heading:var(--font-family-base);--font-family-mono:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace;--font-size-xs:0.75rem;--font-size-sm:0.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.2;--line-height-normal:1.4;--line-height-relaxed:1.6;--letter-spacing-tight:-0.02em;--letter-spacing-normal:0;--letter-spacing-wide:0.02em;--transition-fast:0.15s ease;--transition-base:0.2s ease;--transition-slow:0.3s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--container-sm:640px;--container-md:768px;--container-lg:1024px;--container-xl:1340px;--container-2xl:1340px;--header-height:72px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary);font-family:var(--font-family-base);line-height:var(--line-height-normal);margin:0}code{font-family:var(--font-family-mono)}#root{min-height:100vh}a{color:var(--text-link);text-decoration:none}a:hover{color:var(--text-link-hover)}.ud-error-boundary{align-items:center;background:var(--bg-primary);display:flex;justify-content:center;min-height:100vh;padding:24px}.ud-error-boundary-content{max-width:480px;text-align:center}.ud-error-icon{align-items:center;background:var(--color-error-light);border-radius:var(--radius-full);display:flex;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.ud-error-icon svg{color:var(--color-error);height:40px;width:40px}.ud-error-boundary h1{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:12px}.ud-error-boundary>.ud-error-boundary-content>p{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:24px}.ud-error-details{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-sm);margin-bottom:24px;text-align:left}.ud-error-details summary{color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:12px 16px;-webkit-user-select:none;user-select:none}.ud-error-details summary:hover{color:var(--text-primary)}.ud-error-message{background:var(--bg-dark);border-top:1px solid var(--border-color);color:var(--color-error);font-family:var(--font-family-mono);font-size:var(--font-size-xs);margin:0;max-height:200px;overflow-y:auto;padding:16px;white-space:pre-wrap;word-break:break-word}.ud-error-actions{display:flex;gap:12px;justify-content:center}.ud-btn-home,.ud-btn-retry{border:none;cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:12px 24px;transition:all var(--transition-fast)}.ud-btn-retry{background:var(--color-primary);color:var(--text-white)}.ud-btn-retry:hover{background:var(--color-primary-dark)}.ud-btn-home{background:#0000;border:1px solid var(--border-color);color:var(--text-primary)}.ud-btn-home:hover{background:var(--bg-secondary)}@media (max-width:480px){.ud-error-actions{flex-direction:column}.ud-btn-home,.ud-btn-retry{width:100%}}.ud-login-page{background:var(--bg-primary);display:flex;min-height:100vh}.ud-login-branding{align-items:center;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);color:var(--text-white);display:flex;flex:1 1;flex-direction:column;justify-content:center;padding:48px}.ud-login-branding-content{max-width:400px;text-align:center}.ud-login-logo{align-items:center;background:#ffffff26;border-radius:var(--radius-full);display:flex;height:120px;justify-content:center;margin:0 auto 32px;width:120px}.ud-login-logo svg{color:var(--text-white);height:64px;width:64px}.ud-login-branding h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin-bottom:16px}.ud-login-branding p{font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:32px;opacity:.9}.ud-login-features{display:flex;flex-direction:column;gap:16px;text-align:left}.ud-login-feature{align-items:center;display:flex;font-size:var(--font-size-base);gap:12px}.ud-login-feature-icon{background:#fff3;border-radius:var(--radius-full);flex-shrink:0;height:24px;width:24px}.ud-login-feature-icon,.ud-login-form-section{align-items:center;display:flex;justify-content:center}.ud-login-form-section{background:var(--bg-primary);flex:1 1;flex-direction:column;padding:48px}.ud-login-container{max-width:400px;width:100%}.ud-login-header{margin-bottom:32px;text-align:center}.ud-login-header h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-login-header p{color:var(--text-secondary);font-size:var(--font-size-base)}.ud-login-error{align-items:center;background:var(--color-error-light);border-radius:var(--radius-sm);color:var(--color-error);display:flex;font-size:var(--font-size-sm);gap:8px;margin-bottom:24px;padding:12px 16px}.ud-login-error svg{flex-shrink:0}.ud-login-success{background:var(--color-success-light);border-radius:var(--radius-sm);color:var(--color-success);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:24px;padding:12px 16px;text-align:center}.ud-login-form{display:flex;flex-direction:column;gap:20px}.ud-contact-toggle{background:var(--bg-secondary);border-radius:var(--radius-sm);display:flex;gap:4px;padding:4px}.ud-contact-toggle-btn{background:#0000;border:none;border-radius:var(--radius-xs);color:var(--text-secondary);cursor:pointer;flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:10px 16px;transition:all var(--transition-fast)}.ud-contact-toggle-btn.active{background:var(--bg-primary);box-shadow:var(--shadow-sm);color:var(--text-primary)}.ud-contact-toggle-btn:hover:not(.active){color:var(--text-primary)}.ud-form-group{display:flex;flex-direction:column;gap:8px}.ud-form-label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ud-form-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-family:var(--font-family-base);font-size:var(--font-size-base);padding:12px 16px;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.ud-form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #a445b21a;outline:none}.ud-form-input::placeholder{color:var(--text-muted)}.ud-otp-input-wrapper{display:flex;gap:8px;justify-content:center}.ud-otp-digit{border:2px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);height:56px;text-align:center;transition:all var(--transition-fast);width:48px}.ud-otp-digit:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #a445b21a;outline:none}.ud-btn-submit{align-items:center;background:var(--color-primary);border:none;border-radius:var(--radius-sm);color:var(--text-white);cursor:pointer;display:flex;font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);gap:8px;justify-content:center;padding:14px 24px;transition:background-color var(--transition-fast);width:100%}.ud-btn-submit:hover:not(:disabled){background:var(--color-primary-dark)}.ud-btn-submit:disabled{cursor:not-allowed;opacity:.7}.ud-btn-spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:var(--radius-full);border-top:2px solid var(--text-white);height:20px;width:20px}.ud-resend-section{color:var(--text-secondary);font-size:var(--font-size-sm);text-align:center}.ud-resend-btn{background:none;border:none;color:var(--color-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-left:4px;padding:0}.ud-resend-btn:hover:not(:disabled){text-decoration:underline}.ud-resend-btn:disabled{color:var(--text-muted);cursor:not-allowed}.ud-btn-secondary{border-radius:var(--radius-sm);font-family:var(--font-family-base);font-weight:var(--font-weight-semibold);padding:12px 24px;width:100%}.ud-btn-secondary:hover{border-color:var(--text-secondary)}.ud-login-divider{align-items:center;color:var(--text-muted);display:flex;font-size:var(--font-size-sm);gap:16px}.ud-login-divider:after,.ud-login-divider:before{background:var(--border-light);content:"";flex:1 1;height:1px}.ud-social-login{display:flex;flex-direction:column;gap:12px}.ud-social-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:12px;justify-content:center;padding:12px 24px;transition:all var(--transition-fast);width:100%}.ud-social-btn:hover{background:var(--bg-secondary)}.ud-social-btn svg{height:20px;width:20px}.ud-login-footer{color:var(--text-muted);font-size:var(--font-size-xs);margin-top:32px;text-align:center}.ud-login-footer a{color:var(--color-primary);text-decoration:none}.ud-login-footer a:hover{text-decoration:underline}@media (max-width:968px){.ud-login-page{flex-direction:column}.ud-login-branding{min-height:auto;padding:32px 24px}.ud-login-branding h1{font-size:var(--font-size-2xl)}.ud-login-branding p{font-size:var(--font-size-base);margin-bottom:24px}.ud-login-features{display:none}.ud-login-form-section{padding:32px 24px}}@media (max-width:480px){.ud-login-branding{padding:24px 16px}.ud-login-logo{height:80px;margin-bottom:16px;width:80px}.ud-login-logo svg{height:40px;width:40px}.ud-login-form-section{padding:24px 16px}.ud-login-header h2,.ud-otp-digit{font-size:var(--font-size-xl)}.ud-otp-digit{height:48px;width:40px}}.home-page{background:var(--bg-primary)}.ud-hero-banner{background:var(--bg-dark);padding:48px 0}.ud-hero-content{max-width:560px}.ud-hero-content h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin-bottom:12px}.ud-hero-content p{color:var(--color-gray-300);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:24px}.ud-btn{border:none;cursor:pointer;display:inline-block;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:10px 16px;text-decoration:none;transition:background-color var(--transition-fast)}.ud-btn-outline,.ud-btn-primary:hover{color:var(--text-white)}.ud-btn-outline{background:#0000;border:1px solid var(--text-white);margin-left:12px}.ud-btn-outline:hover{background:#ffffff1a;color:var(--text-white)}.ud-btn-lg{font-size:var(--font-size-base);padding:14px 24px}.ud-section-subtitle{font-size:var(--font-size-sm);margin-top:4px}.ud-carousel-section{border-bottom:1px solid var(--border-light);padding:32px 0}.ud-carousel-section:last-child{border-bottom:none}.ud-carousel-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.ud-carousel-header h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.ud-carousel-link{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin-top:4px;text-decoration:none;white-space:nowrap}.ud-carousel-link:hover{color:var(--color-primary-dark)}.ud-carousel-wrapper{position:relative}.ud-carousel-track{-ms-overflow-style:none;display:flex;gap:16px;overflow-x:auto;padding:4px 0;scroll-snap-type:x mandatory;scrollbar-width:none}.ud-carousel-track::-webkit-scrollbar{display:none}.ud-carousel-arrow{align-items:center;background:var(--bg-dark);border:none;border-radius:50%;box-shadow:var(--shadow-md);color:var(--text-white);cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);width:40px;z-index:2}.ud-carousel-arrow:hover{background:var(--color-gray-800)}.ud-carousel-arrow-left{left:-20px}.ud-carousel-arrow-right{right:-20px}.ud-course-card{color:inherit;display:flex;flex:0 0 240px;flex-direction:column;scroll-snap-align:start;text-decoration:none}.ud-course-card:hover .ud-course-card-title{color:var(--color-primary)}.ud-course-card-thumb{aspect-ratio:16/9;background:var(--bg-secondary);border:1px solid var(--border-light);overflow:hidden;width:100%}.ud-course-card-thumb img{height:100%;object-fit:cover;width:100%}.ud-course-card-thumb-placeholder{background:var(--color-gray-200);height:100%;width:100%}.ud-course-card-body{padding:8px 0}.ud-course-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:2px;overflow:hidden}.ud-course-card-instructor{color:var(--text-secondary);font-size:var(--font-size-xs);margin-bottom:4px}.rating-stars{align-items:center;display:flex;gap:4px;margin-bottom:4px}.rating-number{color:var(--color-rating);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.stars{align-items:center;display:flex;gap:1px}.rating-count{color:var(--text-secondary);font-size:var(--font-size-xs)}.ud-course-card-price{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.ud-course-card-badge{background:var(--color-bestseller-bg);color:var(--color-bestseller-text);display:inline-block;font-size:10px;font-weight:var(--font-weight-bold);margin-top:4px;padding:2px 8px}.ud-course-card-progress{margin-top:4px}.ud-progress-bar{background:var(--color-gray-200);height:4px;overflow:hidden;width:100%}.ud-progress-fill{background:var(--color-primary);height:100%;transition:width var(--transition-slow)}.ud-progress-text{color:var(--text-secondary);display:block;font-size:var(--font-size-xs);margin-top:2px}.ud-skeleton-card{pointer-events:none}.ud-skeleton-thumb{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%}.ud-skeleton-line{border-radius:2px}.ud-skeleton-title{height:16px;margin-bottom:8px;width:90%}.ud-skeleton-subtitle{height:12px;margin-bottom:8px;width:60%}.ud-skeleton-short{height:12px;width:40%}.ud-goal-filter-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.ud-goal-filter-btn{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--text-secondary);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:6px 18px;transition:all var(--transition-fast)}.ud-goal-filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.ud-goal-filter-btn.active{background:var(--bg-dark);border-color:var(--bg-dark);color:var(--text-white)}.ud-goal-carousel-track{-ms-overflow-style:none;display:flex;gap:16px;overflow-x:auto;padding:4px 0 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.ud-goal-carousel-track::-webkit-scrollbar{display:none}.ud-goal-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex:0 0 252px;flex-direction:column;overflow:hidden;scroll-snap-align:start;transition:box-shadow var(--transition-fast),transform var(--transition-fast),border-color var(--transition-fast)}.ud-goal-card:hover{border-color:var(--color-gray-300);box-shadow:0 8px 24px #0000001f;transform:translateY(-3px)}.ud-goal-cover{flex-shrink:0;height:158px;overflow:hidden;position:relative}.ud-goal-cover-img{display:block;height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.ud-goal-card:hover .ud-goal-cover-img{transform:scale(1.05)}.ud-goal-cover-fallback{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ud-goal-fallback-initial{color:#ffffffd9;font-size:56px;font-weight:var(--font-weight-extrabold);line-height:1;text-shadow:0 2px 12px #0003}.ud-goal-cover-overlay{background:linear-gradient(0deg,#000000b8 0,#0000001a 55%,#0000);inset:0;pointer-events:none;position:absolute}.ud-goal-cat-badge{border-radius:var(--radius-full);color:#fff;font-size:10px;font-weight:var(--font-weight-bold);left:10px;letter-spacing:.04em;padding:3px 10px;position:absolute;text-transform:uppercase;top:10px;z-index:2}.ud-goal-cover-title{bottom:12px;color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-extrabold);left:12px;line-height:var(--line-height-tight);margin:0;position:absolute;right:12px;text-shadow:0 1px 4px #0006;z-index:2}.ud-goal-card-body{display:flex;flex:1 1;flex-direction:column;gap:10px;padding:14px 14px 12px}.ud-goal-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);margin:0;overflow:hidden}.ud-goal-stats-row{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-md);display:flex;padding:9px 0}.ud-goal-stat-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:2px}.ud-goal-stat-sep{background:var(--border-light);flex-shrink:0;height:24px;width:1px}.ud-goal-stat-val{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-extrabold);line-height:1}.ud-goal-stat-lbl{color:var(--text-muted);font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.04em;text-transform:uppercase}.ud-goal-cta-link{align-items:center;display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);gap:4px;margin-top:auto;transition:gap var(--transition-fast)}.ud-goal-card:hover .ud-goal-cta-link{gap:8px}.ud-mock-section{padding-bottom:40px}.ud-mock-section-highlights{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;gap:0;margin-bottom:20px;padding:12px 20px;width:-webkit-fit-content;width:fit-content}.ud-mock-highlight-item{align-items:center;display:flex;flex-direction:column;padding:0 20px}.ud-mock-hl-num{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-extrabold);line-height:1}.ud-mock-hl-lbl{color:var(--text-secondary);font-size:11px;margin-top:3px;white-space:nowrap}.ud-mock-hl-sep{background:var(--border-light);flex-shrink:0;height:36px;width:1px}.ud-mock-carousel-track{-ms-overflow-style:none;display:flex;gap:16px;overflow-x:auto;padding:4px 0 8px;scroll-snap-type:x mandatory;scrollbar-width:none}.ud-mock-carousel-track::-webkit-scrollbar{display:none}.ud-mock-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);color:inherit;display:flex;flex:0 0 272px;flex-direction:column;overflow:hidden;scroll-snap-align:start;text-decoration:none;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.ud-mock-card:hover{box-shadow:0 6px 24px #0000001f;color:inherit;transform:translateY(-3px)}.ud-mock-cover{flex-shrink:0;height:155px;overflow:hidden;position:relative}.ud-mock-cover-img{height:100%;object-fit:cover;transition:transform .35s ease;width:100%}.ud-mock-card:hover .ud-mock-cover-img{transform:scale(1.06)}.ud-mock-cover-fallback{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.ud-mock-cover-overlay{background:linear-gradient(0deg,#000000ad 0,#0000002e 55%,#0000000a);inset:0;pointer-events:none;position:absolute}.ud-mock-tag-pill{border-radius:var(--radius-full);font-size:10px;left:10px;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase;top:10px}.ud-mock-cover-title,.ud-mock-tag-pill{font-weight:var(--font-weight-extrabold);position:absolute;z-index:1}.ud-mock-cover-title{bottom:10px;color:#fff;font-size:15px;left:12px;line-height:var(--line-height-tight);margin:0;right:12px;text-shadow:0 1px 4px #00000073}.ud-mock-card-body{display:flex;flex:1 1;flex-direction:column;padding:14px 16px}.ud-mock-card-subtitle{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;flex:1 1;font-size:var(--font-size-xs);line-height:var(--line-height-relaxed);margin-bottom:12px;overflow:hidden}.ud-mock-stats-row{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-md);display:flex;margin-bottom:12px;padding:10px 0}.ud-mock-stat-item{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:2px}.ud-mock-stat-sep{background:var(--border-light);flex-shrink:0;height:26px;width:1px}.ud-mock-stat-val{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-extrabold);line-height:1}.ud-mock-stat-lbl{color:var(--text-muted);font-size:10px;font-weight:var(--font-weight-medium);letter-spacing:.04em;text-transform:uppercase}.ud-mock-card-footer{align-items:center;display:flex;gap:10px;margin-top:auto}.ud-mock-start-btn{border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:7px 16px;transition:opacity var(--transition-fast);white-space:nowrap}.ud-mock-card:hover .ud-mock-start-btn{opacity:.88}.ud-mock-attempts-row{align-items:center;color:var(--text-secondary);display:flex;font-size:11px;gap:5px}.ud-mock-dot{border-radius:50%;flex-shrink:0;height:7px;width:7px}.ud-cert-card{border:1px solid var(--border-light);border-radius:var(--radius-lg);color:inherit;cursor:pointer;display:flex;flex:0 0 240px;flex-direction:column;overflow:hidden;scroll-snap-align:start;text-decoration:none;transition:box-shadow var(--transition-fast),transform var(--transition-fast)}.ud-cert-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.ud-cert-card:hover .ud-course-card-title{color:var(--color-primary)}.ud-cert-thumb{align-items:center;aspect-ratio:16/9;display:flex;justify-content:center;overflow:hidden;width:100%}.ud-cert-thumb-img{height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.ud-cert-card:hover .ud-cert-thumb-img{transform:scale(1.05)}.ud-cert-thumb-icon{filter:drop-shadow(0 2px 10px rgba(0,0,0,.12));font-size:52px;line-height:1;transition:transform var(--transition-fast)}.ud-cert-card:hover .ud-cert-thumb-icon{transform:scale(1.1)}.ud-cert-included{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);margin-bottom:4px}.ud-category-nav{padding:32px 0 48px}.ud-category-nav h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:16px}.ud-category-chips{display:flex;flex-wrap:wrap;gap:12px}.ud-category-chip{border:1px solid var(--color-gray-900);border-radius:var(--radius-full);color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:10px 20px;text-decoration:none;transition:all var(--transition-fast)}.ud-category-chip:hover{background:var(--bg-dark);color:var(--text-white)}.ud-error-state{padding:80px 24px;text-align:center}.ud-error-state h3{color:var(--text-primary);font-size:var(--font-size-2xl);margin-bottom:8px}.ud-error-state p{color:var(--text-secondary);margin-bottom:24px}@media (max-width:768px){.ud-hero-banner{padding:32px 0}.ud-hero-content h1{font-size:var(--font-size-2xl)}.ud-hero-content p{font-size:var(--font-size-base)}.ud-btn-lg{font-size:var(--font-size-sm);padding:12px 20px}.ud-btn-outline{margin-left:8px}.ud-carousel-arrow{display:none}.ud-course-card{flex:0 0 200px}.ud-carousel-header h2{font-size:var(--font-size-xl)}.ud-goal-card{flex:0 0 224px}.ud-goal-cover{height:136px}.ud-goal-filter-bar{gap:6px}.ud-goal-filter-btn{font-size:var(--font-size-xs);padding:5px 14px}.ud-mock-card{flex:0 0 248px}.ud-mock-section-highlights{justify-content:center;width:100%}.ud-mock-highlight-item{padding:0 12px}.ud-mock-hl-num{font-size:var(--font-size-base)}.ud-cert-grid{gap:10px;grid-template-columns:1fr}.ud-cert-card-arrow{opacity:1}.ud-section-subtitle{font-size:var(--font-size-xs)}}@media (min-width:769px) and (max-width:1024px){.ud-cert-grid,.ud-goals-grid{grid-template-columns:repeat(2,1fr)}.ud-mock-card{flex:0 0 260px}}.courses-page{background:var(--bg-primary);min-height:100vh}.courses-page .container{margin:0 auto;max-width:var(--container-xl);padding:32px 24px}.courses-page h1{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:8px}.error-banner{align-items:center;background-color:var(--color-warning-light);border:1px solid var(--color-warning);display:flex;justify-content:space-between;margin-bottom:24px;padding:12px 16px}.error-banner span{color:var(--color-warning-dark);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.btn-retry-small{background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:8px 16px}.btn-retry-small:hover{background-color:var(--color-primary-dark)}.filters-section{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.courses-page .search-bar{align-items:center;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-full);display:flex;flex:1 1;height:auto;max-width:120px;min-width:80px;padding:0 12px;transition:border-color var(--transition-fast)}.courses-page .search-bar:focus-within{border-color:var(--color-primary)}.courses-page .search-bar input{background:#0000;border:none;color:var(--text-primary);font-family:var(--font-family-base);font-size:var(--font-size-sm);outline:none;padding:7px 4px;width:100%}.filters{display:flex;flex-wrap:wrap;gap:8px}.filters select{background-color:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-xs);min-width:0;padding:7px 10px}.filters select:focus{border-color:var(--color-primary);outline:none}.courses-page .course-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.courses-page .course-card{background:var(--bg-primary);border:1px solid var(--border-light);color:inherit;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:box-shadow var(--transition-fast)}.courses-page .course-card:hover{border-color:var(--border-light);box-shadow:var(--shadow-card-hover)}.courses-page .course-thumbnail{aspect-ratio:16/9;display:block;object-fit:cover;width:100%}.courses-page .course-info{display:flex;flex:1 1;flex-direction:column;padding:12px}.courses-page .course-info h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:4px;overflow:hidden}.courses-page .course-instructor{color:var(--text-secondary);font-size:var(--font-size-xs);margin-bottom:4px}.courses-page .course-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--font-size-xs);line-height:var(--line-height-normal);margin-bottom:8px;overflow:hidden}.courses-page .course-meta{align-items:center;display:flex;justify-content:space-between;margin-top:auto}.courses-page .course-price{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.courses-page .course-level{background-color:var(--color-bestseller-bg);color:var(--color-bestseller-text);font-size:10px;font-weight:var(--font-weight-bold);padding:2px 8px}.courses-page .loading,.courses-page .no-results{color:var(--text-secondary);font-size:var(--font-size-base);padding:60px 24px;text-align:center}@media (max-width:1100px){.courses-page .course-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.courses-page .container{padding:24px 16px}.courses-page h1{font-size:var(--font-size-2xl)}.courses-page .course-grid{grid-template-columns:repeat(2,1fr)}.courses-page .search-bar{max-width:100%}.filters select{font-size:var(--font-size-xs)}}@media (max-width:480px){.courses-page .course-grid{grid-template-columns:1fr}}.modal-backdrop{align-items:center;background-color:#000c;bottom:0;display:flex;justify-content:center;left:0;overflow-y:auto;padding:var(--space-8);position:fixed;right:0;top:0;z-index:var(--z-modal)}.modal-container{animation:modalSlideIn .3s ease-out;background:var(--bg-primary);box-shadow:var(--shadow-2xl);display:flex;flex-direction:column;max-height:90vh;max-width:1000px;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:flex-start;border-bottom:1px solid var(--border-light);display:flex;gap:var(--space-4);justify-content:space-between;padding:var(--space-6)}.modal-title-section h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-2) 0}.course-title{font-size:var(--font-size-sm);margin:0}.course-title,.modal-close{color:var(--text-secondary)}.modal-close{align-items:center;background:none;border:none;cursor:pointer;display:flex;flex-shrink:0;font-size:1.5rem;height:40px;justify-content:center;padding:0;transition:all var(--transition-fast);width:40px}.modal-close:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.modal-body{flex:1 1;overflow-y:auto;padding:var(--space-6)}.video-container{margin-bottom:var(--space-6);width:100%}.lesson-video{background:var(--color-black);border-radius:var(--radius-md);max-height:500px;width:100%}.pdf-container{margin-bottom:var(--space-6);width:100%}.lesson-pdf{border:1px solid var(--border-light);border-radius:var(--radius-md);height:600px;width:100%}.pdf-actions{display:flex;justify-content:center;margin-top:var(--space-4)}.btn-open-pdf{align-items:center;background-color:var(--color-primary);color:var(--text-white);display:inline-flex;font-weight:var(--font-weight-semibold);gap:var(--space-2);padding:var(--space-3) var(--space-6);text-decoration:none;transition:background-color var(--transition-fast)}.btn-open-pdf:hover{background-color:var(--color-primary-hover)}.text-container{margin-bottom:var(--space-6)}.text-content{background-color:var(--bg-secondary);border-radius:var(--radius-md);color:var(--text-primary);line-height:var(--line-height-relaxed);padding:var(--space-6);white-space:pre-wrap}.no-content{color:var(--text-secondary);padding:var(--space-12);text-align:center}.lesson-description-section{background-color:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-6);padding:var(--space-6)}.lesson-description-section h3{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.lesson-description-section p{color:var(--text-secondary);line-height:var(--line-height-relaxed);margin:0}.lesson-info-section{background-color:var(--bg-secondary);border-radius:var(--radius-md);display:flex;flex-wrap:wrap;gap:var(--space-6);padding:var(--space-6)}.info-item{align-items:center;display:flex;gap:var(--space-2)}.info-label{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.info-value{color:var(--text-secondary)}.free-lesson-badge{background-color:var(--color-success);border-radius:var(--radius-full);color:var(--text-white)}.completion-badge,.free-lesson-badge,.in-progress-badge{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4)}.in-progress-badge{background-color:var(--color-warning);border-radius:var(--radius-full);color:var(--text-white)}.lesson-actions{display:flex;justify-content:center;margin-top:var(--space-6)}.btn-mark-complete{background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-8);transition:all var(--transition-fast)}.btn-mark-complete:hover{background-color:var(--color-primary-hover)}.btn-mark-complete:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.modal-backdrop{padding:0}.modal-container{border-radius:0;max-height:100vh}.modal-header{padding:var(--space-4)}.modal-title-section h2{font-size:var(--font-size-xl)}.modal-body{padding:var(--space-4)}.lesson-pdf{height:400px}.lesson-video{max-height:300px}}.payment-modal-overlay{align-items:center;background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:var(--space-4);position:fixed;right:0;top:0;z-index:var(--z-modal)}.payment-modal{background:var(--bg-primary);box-shadow:var(--shadow-xl);max-height:90vh;max-width:600px;overflow-y:auto;width:100%}.payment-modal-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-6)}.payment-modal-header h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.payment-modal-close{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;transition:background var(--transition-fast);width:32px}.payment-modal-close:hover{background:var(--bg-secondary)}.payment-modal-body{padding:var(--space-6)}.payment-step{display:none}.payment-step.active{display:block}.course-info{background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-6);padding:var(--space-4)}.course-info h3{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.payment-amount{color:var(--color-primary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin:0}.upi-details,.upi-qr-container{margin:var(--space-6) 0}.upi-qr-container{background:var(--bg-primary);border:2px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-4);text-align:center}.upi-qr-code{height:250px;margin:0 auto;width:250px}.upi-id-container{background:var(--bg-secondary);border-radius:var(--radius-md);margin:var(--space-4) 0;padding:var(--space-4)}.upi-id-label{color:var(--text-secondary);display:block;font-size:var(--font-size-sm);margin-bottom:var(--space-2)}.upi-id-value{color:var(--text-primary);font-family:var(--font-family-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.payment-instructions{background:var(--color-info-light);border-left:4px solid var(--color-info);border-radius:var(--radius-md);margin:var(--space-4) 0;padding:var(--space-4)}.payment-instructions h4{color:var(--color-info-dark);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.payment-instructions ol{margin:var(--space-2) 0 0 var(--space-5);padding:0}.payment-instructions li{color:var(--text-primary);margin:var(--space-2) 0}.verification-form{margin-top:var(--space-6)}.form-group{margin-bottom:var(--space-4)}.form-group label{font-weight:var(--font-weight-medium)}.form-group input{padding:var(--space-3)}.form-group small{color:var(--text-secondary);display:block;font-size:var(--font-size-sm);margin-top:var(--space-1)}.payment-modal-footer{border-top:1px solid var(--border-light);display:flex;gap:var(--space-4);justify-content:flex-end;padding:var(--space-4) var(--space-6)}.btn{border:none;cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);padding:var(--space-3) var(--space-6);transition:all var(--transition-fast)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary)}.btn-secondary:hover{background:var(--color-gray-200)}.btn-primary:disabled,.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.success-message{padding:var(--space-8);text-align:center}.success-icon{font-size:4rem;margin-bottom:var(--space-4)}.success-message h3{color:var(--color-success);margin-bottom:var(--space-2)}.success-message p{color:var(--text-secondary);margin:var(--space-2) 0}.error-message{background:var(--color-warning-light);border:1px solid var(--color-warning);border-radius:var(--radius-md);color:var(--color-warning-dark);margin:var(--space-4) 0;padding:var(--space-4)}@media (max-width:768px){.payment-modal{border-radius:0;margin:0;max-height:100vh;max-width:100%}.upi-qr-code{height:200px;width:200px}.payment-amount{font-size:var(--font-size-3xl)}}.review-modal-backdrop{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:var(--space-4);position:fixed;right:0;top:0;z-index:var(--z-modal)}.review-modal-container{animation:modalSlideUp .3s ease-out;background:var(--bg-primary);box-shadow:var(--shadow-xl);max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.review-modal-header{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-6) var(--space-6) var(--space-4)}.review-modal-header h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.modal-close-btn{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;font-size:1.5rem;height:40px;justify-content:center;padding:0;transition:all var(--transition-fast);width:40px}.modal-close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.review-modal-body{padding:var(--space-6)}.course-title-label{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:var(--space-6)}.course-title-label strong{color:var(--text-primary)}.rating-section{margin-bottom:var(--space-6)}.rating-section label{color:var(--text-primary);display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-4)}.star-rating{display:flex;gap:var(--space-2);margin-bottom:var(--space-2)}.star{background:none;border:none;color:var(--color-gray-300);cursor:pointer;font-size:2.5rem;padding:0;transition:all var(--transition-fast)}.star.filled{color:var(--color-rating);transform:scale(1.1)}.star:hover{transform:scale(1.2)}.rating-text{color:var(--color-rating);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:var(--space-2) 0 0 0}.review-text-section{margin-bottom:var(--space-6)}.review-text-section label{color:var(--text-primary);display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.review-text-section textarea{border:1px solid var(--border-medium);font-family:inherit;font-size:var(--font-size-base);padding:var(--space-4);resize:vertical;transition:border-color var(--transition-fast);width:100%}.review-text-section textarea:focus{border-color:var(--color-primary);outline:none}.char-count{color:var(--text-muted);font-size:var(--font-size-sm);margin-top:var(--space-2);text-align:right}.review-modal-actions{display:flex;gap:var(--space-4);justify-content:flex-end}.btn-cancel,.btn-submit-review{border:none;cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-6);transition:all var(--transition-fast)}.btn-submit-review{background-color:var(--color-primary);color:var(--text-white)}.btn-submit-review:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-cancel:disabled,.btn-submit-review:disabled{cursor:not-allowed;opacity:.6}@media (max-width:640px){.review-modal-container{max-height:100vh}.review-modal-header{padding:var(--space-4)}.review-modal-header h2{font-size:var(--font-size-xl)}.review-modal-body{padding:var(--space-4)}.star{font-size:2rem}.review-modal-actions{flex-direction:column}.btn-cancel,.btn-submit-review{width:100%}}.ud-toast{animation:slideUp .3s ease-out;background:var(--bg-dark);border-radius:var(--radius-xs);bottom:24px;box-shadow:var(--shadow-lg);color:var(--text-white);justify-content:space-between;left:50%;max-width:500px;min-width:300px;padding:16px 20px;position:fixed;transform:translateX(-50%);z-index:9999}.ud-toast,.ud-toast-content{align-items:center;display:flex}.ud-toast-content{flex:1 1;gap:12px}.ud-toast-icon{align-items:center;border-radius:var(--radius-full);display:flex;flex-shrink:0;height:24px;justify-content:center;width:24px}.ud-toast-icon svg{color:var(--text-white);height:14px;width:14px}.ud-toast-success .ud-toast-icon{background:var(--color-success)}.ud-toast-error .ud-toast-icon{background:var(--color-error)}.ud-toast-info .ud-toast-icon{background:var(--color-info)}.ud-toast-warning .ud-toast-icon{background:var(--color-warning)}.ud-toast-message{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);line-height:var(--line-height-normal)}.ud-toast-close{align-items:center;background:#0000;border:none;color:var(--color-gray-400);cursor:pointer;display:flex;flex-shrink:0;justify-content:center;margin-left:12px;padding:4px;transition:color var(--transition-fast)}.ud-toast-close:hover{color:var(--text-white)}.ud-toast-close svg{height:16px;width:16px}.ud-toast-progress{animation:progressShrink 3s linear forwards;background:#ffffff4d;bottom:0;height:3px;left:0;position:absolute}.ud-toast-success .ud-toast-progress{background:var(--color-success)}.ud-toast-error .ud-toast-progress{background:var(--color-error)}.ud-toast-info .ud-toast-progress{background:var(--color-info)}@keyframes progressShrink{0%{width:100%}to{width:0}}@media (max-width:480px){.ud-toast{bottom:16px;left:16px;max-width:none;min-width:auto;right:16px;transform:none}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}}.cdp{background-color:var(--bg-primary);min-height:100vh}.cdp-loading{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-lg);justify-content:center;min-height:60vh}.cdp-banner{background-color:var(--bg-dark);color:var(--text-white);padding:var(--space-10) 0}.cdp-banner-inner{margin:0 auto;max-width:var(--container-xl);padding:0 var(--space-6)}.cdp-banner-content{max-width:700px}.cdp-banner h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:var(--space-4)}.cdp-banner-subtitle{color:var(--color-gray-300);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.cdp-banner-meta{flex-wrap:wrap;font-size:var(--font-size-sm);gap:var(--space-4);margin-bottom:var(--space-4)}.cdp-banner-meta,.cdp-rating{align-items:center;display:flex}.cdp-rating{gap:var(--space-1)}.cdp-rating-num{color:var(--color-rating);font-weight:var(--font-weight-bold)}.cdp-rating-stars{display:flex;gap:1px}.cdp-rating-count{color:var(--color-gray-400)}.cdp-meta-item{color:var(--color-gray-300)}.cdp-banner-badges{display:flex;flex-wrap:wrap;gap:var(--space-2)}.cdp-badge{background-color:var(--bg-dark-lighter);border:1px solid var(--color-gray-600);border-radius:var(--radius-sm);color:var(--color-gray-300);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);padding:var(--space-1) var(--space-3);text-transform:capitalize}.cdp-body{padding:var(--space-8) 0 var(--space-16)}.cdp-body-inner{grid-gap:var(--space-10);align-items:start;display:grid;gap:var(--space-10);grid-template-columns:1fr 340px;margin:0 auto;max-width:var(--container-xl);padding:0 var(--space-6)}.cdp-main{min-width:0}.cdp-section{margin-bottom:var(--space-8)}.cdp-section-bordered{border:1px solid var(--border-light);padding:var(--space-6)}.cdp-section h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.cdp-section-header{align-items:center;display:flex;flex-wrap:wrap;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-4)}.cdp-content-summary{color:var(--text-secondary);font-size:var(--font-size-sm)}.cdp-description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed)}.cdp-accordion{border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden}.cdp-accordion-item{border-bottom:1px solid var(--border-light)}.cdp-accordion-item:last-child{border-bottom:none}.cdp-accordion-header{align-items:center;background-color:var(--bg-secondary);border:none;color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);justify-content:space-between;padding:var(--space-4) var(--space-4);text-align:left;transition:background-color var(--transition-fast);width:100%}.cdp-accordion-header:hover{background-color:var(--color-gray-200)}.cdp-accordion-title{align-items:center;display:flex;flex:1 1;gap:var(--space-3);min-width:0}.cdp-accordion-title span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdp-accordion-meta{color:var(--text-secondary);flex-shrink:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);margin-left:var(--space-4)}.cdp-accordion-body{background-color:var(--bg-primary);padding:var(--space-4)}.cdp-module-desc{border-bottom:1px solid var(--border-light);color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-4);padding-bottom:var(--space-4)}.cdp-lessons{display:flex;flex-direction:column;list-style:none;margin:0;padding:0}.cdp-lesson{align-items:center;border-bottom:1px solid var(--border-light);display:flex;font-size:var(--font-size-sm);justify-content:space-between;padding:var(--space-3) var(--space-2);transition:background-color var(--transition-fast)}.cdp-lesson:last-child{border-bottom:none}.cdp-lesson-accessible{cursor:pointer}.cdp-lesson-accessible:hover{background-color:var(--bg-secondary)}.cdp-lesson-completed{background-color:var(--color-success-light)}.cdp-lesson-completed:hover{background-color:#c8e6c9}.cdp-lesson-left{align-items:center;display:flex;flex:1 1;gap:var(--space-3);min-width:0}.cdp-lesson-title{color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cdp-lesson-right{align-items:center;display:flex;flex-shrink:0;gap:var(--space-3);margin-left:var(--space-3)}.cdp-lesson-free{color:var(--color-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-decoration:underline}.cdp-lesson-duration{color:var(--text-secondary);font-size:var(--font-size-xs)}.cdp-lesson-lock{color:var(--text-muted);font-size:var(--font-size-xs)}.cdp-sidebar{position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + var(--space-4))}.cdp-sidebar-card{background-color:var(--bg-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-card);overflow:hidden}.cdp-sidebar-thumb{display:block;height:200px;object-fit:cover;width:100%}.cdp-sidebar-body{padding:var(--space-6)}.cdp-sidebar-price{color:var(--text-primary);font-size:var(--font-size-4xl);margin-bottom:var(--space-4)}.cdp-btn,.cdp-sidebar-price{font-weight:var(--font-weight-bold)}.cdp-btn{align-items:center;border:none;border-radius:var(--radius-none);cursor:pointer;display:inline-flex;font-size:var(--font-size-base);gap:var(--space-2);justify-content:center;padding:var(--space-3) var(--space-6);text-decoration:none;transition:all var(--transition-fast)}.cdp-btn:disabled{cursor:not-allowed;opacity:.6}.cdp-btn-primary{background-color:var(--color-primary);color:var(--text-white)}.cdp-btn-primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.cdp-btn-outline-dark{background-color:initial;border:1px solid var(--text-primary);color:var(--text-primary)}.cdp-btn-outline-dark:hover:not(:disabled){background-color:var(--text-primary);color:var(--text-white)}.cdp-btn-full{width:100%}.cdp-enrolled-section{display:flex;flex-direction:column;gap:var(--space-4)}.cdp-enrolled-badge{align-items:center;background-color:var(--color-success-light);color:var(--color-success);display:flex;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--space-2);justify-content:center;padding:var(--space-3)}.cdp-sidebar-progress{background-color:var(--bg-secondary);padding:var(--space-4)}.cdp-sidebar-progress-header{color:var(--text-primary);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);justify-content:space-between;margin-bottom:var(--space-2)}.cdp-sidebar-progress-bar{background-color:var(--color-gray-200);border-radius:var(--radius-full);height:8px;margin-bottom:var(--space-2);overflow:hidden}.cdp-sidebar-progress-fill{background-color:var(--color-primary);height:100%;transition:width .3s ease}.cdp-guarantee,.cdp-sidebar-progress-text{color:var(--text-secondary);font-size:var(--font-size-xs)}.cdp-guarantee{margin-bottom:var(--space-4);margin-top:var(--space-3);text-align:center}.cdp-includes{border-top:1px solid var(--border-light);padding-top:var(--space-4)}.cdp-includes h4{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);margin-bottom:var(--space-4)}.cdp-includes ul{display:flex;flex-direction:column;gap:var(--space-3);list-style:none;margin:0;padding:0}.cdp-includes li{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--space-3)}.cdp-rating-overview{grid-gap:var(--space-8);align-items:center;background-color:var(--bg-secondary);display:grid;gap:var(--space-8);grid-template-columns:160px 1fr;margin-bottom:var(--space-6);padding:var(--space-6)}.cdp-rating-big{text-align:center}.cdp-rating-big-num{color:var(--color-rating);display:block;font-size:4rem;font-weight:var(--font-weight-bold);line-height:1}.cdp-rating-big-stars{display:flex;gap:2px;justify-content:center;margin:var(--space-2) 0}.cdp-rating-big-count{color:var(--text-secondary);font-size:var(--font-size-sm)}.cdp-rating-bars{display:flex;flex-direction:column;gap:var(--space-2)}.cdp-rating-bar-row{align-items:center;display:flex;gap:var(--space-3)}.cdp-rating-bar-label{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--space-1);min-width:32px}.cdp-rating-bar-track{background-color:var(--color-gray-200);border-radius:var(--radius-full);flex:1 1;height:8px;overflow:hidden}.cdp-rating-bar-fill{background-color:var(--color-rating);height:100%;transition:width .3s ease}.cdp-rating-bar-count{color:var(--text-secondary);font-size:var(--font-size-sm);min-width:24px;text-align:right}.cdp-no-reviews{background-color:var(--bg-secondary);color:var(--text-secondary);padding:var(--space-8);text-align:center}.cdp-reviews-list{display:flex;flex-direction:column;gap:var(--space-6)}.cdp-review{border-bottom:1px solid var(--border-light);padding-bottom:var(--space-6)}.cdp-review:last-child{border-bottom:none;padding-bottom:0}.cdp-review-header{align-items:flex-start;display:flex;gap:var(--space-4);margin-bottom:var(--space-3)}.cdp-review-avatar{align-items:center;background-color:var(--text-primary);border-radius:var(--radius-full);color:var(--text-white);display:flex;flex-shrink:0;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);height:48px;justify-content:center;width:48px}.cdp-review-meta{flex:1 1}.cdp-review-name{color:var(--text-primary);display:block;font-weight:var(--font-weight-bold);margin-bottom:var(--space-1)}.cdp-review-stars{align-items:center;display:flex;gap:var(--space-1)}.cdp-review-date{color:var(--text-secondary);font-size:var(--font-size-xs);margin-left:var(--space-3)}.cdp-review-text{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--space-3)}.cdp-verified{background-color:var(--color-success-light);border-radius:var(--radius-sm);color:var(--color-success);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-2)}@media (max-width:1024px){.cdp-body-inner{grid-template-columns:1fr}.cdp-sidebar{margin:0 auto var(--space-8);max-width:500px;order:-1;position:static}.cdp-banner h1{font-size:var(--font-size-3xl)}}@media (max-width:768px){.cdp-banner{padding:var(--space-6) 0}.cdp-banner-inner{padding:0 var(--space-4)}.cdp-banner h1{font-size:var(--font-size-2xl)}.cdp-banner-subtitle{font-size:var(--font-size-base)}.cdp-body{padding:var(--space-6) 0 var(--space-10)}.cdp-body-inner{gap:var(--space-6);padding:0 var(--space-4)}.cdp-section h2{font-size:var(--font-size-xl)}.cdp-section-header{align-items:flex-start;flex-direction:column;gap:var(--space-3)}.cdp-rating-overview{gap:var(--space-4);grid-template-columns:1fr;padding:var(--space-4)}.cdp-rating-big-num{font-size:3rem}.cdp-sidebar{max-width:100%}.cdp-sidebar-price{font-size:var(--font-size-3xl)}.cdp-accordion-header{font-size:var(--font-size-sm);padding:var(--space-3)}.cdp-accordion-meta{display:none}.cdp-lesson{font-size:var(--font-size-xs);padding:var(--space-2) var(--space-1)}.cdp-btn{font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4)}}@media (max-width:480px){.cdp-banner-meta{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.cdp-banner-badges{gap:var(--space-1)}.cdp-badge{font-size:10px;padding:2px var(--space-2)}}.profile-page{background:#0000}.ud-profile-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);margin-bottom:0;overflow:hidden;padding:32px 36px;position:relative}.ud-profile-header:before{background:#ffffff0a;border-radius:50%;content:"";height:200px;position:absolute;right:-40px;top:-40px;width:200px}.ud-profile-header:after{background:#ff6b3514;border-radius:50%;bottom:-60px;content:"";height:160px;left:30%;position:absolute;width:160px}.ud-profile-header-content{padding:0;position:relative;z-index:1}.ud-profile-header-content h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:6px}.ud-profile-header-content p{color:#ffffffa6;font-size:var(--font-size-base)}.profile-page .container{padding:28px 32px}.profile-header-card{grid-gap:var(--space-12);align-items:start;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;gap:var(--space-12);grid-template-columns:auto 1fr;margin-bottom:var(--space-8);padding:var(--space-10)}.profile-avatar-section{align-items:center;display:flex;flex-direction:column;gap:var(--space-4)}.profile-avatar-large{align-items:center;background:var(--color-primary-gradient);border-radius:var(--radius-full);box-shadow:var(--shadow-lg);color:var(--text-white);display:flex;font-size:4rem;font-weight:var(--font-weight-bold);height:150px;justify-content:center;width:150px}.btn-change-avatar{background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-6);text-align:center;transition:all var(--transition-fast)}.btn-change-avatar:hover{background-color:var(--color-primary-hover)}.profile-info-display h1{color:var(--text-primary);font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-4) 0}.user-email,.user-mobile{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-lg);gap:var(--space-2);margin:var(--space-2) 0}.btn-edit-profile{align-items:center;background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;display:inline-flex;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);gap:var(--space-2);margin-top:var(--space-6);padding:var(--space-3) var(--space-8);transition:all var(--transition-fast)}.btn-edit-profile:hover{background-color:var(--color-primary-hover)}.profile-edit-form{width:100%}.form-group{margin-bottom:var(--space-6)}.form-group label{color:var(--text-primary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-2)}.form-group input{border:1px solid var(--border-medium);font-size:var(--font-size-base);padding:var(--space-3) var(--space-4);transition:border-color var(--transition-fast);width:100%}.form-group input:focus{border-color:var(--color-primary);outline:none}.form-actions{display:flex;gap:var(--space-4);margin-top:var(--space-8)}.btn-cancel,.btn-save{border:none;cursor:pointer;flex:1 1;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:var(--space-3);transition:all var(--transition-fast)}.btn-cancel{background:var(--bg-secondary);color:var(--text-secondary)}.btn-cancel:hover:not(:disabled){background:var(--color-gray-200)}.btn-save{background-color:var(--color-primary);color:var(--text-white)}.btn-save:hover:not(:disabled){background-color:var(--color-primary-hover)}.btn-cancel:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.6}.stats-section{margin-bottom:var(--space-8)}.stats-section h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-6) 0}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.stat-content{flex:1 1}.stat-content h3{margin:0 0 var(--space-1) 0}.stat-content p{font-weight:var(--font-weight-medium)}.quick-links-section{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-8)}.quick-links-section h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-6) 0}.quick-links-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.quick-link-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-8);text-align:center;text-decoration:none;transition:all var(--transition-fast)}.quick-link-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.quick-link-icon{display:flex;justify-content:center;margin-bottom:var(--space-4)}.quick-link-card h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.quick-link-card p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.loading{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-12)}@media (max-width:768px){.ud-profile-header{padding:24px 20px}.ud-profile-header-content h1{font-size:var(--font-size-2xl)}.profile-page .container{padding:20px}.profile-header-card{gap:var(--space-8);grid-template-columns:1fr;padding:var(--space-6)}.profile-avatar-section{border-bottom:1px solid var(--border-light);padding-bottom:var(--space-6)}.profile-avatar-large{font-size:3rem;height:120px;width:120px}.profile-info-display h1{font-size:var(--font-size-3xl)}.stats-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.stat-card{flex-direction:column;padding:var(--space-4);text-align:center}.stat-icon{height:48px;width:48px}.stat-content h3{font-size:var(--font-size-2xl)}.quick-links-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.btn-cancel,.btn-save{width:100%}}@media (max-width:480px){.ud-profile-header{padding:20px 16px}.profile-header-card,.quick-links-section,.stats-section{padding:var(--space-4)}.quick-links-section h2,.stats-section h2{font-size:var(--font-size-xl)}.stats-grid{grid-template-columns:1fr}}.my-courses-page{background:#0000}.ud-mycourses-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);overflow:hidden;padding:32px 36px;position:relative}.ud-mycourses-header:before{background:#ffffff0a;border-radius:50%;content:"";height:180px;position:absolute;right:-30px;top:-40px;width:180px}.ud-mycourses-header:after{background:#ff6b3512;border-radius:50%;bottom:-50px;content:"";height:140px;left:20%;position:absolute;width:140px}.ud-mycourses-header-content{padding:0;position:relative;z-index:1}.ud-mycourses-header-content h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:6px}.ud-mycourses-header-content p{color:#ffffffa6;font-size:var(--font-size-base)}.my-courses-page .container{padding:28px 32px}.stats-grid{grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-10)}.stat-card{background:var(--bg-primary);box-shadow:var(--shadow-sm)}.stat-icon{flex-shrink:0}.stat-icon.enrolled{background-color:var(--color-primary)}.stat-icon.completed{background-color:var(--color-success)}.stat-icon.lessons{background-color:var(--color-info)}.stat-icon.quizzes{background-color:var(--color-warning)}.stat-content h3{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:1;margin:0}.stat-content p{margin:var(--space-1) 0 0 0}.section{margin-bottom:var(--space-10)}.section h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-6)}.section-header{align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.controls,.section-header{display:flex;flex-wrap:wrap;gap:var(--space-4)}.filter-select,.sort-select{background:var(--bg-primary);border:1px solid var(--border-medium);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);min-width:160px;padding:var(--space-3) var(--space-4);transition:all var(--transition-fast)}.filter-select:hover,.sort-select:hover{border-color:var(--color-primary)}.filter-select:focus,.sort-select:focus{border-color:var(--color-primary);outline:none}.recent-courses{grid-gap:var(--space-6);display:grid;gap:var(--space-6)}.recent-course-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;gap:var(--space-6);padding:var(--space-6);transition:all var(--transition-fast)}.recent-course-card:hover{box-shadow:var(--shadow-md)}.recent-course-card .course-link{color:inherit;display:flex;flex:1 1;gap:var(--space-6);text-decoration:none}.recent-course-card .course-thumbnail{border-radius:var(--radius-md);flex-shrink:0;height:135px;object-fit:cover;width:240px}.course-details{display:flex;flex:1 1;flex-direction:column}.course-header{align-items:flex-start;display:flex;gap:var(--space-4);justify-content:space-between;margin-bottom:var(--space-2)}.course-details h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.completion-badge{background-color:var(--color-success);border-radius:var(--radius-full);color:var(--text-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-3);white-space:nowrap}.course-meta{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-4)}.progress-section{align-items:center;display:flex;gap:var(--space-4);margin-bottom:var(--space-2)}.progress-bar{background:var(--color-gray-200);border-radius:var(--radius-full);flex:1 1;height:8px;overflow:hidden}.progress-fill{background-color:var(--color-primary);height:100%;transition:width .3s ease}.progress-text{color:var(--color-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);min-width:40px}.last-accessed{color:var(--text-muted);font-size:var(--font-size-xs);margin:auto 0 0}.btn-continue{align-self:center;background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-8);transition:all var(--transition-fast);white-space:nowrap}.btn-continue:hover{background-color:var(--color-primary-hover)}.courses-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.course-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);color:inherit;display:flex;flex-direction:column;overflow:hidden;text-decoration:none;transition:all var(--transition-fast)}.course-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}.card-thumbnail{aspect-ratio:16/9;overflow:hidden;position:relative;width:100%}.card-thumbnail img{height:100%;object-fit:cover;width:100%}.completion-overlay{align-items:center;background:#1e6f5ce6;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0}.completion-icon{color:var(--text-white);font-size:3rem;font-weight:700}.card-content{display:flex;flex:1 1;flex-direction:column;padding:var(--space-5)}.card-content h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height-normal);margin:0 0 var(--space-2) 0;overflow:hidden}.skill-level{color:var(--color-primary);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase}.progress-info,.skill-level{margin-bottom:var(--space-4)}.progress-info .progress-bar{margin-bottom:var(--space-2)}.lessons-count{color:var(--text-secondary);font-size:var(--font-size-xs)}.card-footer{align-items:center;border-top:1px solid var(--border-light);display:flex;justify-content:space-between;margin-top:auto;padding-top:var(--space-4)}.btn-continue-small{background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.btn-continue-small:hover{background-color:var(--color-primary-hover)}.last-accessed-small{color:var(--text-muted);font-size:var(--font-size-xs)}.no-courses{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-12);text-align:center}.no-courses p{color:var(--text-secondary);font-size:var(--font-size-lg);margin-bottom:var(--space-6)}.btn-browse{background-color:var(--color-primary);color:var(--text-white);display:inline-block;font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-8);text-decoration:none;transition:all var(--transition-fast)}.btn-browse:hover{background-color:var(--color-primary-hover)}.error,.loading{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-lg);padding:var(--space-12);text-align:center}.error{color:var(--color-danger)}@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.ud-mycourses-header{padding:24px 20px}.ud-mycourses-header-content h1{font-size:var(--font-size-2xl)}.ud-mycourses-header-content p{font-size:var(--font-size-base)}.my-courses-page .container{padding:20px}.stats-grid{gap:var(--space-4);grid-template-columns:repeat(2,1fr)}.stat-card{flex-direction:column;padding:var(--space-4);text-align:center}.stat-icon{height:48px;width:48px}.stat-content h3{font-size:var(--font-size-2xl)}.recent-course-card{flex-direction:column;padding:var(--space-4)}.recent-course-card .course-link{flex-direction:column;gap:var(--space-4)}.recent-course-card .course-thumbnail{height:180px;width:100%}.section-header{align-items:flex-start;flex-direction:column}.controls{width:100%}.filter-select,.sort-select{flex:1 1;min-width:0}.courses-grid{grid-template-columns:1fr}.btn-continue{margin-top:var(--space-4);width:100%}}@media (max-width:480px){.ud-mycourses-header{padding:18px 14px}.section h2,.ud-mycourses-header-content h1{font-size:var(--font-size-xl)}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{padding:var(--space-3)}.stat-content h3{font-size:var(--font-size-xl)}.stat-content p{font-size:var(--font-size-xs)}}.ud-certificates-page{background:#0000}.ud-certificates-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);overflow:hidden;padding:32px 36px;position:relative}.ud-certificates-header:before{background:#ffffff0f;border-radius:50%;content:"";height:200px;position:absolute;right:-30px;top:-40px;width:200px}.ud-certificates-header:after{background:#ffffff0a;border-radius:50%;bottom:-60px;content:"";height:160px;left:20%;position:absolute;width:160px}.ud-certificates-header-content{padding:0;position:relative;z-index:1}.ud-certificates-header h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:6px}.ud-certificates-header p{color:#ffffffb3;font-size:var(--font-size-base)}.ud-certificates-stats{display:flex;gap:32px;margin-top:20px}.ud-stat-item{gap:8px}.ud-stat-number{color:var(--text-white);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold)}.ud-certificates-content{padding:28px 32px}.ud-empty-certificates{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:80px 24px;text-align:center}.ud-empty-icon{background:var(--bg-secondary)}.ud-empty-certificates h2{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-empty-certificates p{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:24px}.ud-btn-browse{background:var(--color-primary);color:var(--text-white);display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:12px 24px;text-decoration:none;transition:background-color var(--transition-fast)}.ud-btn-browse:hover{background:var(--color-primary-dark);color:var(--text-white)}.ud-certificates-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.ud-certificate-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden;transition:box-shadow var(--transition-fast)}.ud-certificate-card:hover{box-shadow:var(--shadow-lg)}.ud-certificate-banner{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);padding:24px;position:relative;text-align:center}.ud-certificate-badge{align-items:center;background:#fff3;border-radius:var(--radius-full);display:flex;height:64px;justify-content:center;margin:0 auto 12px;width:64px}.ud-certificate-badge svg{color:var(--text-white);height:32px;width:32px}.ud-certificate-title{color:var(--text-white);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight)}.ud-certificate-body{padding:24px}.ud-certificate-details{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.ud-detail-row{align-items:center;border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding-bottom:12px}.ud-detail-row:last-child{border-bottom:none;padding-bottom:0}.ud-detail-label{color:var(--text-secondary);font-size:var(--font-size-sm)}.ud-detail-value{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-align:right}.ud-certificate-number{background:var(--bg-secondary);border-radius:var(--radius-xs);color:var(--color-primary);font-family:var(--font-family-mono);font-size:var(--font-size-xs);padding:4px 8px}.ud-certificate-actions{display:flex;gap:12px}.ud-btn-download,.ud-btn-share{align-items:center;border:none;border-radius:var(--radius-xs);cursor:pointer;display:flex;flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);gap:8px;justify-content:center;padding:12px 16px;transition:all var(--transition-fast)}.ud-btn-download{background:var(--color-primary);color:var(--text-white)}.ud-btn-download:hover{background:var(--color-primary-dark)}.ud-btn-share{background:#0000;border:1px solid var(--border-color);color:var(--text-primary)}.ud-btn-share:hover{background:var(--bg-secondary)}.ud-btn-download svg,.ud-btn-share svg{height:16px;width:16px}.ud-certificates-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px;text-align:center}.ud-certificates-loading p{color:var(--text-secondary);font-size:var(--font-size-base)}.ud-certificate-skeleton{pointer-events:none}.ud-skeleton-banner{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%;height:120px}.ud-skeleton-body{padding:24px}.ud-skeleton-line{margin-bottom:12px}.ud-skeleton-line:last-child{margin-bottom:0}@media (max-width:768px){.ud-certificates-header{padding:24px 20px}.ud-certificates-header h1{font-size:var(--font-size-2xl)}.ud-certificates-header p{font-size:var(--font-size-base)}.ud-certificates-stats{flex-wrap:wrap;gap:16px}.ud-certificates-grid{grid-template-columns:1fr}.ud-certificate-actions{flex-direction:column}}@media (max-width:480px){.ud-certificates-header{padding:18px 14px}.ud-certificates-content{padding:16px}.ud-certificate-banner,.ud-certificate-body{padding:20px}.ud-certificate-title{font-size:var(--font-size-base)}}.sessions-page{background:#0000}.sessions-header{align-items:center;background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);display:flex;gap:16px;justify-content:space-between;padding:28px 32px}.sessions-header h1{color:#fff;font-size:1.5rem;font-weight:700;margin:0 0 4px}.sessions-header p{color:#fff9;font-size:.875rem;margin:0}.btn-logout-all{background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:.8125rem;font-weight:600;padding:8px 18px;transition:background .15s;white-space:nowrap}.btn-logout-all:hover{background:#ffffff40}.sessions-error{background:#fff5f5;border:1px solid #fed7d7;border-radius:8px;color:#c53030;font-size:.875rem;margin:20px 32px;padding:12px 16px}.sessions-error button{background:none;border:none;color:#c53030;cursor:pointer;font-weight:600;padding:0;text-decoration:underline}.sessions-loading{color:#888;font-size:.9375rem;padding:48px 32px}.sessions-empty{align-items:center;color:#aaa;font-size:.9375rem;gap:12px;padding:64px 32px}.sessions-empty,.sessions-list{display:flex;flex-direction:column}.sessions-list{gap:8px;padding:16px 24px}.session-row{align-items:center;background:#fff;background:var(--bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-light,#e5e7eb);border-radius:10px;display:flex;gap:14px;padding:14px 16px;transition:box-shadow .15s}.session-row:hover{box-shadow:0 2px 8px #00000012}.session-row.is-current{background:var(--color-primary-light);border-color:#a435f04d}.session-icon{align-items:center;background:#f3f4f6;background:var(--bg-secondary,#f3f4f6);border-radius:8px;display:flex;flex-shrink:0;height:36px;justify-content:center;width:36px}.session-meta{flex:1 1;min-width:0}.session-name{color:#111;color:var(--text-primary,#111);font-size:.9375rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.session-time{color:#888;color:var(--text-secondary,#888);font-size:.8125rem;margin-top:2px}.session-right{flex-shrink:0}.badge-current{background:var(--color-primary-light);border:1px solid #a435f040;border-radius:20px;color:var(--color-primary);display:inline-block;font-size:.75rem;font-weight:600;padding:4px 10px}.btn-logout-device{background:#0000;border:1px solid #dc3545;border-radius:7px;color:#dc3545;cursor:pointer;font-size:.8125rem;font-weight:600;padding:6px 14px;transition:all .15s}.btn-logout-device:hover{background:#dc3545;color:#fff}@media (max-width:576px){.sessions-header{align-items:flex-start;flex-direction:column;padding:20px 16px}.sessions-list{padding:12px}}.goals-page{background-color:var(--bg-secondary);min-height:calc(100vh - 200px);padding:32px 0}.goals-page .container{margin:0 auto;max-width:var(--container-xl);padding:0 24px}.page-header{margin-bottom:20px}.page-header h1{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-extrabold);margin-bottom:2px}.page-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.goals-filters{margin-bottom:20px}.search-box{align-items:center;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-full);display:flex;gap:8px;margin-bottom:12px;max-width:400px;padding:8px 14px;transition:border-color var(--transition-fast)}.search-box:focus-within{border-color:var(--color-primary)}.search-box input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-sm);outline:none}.search-box input::placeholder{color:var(--text-muted)}.category-filters{border-bottom:1px solid var(--border-light);display:flex;gap:0}.goals-page .category-btn{background:none;border:none;border-radius:0;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:8px 14px;position:relative;transition:color var(--transition-fast);white-space:nowrap}.goals-page .category-btn:hover{color:var(--text-primary)}.goals-page .category-btn.active{background:none;color:var(--color-primary)}.goals-page .category-btn.active:after{background:var(--color-primary);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.goals-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}.goal-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;display:flex;flex-direction:column;gap:10px;padding:16px;position:relative;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.goal-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.selected-badge{background:var(--color-success);border-radius:var(--radius-full);color:var(--text-white);font-size:11px;font-weight:var(--font-weight-bold);gap:3px;padding:3px 8px;position:absolute;right:10px;top:10px}.goal-card-top,.selected-badge{align-items:center;display:flex}.goal-card-top{gap:10px}.goal-icon{background:var(--color-primary-light);border-radius:var(--radius-lg);height:40px;width:40px}.goal-icon-placeholder{font-size:1.25rem}.goal-card h3{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1.3;margin:0}.goal-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:var(--font-size-xs);line-height:1.4;margin:0;overflow:hidden}.goal-meta{align-items:center;display:flex;gap:6px;justify-content:space-between}.category-badge{max-width:120px;overflow:hidden;padding:2px 8px;text-overflow:ellipsis}.category-badge,.goal-learners{font-size:11px;white-space:nowrap}.goal-learners{align-items:center;color:var(--text-muted);display:flex;flex-shrink:0;gap:3px}.goal-actions{display:flex;gap:6px;margin-top:auto}.goals-page .btn-primary,.goals-page .btn-secondary{border:none;border-radius:var(--radius-md);cursor:pointer;flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:7px 12px;transition:background-color var(--transition-fast)}.goals-page .btn-primary{background:var(--color-primary);color:var(--text-white)}.goals-page .btn-primary:hover{background:var(--color-primary-dark)}.goals-page .btn-secondary{background:#0000;border:1px solid var(--border-medium);color:var(--text-secondary)}.goals-page .btn-secondary:hover{background:var(--bg-secondary)}.full-width{width:100%}.goals-page .loading{color:var(--text-secondary);font-size:var(--font-size-base);padding:60px 24px;text-align:center}.empty-state{border-radius:var(--radius-lg);padding:48px 24px}.empty-icon{font-size:2.5rem;margin-bottom:10px}.empty-state h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:4px}.empty-state p{font-size:var(--font-size-sm);margin:0}@media (max-width:768px){.goals-page{padding:20px 0}.goals-page .container{padding:0 16px}.goals-grid{gap:10px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.category-filters{-webkit-overflow-scrolling:touch;overflow-x:auto}}@media (max-width:480px){.goals-grid{gap:8px;grid-template-columns:1fr 1fr}.goal-actions{flex-direction:column}}.ud-goal-details-page{background:var(--bg-primary);min-height:100vh}.ud-goal-header{background:var(--bg-dark);padding:32px 0 48px}.ud-goal-header-container{margin:0 auto;max-width:var(--container-max-width);padding:0 24px}.ud-breadcrumb-link{text-decoration:none}.ud-goal-header-content{align-items:flex-start;display:flex;gap:32px}.ud-goal-icon-large{background:var(--bg-primary);border:4px solid #ffffff1a;border-radius:var(--radius-sm);flex-shrink:0;height:140px;object-fit:cover;width:140px}.ud-goal-info{flex:1 1}.ud-goal-meta{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:12px}.ud-goal-category{background:var(--color-primary);letter-spacing:.5px;text-transform:uppercase}.ud-enrolled-badge,.ud-goal-category{color:var(--text-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:4px 12px}.ud-enrolled-badge{align-items:center;background:var(--color-success);display:flex;gap:4px}.ud-goal-info h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin-bottom:12px}.ud-goal-description{color:var(--color-gray-300);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:24px;max-width:700px}.ud-goal-stats{display:flex;gap:32px;margin-bottom:24px}.ud-goal-stat{display:flex;flex-direction:column}.ud-stat-label{letter-spacing:.5px;text-transform:uppercase}.ud-btn-enroll{background:var(--text-white);border:none;color:var(--bg-dark);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:14px 24px;transition:all var(--transition-fast)}.ud-btn-enroll:hover{background:var(--color-gray-100)}.ud-btn-enroll.enrolled{background:var(--color-success);color:var(--text-white)}.ud-btn-enroll.enrolled:hover{background:var(--color-error)}.ud-goal-content{margin:0 auto;max-width:var(--container-max-width);padding:48px 24px}.ud-section-header{align-items:center;display:flex;justify-content:space-between}.ud-subject-count{color:var(--text-secondary);font-size:var(--font-size-sm)}.ud-subjects-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.ud-subject-card{align-items:flex-start;gap:16px;padding:20px}.ud-subject-icon{flex-shrink:0;object-fit:cover}.ud-subject-icon,.ud-subject-icon-placeholder{border-radius:var(--radius-xs);height:64px;width:64px}.ud-subject-content{flex:1 1;min-width:0}.ud-subject-content h3{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:4px}.ud-subject-description{line-height:var(--line-height-normal);margin-bottom:12px}.ud-subject-footer{align-items:center;display:flex;justify-content:space-between}.ud-course-count{color:var(--text-secondary);font-size:var(--font-size-sm)}.ud-view-arrow{color:var(--color-primary);font-size:var(--font-size-lg);transition:transform var(--transition-fast)}.ud-subject-card:hover .ud-view-arrow{transform:translateX(4px)}.ud-empty-subjects h3{font-size:var(--font-size-lg)}.ud-loading-container{text-align:center}.ud-skeleton-icon{height:64px;width:64px}.ud-skeleton-line.shorter{width:40%}@media (max-width:768px){.ud-goal-header{padding:24px 0 32px}.ud-goal-header-content{align-items:center;flex-direction:column;text-align:center}.ud-goal-icon-large{height:100px;width:100px}.ud-goal-info h1{font-size:var(--font-size-2xl)}.ud-goal-description{font-size:var(--font-size-base)}.ud-goal-stats{justify-content:center}.ud-goal-content{padding:32px 16px}.ud-subjects-grid{grid-template-columns:1fr}}@media (max-width:480px){.ud-goal-header-container{padding:0 16px}.ud-goal-meta{justify-content:center}.ud-goal-stats{gap:24px}.ud-subject-card{align-items:center;flex-direction:column;text-align:center}.ud-subject-footer{justify-content:center}.ud-view-arrow{display:none}}.ud-subject-details-page{background:var(--bg-primary);min-height:100vh}.ud-subject-header{background:var(--bg-dark);padding:32px 0 48px}.ud-subject-header-container{margin:0 auto;max-width:var(--container-max-width);padding:0 24px}.ud-breadcrumb-link{align-items:center;display:flex;gap:4px}.ud-subject-header-content{align-items:flex-start;display:flex;gap:32px}.ud-subject-icon-large{background:var(--bg-primary);border:4px solid #ffffff1a;border-radius:var(--radius-sm);flex-shrink:0;height:120px;object-fit:cover;width:120px}.ud-subject-icon-placeholder{border-radius:var(--radius-sm);flex-shrink:0;height:120px;width:120px}.ud-subject-icon-placeholder svg{height:48px;width:48px}.ud-subject-info{flex:1 1}.ud-subject-info h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin-bottom:12px}.ud-subject-description-full{color:var(--color-gray-300);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:24px;max-width:700px}.ud-subject-stats{gap:32px}.ud-subject-stat{display:flex;flex-direction:column}.ud-stat-value{font-size:var(--font-size-2xl)}.ud-stat-label{font-size:var(--font-size-sm)}.ud-subject-content{margin:0 auto;max-width:var(--container-max-width);padding:48px 24px}.ud-section{margin-bottom:48px}.ud-section:last-child{margin-bottom:0}.ud-section-header{margin-bottom:24px}.ud-section-header h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-topic-meta{align-items:center}.ud-btn-practice-topic,.ud-btn-view{border:none;cursor:pointer;flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:8px 12px;transition:all var(--transition-fast)}.ud-btn-practice-topic{background:var(--color-primary);color:var(--text-white)}.ud-btn-practice-topic:hover{background:var(--color-primary-dark)}.ud-courses-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.ud-course-card{background:var(--bg-primary);border:1px solid var(--border-light);cursor:pointer;overflow:hidden;transition:all var(--transition-fast)}.ud-course-card:hover{box-shadow:var(--shadow-md)}.ud-course-thumbnail{aspect-ratio:16/9;background:var(--bg-secondary);object-fit:cover;width:100%}.ud-course-card-body{padding:12px}.ud-course-card h3{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-primary);display:-webkit-box;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:4px;overflow:hidden}.ud-course-card:hover h3{color:var(--color-primary)}.ud-course-card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.ud-course-card-description,.ud-course-meta{color:var(--text-secondary);font-size:var(--font-size-xs);margin-bottom:8px}.ud-course-meta{align-items:center;display:flex;gap:8px}.ud-skill-level{background:var(--bg-secondary);border-radius:var(--radius-xs);padding:2px 8px;text-transform:capitalize}.ud-course-price{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.ud-course-price.free{color:var(--color-success)}.ud-empty-state{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:60px 24px;text-align:center}.ud-empty-state p{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:16px}.ud-btn-secondary{background:#0000;border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:10px 20px;text-decoration:none;transition:all var(--transition-fast)}.ud-btn-secondary:hover{background:var(--bg-secondary)}@media (max-width:768px){.ud-subject-header{padding:24px 0 32px}.ud-subject-header-content{align-items:center;flex-direction:column;text-align:center}.ud-subject-icon-large,.ud-subject-icon-placeholder{height:100px;width:100px}.ud-subject-info h1{font-size:var(--font-size-2xl)}.ud-subject-stats{justify-content:center}.ud-subject-content{padding:32px 16px}.ud-courses-grid,.ud-topics-grid{grid-template-columns:1fr}}@media (max-width:480px){.ud-subject-header-container{padding:0 16px}.ud-topic-actions{flex-direction:column}}.ud-subjects-page{background:var(--bg-primary);min-height:100vh}.ud-subjects-header{background:var(--bg-dark);padding:48px 0}.ud-subjects-header-content{margin:0 auto;max-width:var(--container-max-width);padding:0 24px}.ud-subjects-header h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);margin-bottom:8px}.ud-subjects-header p{color:var(--color-gray-300);font-size:var(--font-size-lg)}.ud-subjects-content{margin:0 auto;max-width:var(--container-max-width);padding:32px 24px}.ud-subjects-filters{margin-bottom:32px}.ud-goal-filters{display:flex;flex-wrap:wrap;gap:8px}.ud-results-count{color:var(--text-secondary);font-size:var(--font-size-sm);margin-bottom:24px}.ud-results-count strong{color:var(--text-primary)}.ud-subjects-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.ud-subject-card{align-items:center;background:var(--bg-primary);border:1px solid var(--border-light);cursor:pointer;display:flex;flex-direction:column;padding:24px;text-align:center;transition:all var(--transition-fast)}.ud-subject-card:hover{border-color:var(--border-color);box-shadow:var(--shadow-md)}.ud-subject-icon{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-full);display:flex;height:72px;justify-content:center;margin-bottom:16px;overflow:hidden;width:72px}.ud-subject-icon img{height:100%;object-fit:cover;width:100%}.ud-subject-icon-placeholder{align-items:center;background:var(--color-primary);border-radius:var(--radius-full);display:flex;height:72px;justify-content:center;margin-bottom:16px;width:72px}.ud-subject-icon-placeholder svg{color:var(--text-white);height:32px;width:32px}.ud-subject-card h3{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin-bottom:8px}.ud-subject-card:hover h3{color:var(--color-primary)}.ud-subject-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;flex-grow:1;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin-bottom:16px;overflow:hidden}.ud-subject-stats{border-top:1px solid var(--border-light);display:flex;gap:16px;justify-content:center;margin-bottom:16px;padding-top:16px;width:100%}.ud-stat-item{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:6px}.ud-stat-item svg{color:var(--text-muted);height:16px;width:16px}.ud-btn-explore{background:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:10px 20px;transition:background-color var(--transition-fast);width:100%}.ud-btn-explore:hover{background:var(--color-primary-dark)}.ud-subjects-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px}.ud-empty-subjects{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:80px 24px;text-align:center}.ud-empty-subjects h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-empty-subjects p{color:var(--text-secondary);font-size:var(--font-size-base)}.ud-subject-skeleton{pointer-events:none}.ud-skeleton-icon{border-radius:var(--radius-full);height:72px;margin-bottom:16px;width:72px}.ud-skeleton-line{width:80%}@media (max-width:768px){.ud-subjects-header{padding:32px 0}.ud-subjects-header h1{font-size:var(--font-size-2xl)}.ud-subjects-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.ud-goal-filters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.ud-filter-chip{flex-shrink:0;white-space:nowrap}}@media (max-width:480px){.ud-subjects-content,.ud-subjects-header-content{padding-left:16px;padding-right:16px}.ud-subjects-grid{grid-template-columns:1fr}}.ud-topics-page{background:var(--bg-primary);min-height:100vh}.ud-topics-header{background:var(--bg-dark);padding:48px 0}.ud-topics-header-content{margin:0 auto;max-width:var(--container-max-width);padding:0 24px}.ud-topics-header h1{color:var(--text-white);font-size:var(--font-size-4xl);font-weight:var(--font-weight-extrabold);margin-bottom:8px}.ud-topics-header p{color:var(--color-gray-300);font-size:var(--font-size-lg)}.ud-topics-content{margin:0 auto;max-width:var(--container-max-width);padding:32px 24px}.ud-topics-filters{margin-bottom:32px}.ud-search-box{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);display:flex;gap:12px;margin-bottom:16px;padding:12px 16px;transition:all var(--transition-fast)}.ud-search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #a445b21a}.ud-search-box svg{color:var(--text-muted);flex-shrink:0}.ud-search-box input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-base);outline:none}.ud-search-box input::placeholder{color:var(--text-muted)}.ud-subject-filters{display:flex;flex-wrap:wrap;gap:8px}.ud-filter-chip{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-full);color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:8px 16px;transition:all var(--transition-fast)}.ud-filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.ud-filter-chip.active{background:var(--bg-dark);border-color:var(--bg-dark);color:var(--text-white)}.ud-subject-section{margin-bottom:48px}.ud-subject-section:last-child{margin-bottom:0}.ud-subject-heading{border-bottom:2px solid var(--border-light);color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:20px;padding-bottom:12px}.ud-topics-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.ud-topic-card{background:var(--bg-primary);border:1px solid var(--border-light);cursor:pointer;padding:20px;transition:all var(--transition-fast)}.ud-topic-card:hover{border-color:var(--border-color);box-shadow:var(--shadow-md)}.ud-topic-icon{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-xs);display:flex;height:48px;justify-content:center;margin-bottom:12px;overflow:hidden;width:48px}.ud-topic-icon img{height:100%;object-fit:cover;width:100%}.ud-topic-icon-placeholder{border-radius:var(--radius-xs);height:48px;margin-bottom:12px;width:48px}.ud-topic-icon-placeholder svg{height:24px;width:24px}.ud-topic-card h3{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);margin-bottom:4px}.ud-topic-card:hover h3{color:var(--color-primary)}.ud-topic-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;line-height:var(--line-height-relaxed);margin-bottom:12px;overflow:hidden}.ud-topic-description,.ud-topic-meta{color:var(--text-secondary);font-size:var(--font-size-sm)}.ud-topic-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.ud-meta-item{align-items:center;display:flex;gap:4px}.ud-meta-item svg{height:16px;width:16px}.ud-topic-actions{display:flex;gap:8px}.ud-btn-practice,.ud-btn-view{border:none;cursor:pointer;flex:1 1;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:10px 16px;transition:all var(--transition-fast)}.ud-btn-view{background:#0000;border:1px solid var(--border-color);color:var(--text-primary)}.ud-btn-view:hover{background:var(--bg-secondary)}.ud-btn-practice{background:var(--color-primary);color:var(--text-white)}.ud-btn-practice:hover{background:var(--color-primary-dark)}.ud-empty-topics{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:80px 24px;text-align:center}.ud-empty-topics h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-empty-topics p{color:var(--text-secondary);font-size:var(--font-size-base)}.ud-topics-loading{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px}.ud-topic-skeleton{pointer-events:none}.ud-skeleton-icon{height:48px;margin-bottom:12px;width:48px}.ud-skeleton-icon,.ud-skeleton-line{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--color-gray-100) 25%,var(--color-gray-200) 50%,var(--color-gray-100) 75%);background-size:200% 100%;border-radius:var(--radius-xs)}.ud-skeleton-line{height:16px;margin-bottom:8px}.ud-skeleton-line.short{width:60%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width:768px){.ud-topics-header{padding:32px 0}.ud-topics-header h1{font-size:var(--font-size-2xl)}.ud-topics-grid{grid-template-columns:1fr}.ud-subject-filters{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}.ud-filter-chip{flex-shrink:0;white-space:nowrap}}@media (max-width:480px){.ud-topics-content,.ud-topics-header-content{padding-left:16px;padding-right:16px}.ud-topic-actions{flex-direction:column}}.ud-topic-details-page{background:var(--bg-primary);min-height:100vh}.ud-topic-header{background:var(--bg-dark);padding:32px 0 48px}.ud-topic-header-container{margin:0 auto;max-width:var(--container-max-width);padding:0 24px}.ud-breadcrumb{align-items:center;display:flex;gap:8px;margin-bottom:24px}.ud-breadcrumb-link{background:none;border:none;color:var(--color-primary-light);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-sm);padding:0}.ud-breadcrumb-link:hover{text-decoration:underline}.ud-breadcrumb-separator{color:var(--color-gray-500);font-size:var(--font-size-xs)}.ud-breadcrumb-current{color:var(--color-gray-400);font-size:var(--font-size-sm)}.ud-topic-header-content{align-items:flex-start;display:flex;gap:32px}.ud-topic-icon-large{align-items:center;background:var(--bg-primary);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:100px;justify-content:center;overflow:hidden;width:100px}.ud-topic-icon-large img{height:100%;object-fit:cover;width:100%}.ud-topic-icon-placeholder{align-items:center;background:var(--color-primary);border-radius:var(--radius-sm);display:flex;flex-shrink:0;height:100px;justify-content:center;width:100px}.ud-topic-icon-placeholder svg{color:var(--text-white);height:48px;width:48px}.ud-topic-info{flex:1 1}.ud-topic-info h1{color:var(--text-white);font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);line-height:var(--line-height-tight);margin-bottom:12px}.ud-topic-description-full{color:var(--color-gray-300);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);margin-bottom:24px;max-width:600px}.ud-topic-stats-detail{display:flex;gap:32px}.ud-topic-stat{align-items:center;display:flex;gap:12px}.ud-topic-stat-icon{align-items:center;background:#ffffff1a;border-radius:var(--radius-xs);display:flex;height:40px;justify-content:center;width:40px}.ud-topic-stat-icon svg{color:var(--text-white);height:20px;width:20px}.ud-topic-stat-content{display:flex;flex-direction:column}.ud-stat-value{color:var(--text-white);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.ud-stat-label{color:var(--color-gray-400);font-size:var(--font-size-xs)}.ud-topic-content{margin:0 auto;max-width:var(--container-max-width);padding:48px 24px}.ud-practice-config{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);margin-bottom:48px;padding:32px}.ud-practice-config h2{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-section-subtitle{color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:24px}.ud-config-form{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:24px}.ud-config-group{display:flex;flex-direction:column;gap:8px}.ud-config-group label{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold)}.ud-config-select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-xs);color:var(--text-primary);cursor:pointer;font-family:var(--font-family-base);font-size:var(--font-size-base);padding:12px 16px;transition:border-color var(--transition-fast)}.ud-config-select:focus{border-color:var(--color-primary);outline:none}.ud-btn-start-practice{background:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:16px 32px;transition:background-color var(--transition-fast);width:100%}.ud-btn-start-practice:hover:not(:disabled){background:var(--color-primary-dark)}.ud-btn-start-practice:disabled{background:var(--color-gray-300);cursor:not-allowed}.ud-topic-information{margin-bottom:48px}.ud-topic-information h2{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:24px}.ud-info-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.ud-info-card{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:24px}.ud-info-icon{align-items:center;background:var(--color-primary);border-radius:var(--radius-xs);display:flex;height:48px;justify-content:center;margin-bottom:16px;width:48px}.ud-info-icon svg{color:var(--text-white);height:24px;width:24px}.ud-info-card h3{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-info-card p{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.ud-quick-actions{display:flex;flex-wrap:wrap;gap:12px}.ud-action-btn{align-items:center;background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);gap:8px;padding:12px 20px;transition:all var(--transition-fast)}.ud-action-btn:hover{background:var(--bg-secondary);border-color:var(--text-secondary)}.ud-action-btn svg{height:16px;width:16px}.ud-loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:80px 24px}.ud-loading-spinner{animation:spin .8s linear infinite;border:3px solid var(--border-light);border-radius:var(--radius-full);border-top-color:var(--color-primary);height:40px;margin-bottom:16px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.ud-error-container{padding:80px 24px;text-align:center}.ud-error-container h2{color:var(--text-primary);font-size:var(--font-size-2xl);margin-bottom:16px}.ud-btn-primary{background:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;display:inline-block;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:12px 24px;text-decoration:none;transition:background-color var(--transition-fast)}.ud-btn-primary:hover{background:var(--color-primary-dark)}@media (max-width:768px){.ud-topic-header{padding:24px 0 32px}.ud-topic-header-content{align-items:center;flex-direction:column;text-align:center}.ud-topic-icon-large,.ud-topic-icon-placeholder{height:80px;width:80px}.ud-topic-info h1{font-size:var(--font-size-2xl)}.ud-topic-stats-detail{flex-wrap:wrap;gap:16px;justify-content:center}.ud-topic-content{padding:32px 16px}.ud-practice-config{padding:24px}.ud-config-form,.ud-info-grid{grid-template-columns:1fr}.ud-quick-actions{flex-direction:column}.ud-action-btn{justify-content:center;width:100%}}@media (max-width:480px){.ud-topic-header-container{padding:0 16px}}.my-goals-page{background:#0000}.ud-mygoals-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);overflow:hidden;padding:32px 36px;position:relative}.ud-mygoals-header:before{background:#ffffff0d;border-radius:50%;content:"";height:180px;position:absolute;right:-30px;top:-40px;width:180px}.ud-mygoals-header:after{background:#ffffff0a;border-radius:50%;bottom:-50px;content:"";height:130px;left:25%;position:absolute;width:130px}.ud-mygoals-header-content{padding:0;position:relative;z-index:1}.ud-mygoals-header-content h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:6px}.ud-mygoals-header-content p{color:#ffffffb3;font-size:var(--font-size-base)}.my-goals-page .container{padding:28px 32px}.ud-mygoals-actions{display:flex;justify-content:flex-end;margin-bottom:24px}.goals-list{display:flex;flex-direction:column;gap:var(--space-8);margin-bottom:var(--space-8)}.goal-section{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:all var(--transition-fast)}.goal-section:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.goal-section-header{align-items:center;background:var(--color-primary-light);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-8)}.goal-info{flex:1 1;gap:var(--space-6)}.goal-icon,.goal-info{align-items:center;display:flex}.goal-icon{background:var(--color-primary-gradient);border-radius:var(--radius-full);flex-shrink:0;height:72px;justify-content:center;overflow:hidden;width:72px}.goal-icon img{height:100%;object-fit:cover;width:100%}.goal-info h2{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-2) 0}.goal-description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin:0 0 var(--space-3) 0}.category-badge{background:var(--color-primary-light);border-radius:var(--radius-full);color:var(--color-primary);display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:var(--space-1) var(--space-3);text-transform:uppercase}.btn-remove{background:#0000;border:1px solid var(--color-danger);color:var(--color-danger);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-5);transition:all var(--transition-fast)}.btn-remove:hover{background:var(--color-danger);color:var(--text-white)}.goal-courses-info{padding:var(--space-8)}.info-card{align-items:center;background:var(--bg-secondary);border-radius:var(--radius-md);display:flex;gap:var(--space-6);padding:var(--space-6)}.info-card h4{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-1) 0}.info-card p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.info-card>div{flex:1 1}.stats-section{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-8)}.stats-section h3{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-6) 0}.stats-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.stat-card{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;gap:var(--space-4);padding:var(--space-6);transition:all var(--transition-fast)}.stat-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{align-items:center;background:var(--bg-primary);border-radius:var(--radius-lg);display:flex;height:56px;justify-content:center;width:56px}.stat-content h4{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-1) 0}.stat-content p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}.btn-primary,.btn-secondary{border:none;cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-6);transition:all var(--transition-fast)}.btn-secondary{background-color:var(--color-secondary);color:var(--text-white)}.btn-secondary:hover{background-color:var(--color-secondary-hover)}.loading{color:var(--text-secondary);font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);padding:var(--space-16) var(--space-5);text-align:center}.empty-state{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-16) var(--space-8)}.empty-icon{display:flex;justify-content:center}.empty-state h3{margin-bottom:var(--space-3)}.empty-state p{margin-bottom:var(--space-8)}@media (max-width:768px){.ud-mygoals-header{padding:24px 20px}.ud-mygoals-header-content h1{font-size:var(--font-size-2xl)}.my-goals-page .container{padding:20px}.ud-mygoals-actions{justify-content:flex-start}.goal-section-header{gap:var(--space-6);padding:var(--space-6)}.goal-info,.goal-section-header{align-items:flex-start;flex-direction:column}.btn-remove,.ud-mygoals-actions .btn-primary{width:100%}.info-card{align-items:flex-start;flex-direction:column;padding:var(--space-4)}.info-card .btn-secondary{width:100%}.stats-grid{grid-template-columns:1fr}}@media (max-width:480px){.ud-mygoals-header{padding:18px 14px}.goal-courses-info,.goal-section-header{padding:var(--space-4)}.goal-icon{height:56px;width:56px}.goal-info h2{font-size:var(--font-size-xl)}}.learning-page{background-color:var(--bg-secondary);min-height:100vh}.learning-header{background:var(--bg-primary);border-bottom:1px solid var(--border-light);justify-content:space-between;padding:var(--space-4) var(--space-6);position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.header-left,.learning-header{align-items:center;display:flex}.header-left{flex:1 1;gap:var(--space-6)}.back-btn{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);padding:var(--space-2) var(--space-4);transition:all var(--transition-fast)}.back-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.goal-header-info{align-items:center;display:flex;gap:var(--space-4)}.goal-header-info .goal-icon{border-radius:var(--radius-lg);height:48px;object-fit:cover;width:48px}.goal-header-info h1{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0}.goal-header-info p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:var(--space-1) 0 0 0}.sidebar-toggle-btn{align-items:center;background:none;border:1px solid var(--border-light);cursor:pointer;display:flex;justify-content:center;padding:var(--space-2);transition:all var(--transition-fast)}.sidebar-toggle-btn:hover{background:var(--bg-secondary)}.learning-content{display:flex;height:calc(100vh - 80px)}.learning-sidebar{background:var(--bg-primary);border-right:1px solid var(--border-light);display:flex;flex-direction:column;overflow-y:auto;transition:all var(--transition-slow);width:350px}.learning-sidebar.closed{opacity:0;pointer-events:none;width:0}.sidebar-header{align-items:center;background:var(--bg-secondary);display:flex;justify-content:space-between;padding:var(--space-6)}.sidebar-header h2{color:var(--text-primary);font-size:var(--font-size-xl)}.exam-count{background:var(--color-primary);border-radius:var(--radius-full);color:var(--text-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-3)}.sidebar-content{flex:1 1;padding:var(--space-4)}.mock-tests-section{background:var(--bg-secondary);border-top:1px solid var(--border-light);margin-top:auto}.mock-tests-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-4) var(--space-6);transition:background var(--transition-fast)}.mock-tests-header:hover{background:var(--color-gray-200)}.mock-tests-title{align-items:center;color:var(--text-primary);display:flex;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);gap:var(--space-2)}.mock-tests-list{background:var(--bg-primary);padding:var(--space-2) var(--space-4) var(--space-4)}.mock-test-item{align-items:center;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:var(--space-2);padding:var(--space-3) var(--space-4);transition:all var(--transition-fast)}.mock-test-item:hover{background:var(--color-primary-light);border-color:var(--color-primary);transform:translateX(4px)}.mock-test-info h4{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-1) 0}.test-meta{color:var(--text-secondary)}.test-badge,.test-meta{font-size:var(--font-size-xs)}.test-badge{background:var(--color-primary);border-radius:var(--radius-full);color:var(--text-white);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-3);white-space:nowrap}.exam-section{margin-bottom:var(--space-4)}.exam-header{align-items:flex-start;background:var(--bg-secondary);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-4);transition:all var(--transition-fast)}.exam-header:hover{background:var(--color-gray-200)}.exam-info h3{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-1) 0}.exam-code{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);display:inline-block;font-size:var(--font-size-xs);padding:2px var(--space-2)}.exam-code,.expand-btn{color:var(--text-secondary)}.expand-btn{background:none;border:none;cursor:pointer;padding:0;transition:all var(--transition-fast)}.expand-btn:hover{color:var(--text-primary)}.stages-list{margin-top:var(--space-2);padding-left:var(--space-4)}.stage-section{margin-bottom:var(--space-3)}.stage-header{align-items:flex-start;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;display:flex;justify-content:space-between;padding:var(--space-3);transition:all var(--transition-fast)}.stage-header:hover{border-color:var(--color-primary);box-shadow:var(--shadow-sm)}.stage-info h4{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin:0 0 var(--space-1) 0}.subject-count{color:var(--text-secondary);font-size:var(--font-size-xs)}.subjects-list{margin-top:var(--space-2);padding-left:var(--space-2)}.subject-item{align-items:center;border:1px solid #0000;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--space-2);margin-bottom:var(--space-1);padding:var(--space-3);transition:all var(--transition-fast)}.subject-item:hover{background:var(--bg-secondary)}.subject-item.active{background:var(--color-primary-light);border-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.subject-item span{color:var(--text-primary);flex:1 1;font-size:var(--font-size-sm)}.topic-badge{background:var(--color-gray-200);border-radius:var(--radius-full);color:var(--text-secondary);flex:0 1!important;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:2px var(--space-2)}.subject-item.active .topic-badge{background:var(--color-primary);color:var(--text-white)}.learning-main{flex:1 1;overflow-y:auto;padding:var(--space-8);transition:all var(--transition-slow)}.learning-main.expanded{margin-left:0}.breadcrumb{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:var(--space-2);margin-bottom:var(--space-6)}.breadcrumb span.active{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.subject-content{background:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-8)}.subject-details h2{color:var(--text-primary);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-4) 0}.subject-description{color:var(--text-secondary);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);margin-bottom:var(--space-8)}.subject-meta{grid-gap:var(--space-4);background:var(--bg-secondary);border-radius:var(--radius-md);display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:var(--space-8);padding:var(--space-6)}.meta-item{display:flex;flex-direction:column;gap:var(--space-1)}.meta-item .label{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.meta-item .value{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.resource-tabs{border-bottom:1px solid var(--border-light);margin:var(--space-8) 0 var(--space-6) 0}.resource-tabs,.tab-button{display:flex;gap:var(--space-2)}.tab-button{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:-1px;padding:var(--space-4) var(--space-6);transition:all var(--transition-fast)}.tab-button:hover{background:var(--bg-secondary);color:var(--color-primary)}.tab-button.active{border-bottom-color:var(--color-primary);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.tab-content{animation:fadeIn .3s ease-in;padding:var(--space-6) 0}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tab-content h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-6) 0}.materials-list,.practice-list,.tests-list,.videos-list{min-height:200px}.empty-content{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:var(--space-12) var(--space-4);text-align:center}.empty-content p{color:var(--text-muted);margin-top:var(--space-4)}.btn-primary,.empty-content p{font-size:var(--font-size-base)}.btn-primary{background-color:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-weight:var(--font-weight-bold);padding:var(--space-3) var(--space-6);transition:all var(--transition-fast)}.btn-primary:hover{background-color:var(--color-primary-hover)}.empty-state{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:var(--space-12);text-align:center}.empty-icon{margin-bottom:var(--space-6);opacity:.5}.empty-state h3{color:var(--text-primary);font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.empty-state p{color:var(--text-secondary);font-size:var(--font-size-base);max-width:400px}.error-message,.loading{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-lg);justify-content:center;min-height:400px}.materials-grid{grid-gap:var(--space-4);display:grid;gap:var(--space-4)}.material-card{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);display:flex;gap:var(--space-4);padding:var(--space-6);transition:all var(--transition-fast)}.material-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.material-icon{flex-shrink:0}.material-info{flex:1 1}.material-info h4{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.material-desc{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0 0 var(--space-3) 0}.material-meta{display:flex;gap:var(--space-4)}.material-duration,.material-type{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-full);color:var(--text-secondary);font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3)}.btn-view{background:var(--bg-primary);border:1px solid var(--color-primary);color:var(--color-primary);cursor:pointer;flex-shrink:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);padding:var(--space-2) var(--space-6);transition:all var(--transition-fast)}.btn-view:hover{background:var(--color-primary);color:var(--text-white)}.topics-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.topic-card{background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-6);transition:all var(--transition-fast)}.topic-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.topic-header h4{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.topic-desc{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0 0 var(--space-4) 0}.topic-stats{background:var(--bg-primary);border-radius:var(--radius-md);display:flex;gap:var(--space-6);margin-bottom:var(--space-4);padding:var(--space-4)}.topic-stats .stat{display:flex;flex-direction:column;gap:var(--space-1)}.stat-label{color:var(--text-secondary);font-size:var(--font-size-xs)}.stat-value{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.topic-card .btn-primary{margin-top:var(--space-2);width:100%}.videos-grid{grid-gap:var(--space-6);display:grid;gap:var(--space-6);grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.video-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.video-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.video-thumbnail{background:var(--bg-dark);height:180px;overflow:hidden;position:relative;width:100%}.video-thumbnail img{height:100%;object-fit:cover;width:100%}.video-placeholder{align-items:center;background:var(--color-primary-gradient);display:flex;height:100%;justify-content:center;width:100%}.video-duration{background:#000c;border-radius:var(--radius-sm);bottom:8px;color:var(--text-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);padding:var(--space-1) var(--space-2);position:absolute;right:8px}.video-info{padding:var(--space-5)}.video-info h4{color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-2) 0}.video-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--font-size-sm);line-height:var(--line-height-normal);margin:0 0 var(--space-4) 0;overflow:hidden}.video-info .btn-primary{width:100%}.video-modal-overlay{align-items:center;animation:fadeIn .3s ease-in-out;background-color:#000000d9;bottom:0;display:flex;justify-content:center;left:0;padding:var(--space-8);position:fixed;right:0;top:0;z-index:var(--z-modal)}.video-modal-content{animation:slideUp .3s ease-out;background:var(--bg-primary);box-shadow:var(--shadow-2xl);max-height:90vh;max-width:1200px;overflow-y:auto;width:100%}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.video-modal-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;padding:var(--space-6)}.video-modal-header h3{color:var(--text-primary);flex:1 1;font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:0;padding-right:var(--space-4)}.close-modal-btn{align-items:center;background:none;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;padding:var(--space-2);transition:all var(--transition-fast)}.close-modal-btn:hover{background:var(--color-gray-200);color:var(--text-primary)}.video-modal-body{padding:var(--space-6)}.video-player-wrapper{background:var(--color-black);border-radius:var(--radius-md);height:0;margin-bottom:var(--space-6);overflow:hidden;padding-bottom:56.25%;position:relative}.video-player-wrapper iframe{border-radius:var(--radius-md);height:100%;left:0;position:absolute;top:0;width:100%}.video-modal-description{background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--space-4);padding:var(--space-6)}.video-modal-description h4{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-3) 0}.video-modal-description p{color:var(--text-secondary);line-height:var(--line-height-relaxed);margin:0}.video-modal-meta{align-items:center;display:flex;gap:var(--space-4)}.duration-badge{align-items:center;background:var(--color-primary);border-radius:var(--radius-full);color:var(--text-white);display:inline-flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-4)}body.modal-open{overflow:hidden}@media (max-width:1024px){.learning-sidebar{width:300px}}@media (max-width:768px){.learning-header{padding:var(--space-4)}.goal-header-info h1{font-size:var(--font-size-xl)}.learning-sidebar{box-shadow:var(--shadow-lg);height:calc(100vh - 80px);left:0;position:fixed;top:80px;width:300px;z-index:99}.learning-sidebar.closed{transform:translateX(-100%)}.learning-main{padding:var(--space-4);width:100%}.subject-content{padding:var(--space-6)}.subject-details h2{font-size:var(--font-size-2xl)}.resource-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.tab-button{font-size:var(--font-size-sm);padding:var(--space-3) var(--space-4);white-space:nowrap}.video-modal-header,.video-modal-overlay{padding:var(--space-4)}.video-modal-header h3{font-size:var(--font-size-xl)}.video-modal-body,.video-modal-description{padding:var(--space-4)}}@media (max-width:480px){.goal-header-info,.header-left{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.goal-header-info .goal-icon{height:40px;width:40px}.topics-grid,.videos-grid{grid-template-columns:1fr}}.ud-mock-tests-page{background:#0000}.ud-mock-tests-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);overflow:hidden;padding:32px 36px;position:relative}.ud-mock-tests-header:before{background:#ffffff0a;border-radius:50%;content:"";height:180px;position:absolute;right:-30px;top:-40px;width:180px}.ud-mock-tests-header:after{background:#3578ff14;border-radius:50%;bottom:-50px;content:"";height:130px;left:30%;position:absolute;width:130px}.ud-mock-tests-header-content{padding:0;position:relative;z-index:1}.ud-mock-tests-header h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin-bottom:6px}.ud-mock-tests-header p{color:#ffffffa6;font-size:var(--font-size-base)}.ud-mock-tests-content{padding:28px 32px}.ud-tests-tabs{border-bottom:1px solid var(--border-light);display:flex;gap:8px;margin-bottom:32px;padding-bottom:0}.ud-tab-btn{background:#0000;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:12px 24px;position:relative;transition:all var(--transition-fast)}.ud-tab-btn.active,.ud-tab-btn:hover{color:var(--text-primary)}.ud-tab-btn.active:after{background:var(--color-primary);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.ud-tests-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.ud-test-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);overflow:hidden;transition:box-shadow var(--transition-fast)}.ud-test-card:hover{box-shadow:var(--shadow-md)}.ud-test-card-header{align-items:flex-start;background:linear-gradient(135deg,var(--color-primary) 0,var(--color-primary-dark) 100%);display:flex;justify-content:space-between;padding:20px}.ud-test-badge{background:#fff3;border-radius:var(--radius-full);color:var(--text-white);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);padding:4px 12px}.ud-test-duration{align-items:center;color:var(--text-white);display:flex;font-size:var(--font-size-sm);gap:4px}.ud-test-card-body{padding:20px}.ud-test-title{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-test-description{color:var(--text-secondary);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);margin-bottom:16px}.ud-test-stats{border-top:1px solid var(--border-light);display:flex;gap:20px;margin-bottom:16px;padding-top:16px}.ud-test-stat{display:flex;flex-direction:column}.ud-test-stat-value{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.ud-test-stat-label{color:var(--text-secondary);font-size:var(--font-size-xs)}.ud-btn-start-test{background:var(--color-primary);border:none;color:var(--text-white);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:12px 24px;transition:background-color var(--transition-fast);width:100%}.ud-btn-start-test:hover{background:var(--color-primary-dark)}.ud-empty-tests{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:80px 24px;text-align:center}.ud-empty-icon{align-items:center;background:var(--bg-primary);border-radius:var(--radius-full);display:flex;height:80px;justify-content:center;margin:0 auto 24px;width:80px}.ud-empty-icon svg{color:var(--text-muted);height:40px;width:40px}.ud-empty-tests h3{color:var(--text-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin-bottom:8px}.ud-empty-tests p{color:var(--text-secondary);font-size:var(--font-size-base);margin:0 auto;max-width:400px}@media (max-width:768px){.ud-mock-tests-header{padding:24px 20px}.ud-mock-tests-header h1{font-size:var(--font-size-2xl)}.ud-tests-grid{grid-template-columns:1fr}.ud-tests-tabs{-webkit-overflow-scrolling:touch;overflow-x:auto}.ud-tab-btn{white-space:nowrap}}@media (max-width:480px){.ud-mock-tests-header{padding:18px 14px}.ud-mock-tests-content{padding:16px}}.mock-public-page{background:var(--bg-secondary);min-height:calc(100vh - 72px)}.mock-public-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);overflow:hidden;padding:36px 48px;position:relative}.mock-public-header:before{background:#ffffff0a;border-radius:50%;content:"";height:200px;position:absolute;right:-40px;top:-40px;width:200px}.mock-public-header h1{color:#fff;font-size:var(--font-size-3xl);font-weight:var(--font-weight-extrabold);margin:0 0 6px}.mock-public-header p{color:#ffffffa6;font-size:var(--font-size-sm);margin:0}.mock-public-body{margin:0 auto;max-width:var(--container-xl);padding:28px 24px}.mock-type-tabs{border-bottom:1px solid var(--border-light);display:flex;gap:0;margin-bottom:24px}.mock-tab{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);padding:8px 16px;position:relative;transition:color var(--transition-fast)}.mock-tab:hover{color:var(--text-primary)}.mock-tab.active{color:var(--color-primary)}.mock-tab.active:after{background:var(--color-primary);bottom:-1px;content:"";height:2px;left:0;position:absolute;right:0}.mock-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.mock-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:10px;padding:18px;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.mock-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.mock-card-top{align-items:center;display:flex;justify-content:space-between}.mock-type-badge{border-radius:var(--radius-full);color:#fff;font-size:11px;font-weight:var(--font-weight-bold);padding:3px 10px}.mock-duration{color:var(--text-secondary);font-size:var(--font-size-xs)}.mock-title{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1.3;margin:0}.mock-desc{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--font-size-xs);line-height:1.4;margin:0;overflow:hidden}.mock-tag{align-self:flex-start;background:var(--color-primary-light);border-radius:var(--radius-full);color:var(--color-primary);display:inline-block;font-size:11px;font-weight:var(--font-weight-semibold);padding:2px 8px}.mock-meta{border-top:1px solid var(--border-light);color:var(--text-muted);display:flex;font-size:var(--font-size-xs);gap:12px;padding-top:8px}.mock-btn{background:var(--color-primary);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin-top:auto;padding:8px;transition:background var(--transition-fast)}.mock-btn:hover{background:var(--color-primary-dark)}.mock-loading{color:var(--text-secondary);padding:60px;text-align:center}.mock-empty{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:64px 24px;text-align:center}.mock-empty-icon{font-size:2.5rem;margin-bottom:12px}.mock-empty h3{color:var(--text-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:6px}.mock-empty p{color:var(--text-secondary);font-size:var(--font-size-sm);margin:0}@media (max-width:768px){.mock-public-header{padding:24px 20px}.mock-public-body{padding:16px}.mock-grid{gap:10px;grid-template-columns:1fr 1fr}}@media (max-width:480px){.mock-grid{grid-template-columns:1fr}}.layout{display:flex;flex-direction:column;min-height:100vh}.header{background-color:var(--bg-primary);border-bottom:1px solid var(--border-light);box-shadow:0 2px 4px #0000000f;position:-webkit-sticky;position:sticky;top:0;z-index:var(--z-sticky)}.header-inner{align-items:center;display:flex;gap:16px;height:var(--header-height);margin:0 auto;max-width:var(--container-xl);padding:0 24px}.logo{flex-shrink:0;text-decoration:none}.logo-text{color:var(--color-primary);font-size:1.375rem;font-weight:800;letter-spacing:-.02em}.logo:hover .logo-text{color:var(--color-primary-dark)}.category-trigger{flex-shrink:0;position:relative}.category-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:8px 4px}.category-btn:hover{color:var(--color-primary)}.category-dropdown{background:var(--bg-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-lg);left:0;min-width:200px;padding:8px 0;position:absolute;top:100%;z-index:var(--z-dropdown)}.category-item{color:var(--text-primary);display:block;font-size:var(--font-size-sm);padding:10px 20px;text-decoration:none;transition:background-color var(--transition-fast)}.category-item:hover{background-color:var(--bg-secondary);color:var(--color-primary)}.search-bar{align-items:center;background:var(--bg-primary);border:1px solid var(--color-gray-900);border-radius:var(--radius-full);display:flex;flex:1 1;gap:8px;height:48px;padding:0 16px;transition:border-color var(--transition-fast)}.search-bar:focus-within{border-color:var(--color-primary)}.search-input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-family-base);font-size:var(--font-size-sm);outline:none}.search-input::placeholder{color:var(--text-secondary)}.header-nav{align-items:center;display:flex;flex-shrink:0;gap:4px}.header-nav-link{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:8px 12px;position:relative;text-decoration:none;white-space:nowrap}.header-nav-link.active,.header-nav-link:hover{color:var(--color-primary)}.header-nav-link.active:after{background:var(--color-primary);bottom:-22px;content:"";height:2px;left:0;position:absolute;right:0}.avatar-btn{background:none;border:none;cursor:pointer;flex-shrink:0;padding:0}.avatar-circle{align-items:center;background-color:var(--color-gray-900);border-radius:50%;color:var(--text-white);display:flex;font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);height:36px;justify-content:center;width:36px}.avatar-circle-lg{font-size:var(--font-size-lg);height:48px;width:48px}.user-menu-wrapper{flex-shrink:0;position:relative}.user-dropdown{background:var(--bg-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-xl);min-width:260px;position:absolute;right:0;top:calc(100% + 8px);z-index:var(--z-dropdown)}.user-dropdown-header{align-items:center;display:flex;gap:12px;padding:16px}.user-dropdown-info{display:flex;flex-direction:column}.user-dropdown-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.user-dropdown-email{color:var(--text-secondary);font-size:var(--font-size-xs)}.user-dropdown-divider{background:var(--border-light);height:1px}.user-dropdown-item{align-items:center;background:none;border:none;color:var(--text-primary);cursor:pointer;display:flex;font-family:var(--font-family-base);font-size:var(--font-size-sm);gap:12px;padding:10px 16px;text-align:left;text-decoration:none;transition:background-color var(--transition-fast);width:100%}.user-dropdown-item:hover{background-color:var(--bg-secondary);color:var(--color-primary)}.user-dropdown-logout{color:var(--text-primary)}.mobile-menu-btn,.mobile-search-btn{background:none;border:none;color:var(--text-primary);cursor:pointer;display:none;flex-shrink:0;padding:8px}.mobile-search-bar{padding:0 24px 12px}.mobile-search-form{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:var(--radius-full);display:flex;gap:8px;height:44px;padding:0 16px}.mobile-search-form .search-input{background:#0000}.mobile-nav-overlay{background:#00000080;bottom:0;left:0;position:fixed;right:0;top:var(--header-height);z-index:var(--z-modal-backdrop)}.mobile-nav{background:var(--bg-primary);box-shadow:var(--shadow-xl);height:100%;left:0;overflow-y:auto;position:absolute;top:0;width:280px}.mobile-nav-header{align-items:center;display:flex;gap:12px;padding:20px 16px}.mobile-nav-name{color:var(--text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold)}.mobile-nav-email{color:var(--text-secondary);font-size:var(--font-size-xs)}.mobile-nav-divider{background:var(--border-light);height:1px;margin:4px 0}.mobile-nav-link{color:var(--text-primary);display:block;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);padding:12px 16px;text-decoration:none}.mobile-nav-link:hover{background-color:var(--bg-secondary);color:var(--color-primary)}.mobile-nav-logout{background:none;border:none;cursor:pointer;font-family:var(--font-family-base);text-align:left;width:100%}.main-content{flex:1 1}.footer{background-color:var(--bg-dark);color:var(--text-white);margin-top:auto}.footer-inner{margin:0 auto;max-width:var(--container-xl);padding:0 24px}.footer-brand{padding:32px 0 24px}.footer-brand .footer-inner{align-items:center;display:flex;justify-content:space-between}.footer-brand-name{color:var(--text-white);font-size:1.375rem;font-weight:var(--font-weight-extrabold);letter-spacing:-.02em}.footer-top{border-top:1px solid #ffffff14;padding:32px 0}.footer-top .footer-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(3,1fr)}.footer-middle{border-top:1px solid #ffffff14;padding:32px 0}.footer-middle .footer-grid{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(5,1fr)}.footer-col{display:flex;flex-direction:column;gap:10px}.footer-col h4{color:var(--text-white);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);margin-bottom:4px}.footer-col a{color:var(--color-gray-400);font-size:13px;line-height:1.5;text-decoration:none;transition:color .15s}.footer-col a:hover{color:var(--text-white)}.footer-bottom{border-top:1px solid #ffffff14;padding:20px 0}.footer-bottom .footer-inner{align-items:center;display:flex;justify-content:space-between}.footer-logo{color:var(--text-white);font-size:var(--font-size-lg);font-weight:var(--font-weight-extrabold)}.footer-copyright{color:var(--color-gray-500);font-size:var(--font-size-xs)}.container{margin:0 auto;max-width:var(--container-xl);padding:0 24px}@media (max-width:1024px){.category-trigger,.header-nav{display:none}.mobile-menu-btn,.mobile-search-btn{align-items:center;display:flex;justify-content:center}}@media (max-width:1024px) and (min-width:769px){.footer-middle .footer-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:768px){.header-inner{gap:12px;padding:0 16px}.search-bar{display:none}.logo-text{font-size:1.125rem}.footer-inner{padding:0 16px}.footer-middle .footer-grid,.footer-top .footer-grid{gap:24px;grid-template-columns:repeat(2,1fr)}.footer-bottom .footer-inner{flex-direction:column;gap:8px;text-align:center}.mobile-search-bar{padding:0 16px 12px}}@media (min-width:1025px){.mobile-search-bar{display:none}}.profile-layout{align-items:flex-start;display:flex;gap:24px;margin:0 auto;max-width:var(--container-xl);min-height:calc(100vh - 200px);padding:28px 24px;position:relative}.profile-sidebar{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 2px 12px #00000012;height:-webkit-fit-content;height:fit-content;overflow:hidden;position:-webkit-sticky;position:sticky;top:calc(var(--header-height) + 16px);transition:width .28s cubic-bezier(.4,0,.2,1);width:64px;z-index:100}.profile-sidebar:hover{box-shadow:0 8px 32px #00000021;width:248px}.sidebar-header{background:linear-gradient(135deg,var(--bg-dark) 0,var(--color-secondary) 100%);border-bottom:1px solid var(--border-light);border-radius:15px 15px 0 0;padding:18px 20px;white-space:nowrap}.sidebar-header h2{color:#fff;font-size:var(--font-size-base);font-weight:var(--font-weight-bold);letter-spacing:.3px;margin:0;opacity:0;transition:opacity .28s ease}.profile-sidebar:hover .sidebar-header h2{opacity:1}.sidebar-nav{padding:6px 0}.sidebar-link{align-items:center;border-left:3px solid #0000;color:var(--text-secondary);display:flex;font-size:var(--font-size-sm);gap:0;padding:11px 20px;position:relative;text-decoration:none;transition:all .18s ease;white-space:nowrap}.sidebar-link:hover{background-color:var(--bg-secondary);color:var(--color-primary)}.sidebar-link.active{background:linear-gradient(90deg,#ff6b3514,#0000);border-left-color:var(--color-primary);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.sidebar-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center;margin-right:14px;min-width:24px;width:24px}.sidebar-label{font-size:var(--font-size-sm);opacity:0;overflow:hidden;transition:opacity .22s ease;white-space:nowrap}.profile-sidebar:hover .sidebar-label{opacity:1}.profile-content{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 2px 12px #0000000f;flex:1 1;min-width:0;overflow:hidden}@media (max-width:992px){.profile-layout{flex-direction:column;gap:16px;padding:16px}.profile-sidebar{border-radius:12px;position:static;width:100%!important}.sidebar-header{border-radius:11px 11px 0 0}.sidebar-header h2{opacity:1!important}.sidebar-nav{display:flex;flex-wrap:wrap;gap:4px;padding:4px 8px}.sidebar-link{border-bottom:2px solid #0000;border-left:none;border-radius:8px;flex:1 1;gap:6px;justify-content:center;min-width:120px;padding:10px 12px}.sidebar-icon{margin-right:0}.sidebar-label{opacity:1!important}.sidebar-link.active{background:#ff6b3514;border-bottom-color:var(--color-primary);border-left-color:#0000}.profile-content{border-radius:12px}}@media (max-width:576px){.profile-layout{gap:10px;padding:10px}.sidebar-header{padding:14px 16px}.sidebar-header h2{font-size:var(--font-size-sm);opacity:1!important}.sidebar-nav{flex-direction:row;flex-wrap:wrap;padding:6px}.sidebar-link{align-items:center;border-bottom:none;border-left:none;border-radius:8px;flex:1 1;flex-direction:column;font-size:var(--font-size-xs);justify-content:center;min-width:100px;padding:10px 6px;text-align:center}.sidebar-icon{margin-bottom:4px;margin-right:0}.sidebar-label{font-size:11px;opacity:1!important}.sidebar-link.active{background:#ff6b351a;border-bottom-color:#0000;border-left-color:#0000;box-shadow:inset 0 0 0 2px var(--color-primary)}}.loading-screen{align-items:center;color:var(--text-secondary);display:flex;font-size:var(--font-size-lg);justify-content:center;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}
/*# sourceMappingURL=main.d5dfe3bb.css.map*/