@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;700;900&family=Noto+Sans:wght@400;500;700;900&display=swap";
.main-content{background:linear-gradient(135deg,#020617 0%,#0f172a 50%,#1e293b 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex;position:relative;overflow:hidden}.main-content:before{content:"";pointer-events:none;background:radial-gradient(circle at 20%,rgba(59,130,246,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(99,102,241,.1) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(16,185,129,.05) 0%,transparent 50%);position:absolute;top:0;bottom:0;left:0;right:0}.content-container{z-index:1;width:100%;max-width:900px;position:relative}.page-header{text-align:center;margin-bottom:3rem}.header-content{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px;display:flex}.page-title{background:linear-gradient(135deg,#fff 0%,#e2e8f0 100%);-webkit-text-fill-color:transparent;text-shadow:0 0 30px rgba(255,255,255,.1);-webkit-background-clip:text;background-clip:text;margin-bottom:1rem;font-size:3rem;font-weight:800}.page-subtitle{color:#cbd5e1;max-width:600px;margin:0 auto;font-size:1.25rem;line-height:1.6}.entire{flex-direction:column;align-items:center;gap:2rem;display:flex}.form-container{align-items:stretch;gap:2rem;width:100%;max-width:800px;display:flex}.form-section{flex-direction:column;flex:1;display:flex}.form-field{flex-direction:column;gap:.75rem;height:100%;display:flex}.field-label{color:#f1f5f9;text-shadow:0 0 10px rgba(255,255,255,.2);margin:0;font-size:1.1rem;font-weight:600}.form-input,.form-textarea{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);color:#f1f5f9;box-sizing:border-box;background:rgba(15,23,42,.6);border:1px solid rgba(30,41,59,.8);border-radius:12px;flex:1;width:100%;padding:1rem 1.25rem;font-size:1rem;transition:all .3s;box-shadow:0 4px 20px rgba(0,0,0,.2)}.form-input:focus,.form-textarea:focus{background:rgba(15,23,42,.8);border-color:rgba(59,130,246,.5);outline:none;box-shadow:0 0 0 3px rgba(59,130,246,.1),0 8px 32px rgba(59,130,246,.15)}.form-input::placeholder,.form-textarea::placeholder{color:#64748b}.form-textarea{resize:vertical;min-height:120px;font-family:inherit}.form-footer{flex-direction:column;align-items:center;gap:1rem;width:100%;max-width:400px;display:flex}.error-message{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:#fca5a5;text-align:center;box-sizing:border-box;background:rgba(239,68,68,.2);border:1px solid rgba(239,68,68,.3);border-radius:8px;width:100%;padding:.75rem 1.5rem;font-size:.9rem;animation:.3s slideDown;box-shadow:0 4px 20px rgba(239,68,68,.1)}.error-message p{margin:0}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-actions{width:100%}.generate-button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-shadow:0 1px 2px rgba(0,0,0,.2);background:linear-gradient(135deg,#1e40af 0%,#3b82f6 50%,#6366f1 100%);border:1px solid rgba(255,255,255,.2);border-radius:12px;width:100%;padding:1rem 2rem;font-size:1.1rem;font-weight:600;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(59,130,246,.3),inset 0 1px rgba(255,255,255,.2)}.generate-button:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.generate-button:hover{background:linear-gradient(135deg,#2563eb 0%,#3b82f6 50%,#8b5cf6 100%);transform:translateY(-2px);box-shadow:0 12px 48px rgba(59,130,246,.4),inset 0 1px rgba(255,255,255,.3)}.generate-button:hover:before{left:100%}.generate-button:active{transform:translateY(0)}.generate-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.loading-spinner{justify-content:center;align-items:center;gap:.75rem;display:flex}.spinner{border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:576px){.main-content{min-height:100vh;padding:1rem}.page-title{font-size:2rem}.page-subtitle{padding:0 1rem;font-size:1rem}.page-header{margin-bottom:2rem}.form-container{flex-direction:column;gap:1.5rem;width:100%}.form-section{width:100%}.form-input,.form-textarea{padding:.875rem 1rem;font-size:.95rem}.form-textarea{min-height:100px}.entire{gap:1.5rem}.form-footer{max-width:100%}.generate-button{padding:.875rem 1.5rem;font-size:1rem}.error-message{box-sizing:border-box;text-align:center;width:100%}.field-label{font-size:1rem}}.course-actions{justify-content:center;align-items:center;gap:1rem;margin:2rem 0;display:flex}.reset-button,.save-button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);text-shadow:0 1px 2px rgba(0,0,0,.2);background:linear-gradient(135deg,#1e40af 0%,#3b82f6 50%,#6366f1 100%);border:1px solid rgba(255,255,255,.2);border-radius:12px;flex:1;max-width:200px;padding:1rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 8px 32px rgba(59,130,246,.3),inset 0 1px rgba(255,255,255,.2)}.reset-button:before,.save-button:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.reset-button:hover,.save-button:hover{background:linear-gradient(135deg,#2563eb 0%,#3b82f6 50%,#8b5cf6 100%);transform:translateY(-2px);box-shadow:0 12px 48px rgba(59,130,246,.4),inset 0 1px rgba(255,255,255,.3)}.reset-button:hover:before,.save-button:hover:before{left:100%}.reset-button:active,.save-button:active{transform:translateY(0)}@media (max-width:576px){.course-actions{flex-direction:column;gap:1rem}.reset-button,.save-button{width:100%;max-width:100%}}.content-container{z-index:1;text-align:center;width:100%;max-width:900px;position:relative}.content-container *{text-align:inherit}.form-field{text-align:left;flex-direction:column;gap:.75rem;height:100%;display:flex}
:root{--color-dark:#070a10;--color-secondary:#0b1220;--color-tertiary:#0c1326;--color-surface:#0e1529;--color-surface-light:#0f172a;--color-header:#0e1a35;--color-border:rgba(255,255,255,.14);--color-border-light:rgba(255,255,255,.22);--color-border-subtle:rgba(255,255,255,.08);--color-muted:#c7d2e0;--color-text-light:#d1d9e6;--color-text-gray:#b6c2d0;--color-primary:#1d4ed8;--color-primary-light:#3b82f6;--color-primary-lighter:#93c5fd;--color-white:#f8fafc;--color-error:#ef4444;--color-success:#10b981;--color-success-dark:#0f9b79;--glow-weak:0 0 0 1px rgba(255,255,255,.12),0 0 8px rgba(255,255,255,.08);--glow:0 0 0 1px rgba(255,255,255,.16),0 0 14px rgba(255,255,255,.1);--glow-strong:0 0 0 1px rgba(255,255,255,.32),0 0 20px rgba(255,255,255,.34);--shadow-modal:0 0 0 1px rgba(255,255,255,.12),0 0 24px rgba(255,255,255,.12);--font-family:"Noto Sans",sans-serif;--font-mono:"Monaco","Menlo","Ubuntu Mono",monospace;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--spacing-1:.25rem;--spacing-2:.5rem;--spacing-3:.75rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-14:3.5rem;--spacing-40:10rem;--border-radius:.5rem;--border-radius-lg:.75rem;--border-radius-xl:1rem;--transition-base:all .2s ease-in-out}*,:before,:after{box-sizing:border-box}body{font-family:var(--font-family);background:var(--color-dark);color:var(--color-white)}.page-title,.course-title{color:var(--color-white);letter-spacing:-.015em;text-shadow:0 0 10px rgba(255,255,255,.12);margin:0;font-weight:700;line-height:1.25}.page-title{font-size:2rem}.course-title{margin-bottom:1rem;font-size:2.5rem;font-weight:800;line-height:1.2}.page-subtitle,.course-description{color:var(--color-muted);margin:0;font-weight:400;line-height:1.5}.page-subtitle{font-size:var(--font-size-sm)}.course-description{font-size:var(--font-size-lg);color:var(--color-text-light);margin-bottom:2rem;line-height:1.6}.generated-course{padding:var(--spacing-4)}.course-header{margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-6);border-bottom:1px solid var(--color-border)}.generated-course-title{color:var(--color-white);letter-spacing:-.015em;margin:0 0 var(--spacing-3)0;text-shadow:0 0 8px rgba(255,255,255,.1);font-size:1.75rem;font-weight:700;line-height:1.25}.generated-course-description{color:var(--color-muted);font-size:var(--font-size-base);margin:0;font-weight:400;line-height:1.6}.backend-response{background:var(--color-secondary);border-radius:var(--border-radius-lg);padding:var(--spacing-6);margin-bottom:var(--spacing-8);border:1px solid var(--color-border-light);box-shadow:var(--glow);overflow-x:auto}.response-text{color:var(--color-white);font-family:var(--font-mono);font-size:var(--font-size-sm);white-space:pre-wrap;word-wrap:break-word;margin:0;font-weight:400;line-height:1.6}.course-stats{border-radius:var(--border-radius-xl);border:1px solid var(--color-border-light);box-shadow:var(--glow);background:linear-gradient(135deg,rgba(13,22,45,.9) 0%,rgba(9,14,26,.9) 100%);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin:2rem 0;padding:1.5rem;display:grid}.stat-item{text-align:center;background:var(--color-surface-light);border:1px solid var(--color-border);border-radius:var(--border-radius);box-shadow:var(--glow-weak);padding:1rem}.stat-number{color:var(--color-primary-lighter);text-shadow:0 0 8px rgba(147,197,253,.35);margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-gray);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.clickable-description,.clickable-title{cursor:pointer;transition:color .2s;position:relative}.clickable-description:hover,.clickable-title:hover{color:var(--color-primary-lighter)}.view-more{font-size:var(--font-size-sm);color:var(--color-primary-lighter);margin-top:.5rem;font-weight:500;display:block}.course-metadata{background:var(--color-secondary);border-radius:var(--border-radius-xl);border:1px solid var(--color-border-light);box-shadow:var(--glow);grid-template-columns:1fr 1fr;gap:2rem;margin:2rem 0;padding:2rem;display:grid}.metadata-section h3{font-size:var(--font-size-xl);color:var(--color-white);margin-bottom:1rem;font-weight:700}.tag-base{color:var(--color-white);font-size:var(--font-size-sm);box-shadow:var(--glow-weak);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.18);border-radius:20px;font-weight:500}.prerequisites-list{flex-wrap:wrap;gap:.5rem;display:flex}@extend .tag-base;.prerequisite-tag{padding:.375rem .75rem}@extend .tag-base;.topic-tag{color:#e5e7eb;border-radius:16px;padding:.25rem .75rem}.no-prerequisites{color:var(--color-muted);font-style:italic}.objectives-list{padding:0;list-style:none}.objectives-list li{color:var(--color-text-light);padding:.5rem 0 .5rem 1.5rem;position:relative}.objectives-list li:before{content:"✓";color:var(--color-primary-lighter);text-shadow:0 0 6px rgba(147,197,253,.35);font-weight:700;position:absolute;left:0}.course-sections{max-width:900px;margin:3rem auto}.sections-title{color:var(--color-white);text-align:center;background:linear-gradient(135deg,#fff 0%,#e0e7ff 100%);-webkit-text-fill-color:transparent;text-shadow:none;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;margin-bottom:3rem;font-size:2.5rem;font-weight:800}.section-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(15,23,42,.8);border:1px solid rgba(148,163,184,.1);border-radius:24px;margin-bottom:2.5rem;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06),0 0 0 1px rgba(148,163,184,.05)}.section-card:before{content:"";background:linear-gradient(90deg,transparent,rgba(148,163,184,.2),transparent);height:1px;position:absolute;top:0;left:0;right:0}.section-card:hover{border-color:rgba(148,163,184,.2);transform:translateY(-4px);box-shadow:0 20px 25px -5px rgba(0,0,0,.1),0 10px 10px -5px rgba(0,0,0,.04),0 0 0 1px rgba(148,163,184,.1)}.section-header{color:var(--color-white);background:linear-gradient(135deg,rgba(30,41,59,.9) 0%,rgba(15,23,42,.95) 100%);border-bottom:1px solid rgba(148,163,184,.08);align-items:center;gap:1.5rem;padding:2rem 2.5rem;display:flex;position:relative}.section-number{color:#fff;white-space:nowrap;text-transform:uppercase;letter-spacing:.05em;background:linear-gradient(135deg,#3b82f6 0%,#1d4ed8 100%);border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:.75rem 1.25rem;font-size:.875rem;font-weight:700;box-shadow:0 4px 6px -1px rgba(59,130,246,.2)}.section-time{color:#e2e8f0;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:rgba(148,163,184,.1);border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:.75rem 1.25rem;font-size:.875rem;font-weight:600}.lesson-time{color:#10b981;white-space:nowrap;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);border-radius:8px;padding:.5rem 1rem;font-size:.8125rem;font-weight:600}.section-title{color:var(--color-white);letter-spacing:-.025em;flex:1;margin:0;font-size:1.75rem;font-weight:700;line-height:1.2}.section-description{color:#cbd5e1;margin:0;padding:2rem 2.5rem 1.5rem;font-size:1.0625rem;line-height:1.7;position:relative}.clickable-description{cursor:pointer;background:rgba(30,41,59,.3);border:1px solid rgba(148,163,184,.08);border-radius:12px;margin:1.5rem 2rem;padding:1.5rem;transition:all .2s}.clickable-description:hover{color:#f1f5f9;background:rgba(30,41,59,.5);border-color:rgba(148,163,184,.15)}.view-more{color:#3b82f6;opacity:.8;margin-top:1rem;font-size:.875rem;font-weight:500;display:block}.clickable-description:hover .view-more{opacity:1;color:#60a5fa}.lessons-list{flex-direction:column;gap:1.25rem;padding:0 2rem 2.5rem;display:flex}.lesson-item{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background:rgba(30,41,59,.4);border:1px solid rgba(148,163,184,.08);border-radius:16px;padding:0;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.lesson-item:before{content:"";background:linear-gradient(90deg,transparent,rgba(59,130,246,.5),transparent);width:100%;height:2px;transition:transform .3s;position:absolute;top:0;left:0;transform:scaleX(0)}.lesson-item:hover{background:rgba(30,41,59,.6);border-color:rgba(148,163,184,.15);transform:translate(4px);box-shadow:0 10px 15px -3px rgba(0,0,0,.1),0 4px 6px -2px rgba(0,0,0,.05)}.lesson-item:hover:before{transform:scaleX(1)}.lesson-header{align-items:center;gap:1.25rem;padding:1.75rem 1.75rem 1rem;display:flex;position:relative}.lesson-number{color:#fff;background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:.875rem;font-weight:700;display:flex;box-shadow:0 4px 6px -1px rgba(99,102,241,.2)}.lesson-title{color:var(--color-white);flex:1;align-items:center;gap:.75rem;margin:0;font-size:1.125rem;font-weight:600;line-height:1.4;display:flex}.lesson-title.loading{color:#94a3b8}.loading-indicator{color:#3b82f6;font-size:.8125rem;font-weight:500;animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.lesson-topics{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding:0 1.75rem;display:flex}.topic-tag{color:#93c5fd;white-space:nowrap;background:rgba(59,130,246,.1);border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:.375rem .75rem;font-size:.8125rem;font-weight:500}.lesson-preview{border-top:1px solid rgba(148,163,184,.05);margin-top:.5rem;padding:1rem 1.75rem 1.75rem}.lesson-intro-preview,.lesson-description-preview{color:#cbd5e1;margin:0 0 1rem;font-size:.9375rem;line-height:1.6}.lesson-features{flex-wrap:wrap;gap:.5rem;margin-top:1rem;display:flex}.feature-badge{color:#34d399;text-transform:uppercase;letter-spacing:.025em;background:rgba(16,185,129,.1);border:1px solid rgba(16,185,129,.2);border-radius:6px;padding:.25rem .625rem;font-size:.75rem;font-weight:600}.load-content-hint{border-top:1px solid rgba(148,163,184,.08);margin-top:.75rem;padding-top:.75rem}.hint-text{color:#64748b;opacity:.8;font-size:.8125rem;font-style:italic;transition:opacity .2s}.lesson-item:hover .hint-text{opacity:1;color:#94a3b8}.course-actions{border-top:1px solid rgba(148,163,184,.1);justify-content:center;gap:1.5rem;max-width:600px;margin:4rem auto 3rem;padding-top:3rem;display:flex}@media (max-width:768px){.lesson-header{gap:1rem;padding:1.5rem 1.5rem 1rem}.lesson-topics{padding:0 1.5rem}.lesson-preview{padding:0 1.5rem 1.5rem}.lesson-title{font-size:1rem}.course-sections{margin:2rem 1rem}.sections-title{margin-bottom:2rem;font-size:2rem}.section-header{flex-direction:column;align-items:flex-start;gap:1rem;padding:1.5rem}.section-title{font-size:1.5rem}.section-description,.clickable-description{margin:1rem;padding:1.5rem}.lessons-list{padding:0 1rem 2rem}.lesson-item{padding:1.5rem}.lesson-header{gap:1rem}.course-actions{flex-direction:column;align-items:center;gap:1rem}}.lesson-item{display:block}.cursor-pointer{cursor:pointer}.lesson-item:hover{box-shadow:0 6px 16px rgba(0,0,0,.06)}.modal-overlay{z-index:1000;background:rgba(0,0,0,.7);justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.modal-content{background:var(--color-secondary);border:1px solid var(--color-border-light);width:100%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-modal);border-radius:20px;flex-direction:column;display:flex;overflow:hidden}.modal-header{border-bottom:2px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.02));justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex;position:-webkit-sticky;position:sticky;top:0}.modal-title{font-size:var(--font-size-2xl);color:var(--color-white);text-shadow:0 0 12px rgba(255,255,255,.15);margin:0;font-weight:700}.modal-close{cursor:pointer;color:#cbd5e1;width:40px;height:40px;transition:var(--transition-base);background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:50%;justify-content:center;align-items:center;font-size:1.2rem;font-weight:700;display:flex}.modal-close:hover{color:var(--color-white);background:rgba(255,255,255,.2);transform:scale(1.05)}.modal-body{flex:1;padding:0;overflow-y:auto}.modal-body p{color:var(--color-text-light);margin:0 0 1rem;line-height:1.7}.full-lesson-content{padding:2rem}.lesson-section{transition:var(--transition-base);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:12px;margin-bottom:2.5rem;padding:1.5rem}.lesson-section:hover{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.12)}.lesson-section h4{color:var(--color-white);border-bottom:2px solid var(--color-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 1rem;padding-bottom:.5rem;font-size:1.25rem;font-weight:600}.lesson-section p{color:var(--color-text-light);margin:0 0 1rem;line-height:1.7}.main-content-text p{text-indent:1rem;margin-bottom:1.2rem}.main-content-text p:first-child{text-indent:0}.key-points-list{margin:0;padding:0;list-style:none}.key-points-list li{border-left:4px solid var(--color-primary);color:var(--color-text-light);transition:var(--transition-base);background:rgba(255,255,255,.05);border-radius:8px;margin:.75rem 0;padding:1rem;position:relative}.key-points-list li:hover{background:rgba(255,255,255,.08);transform:translate(4px)}.key-points-list li:before{content:"•";color:var(--color-primary);background:var(--color-secondary);border:2px solid var(--color-primary);border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:1.5rem;display:flex;position:absolute;top:50%;left:-12px;transform:translateY(-50%)}.examples-list{gap:1rem;display:grid}.example-item{transition:var(--transition-base);background:linear-gradient(135deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:1.25rem}.example-item:hover{border-color:rgba(255,255,255,.2);transform:translateY(-2px);box-shadow:0 4px 20px rgba(0,0,0,.2)}.exercises-list{gap:1.5rem;display:grid}.exercise-item{transition:var(--transition-base);background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:1.5rem}.exercise-item:hover{transform:translateY(-3px);box-shadow:0 6px 25px rgba(0,0,0,.25)}.exercise-item h5{color:var(--color-primary);text-transform:capitalize;margin:0 0 1rem;font-size:1.1rem;font-weight:600}.exercise-item p{margin:.75rem 0;line-height:1.6}.exercise-item p strong{color:var(--color-white);min-width:130px;font-weight:600;display:inline-block}.resources-list{gap:1rem;display:grid}.resource-item{transition:var(--transition-base);background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);border-radius:10px;align-items:flex-start;gap:1rem;padding:1.25rem;display:flex}.resource-item:hover{background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border-color:rgba(255,255,255,.15)}.resource-type-badge{background:var(--color-primary);color:#fff;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-radius:20px;padding:.4rem .8rem;font-size:.8rem;font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.2)}.resource-details{flex:1}.resource-details h6{color:var(--color-white);margin:0 0 .5rem;font-size:1rem;font-weight:600}.resource-details p{color:var(--color-text-light);margin:0 0 .75rem;font-size:.9rem}.resource-link{color:var(--color-primary);border:1px solid var(--color-primary);transition:var(--transition-base);border-radius:6px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.9rem;font-weight:500;text-decoration:none;display:inline-flex}.resource-link:hover{background:var(--color-primary);color:#fff;transform:translateY(-1px);box-shadow:0 3px 12px rgba(0,0,0,.2)}button:focus,input:focus,textarea:focus{outline:2px solid var(--color-primary);outline-offset:2px}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:rgba(255,255,255,.05);border-radius:4px}.modal-body::-webkit-scrollbar-thumb{transition:var(--transition-base);background:rgba(255,255,255,.2);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.3)}@media (max-width:768px){.modal-overlay{padding:.5rem}.modal-content{border-radius:16px;max-width:100%;max-height:95vh}.modal-header{padding:1rem 1.5rem}.modal-title{font-size:1.5rem}.full-lesson-content{padding:1rem}.lesson-section{margin-bottom:1.5rem;padding:1rem}.exercise-item,.resource-item{padding:1rem}.resource-item{flex-direction:column;align-items:stretch}.resource-type-badge{align-self:flex-start}}.course-progress{background:#0f172a;border:1px solid #1e293b;border-radius:12px;margin:2rem 0;padding:1.5rem}.progress-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.progress-header h3{color:#f1f5f9;margin:0;font-size:1.25rem;font-weight:600}.progress-percentage{color:#60a5fa;font-size:1.5rem;font-weight:700}.progress-bar{background-color:#1e293b;border-radius:6px;width:100%;height:12px;margin-bottom:.75rem;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#1e40af,#3730a3);border-radius:6px;height:100%;transition:width .5s ease-in-out}.course-flashcards{border-top:1px solid #ddd;margin-top:40px;padding:20px}.course-flashcards h2{margin-bottom:16px;font-size:22px;font-weight:600}.modal-navigation{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:rgba(15,23,42,.7);border-top:1px solid rgba(255,255,255,.08);border-radius:0 0 20px 20px;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;display:flex}.nav-button,.complete-lesson-button{cursor:pointer;transition:var(--transition-base);color:#fff;text-shadow:0 0 6px rgba(0,0,0,.2);border:none;border-radius:10px;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600}.nav-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(59,130,246,.15);border:1px solid rgba(59,130,246,.3)}.nav-button:hover:not(:disabled){background:rgba(59,130,246,.3);transform:translateY(-2px)}.nav-button:disabled{opacity:.4;cursor:not-allowed}.nav-center{flex:1;justify-content:center;display:flex}.complete-lesson-button{background:linear-gradient(135deg,#3b82f6,#6366f1);box-shadow:0 4px 12px rgba(59,130,246,.3)}.complete-lesson-button:hover{opacity:.9;transform:translateY(-2px)}
.header{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:rgba(2,6,23,.8);border-bottom:1px solid rgba(30,41,59,.5);justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex;position:fixed;top:0;left:0;right:0;box-shadow:0 4px 20px rgba(0,0,0,.2)}.logo-section{align-items:center;gap:.75rem;display:flex}.logo-icon{color:#3b82f6;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.logo-icon svg{width:100%;height:100%}.logo-text{color:#f1f5f9;text-shadow:0 0 10px rgba(255,255,255,.1);margin:0;font-size:1.5rem;font-weight:700}.header-actions{align-items:center;gap:2rem;display:flex}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-link{color:#cbd5e1;border-radius:8px;padding:.5rem 1rem;font-weight:500;text-decoration:none;transition:all .3s;position:relative}.nav-link:hover{color:#f1f5f9;background:rgba(59,130,246,.1);transform:translateY(-1px)}.user-avatar{cursor:pointer;background:linear-gradient(135deg,#1e40af 0%,#3b82f6 100%);border:2px solid rgba(255,255,255,.1);border-radius:50%;width:36px;height:36px;transition:all .3s;box-shadow:0 2px 8px rgba(59,130,246,.2)}.user-avatar:hover{border-color:rgba(59,130,246,.3);transform:scale(1.05);box-shadow:0 4px 16px rgba(59,130,246,.3)}@media (max-width:576px){.header{padding:1rem}.logo-text{font-size:1.25rem}.logo-icon{width:28px;height:28px}.header-actions{gap:1rem}.nav-link{padding:.5rem .75rem;font-size:.9rem}.user-avatar{width:32px;height:32px}}
.carousel-container{flex-direction:column;align-items:center;gap:22px;margin-top:40px;display:flex}.generate-flashcards-button{cursor:pointer;color:#fff;background:linear-gradient(135deg,#3b82f6,#6366f1);border:none;border-radius:12px;padding:14px 28px;font-size:16px;font-weight:600;transition:transform .2s,opacity .3s}.generate-flashcards-button:hover{opacity:.9;transform:scale(1.05)}.card-container{perspective:1400px;cursor:pointer;width:420px;height:280px}.card-inner{width:100%;height:100%;transform-style:preserve-3d;position:relative}.card-face{-webkit-backdrop-filter:blur(18px)saturate(180%);-webkit-backface-visibility:hidden;backface-visibility:hidden;text-align:center;color:#e0e7ff;background:rgba(30,41,59,.45);border:1px solid rgba(255,255,255,.2);border-radius:20px;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:22px;font-size:18px;font-weight:500;display:flex;position:absolute;box-shadow:0 8px 24px rgba(0,0,0,.4)}.card-front{border:1px solid rgba(59,130,246,.5)}.card-back{border:1px solid rgba(99,102,241,.5);transform:rotateY(180deg)}.card-label{text-transform:uppercase;letter-spacing:1px;color:#93c5fd;margin-bottom:12px;font-size:14px;font-weight:600}.carousel-controls{gap:16px;display:flex}.carousel-controls button{cursor:pointer;color:#e0e7ff;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:rgba(59,130,246,.2);border:none;border-radius:10px;padding:8px 18px;font-size:15px;transition:all .3s}.carousel-controls button:hover{background:rgba(59,130,246,.4)}.card-counter{color:#9ca3af;font-size:14px}.error{color:#f87171;font-size:14px}
